Show More
@@ -79,12 +79,13 b' import sys' | |||
|
79 | 79 | from IPython.config.configurable import Configurable |
|
80 | 80 | from IPython.core.error import TryNext |
|
81 | 81 | from IPython.core.inputsplitter import ESC_MAGIC |
|
82 | from IPython.core.latex_symbols import latex_symbols | |
|
82 | 83 | from IPython.utils import generics |
|
83 | 84 | from IPython.utils import io |
|
84 | 85 | from IPython.utils.decorators import undoc |
|
85 | 86 | from IPython.utils.dir2 import dir2 |
|
86 | 87 | from IPython.utils.process import arg_split |
|
87 | from IPython.utils.py3compat import builtin_mod, string_types | |
|
88 | from IPython.utils.py3compat import builtin_mod, string_types, PY3 | |
|
88 | 89 | from IPython.utils.traitlets import CBool, Enum |
|
89 | 90 | |
|
90 | 91 | #----------------------------------------------------------------------------- |
@@ -601,7 +602,6 b' class IPCompleter(Completer):' | |||
|
601 | 602 | self.magic_matches, |
|
602 | 603 | self.python_func_kw_matches, |
|
603 | 604 | self.dict_key_matches, |
|
604 | self.latex_matches | |
|
605 | 605 | ] |
|
606 | 606 | |
|
607 | 607 | def all_completions(self, text): |
@@ -970,10 +970,12 b' class IPCompleter(Completer):' | |||
|
970 | 970 | return [leading + k + suf for k in matches] |
|
971 | 971 | |
|
972 | 972 | def latex_matches(self, text): |
|
973 |
|
|
|
974 | return ['foo'] | |
|
975 | else: | |
|
976 | return [] | |
|
973 | slashpos = text.rfind('\\') | |
|
974 | if slashpos > -1: | |
|
975 | s = text[slashpos:] | |
|
976 | if s in latex_symbols: | |
|
977 | return s, [latex_symbols[s]] | |
|
978 | return u'', [] | |
|
977 | 979 | |
|
978 | 980 | def dispatch_custom_completer(self, text): |
|
979 | 981 | #io.rprint("Custom! '%s' %s" % (text, self.custom_completers)) # dbg |
@@ -1048,13 +1050,18 b' class IPCompleter(Completer):' | |||
|
1048 | 1050 | matches : list |
|
1049 | 1051 | A list of completion matches. |
|
1050 | 1052 | """ |
|
1051 | io.rprint('\nCOMP1 %r %r %r' % (text, line_buffer, cursor_pos)) # dbg | |
|
1053 | # io.rprint('\nCOMP1 %r %r %r' % (text, line_buffer, cursor_pos)) # dbg | |
|
1052 | 1054 | |
|
1053 | 1055 | # if the cursor position isn't given, the only sane assumption we can |
|
1054 | 1056 | # make is that it's at the end of the line (the common case) |
|
1055 | 1057 | if cursor_pos is None: |
|
1056 | 1058 | cursor_pos = len(line_buffer) if text is None else len(text) |
|
1057 | 1059 | |
|
1060 | latex_text = text if not line_buffer else line_buffer[:cursor_pos] | |
|
1061 | latex_text, latex_matches = self.latex_matches(latex_text) | |
|
1062 | if latex_matches: | |
|
1063 | return latex_text, latex_matches | |
|
1064 | ||
|
1058 | 1065 | # if text is either None or an empty string, rely on the line buffer |
|
1059 | 1066 | if not text: |
|
1060 | 1067 | text = self.splitter.split_line(line_buffer, cursor_pos) |
@@ -1065,7 +1072,7 b' class IPCompleter(Completer):' | |||
|
1065 | 1072 | |
|
1066 | 1073 | self.line_buffer = line_buffer |
|
1067 | 1074 | self.text_until_cursor = self.line_buffer[:cursor_pos] |
|
1068 | io.rprint('COMP2 %r %r %r' % (text, line_buffer, cursor_pos)) # dbg | |
|
1075 | # io.rprint('COMP2 %r %r %r' % (text, line_buffer, cursor_pos)) # dbg | |
|
1069 | 1076 | |
|
1070 | 1077 | # Start with a clean slate of completions |
|
1071 | 1078 | self.matches[:] = [] |
General Comments 0
You need to be logged in to leave comments.
Login now