2人参与 • 2026-03-18 • 手机系统
vscode 格式化代码核心流程:安装格式化插件 → 配置默认格式化器 → 设置自动/手动格式化 → 使用快捷键触发。以下是通用+分语言的详细方案,覆盖前端、python、java 等主流场景。

prettier - code formatter(最推荐)
ctrl+shift+x(windows/linux)/ cmd+shift+x(macos)prettier - code formatter → 点击「安装」| 语言 | 推荐插件 | 插件id | 核心优势 |
|---|---|---|---|
| python | black formatter | ms-python.black-formatter | 严格统一python格式,无配置争议 |
| python | autopep8 | ms-python.autopep8 | 兼容pep8规范,轻量易用 |
| java | language support for java | redhat.java | 内置格式化,无需额外插件 |
| c/c++ | c/c++ | ms-vscode.cpptools | 支持clangformat,自定义规则 |
| go | go | golang.go | 内置gofmt,符合go官方规范 |
ctrl+shift+p(windows)/ cmd+shift+p(macos)→ 输入 preferences: open settings (json) → 回车ctrl+,(windows)/ cmd+,(macos)打开设置ui → 点击右上角「打开设置(json)」图标{
// 1. 全局默认格式化器(设为prettier)
"editor.defaultformatter": "esbenp.prettier-vscode",
// 2. 保存时自动格式化(核心!)
"editor.formatonsave": true,
// 3. 格式化选中代码(手动触发)
"editor.formatonselection": true,
// 4. 粘贴代码时自动格式化
"editor.formatonpaste": true
}{
// 前端:统一用prettier
"[javascript]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
"[typescript]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
"[html]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
"[vue]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
"[css]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
// python:指定black
"[python]": { "editor.defaultformatter": "ms-python.black-formatter" },
// java:内置格式化器
"[java]": { "editor.defaultformatter": "redhat.java" }
}在项目根目录新建 .prettierrc 文件,写入以下规则(按需修改):
{
"printwidth": 100, // 每行最大字符数
"tabwidth": 2, // 缩进2空格
"singlequote": true, // 使用单引号
"semi": true, // 语句末尾加分号
"trailingcomma": "es5", // es5兼容的尾随逗号
"arrowparens": "avoid", // 单参数箭头函数省略括号
"endofline": "lf" // 换行符用lf(unix风格)
}
安装依赖:npm install eslint-config-prettier eslint-plugin-prettier --save-dev
在 .eslintrc.js 中添加配置:
module.exports = {
extends: [
"eslint:recommended",
"plugin:prettier/recommended" // 关键:合并prettier规则
],
plugins: ["prettier"],
rules: {
"prettier/prettier": "error" // prettier规则作为eslint错误
}
};shift+alt+f(windows/linux)/ shift+option+f(macos)ctrl+shift+p(windows)/ cmd+shift+p(macos)format documentformat selectionformat document with... → 选择插件ctrl+k ctrl+s(windows)/ cmd+k cmd+s(macos)ctrl+alt+l 为格式化):[
{
"key": "ctrl+alt+l",
"command": "editor.action.formatdocument",
"when": "editortextfocus"
}
]
prettier,再按需装语言专用插件editor.formatonsave: true,保存文件时自动格式化shift+alt+f 一键格式化,或选中代码后格式化格式化不生效
defaultformatter 是否正确配置、文件是否保存prettier 与 eslint 冲突
eslint-config-prettier 屏蔽冲突规则python 格式化失败
python 插件 + black formatter,并在 [python] 中指定默认格式化器// settings.json 完整配置
{
"editor.defaultformatter": "esbenp.prettier-vscode",
"editor.formatonsave": true,
"editor.formatonselection": true,
"editor.formatonpaste": true,
"[javascript]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
"[typescript]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
"[html]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
"[vue]": { "editor.defaultformatter": "esbenp.prettier-vscode" },
"[python]": { "editor.defaultformatter": "ms-python.black-formatter" },
"[java]": { "editor.defaultformatter": "redhat.java" },
"prettier.singlequote": true,
"prettier.tabwidth": 2,
"prettier.semi": true
}以上就是vscode代码格式化的完整解决方案的详细内容,更多关于vscode代码格式化的资料请关注代码网其它相关文章!
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论