Show More
@@ -6,7 +6,7 b' Requires Python 2.3 or newer.' | |||
|
6 | 6 | |
|
7 | 7 | This file contains all the classes and helper functions specific to IPython. |
|
8 | 8 | |
|
9 |
$Id: iplib.py 21 |
|
|
9 | $Id: iplib.py 2172 2007-03-23 14:04:07Z vivainio $ | |
|
10 | 10 | """ |
|
11 | 11 | |
|
12 | 12 | #***************************************************************************** |
@@ -491,6 +491,11 b' class InteractiveShell(object,Magic):' | |||
|
491 | 491 | r'([\?\w\.]+\w*\s*)' |
|
492 | 492 | r'(\(?.*$)') |
|
493 | 493 | |
|
494 | self.shell_line_split = re.compile(r'^(\s*)' | |
|
495 | r'(\S*\s*)' | |
|
496 | r'(\(?.*$)') | |
|
497 | ||
|
498 | ||
|
494 | 499 | # A simpler regexp used as a fallback if the above doesn't work. This |
|
495 | 500 | # one is more conservative in how it partitions the input. This code |
|
496 | 501 | # can probably be cleaned up to do everything with just one regexp, but |
@@ -1701,7 +1706,8 b' want to merge them back into the new files.""" % locals()' | |||
|
1701 | 1706 | |
|
1702 | 1707 | done = Set() |
|
1703 | 1708 | while 1: |
|
1704 | pre,fn,rest = self.split_user_input(line) | |
|
1709 | pre,fn,rest = self.split_user_input(line, pattern = self.shell_line_split) | |
|
1710 | # print "!",fn,"!",rest # dbg | |
|
1705 | 1711 | if fn in self.alias_table: |
|
1706 | 1712 | if fn in done: |
|
1707 | 1713 | warn("Cyclic alias definition, repeated '%s'" % fn) |
@@ -2020,10 +2026,13 b' want to merge them back into the new files.""" % locals()' | |||
|
2020 | 2026 | else: |
|
2021 | 2027 | return lineout |
|
2022 | 2028 | |
|
2023 | def split_user_input(self,line): | |
|
2029 | def split_user_input(self,line, pattern = None): | |
|
2024 | 2030 | """Split user input into pre-char, function part and rest.""" |
|
2025 | 2031 | |
|
2026 | lsplit = self.line_split.match(line) | |
|
2032 | if pattern is None: | |
|
2033 | pattern = self.line_split | |
|
2034 | ||
|
2035 | lsplit = pattern.match(line) | |
|
2027 | 2036 | if lsplit is None: # no regexp match returns None |
|
2028 | 2037 | #print "match failed for line '%s'" % line # dbg |
|
2029 | 2038 | try: |
@@ -1,3 +1,12 b'' | |||
|
1 | 2007-03-23 Ville Vainio <vivainio@gmail.com> | |
|
2 | ||
|
3 | * iplib.py: recursive alias expansion now works better, so that | |
|
4 | cases like 'top' -> 'd:/cygwin/top' -> 'ls :/cygwin/top' | |
|
5 | doesn't trip up the process, if 'd' has been aliased to 'ls'. | |
|
6 | ||
|
7 | * Extensions/ipy_gnuglobal.py added, provides %global magic | |
|
8 | for users of http://www.gnu.org/software/global | |
|
9 | ||
|
1 | 10 | 2007-03-23 Fernando Perez <Fernando.Perez@colorado.edu> |
|
2 | 11 | |
|
3 | 12 | * IPython/FakeModule.py (FakeModule.__init__): Small fix to |
General Comments 0
You need to be logged in to leave comments.
Login now