Я использую VI и VIM в течение многих лет (30 или более) (в xterms, а не в своем собственном окне, gvim), и у меня есть огромная библиотека команд vim, которые я даю vim, используя в качестве выделения среднюю кнопку мыши.
Например, я часто делал такие вещи, как ...
vi {many_hundreds_of_files}
paste vim commands using mouse - one paste per file.
Выбор будет включать в себя множество команд VIM для выполнения таких вещей, как замена теста, форматирование, перемещение строк и т. Д. И т. Д. И т. П., И обычно заканчивается: w и: next VIM-командами в конце выбора, поэтому Vim готов для меня снова вставить в следующий файл. Это позволяет мне обновлять огромное количество файлов ОЧЕНЬ сложными способами, не требуя специальных сценариев (таких как perl-редактирование на месте) для этого.
Некоторые из этих командных вставок vim имеют длину более 200 строк (хранятся в текстовых файлах, которые я выскакиваю на экране, и «копировать все»! Они вносят МНОГО изменений в набор из тысяч файлов, которые я переформатирую. Но только для определенного набора файлов, а не для моей повседневной работы с vim. EG: Массовое переформатирование для файлов текста / данных.
Проблема...
Во время моего последнего системного патча (Fedora 25) vim теперь вставляет выделение мыши как текст, а не как команды vim, и я не могу остановить его!
Он все еще отлично работает в другой системе (Fedora 24).
Если я хочу вставить текст, я вхожу в режим вставки перед вставкой! Я не хочу, чтобы VIM автоматически вставлял выделенные фрагменты в виде текста, когда он не находится в режиме вставки. Я понимаю, что это подразумевалось как средство обеспечения безопасности, но для меня это большая проблема юзабилити.
Я попытался датировать записи terminfo (xterm-256color) с машины, которая этого не делает (особенно запись terminfo «kmous»). Я также посмотрел на настройку vim ": set mouse =" (которая является нулевой!). Я не знаю, если это Xterm (сомнительно), или что-то, что изменилось в VIM (вероятно), и журналы изменений и Google были бесполезны.
Ничто, однако, не кажется мне прежним поведением.
vim
изменение: как vim
внутри xterm
знать, что что-то вводится через клавиатуру или вставляется через кнопку мыши? Я не знаю такого механизма. С другой стороны, xterm
знает, что он выполняется, vim
поэтому он может решить окружить вставку с помощью i
и <esc>. Попробуйте (а) с окном терминала другого типа и (б) копию vim
с другим именем. Это должно помочь сузить причину проблемы.
vim
угон вашего метода вставки. Может быть, попробуйте ssh'ing или telneting в вашу машину и вставьте таким образом. Если у вас есть Windows box, используйте putty для ssh на вашем компьютере Fedora25 и вставьте его таким образом.
gvim.exe
(graphic-vim) и командную строку vim.exe
. Вставьте "itext" в gvim.exe, и вы получите itext
. Вставьте его в vim.exe, и вы получитеtext
pastetoggle
вариант?