摘要:對于不同的代碼文本,可以使用不同的代碼檢查工具進行檢查。本文中介紹代碼檢查插件,與代碼檢查插件。默認為,設置為表示只對文件的根目錄有效,設置為表示禁止文件的查找。效果如下黃色代表警告,紅色代表錯誤。
1.什么是linter?
linter是用來檢查代碼是否符合規則的工具,例如檢查Javascript代碼的jshint工具,你可以設置其規則"eqeqeq":true,那么如果在你的代碼文件中使用了==而不是===,那么檢查的時候就會給出提示。
2.什么是SublimeLinterSublimeLinter是SublimeText的插件,它只是一個進行代碼檢查的框架,可以包括其他代碼檢查插件。
SublimeLinter可以容納許多linter插件,如SublimeLinter-jshint、SublimeLinter-csslint。SublimeLinter相當于一個插件容器,而具體的插件則負責調用具體的linter工具進行代碼檢查,如jshint、csslint。
對于不同的代碼文本,SublimeLinter可以使用不同的代碼檢查工具進行檢查。例如.js文件使用jshint, .css文件使用csslint。
進行代碼檢查的實際上是jshint與csslint這些代碼檢查工具。
例如我們要對JS代碼文件myApp.js進行檢查,不使用SublimeText編輯器的話,我們需要在windows的命令行窗口輸入jshint myApp.js,然后檢查結果會輸出在命令行窗口,你可以按照一條條的提示修正代碼。
而SublimeLinter優化了這個過程,它可以在你編寫代碼的時候就實時進行代碼檢查(當然這個時機是可以配置的,可以實時檢查,也可以在保存文件的時候檢查等)。而且檢查的結果會直接在你的代碼上進行提示,省去了你每次關閉便捷器,再去命令行窗口檢查的麻煩,而且結果更加直觀。
當然,SublimeText進行代碼檢查的插件有很多,你也可以選用其他的代碼檢查插件。
推薦大家使用PackageControl進行SublimeLinter的安裝,使用快捷鍵Ctrl+Shift+P,輸入Install Package, 然后輸入SublimeLinter安裝。關于PackageControl,前文中已有介紹。
4.2安裝linter插件由于SublimeLinter只是一個linter插件的框架,因此,還需要安裝額外的linter插件。
本文中介紹Javascript代碼檢查插件JSHint,與CSS代碼檢查插件csslint。
使用PackageControl分別安裝SublimeLinter-jshint與SublimeLinter-csslint
這一步安裝的是具體的代碼檢查工具,我們使用jshint與csslint。這兩個模塊的安裝需要node和npm的支持,大家可以到NodeJS官網下載windows的node安裝包安裝,網上資料很多,就不再討論。
在安裝好node與npm后,使用
npm install jshint -g
npm install csslint -g
將jshint與csslint兩個模塊安裝到全局環境
SublimeLinter的Settings可使用一個設置棧來表示,棧中位置高的設置可以覆蓋位置低的設置,SublimeLinter融合棧中所有的設置,最后形成代碼檢查時的設置。
Inline overrides Inline settings .sublimelinterrc settings Project settings User settings Default settings
SublimeLinter的設置可分為三種類型:Global、Linter、Meta。
Global類型的設置用來控制SublimeLinter的行為和顯示,例如"error_color"用來設置錯誤標記的顏色
Linter類型的設置針對具體的linter工具,Linter類型的設置全部放在linters這個設置中,使用object表示,object中的子項用來配置具體的linter。如
"linters": { "csslint": { "@disable": false, "args": [], "errors": "", "excludes": [], "ignore": "", "warnings": "" }, "jshint": { "@disable": false, "args": [], "excludes": [] } }
Meta類型的設置全部以"@"開頭,Meta類型可以在全局范圍進行設置,此時可以控制所有的linter,例如設置"@disable":true,那么所有的linter都被禁用;Meta類型如果在多帶帶的linter中設置,就只能用來控制多帶帶的linter。
5.1 Default settingsDefault settings是SublimeLinter與linter默認寫入的,在SublimeLinter更新的時候會被覆蓋,因此不要修改Default settings
5.2 User settingsUser Settings保存在Packages/User/SublimeLinter.sublime-settings文件中,可以通過Preferences->Package Settings->Sublime-Linter->Settings-User打開。
為了讓大家知道哪些設置是可用的,每次打開這個文件,SublimeLinter都會列出所有的設置項。
對用戶來言,User Settings其實是當做SublimeLinter的全局設置來用的
Project settings用來對項目的代碼檢查進行配置,可以通過Project->Edit Project打開SublimeText的項目配置文件。
所有的Project settings都放在一個"SublimeLinter"的object中。在"SublimeLinter"對象中配置的Sublime Linter配置對項目中的所有文件都是有效的。
.sublimelinterrc settings是大家用的比較多的方法。
通過在項目目錄下建立.sublimelinterrc文件來控制目錄及其子目錄中代碼文件的SublimeLinter設置。
SublimeLinter會先在文件的當前目錄中查找.sublimelinterrc文件,如果找不到,會向上一級目錄繼續查找。第一個被找到的.sublimelinterrc文件,用作.sublimelinterrc settings的設置,SublimeLinter并不對所有.sublimelinterrc文件的設置進行融合
對.sublimelinterrc文件查找的深度,通過"rc_search_limit"進行設置。默認為3,設置為null表示只對.sublimelinterrc文件的根目錄有效,設置為0表示禁止.sublimelinterrc文件的查找。
Projects/ Foobar/ build/ out.py src/ foo/ foo.py foobar.py baz/ baz.py bar/ bar.py test/ footest.py foobartest.py
如對上面的文件結構,"rc_search_limit"設置為3。那么.sublimelinterrc文件在以下目錄將分別影響以下文件:
foo – foo.py, foobar.py 和 baz/baz.py
src – foo, foo/baz, and bar目錄下的所有文件
Foobar – build, src/foo, src/bar, 和test目錄下的文件, 但是src/foo/baz目錄下的文件不受影響,其查找深度應至少為4。
5.5 Inline settings與Inline overridesInline settings用來針對單個文件進行設置。
Inline overrides用來針對單個文件進行設置,但與覆蓋設置棧中的其他設置不同,它可以添加或刪除設置的項。
具體請參考這里。
SublimeLinter的運行模式,總共有四種,分別如下:
true - 在用戶輸入時在后臺進行即時校驗
false - 只有在初始化的時候才進行校驗
"load-save" - 當文件加載和保存的時候進行校驗
"save-only" - 只有當文件被保存的時候進行校驗
根據個人愛好選擇,個人推薦"save-only"
可在Tools->Sublime Linter->Lint Mode中進行設置
錯誤標記樣式(Mark Style)以及側邊欄主題(Gutter Theme)也可在Tools->Sublime Linter中進行設置。大家可以選擇自己喜歡的外觀。
這樣在每次保存文件時,SublimeLinter就會進行檢查了。效果如下
黃色代表警告,紅色代表錯誤。
只有顏色和標記提示還不夠,可以Ctrl+Shift+P打開命令行窗口,輸入Show All Errors,那么就會在一個窗口中給出所有的錯誤提示了~如下圖
可以在每次保存時顯示錯誤提示窗口。通過Tools->Sublime Linter->Show Errors On Save設置,也可在User Settings或者.sublimelinterrc settings中設置
jshint與csslint可以在.jshintrc與.csslintrc中設置,我的設置如下:
.jshintrc文件設置
{ "bitwise": true,//不能使用位運算符& "curly": true,//不能省略循環和條件語句的大括號 "forin":true,//for in需要hasOwnProperty檢查 "latedef":"nofunc",//先定義變量,函數聲明除外 "undef":true,//變量未定義 "unused":"strict",//檢查未使用的變量與函數參數,跳過函數 "noarg":true,//禁止使用 arguments.caller 和 arguments.callee "maxparams": 4,//最多參數個數 "browser":true,//允許與瀏覽器相關的關鍵字,如document、history、clearIntreval等 "devel":true,//允許與開發相關的關鍵字,像alert,console等 "indent": 2,//縮進2空格 "maxerr":50,//超過50個錯誤,jslint停止工作 "newcap":true,//允許構造器函數首字母非大寫 "nomen": true,//不允許在兩邊(最前或最后)懸掛下劃線符號(_) "plusplus": false,//允許++和-- "eqeqeq": true,//使用===做判斷 "maxlen": 120,//行最大長度 "strict":true,//函數級別必須有"use strict"指令 //"maxstatements": 5,//限制函數內聲明語句的個數 "node": true,//node環境 "jquery":true//jquery環境 }
.csslintrc文件設置
{ "adjoining-classes": false, "box-sizing": false, "box-model": false, "compatible-vendor-prefixes": false, "floats": false, "font-sizes": false, "gradients": false, "important": false, "known-properties": false, "outline-none": false, "qualified-headings": false, "regex-selectors": false, "shorthand": false, "text-indent": false, "unique-headings": false, "universal-selector": false, "unqualified-attributes": false }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/78619.html
摘要:對于不同的代碼文本,可以使用不同的代碼檢查工具進行檢查。本文中介紹代碼檢查插件,與代碼檢查插件。默認為,設置為表示只對文件的根目錄有效,設置為表示禁止文件的查找。效果如下黃色代表警告,紅色代表錯誤。 1.什么是linter? linter是用來檢查代碼是否符合規則的工具,例如檢查Javascript代碼的jshint工具,你可以設置其規則eqeqeq:true,那么如果在你的代碼文件中...
摘要:可使用打開命令面板,輸入使用進行安裝。對括號標簽進行高亮顯示。顏色顯示工具安裝同上使用進行安裝。安裝后,使用快捷鍵可以調出取色板有了上面的設置和插件,基本已經可以玩的起來了,插件這東西少了不方便,多了機子卡,其實得不償失。 工欲善其事,必先利其器!對于程序猿們來說,一個方便、快捷、跨平臺的代碼編輯器能夠大大提高工作效率。在前端開發中,SublimeText是使用較為廣泛的編輯器。小伙伴...
摘要:可使用打開命令面板,輸入使用進行安裝。對括號標簽進行高亮顯示。顏色顯示工具安裝同上使用進行安裝。安裝后,使用快捷鍵可以調出取色板有了上面的設置和插件,基本已經可以玩的起來了,插件這東西少了不方便,多了機子卡,其實得不償失。 工欲善其事,必先利其器!對于程序猿們來說,一個方便、快捷、跨平臺的代碼編輯器能夠大大提高工作效率。在前端開發中,SublimeText是使用較為廣泛的編輯器。小伙伴...
閱讀 3021·2023-04-25 18:00
閱讀 2222·2021-11-23 10:07
閱讀 4061·2021-11-22 09:34
閱讀 1250·2021-10-08 10:05
閱讀 1572·2019-08-30 15:55
閱讀 3435·2019-08-30 11:21
閱讀 3339·2019-08-29 13:01
閱讀 1378·2019-08-26 18:26