##// END OF EJS Templates
support for unicode identifiers...
support for unicode identifiers This rewrites some of the regular expressions that are used to match Python identifiers, so that they are unicode compatible. In Python 3, identifiers can contain unicode characters as long as the first character is not numeric. Examples for the changes: • inputtransformer: ``` In [1]: π = 3.14 In [2]: π.is_integer? Object `is_integer` not found. ``` ---------- • namespace: ``` π.is_integ*? ``` or ``` In [1]: %psearch π.is_integ Python identifiers can only contain ascii characters. ``` ---------- • prefilter: ``` %autocall 1 φ = float get_ipython().prefilter("φ 3") # should be 'φ(3)', but returns 'φ 3' ``` ---------- • completerlib: If there is a file e.g. named `π.py` in the current directory, then ``` import IPython IPython.core.completerlib.module_list('.') # should contain module 'π' ```

File last commit:

r24535:23eb6b09
r25595:d9c0e690
Show More
fixup_whats_new_pr.py
46 lines | 1.1 KiB | text/x-python | PythonLexer
/ tools / fixup_whats_new_pr.py
"""
This tool is used during CI testing to make sure sphinx raise no error.
During development, we like to have whatsnew/pr/*.rst documents to track
individual new features. Unfortunately they other either:
- have no title (sphinx complains)
- are not included in any toctree (sphinx complain)
This fix-them up by "inventing" a title, before building the docs. At release
time, these title and files will anyway be rewritten into the actual release
notes.
"""
import glob
def main():
folder = 'docs/source/whatsnew/pr/'
assert folder.endswith('/')
files = glob.glob(folder+'*.rst')
print(files)
for filename in files:
print('Adding pseudo-title to:', filename)
title = filename[:-4].split('/')[-1].replace('-', ' ').capitalize()
with open(filename) as f:
data = f.read()
try:
if data and data.splitlines()[1].startswith('='):
continue
except IndexError:
pass
with open(filename, 'w') as f:
f.write(title+'\n')
f.write('='* len(title)+'\n\n')
f.write(data)
if __name__ == '__main__':
main()