comparison mercurial/config.py @ 8192:5fd8e60a935d

config: deal with spaces at end of line more carefully
author Matt Mackall <mpm@selenic.com>
date Sun, 26 Apr 2009 16:50:43 -0500
parents d2504744e7a5
children 94246e90081e
comparison
equal deleted inserted replaced
8191:35604226d712 8192:5fd8e60a935d
67 self._data[section][item] = value 67 self._data[section][item] = value
68 self._source[(section, item)] = source 68 self._source[(section, item)] = source
69 69
70 def read(self, path, fp=None): 70 def read(self, path, fp=None):
71 sectionre = re.compile(r'\[([^\[]+)\]') 71 sectionre = re.compile(r'\[([^\[]+)\]')
72 itemre = re.compile(r'([^=\s]+)\s*=\s*(.*)') 72 itemre = re.compile(r'([^=\s]+)\s*=\s*(.*\S|)')
73 contre = re.compile(r'\s+(\S.*)') 73 contre = re.compile(r'\s+(\S.*\S)')
74 emptyre = re.compile(r'(;|#|\s*$)') 74 emptyre = re.compile(r'(;|#|\s*$)')
75 unsetre = re.compile(r'%unset\s+(\S.*)') 75 unsetre = re.compile(r'%unset\s+(\S+)')
76 includere = re.compile(r'%include\s+(\S.*)') 76 includere = re.compile(r'%include\s+(\S.*\S)')
77 section = "" 77 section = ""
78 item = None 78 item = None
79 line = 0 79 line = 0
80 cont = 0 80 cont = 0
81 81