summaryrefslogtreecommitdiff
path: root/scripts/generate_identifier_pattern.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/generate_identifier_pattern.py')
-rwxr-xr-xscripts/generate_identifier_pattern.py27
1 files changed, 12 insertions, 15 deletions
diff --git a/scripts/generate_identifier_pattern.py b/scripts/generate_identifier_pattern.py
index 7db5f4a..96fedba 100755
--- a/scripts/generate_identifier_pattern.py
+++ b/scripts/generate_identifier_pattern.py
@@ -5,7 +5,7 @@ import re
import sys
if sys.version_info[0] < 3:
- raise RuntimeError('This needs to run on Python 3.')
+ raise RuntimeError("This needs to run on Python 3.")
def get_characters():
@@ -23,7 +23,7 @@ def get_characters():
for cp in range(sys.maxunicode + 1):
s = chr(cp)
- if ('a' + s).isidentifier() and not re.match(r'\w', s):
+ if ("a" + s).isidentifier() and not re.match(r"\w", s):
yield s
@@ -33,10 +33,7 @@ def collapse_ranges(data):
Source: https://stackoverflow.com/a/4629241/400617
"""
- for a, b in itertools.groupby(
- enumerate(data),
- lambda x: ord(x[1]) - x[0]
- ):
+ for a, b in itertools.groupby(enumerate(data), lambda x: ord(x[1]) - x[0]):
b = list(b)
yield b[0][1], b[-1][1]
@@ -55,23 +52,23 @@ def build_pattern(ranges):
out.append(a)
out.append(b)
else:
- out.append(f'{a}-{b}')
+ out.append("{}-{}".format(a, b))
- return ''.join(out)
+ return "".join(out)
def main():
"""Build the regex pattern and write it to the file
:file:`jinja2/_identifier.py`."""
pattern = build_pattern(collapse_ranges(get_characters()))
- filename = os.path.abspath(os.path.join(
- os.path.dirname(__file__), '..', 'jinja2', '_identifier.py'
- ))
+ filename = os.path.abspath(
+ os.path.join(os.path.dirname(__file__), "..", "src", "jinja2", "_identifier.py")
+ )
- with open(filename, 'w', encoding='utf8') as f:
- f.write('# generated by scripts/generate_identifier_pattern.py\n')
- f.write(f'pattern = \'{pattern}\'\n')
+ with open(filename, "w", encoding="utf8") as f:
+ f.write("# generated by scripts/generate_identifier_pattern.py\n")
+ f.write('pattern = "{}"\n'.format(pattern))
-if __name__ == '__main__':
+if __name__ == "__main__":
main()