VS代码。选择或删除未选择文本的块状注释的快捷方式。

问题描述 投票:0回答:1

我知道有一个注释和取消注释代码块的快捷方式(SHIFT + ALT + A),但有没有一种方法可以快速选择(甚至不选择就删除)屏蔽评论而不用鼠标或键盘选择并按deletebackspace键呢?例如:有没有一个键盘快捷键,可以让我把光标放在评论区,然后再按deletebackspace键?

/* 
This is a large block of code with at least 50 lines of code!
   :
   :
*/

有没有一个键盘快捷键可以让我把光标放在... 满堂彩 并只需按几下键就能删除?谢谢!

visual-studio-code vscode-settings
1个回答
1
投票

你可以很容易地设置一个宏来实现这个功能。

首先,使用优秀的 选择 扩展(@rioV8)来选择介于和包括块注释标记之间的文本。/**/. 把他放到你的设置里。

"selectby.regexes": {

  "BlockCommentSelect": {
    "backward": "\/\\*",
    "forward": "\\*\/",
    "forwardInclude": true,
    "backwardInclude": true,
    "showSelection": true
  }
},

你可以用一个键绑定来使用,比如:

{
  "key": "alt+s",           // whatever keybinding you wish
  "command": "selectby.regex",
  "args": ["BlockCommentSelect"],
  "when": "editorTextFocus"
},

你可以停在这里,用你的键盘绑定选择文本,然后... 换挡+祭祀+A 来关闭屏蔽评论。

或者您也可以添加 selectby.regex1 到一个宏中,一步完成选择和切换。 这里使用宏扩展 多命令 把这个放到你的设置里,以及上面的设置里。selectby.regexes 设置。

"multiCommand.commands": [

 {
  "command": "multiCommand.BlockCommentOff",
  "sequence": [
    { 
      "command": "selectby.regex",
      "args": ["BlockCommentSelect"] 
    },
    "editor.action.blockComment"
  ]
},
]

然后用keybinding来触发那个宏(在你的keybindings.json里)。

{
  "key": "shift+alt+A",    // trigger the macro with whatever keybinding if you wish
  "command": "extension.multiCommand.execute",
  "args": { "command": "multiCommand.BlockCommentOff" },
  "when": "editorTextFocus && !editorHasSelection"
},

这里我用了 换挡+祭祀+A 来触发宏。 我使用了 when 条款 !editorHasSelection 因为如果你有一个选择,也许你想阻止评论只有选择(在另一个块评论内!)。

演示。(1) 只是第一种方法,其中 selectby 选择你的文字,你手动把它切换掉,然后(2)使用宏版一步到位。

block toggle from within the block

© www.soinside.com 2019 - 2024. All rights reserved.