Подтвердить что ты не робот

Есть ли способ получить v $y, чтобы не копировать символ новой строки в Vim на Mac и Linux?

Я использовал версию Vim для Windows в прошлом, но я новый для MacVim. В MacVim, когда я переключаюсь в визуальный режим, используйте $ движение (выделение из моего курсора в конец строки) и yank, когда я вставляю скопированный контент, он включает возврат каретки, накидывая все после того, как точка пасты переходит к новой строке.

Это поведение показалось мне незнакомым (не говоря уже о раздражающем). Есть ли способ изменить это поведение в соответствии с версией Windows, где новая строка не включена в янки?

4b9b3361

Ответ 1

Я обнаружил, что параметр, вызывающий поведение, которое я использую для просмотра, это behave mswin, который, по моему мнению, включен по умолчанию в GVim для Windows.

Ответ 2

Только копирование текста до конца строки неуместно? y$ будет просто скопировать из текущего курсора до конца строки без новой строки.

Ответ 3

Там малоизвестное движение, которое удовлетворяет эту потребность, независимо от настройки поведения Windows и обычно может быть полезным в других контекстах: g_. Quoth :help g_:

g_          To the last non-blank character of the line and
            [count - 1] lines downward |inclusive|. {not in Vi}

Лично я не склонен использовать это для янкинга, потому что избегаю лишнего визуального нажатия клавиши и использую y$ (который не копирует новую строку, как предлагал @zigdon). Или еще лучше, nnoremap Y y$, так что Y работает последовательно с C и D.

Тем не менее, я часто использую g_ с surround.vim, где сопоставление для добавления окружающих часто бывает сложнее запомнить для меня, чем использование визуального выбора. Например, если вы хотите выбрать до конца строки и окружения с помощью парсеров, это будет ys$), что неплохо, но я склонен забыть мнемонику ys. v$S) кажется естественным, но имеет ту же проблему, что и ваш вопрос: он включает в себя новую строку и что общий беспорядок при добавлении окружающих. vg_S) - это именно то, что вы обычно хотите.

Одна приятная вещь в том, чтобы делать это визуально, так это то, что вы можете исправить средний выбор: я по-прежнему часто нажимаю v$ на мышечную память, но если вы видите, что у вас промахнулся, прежде чем действовать, вы все равно можете нажать g_ и исправьте выбор.

Ответ 4

Вы можете попробовать Du. Эффективно он делает именно то, что вы хотите, и он более удобен для пальцев, если вы намерены использовать его в необработанном редактировании.