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 'π'
```