使用热键选择文本代码视觉工作室

时间:2021-03-13 16:39:00

标签: visual-studio-code

我安装了 code visualstudio 1.54.1 并且有一些代码行 如果光标位于字符串上

   $adImageItemImgProps = AdImage::readAdImageProps($adImageItem->ad_id, $adImageItem->image, true);

在 readAdImageProps 方法名称内,但是当没有选择字符并单击热键时 选择了所有 readAdImageProps 方法名称 然后点击热键 选择了 AdImage::readAdImageProps。 等等……

以类似的方式在 PhpStorm 工作热键 Ctrl+W...

修改: 我在 /home/username/.config/Code/User/keybindings.json 中手动添加了建议的键行 并在文件中查看:https://prnt.sc/10lc240 我重新启动了代码visualstudio和“ctrl+shift+alt+w”,这个功能的工作方式出乎我的意料。 假设我在没有选择测试的情况下控制 php 文件:https://prnt.sc/10lc53f

当我点击“ctrl+shift+alt+w”时 - 它只在第一次按我的预期工作:https://prnt.sc/10lc77h 但下次我点击这个热键时就不会了:https://prnt.sc/10lc7w0https://prnt.sc/10lc8xr 我的配置有问题吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用扩展名 Select By

这是一个两阶段的解决方案。

  1. 如果还没有选择,请使用命令 editor.action.addSelectionToNextFindMatch 选择光标下的单词
  2. 如果选择,则在开始处扩展到下一个父作用域

将此广告添加到您的 keybindings.json 文件

  {
    "key": "ctrl+shift+alt+w",
    "when": "editorTextFocus && !editorHasSelection",
    "command": "editor.action.addSelectionToNextFindMatch"
  },
  {
    "key": "ctrl+shift+alt+w",
    "when": "editorTextFocus && editorHasSelection",
    "command": "selectby.regex",
    "args": {
      "backward": "[a-zA-Z0-9_]+::",
      "backwardInclude": true
    }
  }

编辑

我删除了 forward 搜索,因为它由 no-selection 案例处理。