用途:ls-lint 是一款极快的目录与文件名 linter,用于在项目文件系统中强制执行命名规范。
主要能力:数毫秒内处理数千文件;通过 .ls-lint.yml 极简配置;跨平台支持 Windows/macOS/Linux;完整 Unicode 支持;依赖极少(go-yaml、doublestar)。内置六种命名规则:lowercase、camelCase、PascalCase、snake_case、SCREAMING_SNAKE_CASE、kebab-case,可用 | 组合多条规则。支持 .dir 目录命名、标准与复合扩展名(如 .d.ts、.test.ts、.module.css)、通配扩展名 .,以及按目录覆盖、glob 模式(、**、{a,b})和正则 regex:^pattern$。还支持目录名替换 ${0}、exists 规则约束文件数量,以及 GitHub Actions 集成。
使用方式:先核对版本 ls-lint --version 或 npx @ls-lint/ls-lint --version,若与 v2.3 不符应停止并查阅对应版本文档。安装可用 npm install -D @ls-lint/ls-lint、npx @ls-lint/ls-lint、brew install ls-lint 或直接下载二进制。在项目根目录创建 .ls-lint.yml,包含 ls 与 ignore 两部分,然后运行 npx @ls-lint/ls-lint,可用 --config 指定配置、--workdir 指定目录、--debug 调试。
适用场景:JavaScript/TypeScript 项目、monorepo、组件目录命名约束,以及 CI 中的命名规范检查。
限制:本技能仅记录 v2.3,不同版本的配置语法与可用规则可能不同。官方文档还涵盖多配置文件、Bazel 集成、Docker 用法与完整正则语法等本技能未覆盖的内容。常见问题包括路径不匹配、规则被更具体规则覆盖、ignore 未生效等。其他未在本资料中提供的信息暂未提供。