Vim - yank из текущей позиции курсора до начала строки

в VIM, я понимаю, что мы можем сделать yank до конца строки, используя y$, но если, например, мой текст abcdefg, и мой курсор находится в 'g', и я вхожу в y^, строка будет скопирована без g. Моя идея состоит в том, чтобы скопировать всю строку без разрыва строки, любое подобное действие будет выполнено.

Ответы

Ответ 1

0y $$ - скопируйте строку без разрыва строки и верните курсор в конец

Ответ 2

Сделайте визуальный выбор, а затем дергайтесь, включая символ под курсором:

v0y

Ответ 3

Если все символы действительно вместе и соответствуют "предложению vim", вы можете использовать визуальный выбор для объекта sentence. A sentence в этом случае будет соответствовать abcdefg, даже если он не начинается в начале строки и не будет содержать строку окончания:

visy

Если вы хотите включить конечный пробел, вы должны использовать a вместо i (мнемонический для "внутри" ):

vasy

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

    abcdefg

Выбор не будет включать ведущую часть пробелов, просто abcdefg.

Ответ 4

Оказывается, дергается до конца строки - это вещь, которую вы часто будете делать. Таким образом, следующее отображение довольно популярно.

noremap Y y$

Он так популярен, он даже указан в разделе :h Y!

Если вы используете это сопоставление, ответ на ваш вопрос будет 0Y

Ответ 5

0yg_

- еще один вариант.

Но визуальный режим лучше:

v0y
v^y