如何在VSCode中用自定义注释包裹选中的文本?
实现选中文本自动生成等长分隔线的C风格注释
完全可行,不用局限于普通固定长度的代码片段,主流编辑器(比如VS Code)的自定义代码片段支持动态计算文本长度,生成匹配的等号分隔线。以下是具体实现步骤:
VS Code 实现方法
1. 创建自定义代码片段
按下 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(Mac)打开命令面板,输入「Configure User Snippets」,选择全局代码片段文件(比如 global.code-snippets),或者针对C/C++语言的专属片段文件。
在文件中添加以下代码:
"等长分隔线注释": { "prefix": "eqcomment", "body": [ "/* ${1:=}${1/repeat((${TM_SELECTED_TEXT/./g}).length - 2)/g} */", "/* ${TM_SELECTED_TEXT} */", "/* ${1:=}${1/repeat((${TM_SELECTED_TEXT/./g}).length - 2)/g} */" ], "description": "将选中文本包裹为带等长分隔线的C风格注释" }
这段代码的核心逻辑:
${TM_SELECTED_TEXT}获取你选中的文本内容- 通过正则替换计算选中文本的长度,动态生成对应数量的等号,保证上下分隔线和中间文本的可视长度一致(减去2是因为要抵消
/*和*/的字符长度)
2. 绑定快捷键
按下 Ctrl+K Ctrl+S 打开键盘快捷设置,点击右上角的「打开键盘快捷方式(JSON)」,在 keybindings.json 中添加以下配置:
{ "key": "ctrl+shift+/", // 可替换为你习惯的快捷键组合 "command": "editor.action.insertSnippet", "args": { "name": "等长分隔线注释" }, "when": "editorTextFocus && editorHasSelection && resourceLangId == c" }
这个配置会让快捷键仅在C文件中选中文本时生效,避免误触发。
设置完成后,选中任意文本按下绑定的快捷键,就能自动生成你想要的格式注释了。
内容的提问来源于stack exchange,提问作者ultrapoci
相关产品推荐
相关产品推荐

