diff --git a/CHANGELOG.md b/CHANGELOG.md index 29c71b1..6d780bd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,8 @@ ## Unreleased -- **Right-click menus:** Archify commands (New Diagram Archify…, Open Preview, Render to HTML File…, Open in Archify HTML Viewer) now sit in their own section at the bottom of the Explorer and editor-tab menus, instead of between New File, New Folder and the other built-in entries. +- **Right-click menus:** Archify commands (Archify | New Diagram…, Open Preview, Render to HTML File…, Open in Archify HTML Viewer) now sit in their own section at the bottom of the Explorer and editor-tab menus, instead of between New File, New Folder and the other built-in entries. +- The new-diagram command is renamed **Archify | New Diagram…** (was *New Diagram Archify…*). ## 0.5.1 — 2026-10-07 diff --git a/README.md b/README.md index 6939caa..24928f5 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ New diagrams should be `.archify` files; everything below describes them unless ## Quick start -The fastest start: right-click a folder in the Explorer and choose **New Diagram Archify…** (also in *File → New File…* and the Command Palette). Pick a kind of diagram (Architecture, Workflow, Sequence, Data Flow, Lifecycle or Everyday Plan), give it a name, and a small working `.archify` file is created and opened. Change its YAML to fit your case. +The fastest start: right-click a folder in the Explorer and choose **Archify | New Diagram…** (also in *File → New File…* and the Command Palette). Pick a kind of diagram (Architecture, Workflow, Sequence, Data Flow, Lifecycle or Everyday Plan), give it a name, and a small working `.archify` file is created and opened. Change its YAML to fit your case. To write one by hand: @@ -59,7 +59,7 @@ The Archify CLI and the AI agents that use it write diagrams as JSON, named `nam ## Features -- **New diagram from a template**: *New Diagram Archify…* creates a starter `.archify` file for any of the five diagram kinds, or an everyday plan, in the chosen folder. +- **New diagram from a template**: *Archify | New Diagram…* creates a starter `.archify` file for any of the five diagram kinds, or an everyday plan, in the chosen folder. - **Diagram editor**: `.archify` files open as the rendered diagram. **Show Source** opens the YAML beside it, and edits re-render live. - **Live updates**: the diagram re-renders as you edit, and keeps the focus and route you selected (`#focus=…`, `#route=…`). - **HTML viewer**: right-click a rendered `.html` file and choose **Open in Archify HTML Viewer**, or use *Reopen Editor With… → Archify HTML Viewer*. For Archify HTML already open as text, a button appears in the editor title. The viewer reloads when the file changes on disk. @@ -68,7 +68,7 @@ The Archify CLI and the AI agents that use it write diagrams as JSON, named `nam - **Schema help**: completion and hover from Archify's own schemas, through the YAML extension for `.archify` files. - **Source links**: in source-backed diagrams, clicking a source reference opens that file and line range in the editor. If the file is not in the workspace, the web link opens instead. - **Export**: the diagram's own Export menu (PNG, SVG, share card, …) saves through a VS Code save dialog. -- **Commands**: *New Diagram Archify…*, *Archify: Render to HTML File…*, *Archify: Open in Browser*, *Archify: Refresh Preview*, *Archify: Show Source*. +- **Commands**: *Archify | New Diagram…*, *Archify: Render to HTML File…*, *Archify: Open in Browser*, *Archify: Refresh Preview*, *Archify: Show Source*. ## Source evidence diff --git a/package.json b/package.json index ba45a50..d121e38 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "commands": [ { "command": "archify.newDiagram", - "title": "New Diagram Archify\u2026", + "title": "Archify | New Diagram\u2026", "icon": "$(new-file)" }, { diff --git a/src/extension.ts b/src/extension.ts index 175ebea..55d8a0c 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -119,7 +119,7 @@ export function activate(context: vscode.ExtensionContext): void { vscode.commands.registerCommand('archify.newDiagram', async (arg?: unknown) => { const template = await vscode.window.showQuickPick( TEMPLATES.map((item) => ({ label: item.label, description: item.description, template: item })), - { title: 'New Diagram Archify', placeHolder: 'Kind of diagram' }, + { title: 'Archify | New Diagram', placeHolder: 'Kind of diagram' }, ); if (!template) return; const { file, defaultName } = template.template; @@ -128,7 +128,7 @@ export function activate(context: vscode.ExtensionContext): void { let target: vscode.Uri | undefined; if (folder) { const name = await vscode.window.showInputBox({ - title: 'New Diagram Archify', + title: 'Archify | New Diagram', prompt: `File name in ${vscode.workspace.asRelativePath(folder, true)}`, value: defaultName, validateInput: async (value) => @@ -140,7 +140,7 @@ export function activate(context: vscode.ExtensionContext): void { } else { // No workspace: let the user choose where to save. target = await vscode.window.showSaveDialog({ - title: 'New Diagram Archify', + title: 'Archify | New Diagram', filters: { 'Archify Diagram': ['archify'] }, saveLabel: 'Create', }); diff --git a/test/integration/suite.ts b/test/integration/suite.ts index 6358fb5..58edae6 100644 --- a/test/integration/suite.ts +++ b/test/integration/suite.ts @@ -97,11 +97,11 @@ export async function run(): Promise { assert.ok(diagnostics[0].range.start.line >= 2, `reported on line ${diagnostics[0].range.start.line + 1}`); }); - await check('New Diagram Archify creates a .archify file from a template and opens the diagram', async () => { + await check('Archify | New Diagram creates a .archify file from a template and opens the diagram', async () => { // Menus show the bare title, so it must name Archify by itself. const commands = vscode.extensions.getExtension(EXTENSION_ID)?.packageJSON.contributes.commands as { command: string; title: string; category?: string }[]; const newDiagram = commands.find((item) => item.command === 'archify.newDiagram'); - assert.equal(newDiagram?.title, 'New Diagram Archify…'); + assert.equal(newDiagram?.title, 'Archify | New Diagram…'); assert.equal(newDiagram?.category, undefined); const folder = workspaceFile('.'); // Stub the template pick and the name prompt; check the name validation on the way.