nice alias system
[saartuer.git] / tyshell
diff --git a/tyshell b/tyshell
index 9f327258fd21c1f2b8c05e4d09971e2d04165313..c35ec0ebbe9da65439d6411246ceeecff076ebce 100755 (executable)
--- a/tyshell
+++ b/tyshell
@@ -51,14 +51,21 @@ def whocmd(c):
                p = pwd.getpwnam(n)
                print (p.pw_name, " - ", p.pw_gecos)
 
-commands = {
+def alias (cmds, aliases):
+       for newname, oldname in aliases.items():
+               cmds[newname] = cmds[oldname]
+       return cmds
+
+commands = alias({
        'exit': exitcmd,
        'help': helpcmd,
        'open': sendcmd(tuerSock, 'unlock'),
-       'unlock': sendcmd(tuerSock, 'unlock'),
        'buzz': sendcmd(tuerSock, 'buzz'),
        'who': whocmd,
-}
+},{
+       # aliases
+       'unlock': 'open',
+})
 
 def complete_command(cmd):
        '''returns a list of commands (as strings) starting with cmd'''