##// 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:

r23699:adf10a5a
r25595:d9c0e690
Show More
prompts.py
21 lines | 607 B | text/x-python | PythonLexer
fperez
Reorganized the directory for ipython/ to have its own dir, which is a bit...
r0 # -*- coding: utf-8 -*-
Thomas Kluyver
Remove PromptManager class...
r22425 """Being removed
"""
Brian Granger
Refactor of prompts and the displayhook....
r2781
Thomas Kluyver
Refactor prompt handling into new prompt manager.
r5495 class LazyEvaluate(object):
"""This is used for formatting strings with values that need to be updated
Thomas Kluyver
Further cleanup of prompts code - docstrings, etc.
r5496 at that time, such as the current time or working directory."""
Thomas Kluyver
Refactor prompt handling into new prompt manager.
r5495 def __init__(self, func, *args, **kwargs):
self.func = func
self.args = args
self.kwargs = kwargs
Tayfun Sen
Fixes tests by using in_normal colors for input.
r21829
Thomas Kluyver
Refactor prompt handling into new prompt manager.
r5495 def __call__(self, **kwargs):
self.kwargs.update(kwargs)
return self.func(*self.args, **self.kwargs)
Tayfun Sen
Fixes tests by using in_normal colors for input.
r21829
Thomas Kluyver
Refactor prompt handling into new prompt manager.
r5495 def __str__(self):
MinRK
use cleaner, less safe, unicode/str in LazyEvaluate
r7581 return str(self())
Srinivas Reddy Thatiparthy
Update prompts.py
r23067
MinRK
support unicode in LazyEvaluate...
r7571 def __format__(self, format_spec):
MinRK
fix format of LazyEvaluate based on *actual* review
r7578 return format(self(), format_spec)