You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code如何让try-except代码片段按选中文本缩进位置插入?

解决VS Code选中缩进代码时try..except片段对齐问题

修改你keybindings.json中的配置,利用片段的正则替换功能动态匹配选中内容的缩进:

{
    "key": "ctrl+p'",
    "command": "editor.action.insertSnippet",
    "when": "editorHasSelection",
    "args": {
        "snippet": "${TM_SELECTED_TEXT/^(\\s*).*/$1/}try:\n${TM_SELECTED_TEXT/^(\\s*)/$1\\t/}\n${TM_SELECTED_TEXT/^(\\s*).*/$1/}except BaseException as ex:"
    }
}

配置说明:

  • ${TM_SELECTED_TEXT/^(\\s*).*/$1/}:捕获选中内容第一行的所有前置空白字符(空格或制表符),将其作为try:和except行的缩进,确保和选中内容的起始位置对齐
  • ${TM_SELECTED_TEXT/^(\\s*)/$1\\t/}:给选中的每一行内容,在原有缩进基础上添加一个制表符(如果你的编辑器用空格缩进,可将\\t替换为对应数量的空格,比如 ),让选中内容自动缩进一级,符合Python的代码块规范

这样配置后,不管你选中的是无缩进的代码还是带有多级缩进的整行内容,try和except都会自动匹配选中内容的起始缩进位置,效果和Command+/添加注释的行为一致。

内容的提问来源于stack exchange,提问作者Asdfg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 18:26:17