38 lines
1.4 KiB
Markdown
38 lines
1.4 KiB
Markdown
## 代码格式化工具:`mfmt`
|
||
|
||
### 概述
|
||
|
||
`mfmt` 是一个高效的代码格式化工具,旨在帮助开发者按照既定规则格式化 Go 语言代码。它特别关注于 import 语句的分组排序和代码风格的统一。
|
||
|
||
### 功能特点
|
||
|
||
1. **Import 语句分组排序**:
|
||
- **标准库**:自动将属于 Go 标准库的包归为一组。
|
||
- **本地模块**:将当前模块名(从 `go.mod` 文件中的 `module` 声明获取)为前缀的包归为一组。
|
||
- **第三方包**:将不属于上述两类的包归为一组。
|
||
|
||
2. **文件和目录跳过规则**:
|
||
- 忽略以点(`.`)开头的文件或目录。
|
||
- 忽略非 `.go` 后缀的文件。
|
||
- 忽略 `vendor` 目录。
|
||
- 忽略文件名以 `.pb.go` 或 `gen.go` 结尾的文件。
|
||
|
||
3. **代码格式化**:
|
||
- 使用 `format.Source` 对文件内容进行格式化,确保代码符合 Go 的格式标准。
|
||
|
||
### 应用场景
|
||
|
||
- **代码质量检查**:自动检查代码格式,提升代码质量。
|
||
- **项目规范管理**:自动化项目代码规范,减少人工干预。
|
||
- **团队协作**:在团队中保持代码风格的一致性,特别是在 import 组织和注释规范化方面。
|
||
|
||
### 使用方法
|
||
|
||
在项目的根目录下执行以下命令:
|
||
|
||
```shell
|
||
# 在项目根目录下运行
|
||
go run mfmt/main.go
|
||
```
|
||
|
||
这将对项目中的 Go 代码文件进行格式化,按照上述规则重新组织 import 语句,并确保代码风格统一。 |