一键对齐当前文件中代码右侧的 // 行注释,一键格式化 JSON 或折叠为一行。
使用方式
安装后,打开文本文件,编辑器右上角标题栏会出现紧挨着的黄色图标按钮:
// 按钮:仅在打开 Java、JavaScript 文件时显示,对整个文件执行行注释对齐;任意文件都可在命令面板(Cmd/Ctrl + Shift + P)中执行 Codes Format: 对齐行注释。
{+} 按钮:格式化 JSON(展开为多行缩进),也可在命令面板中执行 Codes Format: 格式化 JSON。
{-} 按钮:把 JSON 折叠为一行,也可在命令面板中执行 Codes Format: JSON 折叠为一行。
行注释对齐
对齐前:
int a = 1; // 变量 a
int longer = 2; // 变量 longer
// 整行注释不受影响
x++;// 自增
对齐后:
int a = 1; // 变量 a
int longer = 2; // 变量 longer
// 整行注释不受影响
x++; // 自增
规则
- 只处理
// 左边有代码 的行;整行都是注释(// 前只有空白)的行原样保留。
- 整个文件统一对齐到「最长代码显示宽度 + 最小空格数」的列。
- 字符串(
"..."、'...'、`...`)与块注释 /* ... */ 内的 // 不会被误判为注释。
- Tab 缩进按编辑器当前
tabSize 换算为显示列;中文等全角字符按 2 列计算,保证等宽字体下视觉对齐。
- 整个操作是一次编辑,可用
Ctrl/Cmd + Z 一步撤销。
JSON 格式化 / 折叠
点击 {+} 格式化,点击 {-} 折叠回一行,两者互为逆操作。
折叠(格式化前):
{"id":1234567890123456789,"name":"张三","tags":["a","b"],"extra":{}}
格式化(折叠前):
{
"id": 1234567890123456789,
"name": "张三",
"tags": [
"a",
"b"
],
"extra": {}
}
规则:
- 有选中内容时只处理选区(例如 Markdown、日志中的一段 JSON),否则处理整个文件。
- 格式化的缩进跟随编辑器当前设置(
tabSize / 使用空格还是 Tab);折叠会去掉所有结构空白,字符串内的空格保留。
- 数字、字符串按原文保留,不经过
JSON.parse:超过 2^53 的大整数(如 Java Long)不会丢精度,1.0、中 等写法也不会被改写。
- 按标准 JSON 校验,不支持注释、单引号、末尾逗号;不合法时弹出提示,并给出出错的行号和列号,文件内容不做任何修改。
- 整个操作是一次编辑,可用
Ctrl/Cmd + Z 一步撤销。
配置项
| 配置 |
默认值 |
说明 |
codesFormat.minSpaces |
1 |
代码与 // 之间的最小空格数 |
codesFormat.wideCharWidth |
2 |
全角字符(中文、日文、韩文、emoji 等)占用的列数 |
开发
npm install
npm test # 编译并运行单元测试
npm run package # 打包为 .vsix
本地安装:code --install-extension release/codes-format-26.10.2.vsix,或在 VSCode 扩展面板右上角 ... → 从 VSIX 安装。