Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

lesslint

Package Overview
Dependencies
Maintainers
2
Versions
41
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

lesslint

lint your less code

  • 1.0.3
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
2
Created
Source

Lesslint

lesslint npm version Coverage Status Dependency Status devDependency Status

Lesslint 是一个基于 NodeJS 以及 EDP 的一个 lint 工具,使用它可以 lint 你的 less code,目前的 lint 规则是基于 ecomfe 的Less编码规范 [1.0]

经过了一段时间的重构,终于来到这个全新的版本。在这个版本中,less 解析器切换成 postcss 以及一个 less 的解析插件。这个版本里,改变了实现方式,没有依赖 Less 本身的 parser 以及 visitor 来进行解析,因此性能较以前的版本有比较大的提升。(这是个重构版本,因此并未对功能上做扩充,下个版本会对功能上做一些扩充,尽请期待~)

具体的配置参见 config

已经实现的 lint 规则:

  • @import 检验:@import 语句引用的文件必须(MUST)写在一对引号内,.less 后缀不得(MUST NOT)省略(与引入 CSS 文件时的路径格式一致)。引号使用 ' 和 " 均可,但在同一项目内必须(MUST)统一。import

  • 颜色检验:颜色定义必须(MUST)使用 #RRGGBB 格式定义,并在可能时尽量(SHOULD)缩写为 #RGB 形式,且避免直接使用颜色名称与 rgb() 表达式。hex-color, shorthand

  • 注释检验:单行注释尽量使用 // 方式。single-comment

  • 数值检验:对于处于 (0, 1) 范围内的数值,小数点前的 0 可以(MAY)省略,同一项目中必须(MUST)保持一致。leading-zero

  • 选择器检验:当多个选择器共享一个声明块时,每个选择器声明必须(MUST)独占一行。require-newline

  • 变量检验:变量命名必须(MUST)采用 @foo-bar 形式,不得(MUST NOT)使用 @fooBar 形式。variable-name

  • 0 值检验:属性值为 0 时,必须省略可省的单位(长度单位如 px、em,不包括时间、角度等如 s、deg)。zero-unit

  • 运算:+ / - / * / / 四个运算符两侧必须(MUST)保留一个空格。+ / - 两侧的操作数必须(MUST)有相同的单位,如果其中一个是变量,另一个数值必须(MUST)书写单位。require-around-space, operate-unit

  • 属性、变量:选择器和 { 之间必须(MUST)保留一个空格。require-before-space

  • 缩进:必须(MUST)采用 4 个空格为一次缩进, 不得(MUST NOT)采用 TAB 作为缩进。block-indent

  • 属性、变量:属性名后的冒号(:)与属性值之间必须(MUST)保留一个空格,冒号前不得(MUST NOT)保留空格;定义变量时冒号(:)与变量值之间必须(MUST)保留一个空格,冒号前不得(MUST NOT)保留空格。require-after-space

安装与更新

lesslint 已发布到 npm 上,可通过如下命令安装。-g是必选项。

$ [sudo] npm install lesslint -g

升级 lesslint 请用如下命令。

$ [sudo] npm update lesslint -g

使用

lesslint 目前就一条命令,后面带 -v 参数,会显示版本信息;后面带目录或者文件名就会对目录或文件执行 lesslint。

$ lesslint -v   // 显示版本信息
$ lesslint [filePath|dirPath]   // 对 file 或 dir 执行 lesslint

TODO

  1. 覆盖更多的规则,现在还未实现的规则如下:

    disallow-mixin-name-space, vendor-prefixes-sort, extend-must-firstline

CHANGELOG

FAQs

Package last updated on 09 Nov 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc