从命令行格式化文件
GoLand 会根据已配置的代码样式设置 格式化您的代码。 您还可以从命令行将代码样式格式应用于指定文件。
命令行格式化器会在后台启动一个 GoLand 实例并应用格式化操作。 如果已有其他 GoLand 实例正在运行,该功能将无法使用。 在此情况下,您可以通过正在运行的实例执行代码样式格式化。 使用命令行格式化器可实现大型代码库的自动化定期维护,从而在多个贡献者之间确保一致的编码风格。
要能够格式化文件,请在 GoLand 中安装并启用支持相应文件类型的插件(例如用于格式化 Shell 脚本文件的 Shell Script 插件)。
您可以在安装目录的 bin 下找到用于运行 GoLand 的可执行文件。 若要将该可执行文件用作命令行启动器,请将其添加到系统的 PATH ,方法如 命令行界面 中所述。
- 语法
- goland64.exe format [<options>] <path ...>
- 示例
使用默认代码样式设置格式化 C:\Data\src 目录中的两个特定文件:
goland64.exe format -allowDefaults C:\Data\src\hello.html C:\Data\src\world.html使用默认代码样式设置递归格式化 C:\Data\src 目录及其所有子目录中的所有文件:
goland64.exe format -allowDefaults -r C:\Data\src使用 C:\Data\settings.xml 中的代码样式设置,非递归地格式化 C:\Data\src 目录中的所有 .xml 和 .html 文件:
goland64.exe format -s C:\Data\settings.xml -m *.xml,*.html C:\Data\src
GoLand 包括一个脚本,用于运行命令行代码格式化器。 默认情况下,它位于应用程序包中: GoLand.app/Contents/bin/format.sh
- 语法
- ./format.sh [<options>] <path ...>
- 示例
使用默认代码样式设置格式化 ~/Data/src 目录中的两个特定文件:
./format.sh -allowDefaults ~/Data/src/hello.html ~/Data/src/world.html使用默认代码样式设置递归格式化 ~/Data/src 目录及其所有子目录中的所有文件:
./format.sh -allowDefaults -r ~/Data/src使用 ~/Data/settings.xml 中的代码样式设置,非递归地格式化 ~/Data/src 目录中的所有 .xml 和 .html 文件:
./format.sh -s ~/Data/settings.xml -m *.xml,*.html ~/Data/src
您可以在安装目录的 bin 下找到用于运行 GoLand 的脚本。 若要将该脚本用作命令行启动器,请将其添加到系统的 PATH ,方法如 命令行界面 中所述。
- 语法
- goland.sh format [<options>] <path ...>
- 示例
使用默认代码样式设置格式化 ~/Data/src 目录中的两个特定文件:
goland.sh format -allowDefaults ~/Data/src/hello.html ~/Data/src/world.html使用默认代码样式设置递归格式化 ~/Data/src 目录及其所有子目录中的所有文件:
goland.sh format -allowDefaults -r ~/Data/src使用 ~/Data/settings.xml 中的代码样式设置,非递归地格式化 ~/Data/src 目录中的所有 .xml 和 .html 文件:
goland.sh format -s ~/Data/settings.xml -m *.xml,*.html ~/Data/src
选项
选项 | 说明 |
|---|---|
| 显示帮助信息并退出。 |
| 指定以逗号分隔的文件掩码列表,用于定义要处理的文件。 您可以使用 |
| 递归处理指定的目录。 |
| 指定用于格式化的代码样式设置文件。 可为以下任意一项:
格式化器还会在父目录中查找 .editorconfig 文件,并在 GoLand 的代码样式设置基础上应用这些文件中的设置进行格式化。 在此情况下,如果 EditorConfig 中的格式化设置与代码样式方案中的设置有冲突,GoLand 将使用 EditorConfig 中的设置。 剩余设置将来自您的代码样式方案。 有关详细信息,请参见 使用 EditorConfig 按目录级别管理代码样式。 如果未指定该选项,则将跳过该文件。 如果某个父文件夹中包含项目,也将隐式使用项目设置和 EditorConfig。 |
| 当文件或文件组未定义代码样式时(即未设置 |
| 保留编码并强制设置读取和写入源文件时使用的字符集,例如: 如果命令行格式化器无法正确处理源文件中的特殊字母,该选项将非常有用。 |
| 以验证模式运行格式化器。 格式化器将在内存中执行相同的格式化操作,并在任意格式化文件与原文件不一致时以非零状态退出。 |