так что я хотел бы знать, возможно ли выводить команды в html-окно, как TextMate?
В командной строке vim может выполнить команду, которая скажет браузеру открыть файл, который вы редактируете.
На Mac, используя vim в командной строке или MacVim, если вы редактировали файл с именем «test.html» в буфере и он находился в папке «Рабочий стол»:
:!open ~/Desktop/test.html
откроет или повторно откроет файл в браузере. Поэтому, когда вы вносите изменения, вы их выдаете, и браузер выходит на первый план с последней версией файла. Вы можете использовать другие параметры, чтобы «открыть», чтобы указать, какой браузер использовать. И вы можете легко добавить нажатие клавиши, чтобы открыть текущий файл, который является «%» в командной строке.
Если вы хотите захватить вывод команды в vim, есть несколько способов сделать это. Если вы выполните команду, vim будет записывать ее вывод во временный буфер для просмотра.
:!ls
отображает:
:!ls
Desktop Downloads Library Music Photo Tools Public VirtualBox VMs bin
Documents Editors Movies Music Tools Pictures Sites Web Tools
Вы также можете увидеть, что есть в Command - R-подобной функциональности в MacVim и Vim - Отображение вывода кода в новом окне Textmate? .
Я не уверен, что вы подразумеваете под "всплывающими подсказками". Обычно это относится к всплывающему тексту на кончике мыши, предлагающему контекстно-зависимую помощь. Вы не можете отправить текст через это, поэтому использование этого слова сбивает с толку.
MacVim и vim действительно имеют возможность создания фрагментов кода, кроме того, они могут работать со сценариями, могут работать с текстом, который является текущим выбором, и многое другое. Важно понимать, что MacVim - это слой графического интерфейса поверх обычного редактора vim, поэтому есть кое-что, чего он не сделает, потому что движок vim не делает его легким. Меня это никогда не беспокоило, потому что, если мне понадобится определенная функция TextMate, я запусту ее, использую эту конкретную вещь, а затем отскочу назад, если захочу. Но это не так уж часто для меня.
Возможно, вы захотите взглянуть на некоторые связанные темы здесь, в SO, справа на странице, а также взглянуть на некоторые плагины vim, например:
Я все время пользуюсь вышеуказанными. Следующие будут скучать, если у меня их не будет.
EDIT:
Перехват временного буфера в новый буфер в Vim довольно прост:
:redir @a
:sil !ls -al
:redir end
:vnew
"agp
Вторая строка :sil !ls -al
может быть любым выполнением команды. :sil
говорит Vim не выводить вывод во временный буфер, вместо этого перехватывает его без вывода сообщений, что избавляет от паузы «Нажать любую клавишу».
:vnew
создает вертикальное разбиение с новым буфером в нем. Вместо этого вы можете использовать :tabnew
, если хотите новую вкладку.
"agp
говорит ему использовать буфер @a
, вставить вывод в текущий буфер и оставить курсор под вставленным текстом.