Keep Markdown preview inside editor

This commit is contained in:
mirivlad 2026-06-27 23:58:56 +08:00
parent f826ff864e
commit 05b4d5e05e
4 changed files with 20 additions and 43 deletions

View File

@ -45,7 +45,6 @@ plugins/
files/ files/
notes/ notes/
markdown-editor/ markdown-editor/
markdown-preview/
file-preview/ file-preview/
activity/ activity/
journal/ journal/
@ -170,4 +169,3 @@ verstak-official-plugins - один repo для официальных плаг
``` ```
Core может загрузить плагин только при совместимости `apiVersion`. Core может загрузить плагин только при совместимости `apiVersion`.

View File

@ -98,7 +98,7 @@ editor.note.markdown
Optional requires: Optional requires:
```text ```text
preview.markdown link.resolver
``` ```
Не должен: Не должен:
@ -107,36 +107,14 @@ preview.markdown
- напрямую зависеть от `official.notes`; - напрямую зависеть от `official.notes`;
- тащить file manager внутрь себя. - тащить file manager внутрь себя.
## 4. `official.markdown-preview` Markdown preview is part of the Markdown editor surface. There is no separate
official Markdown preview plugin, because a standalone view provider would
compete with the editor routing for `.md` / `.markdown` files.
## 4. `official.file-preview`
Назначение: Назначение:
- read-only markdown render through a Workbench `openProviders` contribution;
- `mode: "view"` support so edit routing remains with editor plugins;
- safe baseline markdown rendering before optional syntax highlight/link
resolver integration.
Provides:
```text
preview.markdown
viewer.markdown
```
Optional requires:
```text
link.resolver
```
Текущий статус: базовый `verstak.markdown-preview` implemented as an official
view-only provider for `.md` / `.markdown` files.
## 5. `official.file-preview`
Назначение:
- read-only preview for text-like files through `api.files.readText`;
- metadata view for image files until binary streaming exists; - metadata view for image files until binary streaming exists;
- `Open External` action through `api.files.openExternal`. - `Open External` action through `api.files.openExternal`.
@ -145,14 +123,14 @@ Provides:
```text ```text
viewer.file viewer.file
viewer.image viewer.image
viewer.text
preview.file preview.file
``` ```
Текущий статус: базовый `verstak.file-preview` implemented as a view-only Текущий статус: базовый `verstak.file-preview` implemented as a view-only
provider for text-like files and image metadata. provider for image metadata. Text-like files, code, and Markdown stay with
editor plugins.
## 6. `official.activity` ## 5. `official.activity`
Назначение: Назначение:
@ -180,7 +158,7 @@ browser.capture.received
case.selected case.selected
``` ```
## 7. `official.journal` ## 6. `official.journal`
Назначение: Назначение:
@ -203,7 +181,7 @@ Optional requires:
activity.reconstruction activity.reconstruction
``` ```
## 8. `official.browser-inbox` ## 7. `official.browser-inbox`
Назначение: Назначение:
@ -303,7 +281,7 @@ workspace.files
- `official.files`; - `official.files`;
- `official.notes`; - `official.notes`;
- `official.markdown-editor`; - `official.markdown-editor`;
- `official.markdown-preview`; - `official.file-preview`;
- `official.activity`; - `official.activity`;
- `official.browser-inbox`; - `official.browser-inbox`;

View File

@ -87,10 +87,10 @@ Verstak v2 разрабатывается как отдельное прилож
Развивать official plugins по одному, через общий plugin runtime: Развивать official plugins по одному, через общий plugin runtime:
1. `official.markdown-preview`; 1. `official.markdown-editor`;
2. `official.markdown-editor`; 2. `official.files`;
3. `official.files`; 3. `official.notes`;
4. `official.notes`; 4. `official.file-preview`;
5. `official.activity`; 5. `official.activity`;
6. `official.browser-inbox`. 6. `official.browser-inbox`.

View File

@ -36,7 +36,7 @@ Implemented:
- Files Core text API with safe path policy and sync operation recording; - Files Core text API with safe path policy and sync operation recording;
- public `files.openExternal` / `files.showInFolder` API and Files plugin usage; - public `files.openExternal` / `files.showInFolder` API and Files plugin usage;
- mode-aware Workbench open/edit provider routing and default editor plugin; - mode-aware Workbench open/edit provider routing and default editor plugin;
- official Files plugin, Notes plugin, Markdown Preview plugin, Sync plugin, and - official Files plugin, Notes plugin, Markdown Editor plugin, Sync plugin, and
platform-test plugin; platform-test plugin;
- browser inbox local receiver and minimal official Browser Inbox plugin; - browser inbox local receiver and minimal official Browser Inbox plugin;
- sync server with device/user auth and operation push/pull; - sync server with device/user auth and operation push/pull;
@ -127,8 +127,9 @@ Goal: add the next visible product layer as replaceable plugins.
Tasks: Tasks:
- [x] implement `verstak.markdown-preview` provider plugin; - [x] keep Markdown preview inside `verstak.markdown-editor`, with no separate
- [x] implement basic file/image preview plugin; provider competing for `.md` files;
- [x] implement basic image metadata preview plugin;
- implement search provider/index contract and official search plugin; - implement search provider/index contract and official search plugin;
- implement activity event log plugin; - implement activity event log plugin;
- implement journal/worklog plugin that can consume activity suggestions. - implement journal/worklog plugin that can consume activity suggestions.