mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
#27364: fix "incorrect" uses of escape character in the stdlib.
And most of the tools. Patch by Emanual Barry, reviewed by me, Serhiy Storchaka, and Martin Panter.
This commit is contained in:
parent
513d7478a1
commit
44b548dda8
83 changed files with 324 additions and 324 deletions
|
@ -1222,7 +1222,7 @@ def OverrideStdioWith(stdout):
|
|||
|
||||
def create_regex(before, after, word=True, whole_line=True):
|
||||
"""Create an re object for matching marker lines."""
|
||||
group_re = "\w+" if word else ".+"
|
||||
group_re = r"\w+" if word else ".+"
|
||||
pattern = r'{}({}){}'
|
||||
if whole_line:
|
||||
pattern = '^' + pattern + '$'
|
||||
|
|
|
@ -413,7 +413,7 @@ class FormulaCell(BaseCell):
|
|||
|
||||
def renumber(self, x1, y1, x2, y2, dx, dy):
|
||||
out = []
|
||||
for part in re.split('(\w+)', self.formula):
|
||||
for part in re.split(r'(\w+)', self.formula):
|
||||
m = re.match('^([A-Z]+)([1-9][0-9]*)$', part)
|
||||
if m is not None:
|
||||
sx, sy = m.groups()
|
||||
|
|
|
@ -95,7 +95,7 @@ def realwork(vars, moddefns, target):
|
|||
print()
|
||||
|
||||
print('$(temp_dir):')
|
||||
print(' if not exist $(temp_dir)\. mkdir $(temp_dir)')
|
||||
print(r' if not exist $(temp_dir)\. mkdir $(temp_dir)')
|
||||
print()
|
||||
|
||||
objects = []
|
||||
|
@ -106,7 +106,7 @@ def realwork(vars, moddefns, target):
|
|||
base = os.path.basename(file)
|
||||
base, ext = os.path.splitext(base)
|
||||
objects.append(base + ".obj")
|
||||
print('$(temp_dir)\%s.obj: "%s"' % (base, file))
|
||||
print(r'$(temp_dir)\%s.obj: "%s"' % (base, file))
|
||||
print("\t@$(CC) -c -nologo /Fo$* $(cdl) $(c_debug) /D BUILD_FREEZE", end=' ')
|
||||
print('"-I$(pythonhome)/Include" "-I$(pythonhome)/PC" \\')
|
||||
print("\t\t$(cflags) $(cdebug) $(cinclude) \\")
|
||||
|
@ -126,7 +126,7 @@ def realwork(vars, moddefns, target):
|
|||
print() ; print()
|
||||
|
||||
print("OBJS=", end=' ')
|
||||
for obj in objects: print('"$(temp_dir)\%s"' % (obj), end=' ')
|
||||
for obj in objects: print(r'"$(temp_dir)\%s"' % (obj), end=' ')
|
||||
print() ; print()
|
||||
|
||||
print("LIBS=", end=' ')
|
||||
|
|
|
@ -99,8 +99,8 @@ def option_dict(options):
|
|||
# Alias
|
||||
getpasswd = invisible_input
|
||||
|
||||
_integerRE = re.compile('\s*(-?\d+)\s*$')
|
||||
_integerRangeRE = re.compile('\s*(-?\d+)\s*-\s*(-?\d+)\s*$')
|
||||
_integerRE = re.compile(r'\s*(-?\d+)\s*$')
|
||||
_integerRangeRE = re.compile(r'\s*(-?\d+)\s*-\s*(-?\d+)\s*$')
|
||||
|
||||
def srange(s,
|
||||
|
||||
|
|
|
@ -134,17 +134,17 @@ class ColorDB:
|
|||
|
||||
class RGBColorDB(ColorDB):
|
||||
_re = re.compile(
|
||||
'\s*(?P<red>\d+)\s+(?P<green>\d+)\s+(?P<blue>\d+)\s+(?P<name>.*)')
|
||||
r'\s*(?P<red>\d+)\s+(?P<green>\d+)\s+(?P<blue>\d+)\s+(?P<name>.*)')
|
||||
|
||||
|
||||
class HTML40DB(ColorDB):
|
||||
_re = re.compile('(?P<name>\S+)\s+(?P<hexrgb>#[0-9a-fA-F]{6})')
|
||||
_re = re.compile(r'(?P<name>\S+)\s+(?P<hexrgb>#[0-9a-fA-F]{6})')
|
||||
|
||||
def _extractrgb(self, mo):
|
||||
return rrggbb_to_triplet(mo.group('hexrgb'))
|
||||
|
||||
class LightlinkDB(HTML40DB):
|
||||
_re = re.compile('(?P<name>(.+))\s+(?P<hexrgb>#[0-9a-fA-F]{6})')
|
||||
_re = re.compile(r'(?P<name>(.+))\s+(?P<hexrgb>#[0-9a-fA-F]{6})')
|
||||
|
||||
def _extractname(self, mo):
|
||||
return mo.group('name').strip()
|
||||
|
|
|
@ -174,8 +174,8 @@ def usage(msg):
|
|||
sys.stderr.write("Usage: %s [-m] warnings\n" % sys.argv[0])
|
||||
sys.stderr.write("Try `%s -h' for more information.\n" % sys.argv[0])
|
||||
|
||||
PATTERN = ("^(.+?):(\d+): DeprecationWarning: "
|
||||
"classic (int|long|float|complex) division$")
|
||||
PATTERN = (r"^(.+?):(\d+): DeprecationWarning: "
|
||||
r"classic (int|long|float|complex) division$")
|
||||
|
||||
def readwarnings(warningsfile):
|
||||
prog = re.compile(PATTERN)
|
||||
|
|
|
@ -23,13 +23,13 @@
|
|||
|
||||
import sys, re, getopt, os
|
||||
|
||||
p_define = re.compile('^[\t ]*#[\t ]*define[\t ]+([a-zA-Z0-9_]+)[\t ]+')
|
||||
p_define = re.compile(r'^[\t ]*#[\t ]*define[\t ]+([a-zA-Z0-9_]+)[\t ]+')
|
||||
|
||||
p_macro = re.compile(
|
||||
'^[\t ]*#[\t ]*define[\t ]+'
|
||||
'([a-zA-Z0-9_]+)\(([_a-zA-Z][_a-zA-Z0-9]*)\)[\t ]+')
|
||||
r'^[\t ]*#[\t ]*define[\t ]+'
|
||||
r'([a-zA-Z0-9_]+)\(([_a-zA-Z][_a-zA-Z0-9]*)\)[\t ]+')
|
||||
|
||||
p_include = re.compile('^[\t ]*#[\t ]*include[\t ]+<([^>\n]+)>')
|
||||
p_include = re.compile(r'^[\t ]*#[\t ]*include[\t ]+<([^>\n]+)>')
|
||||
|
||||
p_comment = re.compile(r'/\*([^*]+|\*+[^/])*(\*+/)?')
|
||||
p_cpp_comment = re.compile('//.*')
|
||||
|
|
|
@ -147,14 +147,14 @@ def build_html_page(classified_text, title='python',
|
|||
#### LaTeX Output ##########################################
|
||||
|
||||
default_latex_commands = {
|
||||
'comment': '{\color{red}#1}',
|
||||
'string': '{\color{ForestGreen}#1}',
|
||||
'docstring': '{\emph{\color{ForestGreen}#1}}',
|
||||
'keyword': '{\color{orange}#1}',
|
||||
'builtin': '{\color{purple}#1}',
|
||||
'definition': '{\color{orange}#1}',
|
||||
'defname': '{\color{blue}#1}',
|
||||
'operator': '{\color{brown}#1}',
|
||||
'comment': r'{\color{red}#1}',
|
||||
'string': r'{\color{ForestGreen}#1}',
|
||||
'docstring': r'{\emph{\color{ForestGreen}#1}}',
|
||||
'keyword': r'{\color{orange}#1}',
|
||||
'builtin': r'{\color{purple}#1}',
|
||||
'definition': r'{\color{orange}#1}',
|
||||
'defname': r'{\color{blue}#1}',
|
||||
'operator': r'{\color{brown}#1}',
|
||||
}
|
||||
|
||||
default_latex_document = r'''
|
||||
|
|
|
@ -88,7 +88,7 @@ del i
|
|||
# no more expressions are searched for. So, order is important.
|
||||
emparse_list_reason = [
|
||||
r'^5\d{2} <>\.\.\. (?P<reason>.*)',
|
||||
'<>\.\.\. (?P<reason>.*)',
|
||||
r'<>\.\.\. (?P<reason>.*)',
|
||||
re.compile(r'^<<< 5\d{2} (?P<reason>.*)', re.MULTILINE),
|
||||
re.compile('===== stderr was =====\nrmail: (?P<reason>.*)'),
|
||||
re.compile('^Diagnostic-Code: (?P<reason>.*)', re.MULTILINE),
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
"""
|
||||
import re,sys
|
||||
|
||||
entityRE = re.compile('<!ENTITY +(\w+) +CDATA +"([^"]+)" +-- +((?:.|\n)+?) *-->')
|
||||
entityRE = re.compile(r'<!ENTITY +(\w+) +CDATA +"([^"]+)" +-- +((?:.|\n)+?) *-->')
|
||||
|
||||
def parse(text,pos=0,endpos=None):
|
||||
|
||||
|
@ -39,7 +39,7 @@ def writefile(f,defs):
|
|||
if charcode[:2] == '&#':
|
||||
code = int(charcode[2:-1])
|
||||
if code < 256:
|
||||
charcode = "'\%o'" % code
|
||||
charcode = r"'\%o'" % code
|
||||
else:
|
||||
charcode = repr(charcode)
|
||||
else:
|
||||
|
|
|
@ -64,7 +64,7 @@ def main():
|
|||
if fix(arg): bad = 1
|
||||
sys.exit(bad)
|
||||
|
||||
ispythonprog = re.compile('^[a-zA-Z0-9_]+\.py$')
|
||||
ispythonprog = re.compile(r'^[a-zA-Z0-9_]+\.py$')
|
||||
def ispython(name):
|
||||
return bool(ispythonprog.match(name))
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ def main():
|
|||
for s in tags: fp.write(s)
|
||||
|
||||
|
||||
expr = '^[ \t]*(def|class)[ \t]+([a-zA-Z0-9_]+)[ \t]*[:\(]'
|
||||
expr = r'^[ \t]*(def|class)[ \t]+([a-zA-Z0-9_]+)[ \t]*[:\(]'
|
||||
matcher = re.compile(expr)
|
||||
|
||||
def treat_file(filename):
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#! /usr/bin/env python3
|
||||
|
||||
"""
|
||||
r"""
|
||||
SVN helper script.
|
||||
|
||||
Try to set the svn:eol-style property to "native" on every .py, .txt, .c and
|
||||
|
|
|
@ -78,11 +78,11 @@ spprog = re.compile('[\n@{}&<>]') # Special characters in
|
|||
# running text
|
||||
#
|
||||
# menu item (Yuck!)
|
||||
miprog = re.compile('^\* ([^:]*):(:|[ \t]*([^\t,\n.]+)([^ \t\n]*))[ \t\n]*')
|
||||
# 0 1 1 2 3 34 42 0
|
||||
# ----- ---------- ---------
|
||||
# -|-----------------------------
|
||||
# -----------------------------------------------------
|
||||
miprog = re.compile(r'^\* ([^:]*):(:|[ \t]*([^\t,\n.]+)([^ \t\n]*))[ \t\n]*')
|
||||
# 0 1 1 2 3 34 42 0
|
||||
# ----- ---------- ---------
|
||||
# -|-----------------------------
|
||||
# -----------------------------------------------------
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -37,11 +37,11 @@ UNI_UNDEFINED = chr(0xFFFE)
|
|||
# Placeholder for a missing code point
|
||||
MISSING_CODE = -1
|
||||
|
||||
mapRE = re.compile('((?:0x[0-9a-fA-F]+\+?)+)'
|
||||
'\s+'
|
||||
'((?:(?:0x[0-9a-fA-Z]+|<[A-Za-z]+>)\+?)*)'
|
||||
'\s*'
|
||||
'(#.+)?')
|
||||
mapRE = re.compile(r'((?:0x[0-9a-fA-F]+\+?)+)'
|
||||
r'\s+'
|
||||
r'((?:(?:0x[0-9a-fA-Z]+|<[A-Za-z]+>)\+?)*)'
|
||||
r'\s*'
|
||||
r'(#.+)?')
|
||||
|
||||
def parsecodes(codes, len=len, range=range):
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue