0.3.0: .archify files are YAML and open straight into the diagram

- .archify content is YAML (JSON still accepted); converted to JSON for the renderer
- Archify Diagram custom editor is the default for *.archify; Show Source opens the YAML beside it
- YAML syntax errors and validation problems mapped to YAML lines
- yamlValidation for schema completion with redhat.vscode-yaml
- scripts/to-yaml.mjs converts existing .archify files
This commit is contained in:
2026-09-30 15:21:55 +03:00
parent 7c2624c465
commit d2f52d43ac
18 changed files with 744 additions and 250 deletions
+28 -13
View File
@@ -1,8 +1,8 @@
{
"name": "archify-vscode-ext",
"displayName": "Archify Diagram Viewer",
"description": "Visualize Archify diagrams: preview .archify files (and *.architecture.json-style sources) live, and open rendered Archify HTML inside VS Code.",
"version": "0.2.0",
"description": "Visualize Archify diagrams: .archify files (YAML) open straight into the interactive diagram; also previews Archify JSON sources and rendered Archify HTML inside VS Code.",
"version": "0.3.0",
"publisher": "root-at-skic",
"license": "MIT",
"icon": "media/icon.png",
@@ -97,19 +97,19 @@
},
{
"command": "archify.renderToHtml",
"when": "archify.isDiagramSource || archifyPreviewFocus"
"when": "archify.isDiagramSource || archifyPreviewFocus || activeCustomEditorId == 'archify.diagram'"
},
{
"command": "archify.openInBrowser",
"when": "archify.isDiagramSource || archify.isArchifyHtml || archifyPreviewFocus || activeCustomEditorId == 'archify.htmlViewer'"
"when": "archify.isDiagramSource || archify.isArchifyHtml || archifyPreviewFocus || activeCustomEditorId == 'archify.htmlViewer' || activeCustomEditorId == 'archify.diagram'"
},
{
"command": "archify.refreshPreview",
"when": "archifyPreviewFocus"
"when": "archifyPreviewFocus || activeCustomEditorId == 'archify.diagram'"
},
{
"command": "archify.showSource",
"when": "archifyPreviewFocus || activeCustomEditorId == 'archify.htmlViewer'"
"when": "archifyPreviewFocus || activeCustomEditorId == 'archify.htmlViewer' || activeCustomEditorId == 'archify.diagram'"
}
],
"editor/title": [
@@ -130,7 +130,7 @@
},
{
"command": "archify.showSource",
"when": "archifyPreviewFocus || activeCustomEditorId == 'archify.htmlViewer'",
"when": "archifyPreviewFocus || activeCustomEditorId == 'archify.htmlViewer' || activeCustomEditorId == 'archify.diagram'",
"group": "navigation"
},
{
@@ -184,6 +184,16 @@
}
],
"customEditors": [
{
"viewType": "archify.diagram",
"displayName": "Archify Diagram",
"selector": [
{
"filenamePattern": "*.archify"
}
],
"priority": "default"
},
{
"viewType": "archify.htmlViewer",
"displayName": "Archify Diagram Viewer",
@@ -196,10 +206,6 @@
}
],
"jsonValidation": [
{
"fileMatch": "*.archify",
"url": "./schemas/archify.schema.json"
},
{
"fileMatch": "*.architecture.json",
"url": "./schemas/architecture.schema.json"
@@ -299,11 +305,17 @@
},
"languages": [
{
"id": "json",
"id": "yaml",
"extensions": [
".archify"
]
}
],
"yamlValidation": [
{
"fileMatch": "*.archify",
"url": "./schemas/archify.schema.json"
}
]
},
"scripts": {
@@ -329,5 +341,8 @@
"bugs": {
"url": "https://gitea.lego-cloud.eu/vscode-extensions/archify-vscode-ext/issues"
},
"homepage": "https://gitea.lego-cloud.eu/vscode-extensions/archify-vscode-ext#readme"
"homepage": "https://gitea.lego-cloud.eu/vscode-extensions/archify-vscode-ext#readme",
"dependencies": {
"yaml": "^2.9.1"
}
}