* fonts - adopt monaco-monospace-font in more places and make it consistent
* font - use platform specific fonts in more places
* font - move system-ui before Ubuntu font in places where we cannot control platform
* font - only use system-ui on Linux
* fonts - adjust font stack for other windows
This change primarly adds a new `Open with...` entry to the explorer context menu. To do this however, I had to make a few other changes:
- Add a new explorer context key for availible editors
- Moved the editor select prompt into a new function called `openEditorWith`
- Use `openEditorWith` for the new `open with` explorer command as well as for the `reopen with` command
* Fix for #26659.
Clicking on a local file link will open up the editor on a separate editor group (new or reuse existing one).
* Fix for #26659: Add way to open Markdown links in a different editor group
Adding "markdown.editor.openMarkdownLinks" setting to specify where
links to markdown files should open (current editor group by default).
This adds a command which renders the provided document, or the active
editor if one is provided. Following the pattern of some of the preview
commands, it returned `undefined` if there's no document provided and
no active text editor. Otherwise, seems to work...
```ts
const html = await vscode.commands.executeCommand<string>('markdown.render');
```
A way to render arbitrary strings in addition to documents may be useful at
some point in the future. However, I didn't implement that here as that'd
require some refactoring of the markdown engine. If we're interested though
I could certainly give that a shot.
Fixes#72155
Adds a constant to the api that tracks the root path for resources inside of webviews. This is required because we will not be able to use `vscode-resource:` uris on the web. Our current approach is to rewrite the html we are given but there are almost certainly going to be cases where we don't get this quite right.
Adopts the new api for the markdown preview
Switch to always hiding the frontmatter and then allowing markdown-it plugins to render it properly if they wish. `previewFrontMatter: "show"` is also not very useful since it usually results in a jumble of text at the top of the file
This is required with the new performance work to avoid re-tokenizing the document multiple times during rendering