Управляющие символы gVim в Windows

Я скопировал некоторые данные из приложения, и оно имеет много ^Dс и ^Mв этом. Я избавился от ^D без проблем с использованием :%s/^D//g и я знаю, что могу удалить ^M с чем-то вроде :%s/^V^M//g но проблема в том, что я работаю на Windows и ^V Ctrl-V, который вставляет данные из буфера обмена в gvim. Как мне избежать функции вставки ^V/ Ctrl-V в Windows для VIM?

5 ответов

Решение

От :help CTRL-V-alternative:

                                                *CTRL-V-alternative* *CTRL-Q*
Since CTRL-V is used to paste, you can't use it to start a blockwise Visual
selection.  You can use CTRL-Q instead.  You can also use CTRL-Q in Insert
mode and Command-line mode to get the old meaning of CTRL-V.  But CTRL-Q
doesn't work for terminals when it's used for control flow.

Другой способ, специфичный для ^M, будет использовать :%s/\r//g так как ^ M - возврат каретки.

Чтобы использовать знакомые горячие клавиши MS Windows для копирования, вставки и т. Д., Используйте файл mswin.vim в качестве конфигурации. Скопируйте его из пути установки в каталог $HOME, переименованный в _vimrc. Тип:echo $HOME, чтобы выяснить, где это. Обычно что-то вроде C:\Users\'username'. Перезапустите gVim и ваши обычные горячие клавиши Windows Ctrl-V, Ctrl-C должны работать.

См. Где файл.vimrc должен находиться в Windows 7? немного больше указаний.

У меня была такая же проблема с vi внутри conemu и другими программами, которые прерывают нажатия клавиш и заменяют их другими действиями.

Я справился с этим с помощью ^K (Ctrl-K), чтобы ввести орграф для поиска и замены.

Например, я хотел удалить символы NUL (0x00) и символы CR (^M или 0xd)

Обычно я использовал бы ^V000 и ^V^M, однако с определенными орграфиками по умолчанию вы можете использовать следующее (примечание ^ K нажимает Ctrl и K)

:%s/[^KNU^KCR]//g

Если эти орграфы не работают, вы можете увидеть текущие установленные

:dig

Чтобы увидеть, как определить свой собственный увидеть

:help :dig

Пожалуйста, используйте :%s/\r/**\r\l**/g, Это преобразует возврат каретки в комбинацию возврата каретки в стиле Windows + перевода строки.

Другие вопросы по тегам