Узнанный сегодня, что при нажатии Ctrl-Opt-Cmd-V in Textmate это производит милый небольшой диалог "селектора", оперативный, который позволяет Вам пролистывать свои недавние записи буфера обмена. Это выглядит очень похожим на то, как работа CTRL-P и-N в VIM, кроме него показывает целые строки вместо простых объектов слова.
Кажется, что это было бы выполнимо в VIM — это уже имеет буфер, полный записей (буфер YankRing, например), и это уже имеет селектора, но я не могу думать, где я надеялся бы начинать соединять эти два. Какие-либо идеи?
(Я знаю, что YankRing уже делает это путем открытия нового окна, полного содержимого буфера, но интересно, существует ли способ сделать это без всего окна, switching/closing/etc),
Vim обеспечивает два пользовательских механизма завершения вставки: Определяемое пользователем завершение и завершение Omni. Можно читать о них здесь:
:help compl-function
:help compl-omni
:help complete-functions
:help 'completefunc'
:help 'omnifunc'
Я никогда не использовал их сам, но так как Вы попросили то, где начать смотреть, вот именно. Можно также хотеть считать этот раздел,
:help ins-completion
для объяснения различных встроенных механизмов завершения режима вставки Vim, которые могут помочь Вам постараться не писать свое собственное. Я не видел предопределенный механизм для выбора из записей буфера обмена, как бы то ни было. Можно вставить от предыдущих удалений с небольшой работой при помощи :registers
просмотреть доступные регистры и затем вставку содержания желаемого регистра с Ctrl-R, сопровождаемым именем регистра. Посмотрите
:help :register
:help registers
:help i_CTRL-R
Мой ответ является, вероятно, небольшим OT, но я предпочитаю иметь менеджера по буферу обмена в масштабе всей системы, поскольку эта функциональность полезна во многих контекстах. Вот те, я использую с тем же самым сочетанием клавиш для каждого: