comparison mercurial/hg.py @ 207:ec327cf0d3a9

Move ui class to its own module -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Move ui class to its own module manifest hash: f75c8f9cdfe16f143ab633d0072c14ba88ac88be -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCnVxxywK+sNU5EO8RAgPgAJ48p7w4Do/saCC8WkBvHj/rdnoiEgCgrSs9 Wu1fOSgST3rn/2JpZAdFRdA= =91tt -----END PGP SIGNATURE-----
author mpm@selenic.com
date Tue, 31 May 2005 22:57:53 -0800
parents 0b486b5e0796
children d2badbd7d1ad
comparison
equal deleted inserted replaced
206:3295b6b508de 207:ec327cf0d3a9
942 if path and path[:11] == "old-http://": 942 if path and path[:11] == "old-http://":
943 return localrepository(ui, path.replace("old-http://", "http://")) 943 return localrepository(ui, path.replace("old-http://", "http://"))
944 else: 944 else:
945 return localrepository(ui, path, create) 945 return localrepository(ui, path, create)
946 946
947 class ui:
948 def __init__(self, verbose=False, debug=False, quiet=False,
949 interactive=True):
950 self.quiet = quiet and not verbose and not debug
951 self.verbose = verbose or debug
952 self.debugflag = debug
953 self.interactive = interactive
954 def write(self, *args):
955 for a in args:
956 sys.stdout.write(str(a))
957 def readline(self):
958 return sys.stdin.readline()[:-1]
959 def prompt(self, msg, pat, default = "y"):
960 if not self.interactive: return default
961 while 1:
962 self.write(msg, " ")
963 r = self.readline()
964 if re.match(pat, r):
965 return r
966 else:
967 self.write("unrecognized response\n")
968 def status(self, *msg):
969 if not self.quiet: self.write(*msg)
970 def warn(self, msg):
971 self.write(*msg)
972 def note(self, *msg):
973 if self.verbose: self.write(*msg)
974 def debug(self, *msg):
975 if self.debugflag: self.write(*msg)
976 def edit(self, text):
977 (fd, name) = tempfile.mkstemp("hg")
978 f = os.fdopen(fd, "w")
979 f.write(text)
980 f.close()
981
982 editor = os.environ.get("HGEDITOR") or os.environ.get("EDITOR", "vi")
983 r = os.system("%s %s" % (editor, name))
984
985 if r:
986 raise "Edit failed!"
987
988 t = open(name).read()
989 t = re.sub("(?m)^HG:.*\n", "", t)
990
991 return t
992
993 class httprangereader: 947 class httprangereader:
994 def __init__(self, url): 948 def __init__(self, url):
995 self.url = url 949 self.url = url
996 self.pos = 0 950 self.pos = 0
997 def seek(self, pos): 951 def seek(self, pos):