changeset 5751:bc475d1f74ca

prompt: kill matchflags Python already lets one to embed RE flags directly in a regex, which is a much nicer way to do things: (?iLmsux) (One or more letters from the set "i", "L", "m", "s", "u", "x".) ... matchflags was introduced in 67afecb8d6cc, and the record extension is the only user. I've killed matchflag, and adjusted record code appropriately.
author Kirill Smelkov <kirr@mns.spb.ru>
date Fri, 28 Dec 2007 00:03:55 -0600
parents 206b44764340
children 6183df642f95
files hgext/record.py mercurial/ui.py
diffstat 2 files changed, 8 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/hgext/record.py	Thu Dec 27 19:23:22 2007 +0100
+++ b/hgext/record.py	Fri Dec 28 00:03:55 2007 -0600
@@ -247,8 +247,8 @@
         if resp_file[0] is not None:
             return resp_file[0]
         while True:
-            r = (ui.prompt(query + _(' [Ynsfdaq?] '), '[Ynsfdaq?]?$',
-                           matchflags=re.I) or 'y').lower()
+            r = (ui.prompt(query + _(' [Ynsfdaq?] '), '(?i)[Ynsfdaq?]?$')
+                 or 'y').lower()
             if r == '?':
                 c = record.__doc__.find('y - record this change')
                 for l in record.__doc__[c:].splitlines():
--- a/mercurial/ui.py	Thu Dec 27 19:23:22 2007 +0100
+++ b/mercurial/ui.py	Fri Dec 28 00:03:55 2007 -0600
@@ -410,14 +410,18 @@
             line = line[:-1]
         return line
 
-    def prompt(self, msg, pat=None, default="y", matchflags=0):
+    def prompt(self, msg, pat=None, default="y"):
+        """Prompt user with msg, read response, and ensure it matches pat
+
+        If not interactive -- the default is returned
+        """
         if not self.interactive: return default
         while True:
             try:
                 r = self._readline(msg + ' ')
                 if not r:
                     return default
-                if not pat or re.match(pat, r, matchflags):
+                if not pat or re.match(pat, r):
                     return r
                 else:
                     self.write(_("unrecognized response\n"))