# @exlint\.io/inflint 中文文档

规范地址：https://npmcn.com/package/%40exlint.io/inflint/

版本：2\.1\.1
npm 元数据更新时间：2023-11-26T17:35:16.942Z
中文译文更新时间：2026-11-14T07:04:18.276Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40exlint.io/inflint
原文对照：https://npmcn.com/package/%40exlint.io/inflint/?lang=original
项目主页：https://github.com/tal-rofe/Inflint#readme
源码仓库：https://github.com/tal-rofe/Inflint

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：129 kB，6 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=14\.16
- 运行依赖：8 个
- 首次发布：2022-06-21T12:05:16.886Z
- 最新版本发布：2023-11-26T17:35:16.731Z
- 近 30 天下载量：2176（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：11（近 12 个月 0 个）

## 中文简介

Inflint是一个扫描和验证文件名公约的工具.

## 安装

```sh
npm install @exlint.io/inflint
```

也可以使用：`pnpm add @exlint.io/inflint`、`yarn add @exlint.io/inflint`、`bun add @exlint.io/inflint`

## README

 [![CI status](https://img.shields.io/github/actions/workflow/status/tal-rofe/inflint/integrate.yaml?label=CI&logo=GitHub)](https://github.com/tal-rofe/inflint)[![npm downloads](https://img.shields.io/npm/dm/@exlint.io/inflint?logo=NPM) ](https://www.npmjs.com/package/@exlint.io/inflint)[![npm license](https://img.shields.io/npm/l/@exlint.io/inflint) ](https://github.com/tal-rofe/inflint)[![version](https://img.shields.io/npm/v/@exlint.io/inflint?label=version)](https://github.com/tal-rofe/inflint)

![](https://npmcn.com/package/%40exlint.io/inflint/assets/logo.png)

## 内脏

> Inflint是一个扫描和验证文件和文件夹名称公约的工具.

Inflint 允许您在您的仓库中轻松设置文件名公约 .

## 演示

![Inflint](https://npmcn.com/package/%40exlint.io/inflint/assets/demo.gif)

## 安装

**全球**

```bash
npm install --global @exlint.io/inflint
```

**当地**

```bash
npm install --save-dev @exlint.io/inflint
```

## 使用量

```sh
$ inflint [options] [files]
```

## 无害环境管理支助

现在支持Inflint **仅限** 无害环境管理模块,从版本 `>1.2.10`关于任何与此有关的问题,请访问此链接 [https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c 互联网档案馆的存檔,存档日期2013-12-21](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c)

## 配置

您可以通过各种选项指定Inflint的配置. 配置可设置在以下文件中 :

-   (单位:千美元) `package.json` 属性 : `"inflint": {...}`
-   (单位:千美元) `.inflintrc` 以 JSON 或 YAML 为格式的文件
-   (单位:千美元) `.inflintrc.json`, (中文(简体) ), `.inflintrc.yaml`, (中文(简体) ), `.inflintrc.yml`, (中文(简体) ), `.inflintrc.js`, (中文(简体) ), `.inflintrc.ts`,或 `.inflintrc.cjs` 文件
-   (单位:千美元) `inflint.config.ts`, (中文(简体) ), `inflint.config.js`,或 `inflint.config.cjs` 普通JS 模块导出对象

### 规则格式

在通过 CLI 或其他配置应用规则时,您必须遵循规则格式 . " (中文(简体) )`1`" 和 "`warn`" 是警告规则, "`2`" 和 "`error`" 是错误规则. 每个规则都有关键和价值。 键代表了 glob 模式 。 当一个文件符合模式时,它会被规则所执行. 规则值代表规则的执行.

**规则执行格式:**

-   设定文件存在规则 : `1 | 2 | 'warn' | 'error' | [1] | [2] | ['warn'] | ['error']`
    
    **示例**数字 : `{ './src/**/*': 2 }` 如果“ src” 文件夹内有文件/ 文件夹, Inflint 会发出错误
    
-   设定匹配文件名常规的规则 : `[1, <convention>] | [2, <convention>] | ['warn', <convention>]| ['error', <convention>]`
    
    **示例**数字 : `{ './src/**/*': [1, 'kebab-case'] }` + Inflint 显示一个错误, 如果在“ src” 文件夹内有任何文件/文件夹与“ kebab- case” 会话名称不符 .
    
-   设定规则选项 : `[1, <convention>(optional), <options>] | [2, <convention>(optional), <options>] | ['warn', <convention>(optional), <options>] | ['error', <convention>(optional), <options>]`
    
    **实例1**数字 : `{ './src/**/*': [1, { onlyFiles: true }] }` → Inflint 显示一个错误, 如果“ src” 文件夹内有文件( 并允许文件夹存在)
    
    **示例2**数字 : `{ './src/**/*': [1, 'point.case', { onlyFiles: true }] }` → Inflint 显示一个错误, 如果“ src” 文件夹内有不匹配“ 点- case” 常规名称的文件( 并且允许“ src” 文件夹内的文件夹不匹配“ 点. case” 模式)
    

> 如果你提供未知的公约, 一种或一种配置的别名, Inflint 认为"公约"是regex.

### 规则选项

您可以为任意规则设置选项, 以便获得一些定制 .

-   `onlyDirectories`: 布尔( 默认 ): `false`(中文(简体) )
    
    Inflint 只用目录检查规则, 跳过文件 .
    
-   `onlyFiles`: 布尔( 默认 ): `false`(中文(简体) )
    
    Inflint 只用文件检查规则, 跳过目录 .
    
-   `dot`: 布尔( 默认 ): `true`(中文(简体) )
    
    允许 Inflint 从一个时期开始匹配文件和目录(`.`) (中文(简体) ).
    
-   `caseSensitiveMatch`: 布尔( 默认 ): `true`(中文(简体) )
    
    启用匹配文件和文件夹的大小写敏感模式.
    

### 文件名称公约

您可以使用已知的规则设置文件名常规 。 Inflint 允许您设置如下: 《公约》 |:相去相去也;相去相去也;相去相去也;相去相去也;相去相去也;相去相去也 小写 `lowercase` 每个字母都必须是小写。 忽略非字母QQ 骆驼箱 `camelCase` 必定是"骆驼Case"格式 只允许字母和数字QQ 骆驼场点 `camelCase.point` 必定是"骆驼Case"格式 只有字母,数字和 `.` 允许 qq {\\fn黑体\\fs20\\shad2\\2ah82\\3ah20\\4ah33\\fscx95\\3ch592001\\be1}别这样 `PascalCase` QQ 必须是“ PascalCase” 格式 。 只允许字母和数字QQ 帕斯卡克点 `PascalCase.Point` QQ 必须是“ PascalCase” 格式 。 只有字母,数字和 `.` 允许 qq {\\fn黑体\\fs22\\bord1\\shad0\\3ahbe\\4ah00\\fscx67\\fscy66\\2chffffff\\3ch808080}你这只蛇 `snake_case` QQ 必须是“ snake case” 格式 。 只有小写字母、数字和 `_` 允许 qq 蛇口点 `snake_case.point` QQ 必须是“ snake case” 格式 。 只有小写字母,数字, `_` 财务报告和审定财务报表 `.` 允许 qq 尖叫声 `SCREAMING_SNAKE_CASE` QQ 必须是“ 尖叫 SNAKE CASE” 格式 。 只有大写字母、数字和 `_` 允许 qq 尖叫声 `SCREAMING_SNAKE_CASE.POINT` QQ 必须是“ 尖叫 SNAKE CASE” 格式 。 只有大写字母,数字, `_` 财务报告和审定财务报表 `.` 允许 qq {\\fn黑体\\fs22\\bord1\\shad0\\3ahbe\\4ah00\\fscx67\\fscy66\\2chffffff\\3ch808080}别这样 `kebab-case` | 必须是"kebab-case"格式. 只有小写字母、数字和 `-` 允许 qq 切入点 `kebab-case.point` | 必须是"kebab-case"格式. 只有小写字母,数字, `-` 财务报告和审定财务报表 `.` 允许 qq 点数 `point.case` QQ 必须采用"点. case"格式. 只有小写字母、数字和 `.` 允许 qq

### CLI 规则

在通过 CLI 添加规则时,您需要提供有效的 JSON `--rule` 参数。 你可以提供多种规则. JSON应当遵循上述规则格式.

**示例**数字 : `inflint --rule "{ \"src/**/*\": [1] }"`

### 别名

您可以使用已知的常规, 或者您可以通过应用别名, 通过 CLI 或其他配置来添加自己的常规 . 要使用别名,只需使用别名,因为您会使用已知的会用. 应采用以下格式的异名:

-   `<alias_name>: <regex>` Inflint 将应用同名异名来匹配提供的正则名.
    
    **示例**: 应用别名 `{ myAlias: '^.*$' }` 和规则 `{ 'src/**/*': [2, 'myAlias'] }` ^ Inflint 检查"src"文件夹中的任何文件/文件夹来匹配化名 regex.
    
-   `<alias_name>: [<regex>, <regex_flags>]` Inflint 应用别名来匹配提供的 regex 和给定的 regex 旗.
    
    **示例**数字 : `{ myAlias: ['^.*$', 'i'] }` • 适用的任何规则 `myAlias` 化名尝试匹配文件/文件夹名称, 以提供 regex 和 `i` (原始内容存档于2017-10-21). regex旗.
    

### CLI 别名

在通过 CLI 添加化名时,您需要为 `--alias` 参数。 你可以提供多个别名. JSON应当遵循上述别名格式.

**示例**数字 : `inflint --alias "{ \"myAlias\": \"^\\.\" }"`

> 您可以在 CLI 中以别名逃避 regex, 如果您在前缀字符 `\\`。 。 。 . `"^\\."` 将匹配任何以点开头的字符串( e)`.`(中文(简体) )

| 国 际 | 配置密钥 | 类型 | 默认 | 说明 |
| :-- | :-- | :-- | :-- | :-- |
| \- 说吧 | `extends` | 字符串 | \- 说吧 | 用于扩展配置的配置文件路径 |
| `--no-inflintrc` | \- 说吧 | 布尔 | `false` | Inflint 是否忽略任何配置文件 |
| `-c`, (中文(简体) ), `--config` | \- 说吧 | 字符串 | \- 说吧 | Inflint 将使用的配置文件路径 |
| `--rule` | `rules` | 上层 | \- 说吧 | 对文件使用 Inflint 规则 |
| `--alias` | `aliases` | 上层 | \- 说吧 | 与规则一起使用的 inflint 化名 |
| `--ignore-path` | `ignorePath` | 字符串 | `.inflintignore` | 忽略文件路径 Inflint 将用来忽略图案 |
| `--no-ignore` | `ignore` | 布尔 | `false` | 禁用忽略的文件和模式 |
| `--ignore-pattern` | `ignorePatterns` | 字符串 \[\] | `[]` | 要忽略的文件模式( 除了. inflintignore 中的模式) |
| `--quiet` | `quiet` | 布尔 | `false` | 是否只报告错误 |
| `--max-warnings` | `maxWarnings` | 数目 | `0` | 触发非零退出代码的警告次数 |
| `--bail` | `bail` | 布尔或数字 | `0` | 无法让 Inflint 退出的次数( 错误) 。 设置“ bail” 为真与设置“ 1” 相同 |
| `-o`, (中文(简体) ), `--output-file` | `outputFile` | 字符串 | \- 说吧 | 指定要写入报表的文件 |
| `--color`, (中文(简体) ), `--no-color` | \- 说吧 | 布尔 | `true` | 强制启用/禁用颜色 |
| `-h`, (中文(简体) ), `--help` | \- 说吧 | 布尔 | `false` | 显示帮助 |
| `-v`, (中文(简体) ), `--version` | \- 说吧 | 布尔 | `false` | 输出版本编号 |
| `--env-info` | \- 说吧 | 布尔 | `false` | 输出环境版本 |

## 实例

-   [校对:soup](https://github.com/Exlint/cli)
-   [@exlint.io/inflint (英语)](https://github.com/tal-rofe/inflint)
-   [@exlint.io/行动](https://github.com/Exlint/actions)
-   [克兹乙烯](https://github.com/tal-rofe/cz-vinyl)

## 支助

支持, 电子邮件 [塔尔罗费111@gmail.com](mailto:talrofe111@gmail.com) 或打开一个问题在 [问题](https://github.com/tal-rofe/inflint/issues)。 。 。 .

## 捐款

总是欢迎捐款!

见 `CONTRIBUTING.md` 为了开始的方法.

请遵守这个计划 `CODE_OF_CONDUCT.md`。 。 。 .

## 作者数

-   [@tal-rofe (法语)](https://github.com/tal-rofe)

## 许可证

[麻省理工学院](https://choosealicense.com/licenses/mit/)

## 常见问题

### @exlint\.io/inflint 是什么？

Inflint是一个扫描和验证文件名公约的工具\.

### 如何安装 @exlint\.io/inflint？

在项目目录运行 npm install @exlint\.io/inflint，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 inflint，可以用 npx inflint 直接运行。

### @exlint\.io/inflint 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @exlint\.io/inflint 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @exlint\.io/inflint 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=14\.16。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @exlint\.io/inflint 可以商用吗？

@exlint\.io/inflint 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @exlint\.io/inflint 的下载量有多少？

根据 npm 官方下载统计，@exlint\.io/inflint 在 2026/10/14 – 2026/11/12 这 30 天内被下载 2,176 次，日均约 73 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @exlint\.io/inflint 还在维护吗？

最新版本 2\.1\.1 发布于 2023/11/27（2 年前）；至今共发布 11 个版本，其中过去 12 个月发布了 0 个；首次发布于 2022/06/21。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

