From bc02a338c806515a9958a7e210c1b28c7a38ace9 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Mon, 16 Apr 2012 16:04:25 -0400 Subject: [PATCH] allow launching arbitrary shell commands from an alias - close #3 --- jsvn | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/jsvn b/jsvn index 7fa0d0a..1c891fe 100755 --- a/jsvn +++ b/jsvn @@ -1022,8 +1022,15 @@ def main(argv): config = get_config() realsvn = config['svn'] if config['svn'] != '' else findInPath('svn') out = sys.stdout + orig_subcommand = argv[0] if len(argv) > 0 else '' if len(argv) > 0: argv = apply_aliases(config, argv) + if len(argv) > 0 and argv[0].startswith('!'): + # execute an external program + argv[0] = argv[0][1:] # strip leading '!' + argv = [argv[0], orig_subcommand] + argv[1:] + Popen(argv, shell=True).wait() + return 0 using_pager = False using_color = sys.stdout.isatty() and config['use_color'] if sys.stdout.isatty() and config['use_pager']: