@canonical/terrazzo-lsp 0.3.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -20,35 +20,15 @@ Language server providing CSS custom property intelligence for design token work
20
20
  **VS Code** (recommended):
21
21
 
22
22
  ```bash
23
- bun run build:all
24
23
  npm install -D @canonical/design-tokens
25
- npx @canonical/terrazzo-lsp install vscode
24
+ npx @canonical/terrazzo-lsp-extension
26
25
  ```
27
26
 
28
- The `terrazzo-lsp` command is re-exported by `@canonical/design-tokens`, so
29
- consumers can use `npx terrazzo-lsp` without installing the LSP package
30
- directly. The install command attempts to install the bundled VS Code extension
31
- with the `code` CLI and always writes `.vscode/settings.json`. If `code` is not
32
- on your `PATH`, it prints the manual `code --install-extension ...` command.
33
-
34
27
  The extension auto-detects `bun` first and falls back to `node >= 22`.
35
28
 
36
- **Neovim** (via nvim-lspconfig):
37
-
38
- ```bash
39
- bun dist/esm/cli.js install neovim
40
- ```
41
-
42
- **Helix:**
43
-
44
- ```bash
45
- bun dist/esm/cli.js install helix
46
- ```
47
-
48
29
  ## CLI
49
30
 
50
31
  ```bash
51
- npx terrazzo-lsp install vscode # Install bundled VS Code extension + workspace settings
52
32
  npx terrazzo-lsp --stdio # Start LSP server on stdio
53
33
  npx terrazzo-lsp --stdio --allow-degraded # Start with reduced capabilities when config is missing
54
34
  npx terrazzo-lsp check [globs] # Run diagnostics on CSS files
@@ -264,7 +244,6 @@ Each diagnostic rule lives in its own file (`diagnostics/checkMissingFallback.ts
264
244
 
265
245
  ```bash
266
246
  bun run build # Compile LSP server (tsc)
267
- bun run build:all # Build + package VS Code extension
268
247
  bun run test # Run tests
269
248
  bun run check # Lint + type check
270
249
  ```
@@ -10,7 +10,6 @@ import { printHelp } from "./printHelp.js";
10
10
  import { runCheck } from "./runCheck.js";
11
11
  import { runGraph } from "./runGraph.js";
12
12
  import { runInspect } from "./runInspect.js";
13
- import { runInstall } from "./runInstall.js";
14
13
  import { runResolve } from "./runResolve.js";
15
14
  import { runStatus } from "./runStatus.js";
16
15
  const args = process.argv.slice(2).filter((arg) => arg !== "--allow-degraded");
@@ -44,9 +43,6 @@ async function run() {
44
43
  case "graph":
45
44
  await runGraph(args[1], rootDir);
46
45
  break;
47
- case "install":
48
- await runInstall(args[1], rootDir);
49
- break;
50
46
  case "--help":
51
47
  case "-h":
52
48
  printHelp();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC;AAC/E,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAChE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;AACrC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE9B;;;;;GAKG;AACH,KAAK,UAAU,GAAG;IAChB,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS,CAAC;QACf,KAAK,OAAO;YACV,cAAc,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;YAC3C,MAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,SAAS,EAAE,CAAC;YACZ,MAAM;QACR,KAAK,WAAW,CAAC;QACjB,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC;YACvC,MAAM;QACR;YACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC7C,SAAS,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,KAAK,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC;AAC/E,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAChE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;AACrC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE9B;;;;;GAKG;AACH,KAAK,UAAU,GAAG;IAChB,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS,CAAC;QACf,KAAK,OAAO;YACV,cAAc,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;YAC3C,MAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,SAAS,EAAE,CAAC;YACZ,MAAM;QACR,KAAK,WAAW,CAAC;QACjB,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC;YACvC,MAAM;QACR;YACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC7C,SAAS,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,KAAK,GAAG,EAAE,CAAC"}
@@ -9,7 +9,6 @@ Usage:
9
9
  terrazzo-lsp inspect <var> Inspect a CSS custom property
10
10
  terrazzo-lsp resolve <spec> Resolve an import specifier
11
11
  terrazzo-lsp graph <file> Show import graph from a file
12
- terrazzo-lsp install <editor> Install LSP config (neovim, helix, vscode)
13
12
 
14
13
  Options:
15
14
  --stdio Start LSP server on stdio (default)
@@ -1 +1 @@
1
- {"version":3,"file":"printHelp.js","sourceRoot":"","sources":["../../../src/cli/printHelp.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,MAAM,UAAU,SAAS;IACvB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;6CAe+B,CAAC,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"printHelp.js","sourceRoot":"","sources":["../../../src/cli/printHelp.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,MAAM,UAAU,SAAS;IACvB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;6CAc+B,CAAC,CAAC;AAC/C,CAAC"}
package/dist/esm/cli.js CHANGED
File without changes
@@ -10,8 +10,7 @@ export default async function findBundledVsixPath(packageRoot) {
10
10
  const fileNames = await fs.readdir(extensionDir);
11
11
  const vsixName = [...fileNames]
12
12
  .filter((fileName) => /^terrazzo-lsp-.*\.vsix$/u.test(fileName))
13
- .sort()
14
- .pop();
13
+ .sort()[0];
15
14
  return vsixName ? join(extensionDir, vsixName) : null;
16
15
  }
17
16
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"findBundledVsixPath.js","sourceRoot":"","sources":["../../../src/extension/findBundledVsixPath.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,sEAAsE;AACtE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,mBAAmB,CAC/C,WAAmB;IAEnB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEpD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC;aAC5B,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC/D,IAAI,EAAE;aACN,GAAG,EAAE,CAAC;QAET,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"findBundledVsixPath.js","sourceRoot":"","sources":["../../../src/extension/findBundledVsixPath.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,sEAAsE;AACtE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,mBAAmB,CAC/C,WAAmB;IAEnB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEpD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC;aAC5B,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC/D,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAEb,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"printHelp.d.ts","sourceRoot":"","sources":["../../../src/cli/printHelp.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,wBAAgB,SAAS,IAAI,IAAI,CAiBhC"}
1
+ {"version":3,"file":"printHelp.d.ts","sourceRoot":"","sources":["../../../src/cli/printHelp.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,wBAAgB,SAAS,IAAI,IAAI,CAgBhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"findBundledVsixPath.d.ts","sourceRoot":"","sources":["../../../src/extension/findBundledVsixPath.ts"],"names":[],"mappings":"AAMA,sEAAsE;AACtE,wBAA8B,mBAAmB,CAC/C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAcxB"}
1
+ {"version":3,"file":"findBundledVsixPath.d.ts","sourceRoot":"","sources":["../../../src/extension/findBundledVsixPath.ts"],"names":[],"mappings":"AAMA,sEAAsE;AACtE,wBAA8B,mBAAmB,CAC/C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAaxB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@canonical/terrazzo-lsp",
3
- "version": "0.3.2",
3
+ "version": "0.4.0",
4
4
  "description": "Language server providing CSS custom property intelligence for design token workflows. Includes completions, hover, diagnostics, go-to-definition, rename, document colours, and workspace symbols.",
5
5
  "type": "module",
6
6
  "license": "LGPL-3.0",
@@ -35,14 +35,12 @@
35
35
  "terrazzo-lsp": "./dist/esm/cli.js"
36
36
  },
37
37
  "files": [
38
- "dist",
39
- "extension/terrazzo-lsp-*.vsix"
38
+ "dist"
40
39
  ],
41
40
  "scripts": {
42
- "build": "bun run build:tsc && bun run build:extension",
41
+ "build": "bun run build:tsc",
43
42
  "build:all": "bun run build",
44
43
  "build:tsc": "tsc -p tsconfig.build.json",
45
- "build:extension": "cd extension && bun run package",
46
44
  "check": "bun run check:biome && bun run check:ts && bun run check:webarchitect",
47
45
  "check:webarchitect": "webarchitect library",
48
46
  "check:fix": "bun run check:biome:fix && bun run check:ts",
@@ -54,7 +52,7 @@
54
52
  "test:coverage": "vitest run --coverage"
55
53
  },
56
54
  "dependencies": {
57
- "@canonical/token-types": "^0.3.1",
55
+ "@canonical/token-types": "^0.4.0",
58
56
  "@lezer/common": "^1.3.0",
59
57
  "@lezer/css": "^1.3.0",
60
58
  "colorjs.io": "^0.6.1"
Binary file