Сделать vim yankings глобальным через общий текстовый файл

Вкратце, я хочу следующее:

  • Y (ank) фактически записывает yanked текст в строку в текстовом файле, возможно, в вашем .vim каталоге
  • Эта строка имеет префикс имени регистра, поэтому «qyy дает q>my line of text
  • P (ut) получает ожидаемый результат из этого файла

Обоснование заключается в том, чтобы получить больше «системного» vim-буфера для решения этой проблемы:
Обмен Vim Yank Register

У меня такой же вопрос. Я нашел следующее простое решение:

Отредактируйте файл .vimrc. Добавьте строки

 map <Cy> <Esc>:'<,'>! cat \| tee ~/tmp/.myvimbuf<CR> map <Cp> o<Esc>:.!cat ~/tmp/.myvimbuf<CR> map <CP> O<Esc>:.!cat ~/tmp/.myvimbuf<CR> 

И убедитесь, что каталог ~ / tmp установлен на место.

Откройте два экземпляра vim. Если теперь выделить часть текста в одном экземпляре и нажать CTRL + y, а затем нажать CTRL + p или CTRL + SHIFT + p в другом экземпляре, вы должны получить то, что хотите.

Очевидно, что комбинации клавиш могут быть изменены так, как вам нравится.

Это требует cat и tee ; Он должен работать на любой машине Mac / Linux.

Все, что вам действительно нужно, это использовать функцию viminfo. Поместите в файл ~ / .vimrc что-то вроде следующего.

 set viminfo='20,\"90,h,% 

Затем масляные знаки, метки и т. Д. Сохраняются между сеансами автоматически. Смотрите :help viminfo для получения дополнительной информации.

  • Поддержка цвета 256 для фона vim в tmux
  • Поиск в истории уничтожения Вима
  • Как удалить этот символ «^ @» с помощью vim?
  • Bashrc: как узнать окно X доступно или нет?
  • Выравнивание длины строки работает корректно в консоли Vim, а не в графическом интерфейсе
  • Автоматически открывать NERDTree на вкладке «КАЖДЫЙ»
  • Вим - есть ли Capslock?
  • Vim: когда складной код позволяет оставить вкладки
  • Альтернатива jVi, которая поддерживает .vimrc
  • Как заменить экранный буфер vim предыдущей активностью bash после выхода?
  • Стоит ли тратить время на обучение Emacs?
  • Давайте будем гением компьютера.