Linux-оболочка (bash) на vi splitview

Я искал результаты для интеграции bash внутри vi, как показано в emacs; проблема в том, что у меня есть vi open с двумя представлениями, один из которых открыт с помощью команды :split, и я хочу использовать bash через второе представление, в то время как я редактирую файл в первом; если я делаю :sh при редактировании второго представления, весь сеанс приостанавливается, и оболочка bash открывается, но я не могу редактировать файл и использовать оболочку одновременно. Я не хочу использовать !<command> или внешние программы, такие как "terminator". Есть ли решение? спасибо

Ответы

Ответ 1

Вы пробовали искать сторонние плагины Vim? Conque Shell выглядит так, как будто это может сделать работу.

Ответ 2

Я боюсь, что эта функция недоступна (предположительно) Vim. Он находится в списке возможных новых функций. См. Здесь http://www.vim.org/sponsor/vote_results.php. В текущий момент написания это номер функции два, добавьте функции IDE. Если вы хотите проголосовать за эту функцию, вам нужно будет спонсировать Vim.

Ответ 3

Я использую VIM в сочетании с tmux, который отлично обрабатывает окна. Я просто перешел на этот рабочий процесс из комбинации терминала и GVIM, хотя, и я столкнулся с вашим вопросом в поисках части, отсутствующей в моем старом рабочем процессе.

Я могу запустить GVIM из командной строки с флагом "-servername" и добавить файлы в это окно с помощью флажка "-remote-tab". Теперь, когда я живу полностью в терминале с помощью tmux, у меня нет похожего варианта, поэтому BBW.:/

Ответ 4

Я просто написал для себя плагин для этой цели, см. http://www.vim.org/scripts/script.php?script_id=4887

Он не будет работать под Windows. С другой стороны, в нем используется философия Unix: два FIFO, какое-то сложное взаимодействие между фоновыми процессами. Это не требует питона или что-то еще. Он позволяет выполнять либо оболочку, либо любой интерпретатор для языка программирования. Вы можете увидеть видео с помощью GNU APL, работающего в буфере здесь.

Как и IPython, вы работаете над своим собственным буфером и видите результат в буфере с нуля.

Поскольку я потратил много времени на Stackoverflow, изучая ответы на следующие три страницы:

Я опубликую тот же ответ на трех страницах; Я надеюсь, что никто не пострадает от этого тройного поста, но на самом деле они задают что-то близкое, а кто-то еще может найти мой интерес, интересный для его/ее собственных целей, просматривая веб-страницы и находя любую из этих трех страниц.

Ответ 5

Как новый (и, может быть, лучший) ответ, могу ли я предложить вам попробовать удивительную неовимскую вилку vim? Это более новый проект; Я попробовал это сам и не нашел проблемы совместимости с vim (включая использование сложных плагинов), и у него есть именно то, о чем вы просите.

Ответ 6

neovim теперь поддерживают эмуляцию терминала. Подробнее в help nvim-terminal-emulator в nvim