Вы могли сделать поиск-и-замену:
M-%
(Prompt: Query replace: ) C-q C-j Enter
(Prompt: Query replace with: )Enter
Emacs теперь начнет ничем заменять каждый разрыв строки. Если Вы хотите избавиться от всех них, нажать !
. Если Вы хотите проверить каждое удаление, продолжайте нажимать y
или n
по обстоятельствам.
Чтобы быстро сохранить много текста из буфера обмена в файл, можно запустить cat > file. txt
, вставьте содержимое, затем нажмите Ctrl-d.
Если у Вас установлен xsel, Вы можете сделать :r ! xsel
для вставки выделения "primary" (также известного как "мышь") в Vim, или :r !xsel -b
для вставки буфера "clipboard" (Ctrl-c). Вы также можете сохранить выбор непосредственно в файл с помощью xsel >file.txt
или xsel -b >file.txt
. Это устраняет необходимость в отдельных действиях вставки + EOF и позволяет избежать печати всего буфера копирования в терминале.
Если у вас нет xsel, но есть xclip, то для первичного выбора используются следующие команды: xclip -out
или xclip -out -selection clipboard
для буфера буфера обмена.
Если у вас есть возможность xterm_clipboard
, вы можете использовать регистры *
и +
. Эти регистры взаимодействуют с буфером первичного выбора X11 и буфером обмена (соответственно).
Таким образом, если вы скопировали что-то через CTRL+c, вы можете вставить его в vim с помощью "+p.
Если вы просто выделили его, не копируя, вы можете вставить его с помощью "*p.
.
Также можно сделать буфер *
буфером по умолчанию, сделав :set clipboard=unnamed
. Затем любой yank (y), вставка (p) и т.д., который не указывает регистр, будет использовать регистр *
. Vim 7.3.74 также добавил clipboard=unnamedplus
, который будет использовать регистр +
по умолчанию.
Вы также можете скопировать вещи в первичный буфер выбора и буфер обмена, например, с помощью yanking: "+yy.
Обратите внимание, что, как уже упоминалось, для всех этих возможностей нужна функция xterm_clipboard
. Вы можете увидеть, есть ли у вас эта возможность, сделав :версия
внутри vim, или vim --версия
из оболочки, ищите +xterm_clipboard
. Если в ней сказано -xterm_clipboard
, то у вас его нет и вам придется перекомпилировать vim.
Это буферная проблема с промыванием в диске. Vim пытается сохранить вашу работу в безопасности и не думает, что вы можете ввести несколько тысяч символов в секунду. Прочитайте : помочь Swap-файл
для некоторых деталей в буферизации. Решение вашей проблемы в том, что это:
Выключите Swapfile Vim либо с:
vim -n <your file>
или изнутри VIM перед пастой:
:set noswapfile
см. : Спрашивать Swapfile
для более подробной информации.
Другой вариант - просто выключить синхронизацию на диск файла подкачки с помощью : установить SWAPSYNC =
, но эта опция занимает больше нажатий на клавише, чтобы отменить, и я ленивый. :)
Отключение свопа не безопасно для обычных операций! Сразу после пасты, либо используйте : установить Swapfile
или : установить SWAPSYNC = fsync
, чтобы вернуться к нормальному поведению (хотя технически, нормальное поведение может быть синхронизацией И нет fsync , чек с : установить Swapsync?
заранее, если вы хотите пойти по этому маршруту).