首頁  >  文章  >  web前端  >  程式碼書寫風格同一的工具——editorConfig

程式碼書寫風格同一的工具——editorConfig

巴扎黑
巴扎黑原創
2017-07-20 13:34:201442瀏覽

前面的話

  在團隊開發中,統一的程式碼格式是必要的。但是不同開發人員的程式碼風格不同,程式碼編輯工具的預設格式也不相同,這樣就造成程式碼的differ。而editorConfig可以幫助開發人員在不同的編輯器和IDE中定義和維護一致的編碼風格。本文將詳細介紹統一程式碼風格工具editorConfig

 

概述

  editorConfig不是什麼軟體,而是一個名稱為.editorconfig的自訂檔案。此文件用來定義專案的編碼規範,編輯器的行為會與.editorconfig 檔案中定義的一致,並且其優先順序比編輯器本身的設定要高,這在多人合作開發專案時十分有用且必要

  有些編輯器預設支援editorConfig,如webstorm;而有些編輯器則需要安裝editorConfig插件,如ATOM、Sublime、VS Code等

  當開啟一個檔案時,EditorConfig插件會在開啟開啟一個檔案文件的目錄和其每一級父目錄查找.editorconfig文件,直到有一個配置文件root=true

  EditorConfig的配置文件是從上往下讀取的並且最近的EditorConfig配置文件會被最先讀取. 符合EditorConfig設定檔中的設定項會依照讀取順序被套用, 所以最近的設定檔中的設定檔擁有優先權

  如果.editorconfig檔沒有進行某些配置,則使用編輯器預設的設定

 

檔案語法

  editorConfig設定檔需要是UTF-8字元集編碼的, 以回車換行或換行作為一行的分隔符號

  斜線(/)被用作為一個路徑分隔符,井號(#)或分號(;)被用作於註釋. 註解需要與註解符號寫在同一行

# 【通配符】

*                匹配除/之外的任意字符串
**               匹配任意字符串
?                匹配任意单个字符
[name]           匹配name中的任意一个单一字符
[!name]          匹配不存在name中的任意一个单一字符{s1,s2,s3}       匹配给定的字符串中的任意一个(用逗号分隔) 
{num1..num2}    匹配num1到num2之间的任意一个整数, 这里的num1和num2可以为正整数也可以为负整数

【屬性】

  所有的屬性和值都是忽略大小寫的. 解析時它們都是小寫的

indent_style    设置缩进风格(tab是硬缩进,space为软缩进)
indent_size     用一个整数定义的列数来设置缩进的宽度,如果indent_style为tab,则此属性默认为tab_width
tab_width       用一个整数来设置tab缩进的列数。默认是indent_size
end_of_line     设置换行符,值为lf、cr和crlf
charset         设置编码,值为latin1、utf-8、utf-8-bom、utf-16be和utf-16le,不建议使用utf-8-bom
trim_trailing_whitespace  设为true表示会去除换行行首的任意空白字符。
insert_final_newline      设为true表示使文件以一个空白行结尾
root           表示是最顶层的配置文件,发现设为true时,才会停止查找.editorconfig文件

 

實例

  下面的實例中使用4 個空格來縮進,並不是說按一下空格會自動打出4 個空格來,也不是說要連按4 下空格;而是按tab 鍵時,編輯器會自動輸出4 個空格的寬度,而不是先前預設的製表符(\t)

# editorconfig.org

root = true

[*]
charset = utf-8
indent_size = 4
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true


[*.md]
trim_trailing_whitespace = false

 

以上是程式碼書寫風格同一的工具——editorConfig的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn