Доступ к терминалу, когда вы находитесь на Vim

Возможно, это не так «графически», но если вы предпочитаете не устанавливать какие-либо дополнительные пакеты, у вас также есть возможность просто запустить apt-cache rdepends <package>.

Вы также можете взглянуть на параметр depends .

1
задан 18 August 2014 в 20:17

5 ответов

В vim просто введите:

:!sh

:! запускает внешний процесс - в этом случае sh - другую оболочку. Когда вы выйдете из оболочки, управление вернется в vim. Если вы хотите использовать оболочку одновременно с vim, добавьте & в конец команды sh:

:!sh&
34
ответ дан 24 May 2018 в 05:43
  • 1
    Или просто используйте :shell. – wchargin 12 July 2014 в 20:54
  • 2
    Это лучший ответ для большинства целей. – Frank Conry 13 July 2014 в 09:08
  • 3
    Это хорошо, но как насчет того, когда команда запускает сервер, например http-server, и распечатывает журналы, которые я хочу просмотреть? Я хотел бы иметь возможность переключиться на мои файлы, внести изменения, а затем вернуться к журналам. – Costa 5 December 2016 в 23:36

Вы можете использовать команду :shell (или короткую форму :sh). Из :help :shell:

Эта команда запускает оболочку. Когда оболочка выходит (после команды «exit») вы возвращаетесь в Vim. Имя команды оболочки происходит из опции «shell».

По умолчанию на Ubuntu это даст вам bash. введите exit, чтобы вернуться в vim, когда закончите.

20
ответ дан 24 May 2018 в 05:43

В дополнение к всем ответам.

Вы можете установить плагин ConqueTerm

Этот плагин обеспечивает возможность запуска интерактивных программ внутри буферов vim.

После установки вы можете добавить эти 2 строки к вашему .vimrc:

:nnoremap <S-w> :q!<CR>
:nnoremap <S-t> :ConqueTermSplit bash<CR>

И вы сможете запустить bash, нажав Shift + T, и закройте текущую вкладку Conque, нажав Shift + W [!d6 ]

Это необходимо, если вам нужно быстро открыть / закрыть bash.

Здесь плагин ConqueTerm , показывающий, как он выглядит как

6
ответ дан 24 May 2018 в 05:43

Другой вариант с экрана или byobu - открыть вкладку в этих программах. Эти программы упрощают хранение терминальной сессии c.q. оболочка открыта и переключается между этими экранами с помощью клавиатуры.

3
ответ дан 24 May 2018 в 05:43

С недавнего vim вы можете теперь делать:

:terminal

Это было первоначально добавлено в Vim 8.0.693, но с большим количеством ошибок. См. [F3]:

WARNING: THIS IS ONLY PARTLY IMPLEMENTED, ANYTHING CAN STILL CHANGE

The terminal feature is optional, use this to check if your Vim has it: 
        echo has('terminal')
If the result is "1" you have it.   

[...]

The terminal feature requires the +multi_byte, +job and +channel features.

==============================================================================
1. Basic use                                            terminal-use

This feature is for running a terminal emulator in a Vim window.  A job can be
started connected to the terminal emulator. For example, to run a shell: 
     :term bash

Or to run a debugger: 
     :term gdb vim

The job runs asynchronously from Vim, the window will be updated to show
output from the job, also  while editing in any other window.
3
ответ дан 24 May 2018 в 05:43

Другие вопросы по тегам:

Похожие вопросы: