Изменить или подключить к завершению вкладки Jupyter - PullRequest
0 голосов
/ 13 мая 2018

Мне было интересно, есть ли способ изменить функциональность Jupyter Lab или Notebook?Например, если я наберу «\ alpha», а затем нажму клавишу табуляции, я получу символ UTF-8 «α» в ячейке.

Есть ли способ, который я могу сделать по своему усмотрению?[строка без пробелов] ", чтобы завершить табуляцию каким-либо конкретным символом или строкой UTF-8?

например," \ implies "+ tab ->" ⇒ "

Я вижу большое числослучаев использования этого в моей жизни в программировании, поэтому мне было интересно, предлагает ли Jupyter (Lab или Notebook) возможность изменять некоторые настройки (или загружать в файл), которые отображают строки в виде вкладок.Или есть другая идея, которую вы могли бы использовать для реализации этого?

Спасибо!

1 Ответ

0 голосов
/ 01 июня 2018

Jupyter (на основе) IPython и его механизм завершения - мы можем использовать его.

Обновление : вы можете переопределить latex_symbols dict, чтобы получить желаемое поведение:

from IPython.core.latex_symbols import latex_symbols
latex_symbols['\\implies'] = '⇒'

Вы сможете использовать этот пример, чтобы он работал с целым диапазоном символов.

Первоначальный ответ / другое решение: вы можете подключитьв завершители IPython, хотя он не будет работать точно так, как вы хотите: он не заменит текст, а просто добавит специальный символ.Вот пример:

from IPython import get_ipython

def implies_competer(ipython, event):
    return ['⇒']

ipython = get_ipython()
ipython.set_hook('complete_command', implies_competer, re_key='.*implies')

Затем, когда вы печатаете (пробел после ключевого слова важен): enter image description here

, а затем нажмите tab,Вы получите:

enter image description here

...