Javascript语法检查插件 jsLint for Vim
作者:mingcheng 来源:gracecode.com 发布时间:2009-03-11 16:37:00
我们在编写 Javascript 时,Debug 是很痛苦的过程,而且有些语法问题虽使用 Firebug 能很快定位,但毕竟影响效率。
这里有个 Vim 插件,能使用 jsLint 帮助检查 Javascript 脚本中常见的语法错误,所以这篇文章可以帮助延长 F5 的寿命。
首先,下载 jsLint,解压缩到某个目录,然后将这个目录加入到 PATH 环境变量中。然后,下载 Vim 的 jsLint 插件,将它扔到 Vim 的 plugin 目录中即可。
当保存编辑好的 Javascript 文件时,插件就会调用 jsLint 检查文件是否存在语法错误。当然可以配置相应的配置选项(更多的选项可以参考其 Vim 插件脚本内容),例如
" 指定 jsLint 调用路径,通常不用更改let g:jslint_command = 'jsl'
" 指定 jsLint 的启动参数,可以指定相应的配置文件let g:jslint_command_options = '-nofilelisting -nocontext -nosummary -nologo -process'
" 插件的主要调用方式autocmd BufWritePost,FileWritePost *.js call JsonLint()
其实核心函数是 JsonLint() ,所以可以绑定快捷键,用于在任何时候检查错误。例如
map <C-s><C-j> :call JsonLint()<cr>
这样同时按 Ctrl + S、Ctrl + J 就可以检查 Javascript 语法有无问题了。
-- 更新 --
发现个不大不小的问题。就是在 Windows 环境中如果 Vim 本身设置了 utf-8 编码,由于与控制台编码不一致(控制台为 gbk 编码)造成 Javascript 文件在中文目录下不能正确启动 jsLint。
这里有个不完全的解决方案,更改对应的代码(从 34 行开始,加入判断)
let jsl_command = g:jslint_command . ' ' . g:jslint_command_options . ' ' . current_file if has("win32") && v:lang == 'zh_CN.utf-8' let jsl_command = iconv(jsl_command, 'utf-8', 'gbk') endif let cmd_output = system(jsl_command) if has("win32") && v:lang == 'zh_CN.utf-8' let cmd_output = iconv(cmd_output, 'gbk', 'utf-8') endif
猜你喜欢
- 如何制作一个股票滚屏显示面板?<html> <head> <script
- sys.path模块搜索路径的字符串列表。由环境变量PYTHONPATH初始化得到。sys.path[0]是调用Python解释器的当前脚本
- 任务描述 写小论文的利器是什么呢?LaTex!写代码的利器是什么呢?VSCode!好,那么如何在VSCode上配置
- <script language="javascript"> functio
- 大家经常在网上登陆的时候经常会看到让你输入验证码,有的是文字的,有的呢是图片,比如chinaren.com校友录中留言的时候,我们就会看到数
- 项目编写过程中,总能遇见对字典进行排序什么的,如果要实现多条件排序只需要下面几行代码实现。充分体现了python的好处了。teamitems
- 深底色风格的页面设计很受欢迎,它可以创造出别致优雅、极富创造力的效果。深底色设计适用于许多网站类型,但并非所有。这种风格应该在恰当的条件下使
- 在现代LOGO设计当中,叶子的形状被视做好的创意。或者说,是一种变革的想法。在网页中他们大多被用于轻量级的解决方案、干净的不抽像的设计。在实
- 话不多说,请看代码:function removeRepeat(data) {var temp = "";var mai
- 本文实例讲述了Python运算符重载用法。分享给大家供大家参考。具体分析如下:python中,我们在定义类的时候,可以通过实现一些函数来实现
- 本文研究的主要是Python使用requests及BeautifulSoup构建一个网络爬虫,具体步骤如下。功能说明在Python下面可使用
- 使用索引获取列表的元素(随机读取)列表元素支持用索引访问,正向索引从0开始colors=["red","blu
- 遇到这样一个需求,有一张表,要给这张表新增一个字段delta,delta的值等于每行的c1列的值减去上一行c1列的值。我的解决方案,可以通过
- 1 知识点详细知识点见:智能优化算法—蚁群算法(Python实现)我们这一节知识点只讲蚁群算法求解最短路径步骤及流程。&
- 前言项目需求是跟用户当前位置判断是否在给定的地理位置范围内,符合位置限制才可以打卡,其中的位置范围是一个或多个不规则的多边形。如下图,判断用
- 本文为大家分享了pygame游戏之旅的第9篇,供大家参考,具体内容如下在游戏开始之前定义一个函数,用来显示游戏介绍:def game_int
- python中ftplib模块支持ftp操作,主要使用FTP类。本文使用ftp操作进行连接FTP服务器、获取当前目录文件清单、上传文件等操作
- substr 定义和用法 substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。 语法 stringObject.
- 前言:今天学习python的常用模块的时候,了解到了time模块和datetime模块,于是想在编译环境中实时打印出时间,不会换行,且打印的
- 在学习django的时候,想要实现登录失败后,进行用户锁定,切记录锁定时间,在网上找了很多资料,但是都感觉不是那么靠谱,于是乎,我开始了我的