mkdocs-open-in-new-tab icon indicating copy to clipboard operation
mkdocs-open-in-new-tab copied to clipboard

VSCode yaml.schemas does not support open-in-new-tab

Open sebpretzer opened this issue 8 months ago • 4 comments

Issue:

I am using VSCode Intellisense to validate mkdocs.yml, as described here: https://squidfunk.github.io/mkdocs-material/creating-your-site/#minimal-configuration for .vscode/settings.json:

"yaml.schemas": {
        "https://squidfunk.github.io/mkdocs-material/schema.json": "mkdocs.yml"
    },

When attempting to use the plugin in mkdocs.yml like so:

plugins:
  - open-in-new-tab

I get the following error:

image

click for copy pasted error
Value is not accepted. Valid values: "blog", "info", "meta", "offline", "optimize", "privacy", "projects", "search", "social", "tags", "typeset", "git-authors", "git-committers", "git-revision-date", "literate-nav", "macros", "section-index", "include-markdown", "material-relative-language-selector", "rss", "git-revision-date-localized", "glightbox", "meta-descriptions", "mkdocstrings", "coverage", "spellcheck", "markdown-exec", "table-reader".yaml-schema: Built-in blog plugin | Built-in info plugin | Built-in meta plugin | Built-in offline plugin | Built-in optimize plugin | Built-in privacy plugin | Built-in projects plugin | Built-in search plugin | Built-in social plugin | Built-in tags plugin | Built-in typeset plugin | Generate pages during the build | Add git authors to pages | Add git contributors to pages | Add git revision date to pages | Configure navigation in Markdown instead of YAML | Use variables and macros in Markdown | Add index section pages to navigation(1)
Plugins || Plugins || Plugins
Built-in plugins || External plugins, schema provided by us || External plugins, schema provided by our community

Allowed Values:

 - include-markdown
 - material-relative-language-selector
 - rss
 - git-revision-date-localized
 - glightbox
 - meta-descriptions
 - mkdocstrings
 - coverage
 - spellcheck
 - markdown-exec
 - table-reader

Source: [schema.json](vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/code/electron-sandbox/workbench/workbench.html)

Potential Solutions:

I am unclear on the best way to resolve this. Please let me know what you think is the best solution.

1. Add to the official schema

Based on the conversation in https://github.com/squidfunk/mkdocs-material/discussions/3660, it seems like squidfunk would prefer that users use his insider's plugin, which would be understandable. I doubt he would support adding this to the official schema, like done in https://github.com/squidfunk/mkdocs-material/issues/6378. But I can attempt to do so, if that is the easier solution.

2. Override .vscode/settings.json

An alternative could be to override yaml.customTags, which would silence the error. Although I am not sure how format it in a way that would silence it. I tried a few different patterns like described in https://github.com/redhat-developer/vscode-yaml/issues/137 but could not get it to silence. This is an educated guess as a possible solution, but guidance would be needed on how to implement.

sebpretzer avatar Jun 12 '24 15:06 sebpretzer