Vim; Сочетание клавиш для добавления комментария в начало строки

Vim; Сочетание клавиш для добавления комментария в начало строки

Когда я пишу код, я часто вручную выполняю следующие действия, выбрав несколько строк кода.

:'<,'>s/^/#/

Я хочу добавить это в свой .vimrc, но у меня возникли проблемы с его работой. Цель состоит в том, чтобы иметь возможность выбрать набор строк, а затем нажать mapleader c, и vim добавит дополнительный символ # в начало всех выбранных строк.

1 " Key mapping.                                                                                                                                                      
2 let mapleader = ","
...
141 nmap <silent> <leader>c :<'>'s/^/#/<CR>

Строка 141, похоже, просто удаляет выбранные строки, и у меня возникли проблемы с пониманием того, почему это происходит. Есть идеи, что я делаю неправильно или что я могу изменить, чтобы это заработало?

решение1

Попробуйте это: он выполняет вставку блока в визуальном режиме

vmap <silent> <leader>c :norm i#<ESC>

решение2

Это точная копия строки, которую @miyalys дала в комментарии, и она работает именно так, как я и хотел.

vmap <silent> t :s/^/#/<CR>:let @/ = ""<CR>

Он говорит, что не смог заставить его работать с буквой «с», но мне удалось заставить его работать с этим символом.

Спасибо.

Связанный контент