Mercurial > hg
comparison mercurial/dispatch.py @ 37120:a8a902d7176e
procutil: bulk-replace function calls to point to new module
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sat, 24 Mar 2018 15:10:51 +0900 |
parents | d4a2e0d5d042 |
children | 6890b7e991a4 |
comparison
equal
deleted
inserted
replaced
37119:d4a2e0d5d042 | 37120:a8a902d7176e |
---|---|
135 except IOError: | 135 except IOError: |
136 pass | 136 pass |
137 else: | 137 else: |
138 def _initstdio(): | 138 def _initstdio(): |
139 for fp in (sys.stdin, sys.stdout, sys.stderr): | 139 for fp in (sys.stdin, sys.stdout, sys.stderr): |
140 util.setbinary(fp) | 140 procutil.setbinary(fp) |
141 | 141 |
142 def _silencestdio(): | 142 def _silencestdio(): |
143 pass | 143 pass |
144 | 144 |
145 def _getsimilar(symbols, value): | 145 def _getsimilar(symbols, value): |
170 _reportsimilar(write, similar) | 170 _reportsimilar(write, similar) |
171 if inst.hint: | 171 if inst.hint: |
172 write(_("(%s)\n") % inst.hint) | 172 write(_("(%s)\n") % inst.hint) |
173 | 173 |
174 def _formatargs(args): | 174 def _formatargs(args): |
175 return ' '.join(util.shellquote(a) for a in args) | 175 return ' '.join(procutil.shellquote(a) for a in args) |
176 | 176 |
177 def dispatch(req): | 177 def dispatch(req): |
178 "run the command specified in req.args" | 178 "run the command specified in req.args" |
179 if req.ferr: | 179 if req.ferr: |
180 ferr = req.ferr | 180 ferr = req.ferr |
411 args = [] | 411 args = [] |
412 # only care about alias 'args', ignore 'args' set by extensions.wrapfunction | 412 # only care about alias 'args', ignore 'args' set by extensions.wrapfunction |
413 if not util.safehasattr(fn, '_origfunc'): | 413 if not util.safehasattr(fn, '_origfunc'): |
414 args = getattr(fn, 'args', args) | 414 args = getattr(fn, 'args', args) |
415 if args: | 415 if args: |
416 cmd = ' '.join(map(util.shellquote, args)) | 416 cmd = ' '.join(map(procutil.shellquote, args)) |
417 | 417 |
418 nums = [] | 418 nums = [] |
419 def replacer(m): | 419 def replacer(m): |
420 num = int(m.group(1)) - 1 | 420 num = int(m.group(1)) - 1 |
421 nums.append(num) | 421 nums.append(num) |
441 replacemap['$@'] = ' '.join(args) | 441 replacemap['$@'] = ' '.join(args) |
442 # Typical Unix shells interpolate "$@" (with quotes) as all the positional | 442 # Typical Unix shells interpolate "$@" (with quotes) as all the positional |
443 # parameters, separated out into words. Emulate the same behavior here by | 443 # parameters, separated out into words. Emulate the same behavior here by |
444 # quoting the arguments individually. POSIX shells will then typically | 444 # quoting the arguments individually. POSIX shells will then typically |
445 # tokenize each argument into exactly one word. | 445 # tokenize each argument into exactly one word. |
446 replacemap['"$@"'] = ' '.join(util.shellquote(arg) for arg in args) | 446 replacemap['"$@"'] = ' '.join(procutil.shellquote(arg) for arg in args) |
447 # escape '\$' for regex | 447 # escape '\$' for regex |
448 regex = '|'.join(replacemap.keys()).replace('$', br'\$') | 448 regex = '|'.join(replacemap.keys()).replace('$', br'\$') |
449 r = re.compile(regex) | 449 r = re.compile(regex) |
450 return r.sub(lambda x: replacemap[x.group()], cmd) | 450 return r.sub(lambda x: replacemap[x.group()], cmd) |
451 | 451 |