17370845950

如何用SublimeJ做代码格式化_Prettier+Black集成
通过集成Prettier和Black,Sublime Text可实现前端与Python代码的自动格式化。首先利用Package Control安装JsPrettier和SublimePythonIDE插件;接着通过npm和pip全局或局部安装Prettier与Black工具;然后配置JsPrettier的prettier_cli_path路径并启用auto_format_on_save以实现保存时自动格式化;对于Python文件,需创建自定义构建系统BlackFormatter.sublime-build调用black命令;最后为不同语言设置快捷键Ctrl+Alt+P和Ctrl+Alt+B,提升格式化操作效率。

如果您在使用 Sublime Text 编辑代码时希望实现自动格式化,可以通过集成 Prettier 和 Black 来统一前端与 Python 代码的风格。以下是实现该功能的具体步骤:

一、安装必要的插件

在开始配置之前,需要确保 Sublime Text 中已安装支持代码格式化的插件管理工具。通过 Package Control 安装所需的扩展是首选方式。

1、打开 Sublime Text,按下 Ctrl+Shift+P 调出命令面板。

2、输入 "Install Package" 并选择对应选项,进入插件浏览界面。

3、搜索并安装 JsPrettier,该插件用于集成 Prettier 实现 JavaScript、TypeScript 等前端代码格式化。

4、搜索并安装 SublimePythonIDE 或手动配置 Black,以支持 Python 文件的格式化。

二、安装 Prettier 和 Black 依赖

JsPrettier 插件依赖于本地全局或项目内安装的 Prettier 工具,而 Black 需要通过 Python 包管理器安装。

1、在终端中运行 npm install -g prettier 安装 Prettier 到全局环境。

2、运行 pip install black 安装 Black 格式化工具。

3、若项目使用了 node_modules,则可在项目根目录运行 npm install --save-dev prettier 进行局部安装。

三、配置 JsPrettier 插件

正确设置 JsPrettierr 的路径和参数,可以确保其调用正确的 Prettier 版本并对指定文件生效。

1、在 Sublime Text 中打开 Preferences > Package Settings > JsPrettier > Settings。

2、修改设置文件中的 "prettier_cli_path" 指向实际的 Prettier 可执行文件路径,例如:
/usr/local/lib/node_modules/prettier/bin-prettier.js(Linux/macOS)
C:\\Users\\YourName\\AppData\\Roaming\\npm\\node_modules\\prettier\\bin-prettier.js(Windows)

3、设置 "auto_format_on_save" 为 true,以启用保存时自动格式化功能。

四、配置 Black 与 Sublime 集成

由于 Sublime Text 本身不直接支持 Black,需通过自定义构建系统或外部脚本触发格式化操作。

1、在 Sublime Text 中选择 Tools > Build System > New Build System。

2、输入以下内容创建一个新的构建配置:

{
  "cmd": ["black", "$file"],
  "selector": "source.python",
  "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)"
}

3、将此构建系统保存为 BlackFormatter.sublime-build

4、打开一个 Python 文件后,选择 Tools > Build With > BlackFormatter,即可执行格式化。

五、绑定快捷键以快速格式化

为提升效率,可分别为 Prettier 和 Black 设置快捷键,实现一键格式化当前文件。

1、打开 Preferences > Key Bindings,在右侧用户键位设置中添加如下映射:

[{ "keys": ["ctrl+alt+p"], "command": "js_prettier" }]

2、为 Black 添加快捷键(需结合插件或 shell 命令),例如:

[{ "keys": ["ctrl+alt+b"], "command": "build", "context": [{ "key": "selector", "operator": "equal", "operand": "source.python" }] }]

3、保存后,按 Ctrl+Alt+P 可格式化前端代码,按 Ctrl+Alt+B 可格式化 Python 文件。