auto_name_dirs
опция ответственна за это поведение.
Используйте команду unsetopt auto_name_dirs
отключить его.
Одним из обходных путей является использование (удаленного доступа) scratch-файлов для передачи текста:
В случае, если вы можете SSH обратно в свою систему, вы можете просто :разделить scp://hostname/path/to/file
, поместить туда дёрнутый текст и :write
.
Если вы можете просто использовать SSH из вашей системы в серверную коробку, откройте Vim локально и получите доступ к файлу скрипта с сервера: vim scp://server/path/to/file
(или просто используйте scp
напрямую).
Это все включено плагином netrw, который поставляется с Vim.
В MacOS, когда SSH от машины A к машине B и использование vim на машине B, я добавляю это в свой.vimrc на машине B:
nmap yr :call system("ssh $machineA_IP pbcopy", @*)<CR>
Таким образом, в обычном режиме содержимое регистра *, если vim@machine _B копируется в локальный буфер обмена компьютера A, при условии, что вы правильно настроили Vim с помощью +clipboard и регистра *