如何在vim中使用语法检查?

时间:2011-10-28 07:33:31

标签: vim syntax

这个问题已经以这种或那种形式在这里被问了十几次了,让我想到一个人如何真正解决如何配置syntasticjslint这样的问题做它应该做的事情(它的README文件完全没用)

see here

任何人都可以提供一些分步说明或指向此类说明的链接。我试着安装jslint和spidermonkey,但我无处可去。


我设法让语法检查工作(感谢romainl)。我学到的一些东西可以帮助任何有类似问题的人

  1. 要构建Javascript Lint,请查找嵌套在jsl-x.x.x/src/README.html
  2. 中的README文件
  3. 构建说明为gmake -f Makefile.ref,但gmakesame thingmake,因此请发出命令sudo ln -s /usr/bin/make /usr/bin/gmake
  4. 现在可以在jsl-0.3.0/src/Linux_All_DBG.OBJ/jsl找到
  5. jsl。要使其通常可访问,请执行以下操作:ln -s /whatever/jsl-0.3.0/src/Linux_All_DBG.OBJ /home/ForestGump/bin/jsl。更多信息here
  6. 要检查jsl是否真的有效,请找到测试文件(here),然后发出命令jsl -process test.js。它应列出所有错误。
  7. 要自定义命令行,请将其添加到vimrc文件set statusline=%{SyntasticStatuslineFlag()}

2 个答案:

答案 0 :(得分:2)

你做了什么?哪些有效,哪些无效?你收到错误信息吗?

这是我做的:

  1. JavaScript Lint site下载jsl来源。
  2. 内置jsl并将其移至$PATH
  3. 的某个位置
  4. 通过对随机.js文件运行它来检查它是否有效
  5. 已下载并安装了Syntastic作为Pathogen捆绑包。
  6. 键入:helptags /path/to/syntastic/doc因为某些原因,Pathogen的自动帮助代码生成对我不起作用。
  7. 阅读Syntastic的文档::help syntastic
  8. 步骤1到5不超过3或4分钟,可能更少。

    无论您尝试使用哪种新工具,步骤6都是强制性的。 RTFM。

    我没有在.vimrc中配置这三行旁边的任何东西(我相信第三行是多余的):

    let g:syntastic_auto_loc_list=1
    let g:syntastic_disabled_filetypes=['html']
    let g:syntastic_enable_signs=1
    

    并使用以下方式自定义状态线:

    %{SyntasticStatuslineFlag()}
    

    修改

    这是我的状态栏:

    set statusline=%<\ %n:%f\ %m%r%y%{SyntasticStatuslineFlag()}%=line:\ %l\ of\ %L,\ col:\ %c%V,\ win:\ %{WindowNumber()}\ 
    

    不要逐字复制,否则由于最后的函数调用会出现一些错误。在合成器的帮助中有一段关于它的内容。

    结束编辑

    毕竟,如果算上阅读文档10到12分钟,我每次保存带有语法错误的.js文件时都会弹出一个非常有用的位置列表和符号。

答案 1 :(得分:2)

根据README设置vundle。

将它放入你的.vimrc:

Bundle 'scrooloose/syntastic'

然后在vim中输入此命令:

:BundleInstall

就是这样。

编辑:自从我最初写这篇文章以来,Vundle已经改变了它的语法。如今,你使用

Plugin 'scrooloose/syntastic'

然后输入

:PluginInstall