javascript - 获取 Monaco 命令/操作 ID 列表?
问题描述
有没有办法获取摩纳哥可用命令/操作及其 ID 的列表,例如editor.action.formatDocument
?
文档中似乎没有任何内容,我正在努力在 VS Code 存储库中查找已注册的操作和命令。命令面板显示了它们中的大多数,但如果您想手动调用它们,则没有指示它们的 ID executeCommand
。
解决方案
editor.getSupportedActions()
是我一直在寻找的。
您可以像这样使用它来获取操作 ID 列表:
let actions = editor.getSupportedActions().map((a) => a.id);
console.log(actions);
在我当前的摩纳哥设置中返回这样的列表:
[
"actions.find",
"actions.findWithSelection",
"cursorRedo",
"cursorUndo",
"deleteAllLeft",
"deleteAllRight",
"editor.action.addCommentLine",
"editor.action.addCursorsToBottom",
"editor.action.addCursorsToTop",
"editor.action.addSelectionToNextFindMatch",
"editor.action.addSelectionToPreviousFindMatch",
"editor.action.blockComment",
"editor.action.clipboardCopyWithSyntaxHighlightingAction",
"editor.action.commentLine",
"editor.action.copyLinesDownAction",
"editor.action.copyLinesUpAction",
"editor.action.deleteLines",
"editor.action.detectIndentation",
"editor.action.duplicateSelection",
"editor.action.fontZoomIn",
"editor.action.fontZoomOut",
"editor.action.fontZoomReset",
"editor.action.formatDocument",
"editor.action.formatSelection",
"editor.action.gotoLine",
"editor.action.goToReferences",
"editor.action.indentationToSpaces",
"editor.action.indentationToTabs",
"editor.action.indentLines",
"editor.action.indentUsingSpaces",
"editor.action.indentUsingTabs",
"editor.action.inPlaceReplace.down",
"editor.action.inPlaceReplace.up",
"editor.action.insertCursorAbove",
"editor.action.insertCursorAtEndOfEachLineSelected",
"editor.action.insertCursorBelow",
"editor.action.insertLineAfter",
"editor.action.insertLineBefore",
"editor.action.inspectTokens",
"editor.action.joinLines",
"editor.action.jumpToBracket",
"editor.action.marker.next",
"editor.action.marker.nextInFiles",
"editor.action.marker.prev",
"editor.action.marker.prevInFiles",
"editor.action.moveCarretLeftAction",
"editor.action.moveCarretRightAction",
"editor.action.moveLinesDownAction",
"editor.action.moveLinesUpAction",
"editor.action.moveSelectionToNextFindMatch",
"editor.action.moveSelectionToPreviousFindMatch",
"editor.action.nextMatchFindAction",
"editor.action.nextSelectionMatchFindAction",
"editor.action.onTypeRename",
"editor.action.openLink",
"editor.action.outdentLines",
"editor.action.peekDefinition",
"editor.action.previousMatchFindAction",
"editor.action.previousSelectionMatchFindAction",
"editor.action.quickCommand",
"editor.action.quickFix",
"editor.action.quickOutline",
"editor.action.refactor",
"editor.action.referenceSearch.trigger",
"editor.action.reindentlines",
"editor.action.reindentselectedlines",
"editor.action.removeCommentLine",
"editor.action.rename",
"editor.action.revealDefinition",
"editor.action.revealDefinitionAside",
"editor.action.selectHighlights",
"editor.action.selectToBracket",
"editor.action.setSelectionAnchor",
"editor.action.showAccessibilityHelp",
"editor.action.showContextMenu",
"editor.action.showDefinitionPreviewHover",
"editor.action.showHover",
"editor.action.smartSelect.expand",
"editor.action.smartSelect.shrink",
"editor.action.sortLinesAscending",
"editor.action.sortLinesDescending",
"editor.action.sourceAction",
"editor.action.startFindReplaceAction",
"editor.action.toggleHighContrast",
"editor.action.toggleTabFocusMode",
"editor.action.transformToLowercase",
"editor.action.transformToTitlecase",
"editor.action.transformToUppercase",
"editor.action.transpose",
"editor.action.transposeLetters",
"editor.action.triggerParameterHints",
"editor.action.triggerSuggest",
"editor.action.trimTrailingWhitespace",
"editor.action.wordHighlight.trigger",
"editor.fold",
"editor.foldAll",
"editor.foldAllBlockComments",
"editor.foldAllMarkerRegions",
"editor.foldLevel1",
"editor.foldLevel2",
"editor.foldLevel3",
"editor.foldLevel4",
"editor.foldLevel5",
"editor.foldLevel6",
"editor.foldLevel7",
"editor.foldRecursively",
"editor.toggleFold",
"editor.unfold",
"editor.unfoldAll",
"editor.unfoldAllMarkerRegions",
"editor.unfoldRecursively"
]
推荐阅读
- c# - 仅 WPF 绑定到自动实现的属性
- sparql - 如何使用 SPARQL 代码获取 RDF 文件或本体中所有谓词的列表?
- php - How to add another parameter to use in the php file while including a php file using shortcode in wordpress
- python-3.x - 使用 open() 和 .write 时新文件中的第一行丢失
- javascript - Angular:我想将 div 的焦点从箭头键按钮移到另一个
- php - laravel 5.4 中为 foreach() 提供的参数无效
- r - 将数据框列表的每个元素的名称添加为列
- r - 在 ggplot2 中使用 pmap 自动绘制不同数据集的图形
- assembly - 我怎样才能知道 101b 在数字中显示了多少次?
- flutter - 为什么我的课程会自动复制到父亲中?