После включения set mouse=a текст, скопированный внутри Vim, не будет вставляться вне Vim. Кто-нибудь знает, как это исправить?
Здесь выбор текста с помощью мыши включает визуальный режим и отключает параметр Copy во всплывающем меню:
 
После включения set mouse=a текст, скопированный внутри Vim, не будет вставляться вне Vim. Кто-нибудь знает, как это исправить?
Здесь выбор текста с помощью мыши включает визуальный режим и отключает параметр Copy во всплывающем меню:
 
Нажмите shift во время выбора мышью. Это приведет к выбору мыши, как если бы mouse=a не был включен.
Примечание. Этот трюк также применяется к "средней паре кнопок": если вы хотите вставить текст vim, который был выбран снаружи, нажмите shift, щелкнув среднюю кнопку. Просто убедитесь, что режим вставки активирован, когда вы это делаете (вы можете также хотеть :set paste, чтобы избежать непредвиденных эффектов).
OS X (mac): удерживайте alt/option при выборе (source)
Используйте "+y. Вы не должны использовать команду копирования терминалов в любом случае, потому что это копирует то, что видит терминал, а не фактический контент.
Вы можете сопоставить его так:
:vmap <C-C> "+y
Затем выделите что-то с помощью мыши и нажмите Control-C, чтобы скопировать его.
Эта функция работает только тогда, когда Vim был скомпилирован с опцией +xterm_clipboard. Запустите vim --version, чтобы узнать, есть ли у него.
Вместо set mouse=a используйте set mouse=r в .vimrc
В OSX используйте fn вместо shift.
В Ubuntu можно использовать привязки X-Term для копирования и вставки в VIM (Ctrl-Shift-C и Ctrl-Shift-V) в тексте, который был hilighted с помощью клавиши Shift.
Еще одна опция OSX-Mac - снять отметку View->Allow Mouse Reporting (или нажать ⌘-R для ее переключения). Это позволяет вам переключаться между взаимодействием мыши и выбором мыши, что может быть полезно при выборе и копировании/вставке нескольких бит потому что вам не нужно удерживать ключ-модификатор для этого.
У меня обычно есть номера строк, поэтому это также скопирует номера строк, если вы выберете несколько строк. Если вы хотите скопировать несколько строк без номеров строк, отключите номера с помощью :set nonu, а затем вы можете :set nu повторно включить их после завершения копирования.
 Вы можете использовать :set mouse& в командной строке vim, чтобы разрешить копирование/вставку текста, выбранного с помощью мыши. Затем вы можете просто использовать среднюю кнопку мыши или shift insert, чтобы вставить ее.
Если вы используете сеанс Putty, он автоматически копирует выбор. Если мы использовали опцию "set mouse = a" в vim, выбор с помощью Shift + Mouse перетаскивает текст автоматически. Необходимо проверить X-term.
em... Продолжайте нажимать Shift, а затем щелкните правой кнопкой мыши
 Я случайно объяснил, как отключить set mouse=a, когда перечитал вопрос и обнаружил, что OP не хочет его отключать. В любом случае, для тех, кто ищет, как централизованно отключить мышь (set mouse=), я оставляю ссылку на свой ответ здесь: https://unix.stackexchange.com/a/506723/194822
 Параметры компиляции, с которыми был скомпилирован vim, являются частью проблемы. vim --version показывает это.
 В OSX по умолчанию vim имеет -clipboard но вам нужно +clipboard
 На OSX вы можете и, по-видимому, как правило, следует использовать Macvim. Вы можете сделать brew cask install macvim который есть у +clipboard.
Их у вас будет два VIMS.
~$ ls -l /usr/bin/vim   <--- default vim
-rwxr-xr-x  1 root  wheel  1745984 15 Jul  2017 /usr/bin/vim
~$ ls -l /usr/local/bin/vim   <-- macvim, installed recently via that mentioned brew line. 
lrwxr-xr-x  1 apple  admin  42 16 May 23:32 /usr/local/bin/vim -> /Applications/MacVim.app/Contents/bin/mvim
~$ 
 запуск vim запустит macvim, потому что /usr/local/bin путь /usr/local/bin должен быть перед /usr/bin в пути, хотя вы можете проверить, с which vim.
запуск vim (для запуска macvim), это нормально, но вы можете захотеть отобразить vi на macvim, потому что в противном случае запуск vi останется по умолчанию vim! Вы можете переписать или удалить (с помощью rm) и заново создать ссылку на sy sym с помощью ln. И чтобы сделать это без ошибки "операция не разрешена", вам необходимо (временно) отключить SIL. Https://apple.stackexchange.com/questions/208478/how-do-i-disable-system-integrity-protection- sip-aka-rootless-on-macos-os-x.
 у macvim есть +clipboard как показывает vim --version
 Вот рабочий ~/.vim/vimrc с необходимыми строками.
:set mouse=a
:map <leader>c "+y
:map <leader>v "+p
Ключ лидера по умолчанию - это обратный слеш.
Я прочитал предложение о том, что следует использовать ключевой ключ... (конечно, контроль имеет много ключей, которые уже используются, поэтому было предложено не использовать контроль. Я не знаю, относится ли это также к командному ключу, но так или иначе).
 С этим упомянутым отображением \c сделает "+y который скопирует из регистра, известного как +, в буфер обмена. И \v вставит из регистра, известного как +.
Так что копирование/вставка, которая работает между окнами.
 Другая ОС может потребовать "* вместо "+
У меня сработало удержание смены при копировании и вставке с выделением
В режиме ESC, когда установлено mouse = a, выберите текст с помощью мыши. Это позволит визуальный режим в vim. Затем вы можете нажать "y", чтобы вынуть выделенный текст и "p", чтобы вставить его туда, где вы хотите. Это происходит только внутри vim.