Редактировать несколько файлов без разделения окна - PullRequest
2 голосов
/ 22 февраля 2012

Я новичок в VIM.Похоже, что для того, чтобы функции копирования и вставки работали между разными файлами, нужно открыть файлы в одном и том же экземпляре VIM.Однако при этом экран терминала разделяется на 2. Открытие нового файла, его разбиение на 3 и т. Д.

что произойдет, если мне придется открыть, скажем, 10+ файлов?Как разработчики, использующие VIM, решают эту проблему?

Ответы [ 6 ]

8 голосов
/ 22 февраля 2012

Вы можете открывать файлы в одном и том же экземпляре vim и в одном и том же окне (не разбивая его).Это то, что называется буферами.Вид, который вы видите, является текущим буфером, но остальные буферы все еще открыты.

Здесь у вас есть введение в работу с vim с буферами.

Или введите:help buffers в vim.

Вы можете использовать некоторый плагин для более удобной работы с буферами vim.Я рекомендую вам bufexplorer или minibufexpl .

Вы также можете использовать вкладки , но мне всегда было удобнее работать с буферами, но этотолько мой случай.

4 голосов
/ 22 февраля 2012

Используйте tabedit вместо split, чтобы открыть больше файлов.

3 голосов
/ 22 февраля 2012

Откройте все ваши txt файлы на вкладках:

$ vim -p *.txt

Используйте GT GT для переключения между вкладками.


Или вы можете поместить эти сопоставления клавиш в ваш .vimrc:

nmap <C-H> gT
nmap <C-L> gt
nmap <leader>t :tabnew<CR>
3 голосов
/ 22 февраля 2012

Большинство пользователей используют разбиения только для одновременного просмотра двух файлов, когда это необходимо. Вы можете открыть столько файлов, сколько хотите в разных буферах, при этом на экране отображается только один буфер.

:e File1.txt
:e File2.txt and so on ...

, а затем переключаться через буферы с помощью :bprevious и :bnext (и множества других команд). Это действительно способ работы Vim.

Существует множество плагинов для управления буферами и навигации по ним.

Одна вкладка на файл - неправильный путь ...

1 голос
/ 22 февраля 2012

Если ваше единственное требование - скопировать вставку между файлами.Вы можете делать это между различными экземплярами vim, если вы set clipboard=unnamed
. Это заставляет vim использовать системный буфер обмена вместо собственного внутреннего буфера.так что вы можете <C-c> из firefox, а затем p в vim, y из одного vim p в другой и т. д.
См. http://vim.wikia.com/wiki/VimTip21

Если вам нравится открывать файлы вв том же окне я бы использовал здесь один из других ответов и использовал бы буферы (вместо разбиений) или вкладки.Лично у меня часто открыто 10 или более буферов в одном окне gvim и 2 разбитых окна, которые я использую для просмотра буфера, который я переключаю с помощью :bn и :bp.

1 голос
/ 22 февраля 2012

Вы обнаружите, что VIM - очень гибкий и настраиваемый инструмент, поэтому, возможно, есть несколько подходов к этому. Лично мне нравится открывать только один буфер (мне редко нужно разделять его) и использовать плагин Minibufexpl , чтобы отслеживать количество открытых буферов и более эффективно переключаться между ними.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...