【HarmonyOS NEXT】鸿蒙中实现团队代码格式化风格一致性

1. 背景

在鸿蒙团队开发中,我们可能会遇到以下场景:

团队内的小伙伴修改并顺手格式化【Cmd + Option + L/Ctrl + Alt + L】了一下A.est页面的代码,然后Commit 提交了。此时你刚好也在更改A.est页面的代码,然后不小心拉取了一下代码,代码冲突了😭,此时你准备解决冲突,一不小心roback 回滚了你本地的代码。虽然通过本地的git stash 恢复了回滚的代码,但是内心还是有些颤抖的。🤣

此刻你聪明的小脑袋会想,有没有什么办法统一团队内格式化代码的风格呢?

如果你了解前端【如果没有,没关系,直接跳过本段内容】,你会发现在前端有已经有了此类的解决方案。比如PrettierSpotlessESLintEditorConfig,等等方案

有没有鸿蒙能用的而且能够快速上手的方案呢?

有,那就是 EditorConfig

2. EditorConfig 是什么?

EditorConfig 不是什么软件,也不是什么插件,它只是一个配置文件,它的目标是为不同的编辑器、编码语言和文件类型提供统一的代码风格和格式要求。具体支不支持取决于IDE是否支持,主流的编辑器,如 VSCode、Sublime Text、Atom 等,通常会默认支持 EditorConfig,并自动加载其规范,可以使得跨团队协作时代码风格更加统一,减少了因编辑器差异导致的代码格式问题。

常见支持的IDE,更多介绍可看官网:https://editorconfig.org/

下面是一些常见支持EditorConfig的IDE

幸运的是HUAWEI DevEco Studio是基于IntelliJ IDEA Community开源版本打造。而IntelliJ IDEA 是支持解析EditorConfig 配置的。

3. 在HUAWEI DevEco Studio 中使用EditorConfig

3.1 启用EditorConfig插件

Preferences>Plugins>EditorConfig>勾选

3.2 开启IDE 对EditorConfig的支持

Preferences>Editor>Code Style>Enable EditorConfig support>勾选

3.3 项目配置EditorConfig

项目中配置EditorConfig很简单,在项目根目录新建一个.EditorConfig 文件即可,如下图所示

3.4 EditorConfig 模板

如果你的团队内有多种开发设备【Windows/Mac/Linux】,多种IDE【DevEco Studio、Android Studio、VS Code、HBuilder X…】。可以整个大团队内维护一套EditorConfig配置文件。

# http://editorconfig.org
# 定义该文件为EditorConfig的根文件,确保所有子文件夹中的文件都遵循相同的设置
# 顶级配置
root = true
# 适用于所有文件的通用配置
[*]
# 指定使用空格进行缩进,而非制表符,以保持代码的一致性
indent_style = space
# 指定缩进的空格数为2,用于提高代码的可读性
indent_size = 2
# 指定字符编码为UTF-8,确保文件在不同系统间传输时不会出现编码问题
charset = utf-8
# 指定行尾字符为LF,适用于Unix/Linux系统,确保跨平台的行结束符一致性
end_of_line = lf
# 自动去除行尾的多余空格,减少不必要的空白行,保持代码整洁
trim_trailing_whitespace = true
# 在文件末尾自动添加一个新行,使得文件的结尾更加清晰
insert_final_newline = true
# 一行最大达到多少字符后自动换行
max_line_length = 200
# 针对特定文件类型的特殊配置
[*.{json}]
# 对于JSON、YAML文件,将缩进空格数设置为2,以符合这些文件通常的缩进标准
indent_size = 2
[*.md]
# 对于Markdown文件,不自动在文件末尾添加新行,以保留可能的空白行用于格式化
insert_final_newline = false
# 对于Markdown文件,不自动去除行尾的空格,因为这可能会影响代码块的格式
trim_trailing_whitespace = false

4. 其它

关于editorconfig 更多用法,大家可在juejin 搜索

看这篇:https://juejin.cn/post/6844903590855704583

或者官网:https://editorconfig.org/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值