fix variable usege and add var command
This commit is contained in:
parent
529a5063b0
commit
fcc3434920
@ -706,6 +706,12 @@ def proc_line( l, elm ):
|
|||||||
print_help()
|
print_help()
|
||||||
return
|
return
|
||||||
|
|
||||||
|
if l in ['var']:
|
||||||
|
print("\n###### Variables #####")
|
||||||
|
for v in var.keys():
|
||||||
|
print( f'# {v:20} = {var[v]}')
|
||||||
|
return
|
||||||
|
|
||||||
if l in ['cls']:
|
if l in ['cls']:
|
||||||
mod_utils.clearScreen()
|
mod_utils.clearScreen()
|
||||||
return
|
return
|
||||||
@ -717,6 +723,19 @@ def proc_line( l, elm ):
|
|||||||
play_macro(l, elm)
|
play_macro(l, elm)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
# find veriable usage
|
||||||
|
m = re.search('.+(\$\S+)', l)
|
||||||
|
if m:
|
||||||
|
while m:
|
||||||
|
vu = m.group(1)
|
||||||
|
if vu in list(var.keys()):
|
||||||
|
l = re.sub("\\" + vu, var[vu], l)
|
||||||
|
else:
|
||||||
|
print('Error: unknown variable', vu)
|
||||||
|
return
|
||||||
|
m = re.search('.+(\$\S+)', l)
|
||||||
|
print( "#(subst)", l)
|
||||||
|
|
||||||
m = re.search('\$\S+\s*=\s*\S+', l)
|
m = re.search('\$\S+\s*=\s*\S+', l)
|
||||||
if m:
|
if m:
|
||||||
# find variable definition
|
# find variable definition
|
||||||
@ -730,19 +749,6 @@ def proc_line( l, elm ):
|
|||||||
elm.currentaddress = var['$addr'].upper()
|
elm.currentaddress = var['$addr'].upper()
|
||||||
return
|
return
|
||||||
|
|
||||||
# find veriable usage
|
|
||||||
m = re.search('\$\S+', l)
|
|
||||||
if m:
|
|
||||||
while m:
|
|
||||||
vu = m.group(0)
|
|
||||||
if vu in list(var.keys()):
|
|
||||||
l = re.sub("\\" + vu, var[vu], l)
|
|
||||||
else:
|
|
||||||
print('Error: unknown variable', vu)
|
|
||||||
return
|
|
||||||
m = re.search('\$\S+', l)
|
|
||||||
print( "#(subst)", l)
|
|
||||||
|
|
||||||
l_parts = l.split()
|
l_parts = l.split()
|
||||||
if len(l_parts) > 0 and l_parts[0] in ['wait', 'sleep']:
|
if len(l_parts) > 0 and l_parts[0] in ['wait', 'sleep']:
|
||||||
try:
|
try:
|
||||||
@ -874,7 +880,7 @@ def main():
|
|||||||
while True:
|
while True:
|
||||||
print(var['$addr']+':'+var['$txa']+':'+var['$prompt'] + '#', end=' ')
|
print(var['$addr']+':'+var['$txa']+':'+var['$prompt'] + '#', end=' ')
|
||||||
if len(cmd_lines)==0:
|
if len(cmd_lines)==0:
|
||||||
l = input().lower()
|
l = input()
|
||||||
else:
|
else:
|
||||||
if cmd_ref<len(cmd_lines):
|
if cmd_ref<len(cmd_lines):
|
||||||
l = cmd_lines[cmd_ref].strip()
|
l = cmd_lines[cmd_ref].strip()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user