2009-11-18 90 views
1

我想在我的某些代码中注释掉行。我有不同的代码,他们使用不同的评论领导。例如。在乳胶中:'%',在Fortran 90中:'!'并在Python中:'#'。我想做一个替换命令,看起来是这样的:评论Vim中的比赛 - 独立评论的领导者?

:g/<search-string>/s/^/<add-comment-leader-here>/ 

如果这是可能的,我也可以使Vim的命令自动注释选定的文本。类似这样的:

vmap <z> :'<,'>s/^/<add-comment-leader-here>/ 

欢迎任何想法! :)

回答

4

退房Enhanced Commentify:我认为这是你想要的:它决定了基于文件类型的评论领导。

如果您想自己动手,最简单的方法是定义一个使用exec构建命令的映射,并在您的~/.vim/after/ftplugin/c.vim和其他ftplugin文件中包含一个变量。或者,只需将相同的映射(与不同的领导者)添加到每个ftplugin文件。

+1

如果您使用的是EnhancedCommentify,那么您应该可以执行通用的 :g//exe“正常\ 评论” - 无论当前文件类型是什么。 – 2009-11-18 13:03:03

+0

如果链接仍然中断,你可以试试这个镜像:https://github.com/vim-scripts/EnhCommentify.vim – olibre 2013-12-28 00:06:22

5

如果你还没有看到它,你可能会对NERD Commenter Vim插件感兴趣。

+0

你对NERD Commenter和Enhanced Commentify的区别有什么意见吗?看起来两者都做了类似我想做的事情......(并感谢提示,顺便说一句!) – 2009-11-18 10:10:26

+0

EnhancedCommentify更老,并且始终满足我的需求。最后,我从来没有觉得有必要测试挑战者。 – 2009-11-18 12:51:05