summaryrefslogtreecommitdiffhomepage
path: root/packages
diff options
context:
space:
mode:
authorDax Raad <[email protected]>2025-11-25 19:14:07 -0500
committerDax Raad <[email protected]>2025-11-25 19:14:07 -0500
commite8db95be16ce25807bf6f218cac0879cdca1ee4d (patch)
treedd2e6e42dc0f68ce291a0d85923caece4615b37a /packages
parent69c2dd53adf126a3c68d2974b8753ae0f92ee854 (diff)
downloadopencode-e8db95be16ce25807bf6f218cac0879cdca1ee4d.tar.gz
opencode-e8db95be16ce25807bf6f218cac0879cdca1ee4d.zip
switch typescript lsp to be one per package to ensure it loads when typescript is not installed at root
Diffstat (limited to 'packages')
-rw-r--r--packages/opencode/src/lsp/server.ts7
1 files changed, 2 insertions, 5 deletions
diff --git a/packages/opencode/src/lsp/server.ts b/packages/opencode/src/lsp/server.ts
index 79a2a408b..af96a02d8 100644
--- a/packages/opencode/src/lsp/server.ts
+++ b/packages/opencode/src/lsp/server.ts
@@ -82,13 +82,10 @@ export namespace LSPServer {
export const Typescript: Info = {
id: "typescript",
- root: NearestRoot(
- ["package-lock.json", "bun.lockb", "bun.lock", "pnpm-lock.yaml", "yarn.lock"],
- ["deno.json", "deno.jsonc"],
- ),
+ root: NearestRoot(["tsconfig.json", "package.json", "jsconfig.json", ".git"], ["deno.json", "deno.jsonc"]),
extensions: [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs", ".mts", ".cts"],
async spawn(root) {
- const tsserver = await Bun.resolve("typescript/lib/tsserver.js", Instance.directory).catch(() => {})
+ const tsserver = await Bun.resolve("typescript/lib/tsserver.js", root).catch(() => {})
if (!tsserver) return
const proc = spawn(BunProc.which(), ["x", "typescript-language-server", "--stdio"], {
cwd: root,