Atom 编辑器配置 ESLint 和 EditorConfig

ESLint 是一个代码规范和语法错误检查工具。使用 ESLint 可以规范我们的代码书写,可以在编写代码期间就能发现一些低级错误。ESLint 需要结合编辑器或 IDE 使用。

EditorConfig 是一个保持缩进风格的一致的工具。当多人共同开发一个项目的时候,往往会出现每个人用不同编辑器的情况,而且有的人用 tab 缩进,有的人用 2 个空格缩进,有的人用 4 > 个空格缩进,EditorConfig 就是为了解决这个问题而诞生。EditorConfig 需要结合编辑器或 IDE 使用。

配置 ESLint

在 Atom 编辑器中,安装插件 linter 和 linter-eslint。

linter.png

在项目目录中本地安装 eslint。由于我们没有选择全局安装 eslint,因此只要是想使用 eslint 的项目,都要本地安装 eslint,并且初始化生成一个 .eslintrc.json 的配置文件。

$ npm install eslint --save-dev

在项目目录中初始化 eslint 配置。

$ ./node_modules/.bin/eslint --init

依次选择以下选项:

  • Use a popular style guide
  • Standard
  • JSON

eslint 会创建一个 .eslintrc.json 的配置文件,同时自动安装并添加相关的模块到 devDependencies。这里我们使用 Standard 规范,其主要特点是不加分号。

至此,在你的项目目录 (包括子目录) 中使用 Atom 编辑器编辑以 .js 结尾的文件时,ESLint 会自动检查你的语法是否符合规范。

lint.png

在任何目录,只要该目录存在 eslint 的配置文件,则 Atom 编辑器会自动检查语法规范。可以通过 Atom 的linter-eslint 插件的 Disabling 选项来设置。

linter-eslint.png
Disabling.png

配置 EditorConfig

在 Atom 编辑器中,安装插件 editorconfig。

editorconfig.png

在项目目录中创建 .editorconfig 配置文件。具体配置文件可以参考 https://atom.io/packages/editorconfig

# editorconfig.org
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
tab_width = 2

[*.md]
trim_trailing_whitespace = false

[Makefile]
indent_style = tab

这里我们使用 2 个空格缩进,tab 长度也是 2 个空格。trim_trailing_whitespace 用来删除每一行最后多余的空格,insert_final_newline 用来在代码最后插入一个空的换行。

至此,在你的项目目录 (包括子目录) 中使用 Atom 编辑器编辑任何类型文件的时候,都会按照 editorconfig 的配置文件来自动处理空白字符。

参考

《一起学 Node.js》彻底重写完毕

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,026评论 3 119
  • ESLint 配置 ESlint 被设计为完全可配置的,这意味着你可以关闭每一个规则而只运行基本语法验证,或混合和...
    静默虚空阅读 41,609评论 3 14
  • 前言 搭一个脚手架真不是一件容易的事,之前为了学习webpack是怎么配置的选择自己搭建开发环境,折腾了好几天总算...
    大柚子08阅读 22,389评论 24 40
  • 不能太把自己当回事,也不能太不把自己当回事。不能把别人太当回事,也不能太不把别人当回事。把这个度掌握好,也...
    756acc2f5b7d阅读 337评论 0 0
  • 很多时候我都在迷茫,我来到这个世界上的原因?我要做些什么?我是不是要活得有些意义?还是根本就没有太多原因。 以...
    Xuexiaohan阅读 250评论 0 0