better support for saving variables
This commit is contained in:
parent
1c9adef883
commit
3ded0784be
1 changed files with 8 additions and 10 deletions
18
sergio.py
18
sergio.py
|
@ -188,8 +188,10 @@ class Pira:
|
||||||
def read_variable(self, variable: str):
|
def read_variable(self, variable: str):
|
||||||
return self.execute_command(variable)
|
return self.execute_command(variable)
|
||||||
|
|
||||||
def set_variable(self, variable: str, value: str):
|
def set_variable(self, variable: str, value: str, save: bool = False):
|
||||||
cmd = f"{variable}={value}"
|
cmd = f"{variable}={value}"
|
||||||
|
if save:
|
||||||
|
cmd = "*" + cmd
|
||||||
self.execute_command(cmd)
|
self.execute_command(cmd)
|
||||||
|
|
||||||
def save_variable(self, variable: str):
|
def save_variable(self, variable: str):
|
||||||
|
@ -221,6 +223,7 @@ def get_parser():
|
||||||
|
|
||||||
setvar = sub.add_parser("set")
|
setvar = sub.add_parser("set")
|
||||||
setvar.set_defaults(func=main_set)
|
setvar.set_defaults(func=main_set)
|
||||||
|
setvar.add_argument("--save", action="store_true", default=False)
|
||||||
setvar.add_argument("variable")
|
setvar.add_argument("variable")
|
||||||
setvar.add_argument("value")
|
setvar.add_argument("value")
|
||||||
|
|
||||||
|
@ -260,7 +263,7 @@ def main_get(args, pira: Pira):
|
||||||
|
|
||||||
def main_set(args, pira: Pira):
|
def main_set(args, pira: Pira):
|
||||||
try:
|
try:
|
||||||
pira.set_variable(args.variable, args.value)
|
pira.set_variable(args.variable, args.value, save=args.save)
|
||||||
except UnknownCommandError:
|
except UnknownCommandError:
|
||||||
print("Variable not found: {args.variable}", file=sys.stderr)
|
print("Variable not found: {args.variable}", file=sys.stderr)
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
@ -293,16 +296,11 @@ def main_synctime(args, pira: Pira):
|
||||||
local_time = datetime.now(tz)
|
local_time = datetime.now(tz)
|
||||||
date = local_time.strftime("%d.%m.%y")
|
date = local_time.strftime("%d.%m.%y")
|
||||||
time = local_time.strftime("%H:%M:%S")
|
time = local_time.strftime("%H:%M:%S")
|
||||||
pira.set_variable("TIME", time)
|
pira.set_variable("TIME", time, save=args.save)
|
||||||
pira.set_variable("DATE", date)
|
pira.set_variable("DATE", date, save=args.save)
|
||||||
delta = tz.utcoffset(datetime.now())
|
delta = tz.utcoffset(datetime.now())
|
||||||
offset = delta.total_seconds() / 1800 # multiple of half-hours. So +10800s => +6
|
offset = delta.total_seconds() / 1800 # multiple of half-hours. So +10800s => +6
|
||||||
pira.set_variable("LTO", "%+d" % offset)
|
pira.set_variable("LTO", "%+d" % offset, save=args.save)
|
||||||
|
|
||||||
if args.save:
|
|
||||||
pira.save_variable("DATE")
|
|
||||||
pira.save_variable("TIME")
|
|
||||||
pira.save_variable("LTO")
|
|
||||||
|
|
||||||
|
|
||||||
def make_connection(args) -> Backends:
|
def make_connection(args) -> Backends:
|
||||||
|
|
Loading…
Reference in a new issue