为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Vim for Python代码中在注释和注释之间切换

如何在Vim for Python代码中在注释和注释之间切换

小唯快跑啊 2021-03-05 11:57:54
我希望有一个命令可以在一行/块python代码中切换注释。我在.vimrc文件中使用以下代码:" (un-)commenting" comment line, selection with Ctrl-N,Ctrl-Nau BufEnter *.py nnoremap ,c mn:s/^\(\s*\)#*\(.*\)/\1#\2/ge<CR>:noh<CR>`nau BufEnter *.py inoremap ,c <C-O>mn<C-O>:s/^\(\s*\)#*\(.*\)/\1#\2/ge<CR><C-O>:noh<CR><C-O>`nau BufEnter *.py vnoremap ,c mn:s/^\(\s*\)#*\(.*\)/\1#\2/ge<CR>:noh<CR>gv`n"" " uncomment line, selection with Ctrl-N,Nau BufEnter *.py nnoremap ,u mn:s/^\(\s*\)#\([^ ]\)/\1\2/ge<CR>:s/^#$//ge<CR>:noh<CR>`nau BufEnter *.py inoremap ,u <C-O>mn<C-O>:s/^\(\s*\)#\([^ ]\)/\1\2/ge<CR><C-O>:s/^#$//ge<CR><C-O>:noh<CR><C-O>`nau BufEnter *.py vnoremap ,u mn:s/^\(\s*\)#\([^ ]\)/\1\2/ge<CR>gv:s/#\n/\r/ge<CR>:noh<CR>gv`n但是,您是否有一种方法可以进行切换,即在未注释的情况下使用相同的快捷方式进行注释,或者在未注释的情况下使用相同的快捷方式进行注释?
查看完整描述

2 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

您可以使用Tim Pope的vim-commentary插件。然后,您可以创建一个映射,例如

nmap ,cc <Plug>CommentaryLine

使用此映射,您可以使用相同的键序列进行注释和取消注释。它还会自动适应文件类型。对于不支持的文件类型,您可以commentstring手动设置。

默认映射是gcc,它确实可以满足您的需求:切换已注释/未注释。


查看完整回答
反对 回复 2021-03-26
?
慕少森

TA贡献2019条经验 获得超9个赞

还有NERD批评家从Scrooloose,的制造商NERD树。它似乎比vim评论更广泛。

我唯一使用的地图是<leader>c<space>,c用于我的配置),切换评论。


查看完整回答
反对 回复 2021-03-26
  • 2 回答
  • 0 关注
  • 206 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信