Шаги, которые вы упомянули выше, должны вставлять символы yanked в позицию, в которой находится курсор при вставке.Поэтому я считаю, что есть три возможных причины для вставки в новую строку.
Возможно, один из ваших плагинов / отображений играет здесь дьявола.Просто попробуйте использовать vim без каких-либо плагинов или чего-либо еще, запустив (чистый эквивалент "-u ПО УМОЛЧАНИЮ -U НЕТ -i НЕТ") и посмотрите, будет ли он вставлен как положено:
vim--clean
Вы дернули последние символы строки, включая символ новой строки.Вполне возможно, верно?Как и последний символ каждой строки является новой строкой.Таким образом, восстановление и вставка этих символов (включая символ новой строки) в другую строку означает, что тот же символ новой строки вставляется в «другую строку».
Вариант вышеописанного - это когда вы дергаете, используя yy
(то есть, выдергиваете всю строку), тогда, безусловно, при вставке он переходит на новую строку.
Надеюсь, это вам как-то поможет.Ура!