我想知道在Vim中是否有任何键映射允许我缩进某些行代码(是否这些行已在可视模式下选择,或在当前光标位置上方/下方的n行)。
所以基本上可以转换以下内容
def my_fun(x, y):
return x + y
to
#def my_fun(x, y):
# return x + y
我可以使用#或“”来注释掉相关的行。理想情况下,如果给定的行已被注释掉,我还希望使用相同的键映射来取消注释。
我想知道在Vim中是否有任何键映射允许我缩进某些行代码(是否这些行已在可视模式下选择,或在当前光标位置上方/下方的n行)。
所以基本上可以转换以下内容
def my_fun(x, y):
return x + y
to
#def my_fun(x, y):
# return x + y
我可以使用#或“”来注释掉相关的行。理想情况下,如果给定的行已被注释掉,我还希望使用相同的键映射来取消注释。
当前回答
CtrlK评论(可视模式):
vnoremap <silent> <C-k> :s#^#\##<cr>:noh<cr>
取消注释(可视模式)的CtrlU:
vnoremap <silent> <C-u> :s#^\###<cr>:noh<cr>
其他回答
步骤1:转到要注释的第一行的第一列。
第二步:按:Ctrl+v并选择你想要评论的行:
第三步:shift - i#空格(进入左插入模式,输入字符插入。选择将消失,但其中的所有行将在步骤4后被修改。)
4 . Esc
单向手动
:set number
:10,12s/^/#
有一些很好的插件可以帮助注释/取消注释行。比如书呆子评论家。
NERD评论者的快捷方式示例:
[count]|<Leader>|cc |NERDCommenterComment|
Comment out the current line or text selected in visual mode.
[count]|<Leader>|cu |NERDCommenterUncomment|
Uncomments the selected line(s).
完整的文档在这里。
您可以将以下映射添加到您的.vimrc
vnoremap <silent> # :s/^/#/<cr>:noh<cr>
vnoremap <silent> -# :s/^#//<cr>:noh<cr>
突出你的区块:
Shift+v
#注释第一列中的行。
-#以同样的方式取消注释。
CtrlK评论(可视模式):
vnoremap <silent> <C-k> :s#^#\##<cr>:noh<cr>
取消注释(可视模式)的CtrlU:
vnoremap <silent> <C-u> :s#^\###<cr>:noh<cr>