Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/ui.py @ 5671:b5605d88dc27
Make ui.prompt repeat on "unrecognized response" again (issue897)
(this was accidentally changed in ca0d02222d6a)
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Thu, 27 Dec 2007 10:32:33 +0100 |
parents | 8c5ef3b87cb1 |
children | 6ba5ecc27d33 |
comparison
equal
deleted
inserted
replaced
5670:840e2b315c1f | 5671:b5605d88dc27 |
---|---|
405 pass | 405 pass |
406 return raw_input(prompt) | 406 return raw_input(prompt) |
407 | 407 |
408 def prompt(self, msg, pat=None, default="y", matchflags=0): | 408 def prompt(self, msg, pat=None, default="y", matchflags=0): |
409 if not self.interactive: return default | 409 if not self.interactive: return default |
410 try: | 410 while True: |
411 r = self._readline(msg + ' ') | 411 try: |
412 if not pat or re.match(pat, r, matchflags): | 412 r = self._readline(msg + ' ') |
413 return r | 413 if not pat or re.match(pat, r, matchflags): |
414 else: | 414 return r |
415 self.write(_("unrecognized response\n")) | 415 else: |
416 except EOFError: | 416 self.write(_("unrecognized response\n")) |
417 raise util.Abort(_('response expected')) | 417 except EOFError: |
418 raise util.Abort(_('response expected')) | |
418 | 419 |
419 def getpass(self, prompt=None, default=None): | 420 def getpass(self, prompt=None, default=None): |
420 if not self.interactive: return default | 421 if not self.interactive: return default |
421 return getpass.getpass(prompt or _('password: ')) | 422 return getpass.getpass(prompt or _('password: ')) |
422 def status(self, *msg): | 423 def status(self, *msg): |