Summary
Create a VS Code extension that provides zero-configuration Nemo XML authoring support: registers nemo-lsp as the language server, adds TextMate grammar for syntax highlighting, and provides a "Preview in Nemo" command.
Context
VS Code users should get a complete authoring experience without manual configuration. The extension:
- Activates on
.xml files containing a <nemo> root element
- Launches the
nemo-lsp binary as the language server
- Provides TextMate-based syntax highlighting (XML base +
${} expression token scopes)
- Adds a "Preview in Nemo" command that saves the current file and launches the Nemo app
Acceptance Criteria
Relevant Files
crates/nemo-lsp/ — the LSP server binary
schema/nemo.xsd — attribute groups and element structure for grammar design
Stack Base
Summary
Create a VS Code extension that provides zero-configuration Nemo XML authoring support: registers
nemo-lspas the language server, adds TextMate grammar for syntax highlighting, and provides a "Preview in Nemo" command.Context
VS Code users should get a complete authoring experience without manual configuration. The extension:
.xmlfiles containing a<nemo>root elementnemo-lspbinary as the language server${}expression token scopes)Acceptance Criteria
extensions/nemo-vscode/package.jsonwith activation events for.xmlfiles containing<nemo>nemo-lspbinarysyntaxes/nemo.tmLanguage.json):${}expression token scopes for interpolation highlightingbind-*attribute patternsvscode-nemocontributes:nemo.xml(conditional on<nemo>content)nemo --app-config <current-file>in an integrated terminalvsce)nemo-lspfrom PATH or configured pathRelevant Files
crates/nemo-lsp/— the LSP server binaryschema/nemo.xsd— attribute groups and element structure for grammar designStack Base
mainnemo-lsplanguage server #62 (nemo-lsp language server) — the extension depends on the LSP binary for completions, diagnostics, hover, etc.