如何将 "show preview" 按钮添加到 VS 代码扩展?

How to add "show preview" button to VS Code extension?

我有一个 VS Code 扩展,可以分析自定义 JSON 和 YAML 文件。所以在项目的package.json中,有这个:

    "activationEvents": [
        "onLanguage:yaml",
        "onLanguage:json",
        "onCommand:extension.sidePreview"
    ],

每当有人打开其中一个文件时,我想在编辑器的右上角添加一个 "show preview" 图标:

于是我在项目中添加了相应的icon资源,并且:

"contributes": {
        "commands": [
            {
                "command": "extension.sidePreview",
                "title": "Preview file",
                "icon": {
                    "dark": "./resources/open-preview-dark.svg",
                    "light": "./resources/open-preview-light.svg"
                }
            }
        ],
        "menus": {
            "editor/title": [
                {
                    "command": "extension.sidePreview",
                    "when": "true"
                }
            ]
        },

但这不起作用...我没有看到任何图标。

我还想确保此按钮和命令仅在 server.ts returns true 中的函数 isCustomFile 时可用。有办法吗?

那是因为你在 menus 下添加了错误的部分。

您应该添加 editor/title

Reference