VSCode自定义下划线快捷键后,如何实现括号式成对选中效果?
解决VSCode下划线配对一键删除问题
要让自定义的下划线配对实现和括号一样的半透明选中、一键删除效果,需要两步配置:
1. 让VSCode识别下划线为配对符号
打开settings.json(快捷键Cmd+,后点击右上角的打开设置图标),添加以下配置,把下划线加入编辑器的配对括号列表:
"editor.bracketPairColorization.enabled": true, "editor.language.brackets": [ ["(", ")"], ["[", "]"], ["{", "}"], ["_", "_"] ]
2. 调整快捷键片段的占位符
修改keybindings.json中的配置,调整占位符位置以匹配括号的交互逻辑:
{ "key": "cmd+;", "command": "editor.action.insertSnippet", "when": "editorTextFocus && !editorReadonly", "args": { "snippet": "_${TM_SELECTED_TEXT}$0_" } }
效果说明:
- 选中文本时按下快捷键:下划线会包裹选中内容,光标停在包裹区域的末尾。
- 未选中文本时按下快捷键:插入一对下划线,光标位于两者中间。此时VSCode会将下划线识别为配对符号,按下一次退格键即可删除整对下划线。
如果你希望插入后右侧下划线直接被半透明选中(和输入左括号后右括号的选中效果一致),可以把片段改成:
{ "key": "cmd+;", "command": "editor.action.insertSnippet", "when": "editorTextFocus && !editorReadonly", "args": { "snippet": "_${TM_SELECTED_TEXT}${1:_}$0" } }
这种配置下,未选中文本插入下划线后,右侧下划线会被半透明选中,按退格键可直接删除整对;选中文本时,右侧下划线会被选中,方便快速修改或删除。
内容的提问来源于stack exchange,提问作者PhewphewMathew
相关产品推荐
相关产品推荐

