Я пытаюсь подключить свой Vim, чтобы я мог отправлять команды работающему экземпляру IPython. Есть сценарии для этого, но они устарели. Я пытаюсь написать новый.
Мой главный камень преткновения сейчас - это правильный способ заставить IPython прослушивать входящие сетевые соединения в фоновом режиме (т. Е. Другой поток, приветствуются другие решения) и выполнять полученные команды в главном потоке, Более ранние сценарии не выполняли команды в основном потоке и регулярно вызывали сбой, например, matplotlib.
Я вижу, что twisted предоставляет ThreadedSelectReactor
, но я не знаю, как правильно его использовать с IPython.
Обновление
Пример сценария:
2 Windows открыта, один - терминал с IPython, другой - Vim, где вы редактируете скрипт Python. Вы выбираете строку в Vim и нажимаете C-Enter, Vim отправляет строку в экземпляр IPython, который выполняет ее и печатает результат в терминале IPython, как если бы вы скопировали / вставили строку в себя.
(пользователи Matlab знают, насколько полезной может быть эта функция.)