2009-06-30 59 views
6

我不确定这是可能的,但我很有兴趣做到这一点。
理想情况下,我想将此功能映射到SHIFT + CTRL + 。Vim是否具有基于文件语法的自动注释功能?

我正在寻找一种方法让Vim输入与我正在编辑的文件的语法相对应的注释(单行)。如果有多个单行注释样式,Vim可以自动选择一个,或者给我选择。如果单行注释有两个部分(例如/**/),然后按SHIFT + CTRL + 首次将启动评论,所述第二时间将关闭注释。

例子:

  • 的Python:#
  • 的JavaScript://
  • C,C++:/**///

我知道有这将插入注释脚本对你来说,但我没有看到任何这样做会做到这一点编辑文件的语法。

回答

5

排序!我不认为vim会开箱即用,但是您可以安装插件,这些插件可以完成特定于正在编辑的文件类型的相当智能的评论(使用移动键,视觉线突出显示等)。您可以从vim.org获得这些插件,如果您不喜欢它们随附的那些,您应该可以在.vimrc文件中创建自己的密钥映射。

tComment非常好看,并为我工作。

我听说EnhCommentify可能会更好,但我自己并没有使用它。

+0

谢谢!两个看起来都不错。我会在今天的某个时候尝试。 – 2009-06-30 15:08:24

2

参见:this script它提供了一个功能,以在视觉模式注释突出显示的区域。

你想开始在插入模式中的注释让你的函数看起来更像:

fun CommentLines() 
    exe ":[email protected]^@".g:Comment."@g" 
endfun 
-1

不完全是你在找什么,但有效率,我想你知道要使用哪个评论。 (所有这些都在命令模式下) 将光标移到您要评论的第一行。然后,我们预订购设置标记称为(有效名称是AZ,单个字符)键入

ma 

把光标移动到最后一行,然后设置一个称为B标记通过键入

mb 

然后评论整个街区(通过搜索新行和插入注释字符(注意使用“#”作为分隔符搜索,否则凌晨不得不逃离“/”)

:'a,'bs#^#//# 

或Python的:

:'a,'bs/^/#/ 

取消注释:

:'a,'bs#^//## 

当我们这样做行注释,它没有,如果我们已经在文件的其他意见无所谓,他们将被保留。

相关问题