使用 fm 的统一格式化器
问题
我喜欢让我的代码看起来整洁有序,所以我是格式化工具的支持者。然而,我不喜欢 IDE 在处理格式化时显得繁杂和令人困惑,而且我大量代码是在终端通过 Vim 编写的。曾有一段时间,我一直在寻找一个命令行工具(格式化器),它允许我提供文件路径或目录路径,并格式化我提供的所有内容。也就是说,如果我提供一个目录,它将格式化该目录中的所有文件,并在提供的目录中找到 .gitignore 文件时遵循它们。我寻找了解决方案很久,但没有找到任何东西。
解决方案
基于此并为了解决这个问题,我开发了 ForMatter,简称 fm,这是一个目前处于早期开发阶段的命令行工具,旨在对各种项目中的脚本进行格式化。与依赖 IDE 相比,该工具在格式化方面提供了更多控制。虽然它仍在开发中,但已经可以完全使用!如果你有兴趣贡献,欢迎 fork 仓库并提交 PR。
设计
fm 是用 Bash 脚本编写的,并在后台使用以下库/格式化器: shfmt, black, Prettier, & ClangFormat。借助这些库/格式化器,fm 支持以下格式: .py, .sh, .bash, .dash, .ksh, .js, .jsx, .ts, .tsx, .json, .md, .html, .css, .yml, .yaml, .graphql, .vue, .scss, .less, .c, .cpp, .h, .hpp, .m, .mm, & .java
结论
我在个人系统上广泛使用 fm,我合作的许多贡献者或合作者也在使用它。这就是我将它开源的原因。我认为它非常有用,能够提供实际价值,所以我希望全世界都能使用它。了解这些后,现在就去 GitHub 查看 fm 吧!