Visual Studio Code多个命令绑定到键盘快捷键

3
我曾尝试了以下keybindings.json的ctrl+enter“command”设置,以启用.py[thon]脚本编辑器扩展程序时执行两个命令。单个命令可以工作,但是尝试将多个命令或包含多个命令的宏引用关联起来的尝试都无法正常工作。后者会生成“未找到命令'macros.<macro defined in settings.json>'”的错误信息。
请问如何将多个命令附加到单个键盘快捷方式定义中,特别是我配置宏的方法有什么问题?
// %appdata%\Code\User\keybindings.json
[    
    {
        "key": "ctrl+enter",
        //"command": "python.execSelectionInTerminal",
        //"command": "cursorDown",
        //"command": [ "python.execSelectionInTerminal", "cursorDown" ],
        //"command": "python.execSelectionInTerminal, cursorDown",
        //"command": "python.execSelectionInTerminal && cursorDown",
        "command": "macros.pythonExecuteLineAndMoveToNextOne",
        "when": "editorTextFocus && editorLangId == 'python'"
    }
]

// %appdata%\Code\User\settings.json
{   
    "macros": {
        "pythonExecuteLineAndMoveToNextOne": [
            "python.execSelectionInTerminal", 
            "cursorDown" 
        ]
    },
    .
    . .
    . . .
}

你的宏看起来没问题。考虑尝试使用其他绑定键,因为ctrl+enter太常用了。或者禁用“插入下一行”命令,该命令使用相同的键和editorTextFocus,可能会产生冲突。 - Mark
@Mark,感谢您的回复。如果我只指定一个单一命令,ctrl+enter键绑定关联工作得很好。但是,我的努力是将其连接到多个命令,特别是通过使用宏设置来实现,这并没有起作用。我不明白您所说的“禁用‘插入下方行’命令”的意思,因为我只定义了一个光标向下的命令,没有定义插入行命令。 - myusrn
1
你已经安装了宏扩展吗? - Mark
我没有按照我找到的文章所述使用它,因为它没有评论需要安装发布者“geddski”的“宏”扩展。我添加了它,现在一切正常,谢谢。 - myusrn
1
添加并接受一个答案,以便该问题不会出现在未回答的问题列表中。 - Scott McPeak
1个回答

0

在评论中提出答案的副本,以便将此问题的状态更改为已回答。

修复方法是添加@name:macros @publisher:geddski vscode扩展程序,该扩展程序在我到达多步宏定义时提到的文章中。 最初并不清楚这是一个要求。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接