##// END OF EJS Templates
ui.warn can use more than one argument like the other ui methods.
Thomas Arendsen Hein -
r234:3427806d default
parent child Browse files
Show More
@@ -1,55 +1,55 b''
1 1 # ui.py - user interface bits for mercurial
2 2 #
3 3 # Copyright 2005 Matt Mackall <mpm@selenic.com>
4 4 #
5 5 # This software may be used and distributed according to the terms
6 6 # of the GNU General Public License, incorporated herein by reference.
7 7
8 8 import os, tempfile, sys, re
9 9
10 10 class ui:
11 11 def __init__(self, verbose=False, debug=False, quiet=False,
12 12 interactive=True):
13 13 self.quiet = quiet and not verbose and not debug
14 14 self.verbose = verbose or debug
15 15 self.debugflag = debug
16 16 self.interactive = interactive
17 17 def write(self, *args):
18 18 for a in args:
19 19 sys.stdout.write(str(a))
20 20 def readline(self):
21 21 return sys.stdin.readline()[:-1]
22 22 def prompt(self, msg, pat, default = "y"):
23 23 if not self.interactive: return default
24 24 while 1:
25 25 self.write(msg, " ")
26 26 r = self.readline()
27 27 if re.match(pat, r):
28 28 return r
29 29 else:
30 30 self.write("unrecognized response\n")
31 31 def status(self, *msg):
32 32 if not self.quiet: self.write(*msg)
33 def warn(self, msg):
33 def warn(self, *msg):
34 34 self.write(*msg)
35 35 def note(self, *msg):
36 36 if self.verbose: self.write(*msg)
37 37 def debug(self, *msg):
38 38 if self.debugflag: self.write(*msg)
39 39 def edit(self, text):
40 40 (fd, name) = tempfile.mkstemp("hg")
41 41 f = os.fdopen(fd, "w")
42 42 f.write(text)
43 43 f.close()
44 44
45 45 editor = os.environ.get("HGEDITOR") or os.environ.get("EDITOR", "vi")
46 46 r = os.system("%s %s" % (editor, name))
47 47
48 48 if r:
49 49 raise "Edit failed!"
50 50
51 51 t = open(name).read()
52 52 t = re.sub("(?m)^HG:.*\n", "", t)
53 53
54 54 return t
55 55
General Comments 0
You need to be logged in to leave comments. Login now