【问题标题】:How I can make `ctrl + click` to go to definition in visual studio code editor for mac OS?如何在 mac OS 的 Visual Studio 代码编辑器中使用“ctrl + click”进行定义?
【发布时间】:2018-08-29 16:02:03
【问题描述】:

如何让ctrl + click 在 mac OS 的 Visual Studio 代码编辑器中进行定义?现在是 F12,它正在使用我的 mac 显示桌面。

【问题讨论】:

    标签: visual-studio-code vscode-settings


    【解决方案1】:

    首先,请注意,在 macOS 的 VS Code 中,Windows / Linux 操作系统中熟悉的 Ctrl + click 已替换为 + 单击(即:“命令 + 单击”)。在继续之前先尝试一下,因为该快捷方式应该在没有任何特殊修改的情况下开箱即用。

    但是,如果上述方法仍然对您不起作用,请尝试通过编辑您的 settings.json 文件来解决问题。为此,请按 F1,键入 settings json,然后单击 Open Settings (JSON),然后执行以下操作之一:

    要使用 + click 作为“转到定义”快捷方式,请确保 JSON 设置中存在以下行:

    "editor.multiCursorModifier": "alt",
    

    这样做的目的是将 VS Code 的“添加另一个光标”快捷方式显式设置为 option + 单击(自己尝试一下!),从而释放 + click 用于“转到定义”操作。

    相反,要使用 option + click 作为“转到定义”快捷方式,请添加:

    "editor.multiCursorModifier": "ctrlCmd",
    

    注意:上面的行实际上会将“添加另一个光标”快捷方式设置为 + 单击(不是 Ctrl kbd> + + click,如 JSON 值所示)。

    【讨论】:

    • 我们的windows Java怎么样?
    • 我不明白这是如何被接受的答案问题是关于如何更改 cmd+click 以转到定义,但这只是更改 multiCursorModifier
    • @Saba 因为“editor.multiCursorModifier”的默认触发器也是“goToDefinition”的默认触发器。因此,更改“editor.multiCursorModifier”的触发器允许 ctrl+click 命令传递到下一个可用操作,即“goToDefinition”
    【解决方案2】:

    设置 > 用户 > multiCursorModifier 必须设置为 alt(默认),这样 ctrl/cmd 才能进行定义。

    文档:

    用于用鼠标添加多个光标的修饰符。 Go To Definition 和 Open Link 鼠标手势将进行调整,使其不与多光标修饰符冲突。

    【讨论】:

    • 您有任何链接可以提供更多详细信息吗?
    【解决方案3】:

    在齿轮图标/键盘快捷键中,搜索 f12 。 右键单击“转到定义”条目并选择“删除键绑定”。 请注意,这将在您的 keybindings.json 末尾添加一个新条目,例如:

    {
        "key": "f12",
        "command": "-editor.action.goToDeclaration",
        "when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor"
    }
    

    注意命令前的“-”符号,它删除了该键绑定。 现在将整个条目复制并粘贴到它下面(在上一个条目的末尾加上逗号):

    {
        "key": "f12",
        "command": "-editor.action.goToDeclaration",
        "when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor"
    },
    {
        "key": "cmd+enter",
        "command": "editor.action.goToDeclaration",
        "when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor"
    }
    

    删除减号并分配您喜欢的任何键绑定。或者,返回快捷方式文件,搜索“转到定义”并单击铅笔图标以使用其界面创建新的键绑定。

    请注意,Ctrl-Enter 在许多情况下都使用,因此使用这种通用键绑定可能会发生意外冲突。

    【讨论】:

      【解决方案4】:

      对于较新版本的 VSCode(版本:1.43.1),您应该利用 IntelliSense 的潜力。

      IntelliSense 是各种代码编辑功能的总称,包括:代码完成、参数信息、快速信息和成员列表。 IntelliSense 功能有时被称为“代码完成”、“内容辅助”和“代码提示”等其他名称。

      参考官方文档 here 上的建议,我建议为您选择的语言安装 IntelliSense 扩展,您将获得“转到定义”功能,在 settings.json 中做一些小改动如果需要,请归档。

      我将它用于 Ruby(专门用于 Ruby on Rails 项目)。我从官方 VSCode Marketplace 安装了 this 扩展,并将以下行添加到 settings.json 文件中。

      "ruby.intellisense": "rubyLocate"
      

      请参考 VSCode GitHub 项目上的this issue

      【讨论】:

      • 我看不出这是如何回答原始问题的,但我没有反对
      【解决方案5】:

      转到.flowconfig文件并更改所需的版本(它是底部)

      【讨论】:

        猜你喜欢
        • 2019-01-19
        • 1970-01-01
        • 2018-06-18
        • 1970-01-01
        • 2017-11-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多