pi-x-ide 1.7.0 → 1.9.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 +39 -35
- package/README.zh-CN.md +40 -35
- package/dist/package.json +1 -1
- package/dist/src/pi/commands.d.ts +8 -1
- package/dist/src/pi/commands.js +24 -1
- package/dist/src/pi/commands.js.map +1 -1
- package/dist/src/pi/install.js +3 -1
- package/dist/src/pi/install.js.map +1 -1
- package/dist/src/pi/ui.js +6 -6
- package/dist/src/pi/ui.js.map +1 -1
- package/dist/src/shared/config-options.d.ts +5 -0
- package/dist/src/shared/config-options.js +5 -0
- package/dist/src/shared/config-options.js.map +1 -1
- package/dist/src/shared/config.js +1 -1
- package/dist/src/shared/config.js.map +1 -1
- package/dist/test/connection.test.js +0 -1
- package/dist/test/connection.test.js.map +1 -1
- package/dist/test/install.test.js +14 -1
- package/dist/test/install.test.js.map +1 -1
- package/package.json +1 -1
- package/schemas/config.json +6 -1
- package/src/pi/commands.ts +34 -3
- package/src/pi/install.ts +4 -1
- package/src/pi/ui.ts +6 -6
- package/src/shared/config-options.ts +5 -0
- package/src/shared/config.ts +1 -1
package/README.md
CHANGED
|
@@ -62,18 +62,17 @@ starts. Plugin updates trigger a one-time re-download.
|
|
|
62
62
|
```lua
|
|
63
63
|
{
|
|
64
64
|
"balaenis/pi-x-ide",
|
|
65
|
-
init = function()
|
|
66
|
-
vim.opt.rtp:prepend(
|
|
67
|
-
end,
|
|
68
|
-
config = function()
|
|
69
|
-
require("pi_x_ide").setup({
|
|
70
|
-
keymap = "<C-A-k>",
|
|
71
|
-
})
|
|
65
|
+
init = function(plugin)
|
|
66
|
+
vim.opt.rtp:prepend(plugin.dir .. "/nvim")
|
|
72
67
|
end,
|
|
68
|
+
main = "pi_x_ide",
|
|
69
|
+
opts = {
|
|
70
|
+
keymap = "<leader>aa",
|
|
71
|
+
},
|
|
73
72
|
}
|
|
74
73
|
```
|
|
75
74
|
|
|
76
|
-
> **Note:** The `init` block manually adds the `nvim/` subdirectory to the runtime path to avoid a Lua module resolution issue with some lazy.nvim versions.
|
|
75
|
+
> **Note:** The `init` block manually adds the `nvim/` subdirectory to the runtime path to avoid a Lua module resolution issue with some lazy.nvim versions. The plugin options are passed through lazy.nvim's recommended `opts` field.
|
|
77
76
|
|
|
78
77
|
**Native package:**
|
|
79
78
|
|
|
@@ -102,7 +101,7 @@ Open a file in your IDE and select some text. The widget should update in real t
|
|
|
102
101
|
IDE: vscode ✓ src/foo.ts#L10,20 pending
|
|
103
102
|
```
|
|
104
103
|
|
|
105
|
-
|
|
104
|
+
Attach the selection from either side: press `Ctrl+Alt+K` (Linux/Windows) or `Cmd+Alt+K` (macOS) in a VS Code-family IDE, or focus the Pi TUI and press `Ctrl+Alt+K` / run `/ide attach`. The Pi input box should insert `@src/foo.ts#L10,20`.
|
|
106
105
|
|
|
107
106
|
Type a chat prompt in Pi and submit it. The selected text is injected as LLM context (does not persist in session history). After submission, the widget shows `sent`.
|
|
108
107
|
|
|
@@ -124,13 +123,16 @@ Type a chat prompt in Pi and submit it. The selected text is injected as LLM con
|
|
|
124
123
|
| `/ide attach` | Manually insert the latest selection range into the input box |
|
|
125
124
|
| `/ide install` | Install or update `balaenis.pi-x-ide` through a supported IDE CLI |
|
|
126
125
|
|
|
126
|
+
Pi also registers `Ctrl+Alt+K` in the TUI as a shortcut for `/ide attach` by default. Repeated presses append the latest selected range to the current input, so you can select multiple ranges in the editor and attach them one by one. On macOS, this is a terminal shortcut (`Ctrl+Option+K`); `Cmd` shortcuts are handled by the terminal/OS and are not available to Pi's TUI. Set `PI_X_IDE_ATTACH_SHORTCUT` to another pi key id to customize it, or to `off`/`none`/`false`/`0` to disable it.
|
|
127
|
+
|
|
127
128
|
### Configuration Reference
|
|
128
129
|
|
|
129
130
|
#### VS Code
|
|
130
131
|
|
|
131
|
-
| Key | Type | Default | Description
|
|
132
|
-
| -------------------- | --------------------- | --------- |
|
|
133
|
-
| `piXIde.rangeFormat` | `"comma"` \| `"dash"` | `"comma"` | File reference format for the manual shortcut
|
|
132
|
+
| Key | Type | Default | Description |
|
|
133
|
+
| -------------------- | --------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------ |
|
|
134
|
+
| `piXIde.rangeFormat` | `"comma"` \| `"dash"` | `"comma"` | File reference format for the manual shortcut |
|
|
135
|
+
| `piXIde.useTmux` | `boolean` | `false` | Open Pi through `tmux` from the terminal icon. Each click creates a new session that is destroyed when the terminal detaches. |
|
|
134
136
|
|
|
135
137
|
#### Zed
|
|
136
138
|
|
|
@@ -176,25 +178,26 @@ when no binary matches.
|
|
|
176
178
|
|
|
177
179
|
#### Pi-side Environment Variables
|
|
178
180
|
|
|
179
|
-
Pi-side variables can be set as real environment variables or in `~/.pi/config.json` under `env`. Real environment variables take precedence.
|
|
181
|
+
Pi-side variables can be set as real environment variables or in `~/.pi/pi-x-ide/config.json` under `env`. Real environment variables take precedence.
|
|
180
182
|
|
|
181
|
-
| Variable | Default | Description
|
|
182
|
-
| ------------------------------- | ------------- |
|
|
183
|
-
| `PI_X_IDE_AUTO_INSTALL` | `1` | Auto-install VS Code extension on Pi startup
|
|
184
|
-
| `
|
|
185
|
-
| `
|
|
183
|
+
| Variable | Default | Description |
|
|
184
|
+
| ------------------------------- | ------------- | ----------------------------------------------------------------------------------- |
|
|
185
|
+
| `PI_X_IDE_AUTO_INSTALL` | `1` | Auto-install VS Code extension on Pi startup |
|
|
186
|
+
| `PI_X_IDE_ATTACH_SHORTCUT` | `ctrl+alt+k` | Pi TUI shortcut for `/ide attach`; set to `off`, `none`, `false`, or `0` to disable |
|
|
187
|
+
| `PI_X_IDE_ZED_DB` | (auto-detect) | Override path to Zed SQLite database |
|
|
188
|
+
| `PI_X_IDE_ZED_POLL_INTERVAL_MS` | `1000` | Zed SQLite polling interval, clamped to 100-2000 ms |
|
|
186
189
|
|
|
187
|
-
See [schemas/config.json](schemas/config.json) for editor schema guidance.
|
|
190
|
+
See [schemas/config.json](schemas/config.json) for editor schema guidance. A [config.example.json](config.example.json) is provided as a starting template.
|
|
188
191
|
|
|
189
192
|
### Feature Parity
|
|
190
193
|
|
|
191
|
-
| Feature
|
|
192
|
-
|
|
|
193
|
-
| Live file tracking
|
|
194
|
-
| Live selection tracking
|
|
195
|
-
|
|
|
196
|
-
|
|
|
197
|
-
|
|
|
194
|
+
| Feature | VS Code | Zed | Neovim |
|
|
195
|
+
| ---------------------------------------------------- | ----------------------- | ---------- | ----------------------------- |
|
|
196
|
+
| Live file tracking | ✅ Real-time push | ✅ polling | ✅ Real-time push via sidecar |
|
|
197
|
+
| Live selection tracking | ✅ Real-time push | ✅ polling | ✅ Real-time push via sidecar |
|
|
198
|
+
| IDE context attach shortcut | ✅ Default `Ctrl+Alt+K` | ❌ | ✅ Custom configured keymap |
|
|
199
|
+
| Pi TUI context attach shortcut(default `Ctrl+Alt+K`) | ✅ | ✅ | ✅ |
|
|
200
|
+
| LLM context injection | ✅ | ✅ | ✅ |
|
|
198
201
|
|
|
199
202
|
### Lock File Protocol
|
|
200
203
|
|
|
@@ -234,13 +237,14 @@ pi -e ./src/pi/index.ts
|
|
|
234
237
|
|
|
235
238
|
Common commands:
|
|
236
239
|
|
|
237
|
-
| Command
|
|
238
|
-
|
|
|
239
|
-
| `bun run build`
|
|
240
|
-
| `bun run typecheck`
|
|
241
|
-
| `bun run test`
|
|
242
|
-
| `bun run package:
|
|
243
|
-
| `bun run vsix`
|
|
240
|
+
| Command | Description |
|
|
241
|
+
| ----------------------------- | -------------------------------------------------------------------------------------------------- |
|
|
242
|
+
| `bun run build` | Build Pi-side TypeScript → `dist/` + Neovim sidecar → `nvim/bin/` + VS Code bundle → `vscode/out/` |
|
|
243
|
+
| `bun run typecheck` | Type-check only (no output files) |
|
|
244
|
+
| `bun run test` | Build + run unit tests |
|
|
245
|
+
| `bun run package:vsix` | Package VS Code extension as VSIX |
|
|
246
|
+
| `bun run vsix` | Alias for `bun run package:vsix` |
|
|
247
|
+
| `bun run check:config-schema` | Verify `schemas/config.json` is in sync with the config registry |
|
|
244
248
|
|
|
245
249
|
### Testing the VS Code Extension Locally
|
|
246
250
|
|
|
@@ -256,8 +260,8 @@ Common commands:
|
|
|
256
260
|
#### Option 2: Package VSIX and Install
|
|
257
261
|
|
|
258
262
|
```bash
|
|
259
|
-
bun run package:
|
|
260
|
-
code --install-extension './
|
|
263
|
+
bun run package:vsix
|
|
264
|
+
cd vscode && code --install-extension dist/pi-x-ide-$(node -p "require('./package.json').version").vsix
|
|
261
265
|
```
|
|
262
266
|
|
|
263
267
|
The extension installed this way runs in all VS Code windows, independent of the F5 Extension Host.
|
package/README.zh-CN.md
CHANGED
|
@@ -61,18 +61,17 @@ x64 或 arm64)。下载失败或无匹配二进制时,插件降级到内置
|
|
|
61
61
|
```lua
|
|
62
62
|
{
|
|
63
63
|
"balaenis/pi-x-ide",
|
|
64
|
-
init = function()
|
|
65
|
-
vim.opt.rtp:prepend(
|
|
66
|
-
end,
|
|
67
|
-
config = function()
|
|
68
|
-
require("pi_x_ide").setup({
|
|
69
|
-
keymap = "<C-A-k>",
|
|
70
|
-
})
|
|
64
|
+
init = function(plugin)
|
|
65
|
+
vim.opt.rtp:prepend(plugin.dir .. "/nvim")
|
|
71
66
|
end,
|
|
67
|
+
main = "pi_x_ide",
|
|
68
|
+
opts = {
|
|
69
|
+
keymap = "<leader>aa",
|
|
70
|
+
},
|
|
72
71
|
}
|
|
73
72
|
```
|
|
74
73
|
|
|
75
|
-
> **注意:** `init` 块手动将 `nvim/` 子目录加入 runtime path,以规避部分版本 lazy.nvim 的 Lua
|
|
74
|
+
> **注意:** `init` 块手动将 `nvim/` 子目录加入 runtime path,以规避部分版本 lazy.nvim 的 Lua 模块解析兼容性问题。插件选项通过 lazy.nvim 推荐的 `opts` 字段传入。
|
|
76
75
|
|
|
77
76
|
**原生 package:**
|
|
78
77
|
|
|
@@ -101,7 +100,7 @@ Pi 自动加载 `pi-x-ide` 并连接 IDE。TUI 底部应显示 `IDE: vscode ✓`
|
|
|
101
100
|
IDE: vscode ✓ src/foo.ts#L10,20 pending
|
|
102
101
|
```
|
|
103
102
|
|
|
104
|
-
|
|
103
|
+
可以从任一侧附加选区:在 VS Code 系列 IDE 中按 `Ctrl+Alt+K`(Linux/Windows)或 `Cmd+Alt+K`(macOS),或聚焦 Pi TUI 后按 `Ctrl+Alt+K` / 运行 `/ide attach`。Pi 输入框应插入 `@src/foo.ts#L10,20`。
|
|
105
104
|
|
|
106
105
|
在 Pi 中输入对话提示并提交,选中文本会作为 LLM 上下文注入(不写入 session 历史)。提交后 widget 显示 `sent`。
|
|
107
106
|
|
|
@@ -123,13 +122,16 @@ IDE: vscode ✓ src/foo.ts#L10,20 pending
|
|
|
123
122
|
| `/ide attach` | 手动把最新 selection range 插入输入框 |
|
|
124
123
|
| `/ide install` | 通过支持的 IDE CLI 安装或更新 `balaenis.pi-x-ide` |
|
|
125
124
|
|
|
125
|
+
Pi 默认也会在 TUI 中注册 `Ctrl+Alt+K`,作为 `/ide attach` 的快捷键。重复按下会把最新选中的范围追加到当前输入框,因此可以在编辑器中多次选择不同文本并逐个附加。macOS 上这是终端快捷键(`Ctrl+Option+K`);`Cmd` 快捷键通常由终端或系统处理,Pi TUI 无法接收。设置 `PI_X_IDE_ATTACH_SHORTCUT` 可改成其他 pi key id;设为 `off`/`none`/`false`/`0` 可禁用。
|
|
126
|
+
|
|
126
127
|
### 配置参考
|
|
127
128
|
|
|
128
129
|
#### VS Code
|
|
129
130
|
|
|
130
|
-
| 键 | 类型 | 默认值 | 说明
|
|
131
|
-
| -------------------- | --------------------- | --------- |
|
|
132
|
-
| `piXIde.rangeFormat` | `"comma"` \| `"dash"` | `"comma"` | 手动快捷键生成的文件引用格式
|
|
131
|
+
| 键 | 类型 | 默认值 | 说明 |
|
|
132
|
+
| -------------------- | --------------------- | --------- | -------------------------------------------------------------------------------------- |
|
|
133
|
+
| `piXIde.rangeFormat` | `"comma"` \| `"dash"` | `"comma"` | 手动快捷键生成的文件引用格式 |
|
|
134
|
+
| `piXIde.useTmux` | `boolean` | `false` | 通过终端图标用 `tmux` 打开 Pi。每次点击都会创建一个新 session,终端 detach 后自动销毁。 |
|
|
133
135
|
|
|
134
136
|
#### Zed
|
|
135
137
|
|
|
@@ -174,25 +176,27 @@ require("pi_x_ide").setup({
|
|
|
174
176
|
|
|
175
177
|
#### Pi 侧环境变量
|
|
176
178
|
|
|
177
|
-
Pi 侧变量可设为真实环境变量或写入 `~/.pi/config.json` 的 `env` 中。真实环境变量优先级更高。
|
|
179
|
+
Pi 侧变量可设为真实环境变量或写入 `~/.pi/pi-x-ide/config.json` 的 `env` 中。真实环境变量优先级更高。
|
|
178
180
|
|
|
179
|
-
| 变量 | 默认值 | 说明
|
|
180
|
-
| ------------------------------- | ------------ |
|
|
181
|
-
| `PI_X_IDE_AUTO_INSTALL` | `1` | Pi 启动时自动安装 VS Code 扩展
|
|
182
|
-
| `
|
|
183
|
-
| `
|
|
181
|
+
| 变量 | 默认值 | 说明 |
|
|
182
|
+
| ------------------------------- | ------------ | ------------------------------------------------------------------------- |
|
|
183
|
+
| `PI_X_IDE_AUTO_INSTALL` | `1` | Pi 启动时自动安装 VS Code 扩展 |
|
|
184
|
+
| `PI_X_IDE_ATTACH_SHORTCUT` | `ctrl+alt+k` | Pi TUI 的 `/ide attach` 快捷键;设为 `off`、`none`、`false` 或 `0` 可禁用 |
|
|
185
|
+
| `PI_X_IDE_ZED_DB` | (自动检测) | 覆盖 Zed SQLite 数据库路径 |
|
|
186
|
+
| `PI_X_IDE_ZED_POLL_INTERVAL_MS` | `1000` | Zed SQLite 轮询间隔,会被限制在 100-2000 ms 范围 |
|
|
184
187
|
|
|
185
|
-
编辑器 schema 指导见 [schemas/config.json](schemas/config.json)。
|
|
188
|
+
编辑器 schema 指导见 [schemas/config.json](schemas/config.json)。[config.example.json](config.example.json) 提供了起始模板。
|
|
186
189
|
|
|
187
190
|
### 功能对比
|
|
188
191
|
|
|
189
|
-
| 功能
|
|
190
|
-
|
|
|
191
|
-
| 实时文件追踪
|
|
192
|
-
| 实时选区追踪
|
|
193
|
-
|
|
|
194
|
-
|
|
|
195
|
-
|
|
|
192
|
+
| 功能 | VS Code | Zed | Neovim |
|
|
193
|
+
| ------------------------------------------------ | -------------------- | ----------- | ------------------------ |
|
|
194
|
+
| 实时文件追踪 | ✅ 实时推送 | ✅ 1 秒轮询 | ✅ 通过 sidecar 实时推送 |
|
|
195
|
+
| 实时选区追踪 | ✅ 实时推送 | ✅ 1 秒轮询 | ✅ 通过 sidecar 实时推送 |
|
|
196
|
+
| IDE 上下文 attach 快捷键 | ✅ 默认 `Ctrl+Alt+K` | ❌ | ✅ 自定义快捷键 keymap |
|
|
197
|
+
| Pi TUI 上下文 attach 快捷键(默认 `Ctrl+Alt+K`) | ✅ | ✅ | ✅ |
|
|
198
|
+
| LLM 上下文注入 | ✅ | ✅ | ✅ |
|
|
199
|
+
| `/ide auto` | ✅ | ✅ | ✅ |
|
|
196
200
|
|
|
197
201
|
### Lock File 协议
|
|
198
202
|
|
|
@@ -232,13 +236,14 @@ pi -e ./src/pi/index.ts
|
|
|
232
236
|
|
|
233
237
|
常用命令:
|
|
234
238
|
|
|
235
|
-
| 命令
|
|
236
|
-
|
|
|
237
|
-
| `bun run build`
|
|
238
|
-
| `bun run typecheck`
|
|
239
|
-
| `bun run test`
|
|
240
|
-
| `bun run package:
|
|
241
|
-
| `bun run vsix`
|
|
239
|
+
| 命令 | 说明 |
|
|
240
|
+
| ----------------------------- | ----------------------------------------------------------------------------------------------- |
|
|
241
|
+
| `bun run build` | 编译 Pi 侧 TypeScript → `dist/` + Neovim sidecar → `nvim/bin/` + VS Code bundle → `vscode/out/` |
|
|
242
|
+
| `bun run typecheck` | 类型检查(不产出文件) |
|
|
243
|
+
| `bun run test` | 编译 + 运行单元测试 |
|
|
244
|
+
| `bun run package:vsix` | 打包 VS Code 扩展为 VSIX |
|
|
245
|
+
| `bun run vsix` | `bun run package:vsix` 的别名 |
|
|
246
|
+
| `bun run check:config-schema` | 验证 `schemas/config.json` 与配置注册表是否同步 |
|
|
242
247
|
|
|
243
248
|
### 本地测试 VS Code 扩展
|
|
244
249
|
|
|
@@ -254,8 +259,8 @@ pi -e ./src/pi/index.ts
|
|
|
254
259
|
#### 方式二:打包 VSIX 后安装
|
|
255
260
|
|
|
256
261
|
```bash
|
|
257
|
-
bun run package:
|
|
258
|
-
code --install-extension './
|
|
262
|
+
bun run package:vsix
|
|
263
|
+
cd vscode && code --install-extension dist/pi-x-ide-$(node -p "require('./package.json').version").vsix
|
|
259
264
|
```
|
|
260
265
|
|
|
261
266
|
这样安装的扩展在所有 VS Code 窗口中运行,不依赖 F5 Extension Host。
|
package/dist/package.json
CHANGED
|
@@ -3,6 +3,9 @@ import type { ExtensionAPI, ExtensionCommandContext } from "@earendil-works/pi-c
|
|
|
3
3
|
};
|
|
4
4
|
import type { LockFileCandidate } from "../shared/protocol";
|
|
5
5
|
import type { PiIdeRuntime } from "./state";
|
|
6
|
+
export declare const PI_X_IDE_ATTACH_SHORTCUT_ENV = "PI_X_IDE_ATTACH_SHORTCUT";
|
|
7
|
+
export declare const DEFAULT_ATTACH_SHORTCUT = "ctrl+alt+k";
|
|
8
|
+
type ShortcutKey = Parameters<ExtensionAPI["registerShortcut"]>[0];
|
|
6
9
|
export interface IdeCommandActions {
|
|
7
10
|
refreshCandidates: (ctx: ExtensionCommandContext) => Promise<LockFileCandidate[]>;
|
|
8
11
|
connectAuto: (ctx: ExtensionCommandContext) => Promise<void>;
|
|
@@ -10,4 +13,8 @@ export interface IdeCommandActions {
|
|
|
10
13
|
disconnect: (ctx: ExtensionCommandContext, disabled?: boolean) => void;
|
|
11
14
|
installExtension: (ctx: ExtensionCommandContext) => Promise<void>;
|
|
12
15
|
}
|
|
13
|
-
export declare function registerIdeCommand(pi: ExtensionAPI, runtime: PiIdeRuntime, actions: IdeCommandActions
|
|
16
|
+
export declare function registerIdeCommand(pi: ExtensionAPI, runtime: PiIdeRuntime, actions: IdeCommandActions, options?: {
|
|
17
|
+
env?: NodeJS.ProcessEnv;
|
|
18
|
+
}): void;
|
|
19
|
+
export declare function resolveAttachShortcut(env?: NodeJS.ProcessEnv): ShortcutKey | undefined;
|
|
20
|
+
export {};
|
package/dist/src/pi/commands.js
CHANGED
|
@@ -1,9 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DEFAULT_ATTACH_SHORTCUT = exports.PI_X_IDE_ATTACH_SHORTCUT_ENV = void 0;
|
|
3
4
|
exports.registerIdeCommand = registerIdeCommand;
|
|
5
|
+
exports.resolveAttachShortcut = resolveAttachShortcut;
|
|
6
|
+
const config_1 = require("../shared/config");
|
|
4
7
|
const format_1 = require("../shared/format");
|
|
5
8
|
const ui_1 = require("./ui");
|
|
6
|
-
|
|
9
|
+
exports.PI_X_IDE_ATTACH_SHORTCUT_ENV = "PI_X_IDE_ATTACH_SHORTCUT";
|
|
10
|
+
exports.DEFAULT_ATTACH_SHORTCUT = "ctrl+alt+k";
|
|
11
|
+
const DISABLED_ATTACH_SHORTCUT_VALUES = new Set(["", "0", "false", "off", "none", "disabled"]);
|
|
12
|
+
function registerIdeCommand(pi, runtime, actions, options = {}) {
|
|
13
|
+
const attachShortcut = resolveAttachShortcut(options.env);
|
|
14
|
+
if (attachShortcut) {
|
|
15
|
+
pi.registerShortcut(attachShortcut, {
|
|
16
|
+
description: "Attach latest IDE selection to the prompt",
|
|
17
|
+
handler: (ctx) => {
|
|
18
|
+
runtime.ctx = ctx;
|
|
19
|
+
attachLatest(runtime, ctx);
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
}
|
|
7
23
|
pi.registerCommand("ide", {
|
|
8
24
|
description: "Manage IDE connection and editor selection context",
|
|
9
25
|
getArgumentCompletions: (argumentPrefix) => {
|
|
@@ -86,6 +102,13 @@ async function listCandidates(actions, ctx) {
|
|
|
86
102
|
.map((candidate, index) => `${index + 1}. ${candidate.lock.name} ${candidate.lock.host}:${candidate.lock.port}\n ${candidate.workspaceFolder}\n ${candidate.path}`)
|
|
87
103
|
.join("\n"), "info");
|
|
88
104
|
}
|
|
105
|
+
function resolveAttachShortcut(env = process.env) {
|
|
106
|
+
const value = (0, config_1.resolvePiConfigEnv)(env)[exports.PI_X_IDE_ATTACH_SHORTCUT_ENV] ?? exports.DEFAULT_ATTACH_SHORTCUT;
|
|
107
|
+
const normalized = value.trim().toLowerCase();
|
|
108
|
+
if (DISABLED_ATTACH_SHORTCUT_VALUES.has(normalized))
|
|
109
|
+
return undefined;
|
|
110
|
+
return normalized;
|
|
111
|
+
}
|
|
89
112
|
function attachLatest(runtime, ctx) {
|
|
90
113
|
if (!runtime.latestSelection) {
|
|
91
114
|
ctx.ui.notify("No IDE selection is available.", "warning");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/pi/commands.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/pi/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/src/pi/install.js
CHANGED
|
@@ -192,7 +192,9 @@ async function discoverInstallCandidates(options = {}) {
|
|
|
192
192
|
function selectAutoInstallCandidate(candidates, env = process.env) {
|
|
193
193
|
const configuredEnv = (0, config_1.resolvePiConfigEnv)(env);
|
|
194
194
|
const currentIde = inferCurrentIdeFromEnv(configuredEnv);
|
|
195
|
-
const highConfidence = candidates.filter((candidate) => candidate.confidence === "current-terminal" &&
|
|
195
|
+
const highConfidence = candidates.filter((candidate) => candidate.confidence === "current-terminal" &&
|
|
196
|
+
candidate.reason !== "unknown" &&
|
|
197
|
+
(!currentIde || candidate.id === currentIde));
|
|
196
198
|
return highConfidence.length === 1 ? highConfidence[0] : undefined;
|
|
197
199
|
}
|
|
198
200
|
async function installIdeExtension(candidate, runtime, options = {}) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/pi/install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/pi/install.ts"],"names":[],"mappings":"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"}
|
package/dist/src/pi/ui.js
CHANGED
|
@@ -39,20 +39,20 @@ function isPendingEditorContext(runtime) {
|
|
|
39
39
|
}
|
|
40
40
|
function buildStatusLine(runtime, cwd) {
|
|
41
41
|
if (!runtime.enabled || runtime.connectionStatus === "disabled")
|
|
42
|
-
return "IDE: off";
|
|
42
|
+
return "Pi x IDE: off";
|
|
43
43
|
if (runtime.connectionStatus === "connecting")
|
|
44
|
-
return "IDE: connecting";
|
|
44
|
+
return "Pi x IDE: connecting";
|
|
45
45
|
if (runtime.connectionStatus === "error")
|
|
46
|
-
return `IDE: error${runtime.connectionMessage ? ` ${runtime.connectionMessage}` : ""}`;
|
|
46
|
+
return `Pi x IDE: error${runtime.connectionMessage ? ` ${runtime.connectionMessage}` : ""}`;
|
|
47
47
|
if (runtime.connectionStatus !== "connected")
|
|
48
|
-
return "IDE: disconnected";
|
|
48
|
+
return "Pi x IDE: disconnected";
|
|
49
49
|
const ide = runtime.connectedServer?.ide ?? runtime.currentCandidate?.lock.ide ?? "ide";
|
|
50
50
|
const selection = runtime.latestSelection;
|
|
51
51
|
if (!selection)
|
|
52
|
-
return
|
|
52
|
+
return `${ide} ✓`;
|
|
53
53
|
const rel = (0, paths_1.toRelativeDisplayPath)(selection.filePath, selection.workspaceFolder, cwd);
|
|
54
54
|
const range = (0, format_1.describeRanges)(selection.ranges);
|
|
55
|
-
return
|
|
55
|
+
return `${ide} ✓ ${rel}${range === "open file" ? "" : range} ${runtime.attachState}`;
|
|
56
56
|
}
|
|
57
57
|
function buildWidget(runtime, cwd) {
|
|
58
58
|
if (!runtime.enabled || runtime.connectionStatus === "disabled")
|
package/dist/src/pi/ui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../src/pi/ui.ts"],"names":[],"mappings":";;AAKA,kCAiBC;AAED,gCAGC;AAaD,0CAaC;AAED,kCA6BC;AAnFD,6CAAkD;AAClD,2CAAwD;AAGxD,SAAgB,WAAW,CAAC,OAAqB,EAAE,MAAoC,OAAO,CAAC,GAAG;IAChG,IAAI,CAAC,GAAG,EAAE,KAAK;QAAE,OAAO;IAExB,GAAG,CAAC,EAAE,CAAC,SAAS,CACd,UAAU,EACV,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,KAAa;YAClB,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAChD,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACzD,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;YAClE,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,UAAU,KAAI,CAAC;KAChB,CAAC,EACF,EAAE,SAAS,EAAE,aAAa,EAAE,CAC7B,CAAC;AACJ,CAAC;AAED,SAAgB,UAAU,CAAC,OAAqB,EAAE,MAAoC,OAAO,CAAC,GAAG;IAC/F,IAAI,CAAC,GAAG,EAAE,KAAK;QAAE,OAAO;IACxB,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,KAAa;IACtD,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;AAC1C,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAqB;IACnD,OAAO,CAAC,CAAC,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC;AACxE,CAAC;AAED,SAAgB,eAAe,CAAC,OAAqB,EAAE,GAAY;IACjE,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,gBAAgB,KAAK,UAAU;QAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../src/pi/ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,11 @@ export declare const CONFIG_ENV_OPTIONS: {
|
|
|
15
15
|
readonly default: "enabled";
|
|
16
16
|
readonly description: "Controls VS Code-family extension auto-install. Values 0, false, and off disable it.";
|
|
17
17
|
};
|
|
18
|
+
readonly PI_X_IDE_ATTACH_SHORTCUT: {
|
|
19
|
+
readonly type: readonly ["string"];
|
|
20
|
+
readonly default: "ctrl+alt+k";
|
|
21
|
+
readonly description: "Pi TUI shortcut for attaching the latest IDE selection. Set to off, none, false, or 0 to disable.";
|
|
22
|
+
};
|
|
18
23
|
readonly PI_X_IDE_ZED_DB: {
|
|
19
24
|
readonly type: readonly ["string"];
|
|
20
25
|
readonly description: "Override path to Zed's SQLite database.";
|
|
@@ -12,6 +12,11 @@ exports.CONFIG_ENV_OPTIONS = {
|
|
|
12
12
|
default: "enabled",
|
|
13
13
|
description: "Controls VS Code-family extension auto-install. Values 0, false, and off disable it.",
|
|
14
14
|
},
|
|
15
|
+
PI_X_IDE_ATTACH_SHORTCUT: {
|
|
16
|
+
type: ["string"],
|
|
17
|
+
default: "ctrl+alt+k",
|
|
18
|
+
description: "Pi TUI shortcut for attaching the latest IDE selection. Set to off, none, false, or 0 to disable.",
|
|
19
|
+
},
|
|
15
20
|
PI_X_IDE_ZED_DB: {
|
|
16
21
|
type: ["string"],
|
|
17
22
|
description: "Override path to Zed's SQLite database.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-options.js","sourceRoot":"","sources":["../../../src/shared/config-options.ts"],"names":[],"mappings":";;;AAcA,4CAEC;AAJY,QAAA,sBAAsB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAkD,CAAC;AAEvH,SAAgB,gBAAgB,CAAC,KAAc;IAC7C,OAAO,8BAAsB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC;AACtE,CAAC;AAEY,QAAA,kBAAkB,GAAG;IAChC,qBAAqB,EAAE;QACrB,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;QACrC,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,sFAAsF;KACpG;IACD,eAAe,EAAE;QACf,IAAI,EAAE,CAAC,QAAQ,CAAC;QAChB,WAAW,EAAE,yCAAyC;KACvD;IACD,6BAA6B,EAAE;QAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC1B,WAAW,EAAE,6FAA6F;QAC1G,OAAO,EAAE,MAAM;KAChB;CACiD,CAAC;AAExC,QAAA,0BAA0B,GAAG,EAAuD,CAAC"}
|
|
1
|
+
{"version":3,"file":"config-options.js","sourceRoot":"","sources":["../../../src/shared/config-options.ts"],"names":[],"mappings":";;;AAcA,4CAEC;AAJY,QAAA,sBAAsB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAkD,CAAC;AAEvH,SAAgB,gBAAgB,CAAC,KAAc;IAC7C,OAAO,8BAAsB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC;AACtE,CAAC;AAEY,QAAA,kBAAkB,GAAG;IAChC,qBAAqB,EAAE;QACrB,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;QACrC,OAAO,EAAE,SAAS;QAClB,WAAW,EAAE,sFAAsF;KACpG;IACD,wBAAwB,EAAE;QACxB,IAAI,EAAE,CAAC,QAAQ,CAAC;QAChB,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,mGAAmG;KACjH;IACD,eAAe,EAAE;QACf,IAAI,EAAE,CAAC,QAAQ,CAAC;QAChB,WAAW,EAAE,yCAAyC;KACvD;IACD,6BAA6B,EAAE;QAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC1B,WAAW,EAAE,6FAA6F;QAC1G,OAAO,EAAE,MAAM;KAChB;CACiD,CAAC;AAExC,QAAA,0BAA0B,GAAG,EAAuD,CAAC"}
|
|
@@ -12,7 +12,7 @@ const config_options_1 = require("./config-options");
|
|
|
12
12
|
exports.PI_CONFIG_FILE = "config.json";
|
|
13
13
|
const processEnvOverlays = new WeakSet();
|
|
14
14
|
function resolvePiConfigPath(home = (0, node_os_1.homedir)()) {
|
|
15
|
-
return (0, node_path_1.resolve)(home, ".pi", exports.PI_CONFIG_FILE);
|
|
15
|
+
return (0, node_path_1.resolve)(home, ".pi", "pi-x-ide", exports.PI_CONFIG_FILE);
|
|
16
16
|
}
|
|
17
17
|
function readPiConfigEnv(configPath = resolvePiConfigPath()) {
|
|
18
18
|
let parsed;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/shared/config.ts"],"names":[],"mappings":";;;AASA,kDAEC;AAED,0CAkBC;AAED,gDAYC;AAED,sEAEC;AAjDD,qCAAuC;AACvC,qCAAkC;AAClC,yCAAoC;AACpC,qDAAoD;AAEvC,QAAA,cAAc,GAAG,aAAa,CAAC;AAE5C,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAqB,CAAC;AAE5D,SAAgB,mBAAmB,CAAC,OAAe,IAAA,iBAAO,GAAE;IAC1D,OAAO,IAAA,mBAAO,EAAC,IAAI,EAAE,KAAK,EAAE,sBAAc,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/shared/config.ts"],"names":[],"mappings":";;;AASA,kDAEC;AAED,0CAkBC;AAED,gDAYC;AAED,sEAEC;AAjDD,qCAAuC;AACvC,qCAAkC;AAClC,yCAAoC;AACpC,qDAAoD;AAEvC,QAAA,cAAc,GAAG,aAAa,CAAC;AAE5C,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAqB,CAAC;AAE5D,SAAgB,mBAAmB,CAAC,OAAe,IAAA,iBAAO,GAAE;IAC1D,OAAO,IAAA,mBAAO,EAAC,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,sBAAc,CAAC,CAAC;AAC1D,CAAC;AAED,SAAgB,eAAe,CAAC,aAAqB,mBAAmB,EAAE;IACxE,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,UAAU,EAAE,MAAM,CAAC,CAAY,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IAE1D,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;SACvB,MAAM,CAAC,CAAC,KAAK,EAAgD,EAAE;QAC9D,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC3B,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,IAAA,iCAAgB,EAAC,KAAK,CAAC,CAAC;IACnD,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAC/C,CAAC;AACJ,CAAC;AAED,SAAgB,kBAAkB,CAChC,MAAyB,OAAO,CAAC,GAAG,EACpC,UAAmC,EAAE;IAErC,IAAI,GAAG,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU;QAAE,OAAO,GAAG,CAAC;IAE3D,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACtD,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IAEpD,MAAM,MAAM,GAAG,EAAE,GAAG,SAAS,EAAE,GAAG,GAAG,EAAE,CAAC;IACxC,IAAI,GAAG,KAAK,OAAO,CAAC,GAAG;QAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,6BAA6B,CAAC,GAAsB;IAClE,OAAO,GAAG,KAAK,OAAO,CAAC,GAAG,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -17,7 +17,6 @@ void (0, node_test_1.default)("caps reconnect attempts at three per candidate",
|
|
|
17
17
|
strict_1.default.equal((0, reconnect_1.recordReconnectAttempt)(runtime, candidate), reconnect_1.MAX_RECONNECT_ATTEMPTS);
|
|
18
18
|
strict_1.default.equal((0, reconnect_1.recordReconnectAttempt)(runtime, candidate), undefined);
|
|
19
19
|
strict_1.default.match((0, reconnect_1.formatReconnectLimitMessage)(candidate), /after 3 attempts/);
|
|
20
|
-
strict_1.default.match((0, reconnect_1.formatReconnectLimitMessage)(candidate), /\/ide/);
|
|
21
20
|
const nextCandidate = createCandidate({ port: 41002 });
|
|
22
21
|
strict_1.default.equal((0, reconnect_1.recordReconnectAttempt)(runtime, nextCandidate), 1);
|
|
23
22
|
(0, reconnect_1.resetReconnectState)(runtime);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.test.js","sourceRoot":"","sources":["../../test/connection.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAwC;AACxC,uCAAuE;AACvE,0DAA6B;AAC7B,qDAAgF;AAChF,mDAK6B;AAC7B,2CAAgD;AAGhD,KAAK,IAAA,mBAAI,EAAC,gDAAgD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,IAAA,qBAAa,GAAE,CAAC;IAChC,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAEnD,gBAAM,CAAC,KAAK,CAAC,IAAA,kCAAsB,EAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,gBAAM,CAAC,KAAK,CAAC,IAAA,kCAAsB,EAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,gBAAM,CAAC,KAAK,CAAC,IAAA,kCAAsB,EAAC,OAAO,EAAE,SAAS,CAAC,EAAE,kCAAsB,CAAC,CAAC;IACjF,gBAAM,CAAC,KAAK,CAAC,IAAA,kCAAsB,EAAC,OAAO,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;IACpE,gBAAM,CAAC,KAAK,CAAC,IAAA,uCAA2B,EAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"connection.test.js","sourceRoot":"","sources":["../../test/connection.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,21 +53,33 @@ void (0, node_test_1.default)("selects only one high-confidence auto-install can
|
|
|
53
53
|
const vscode = createCandidate({ id: "vscode", confidence: "current-terminal" });
|
|
54
54
|
const cursor = createCandidate({ id: "cursor", confidence: "current-terminal", cli: "cursor", label: "Cursor" });
|
|
55
55
|
const available = createCandidate({ id: "vscode", confidence: "available-cli" });
|
|
56
|
+
const unknown = createCandidate({ id: "vscode", confidence: "current-terminal", reason: "unknown" });
|
|
56
57
|
strict_1.default.equal((0, install_1.selectAutoInstallCandidate)([vscode], { TERM_PROGRAM: "vscode" }), vscode);
|
|
57
58
|
strict_1.default.equal((0, install_1.selectAutoInstallCandidate)([available], { TERM_PROGRAM: "vscode" }), undefined);
|
|
59
|
+
strict_1.default.equal((0, install_1.selectAutoInstallCandidate)([unknown], { TERM_PROGRAM: "vscode" }), undefined);
|
|
58
60
|
strict_1.default.equal((0, install_1.selectAutoInstallCandidate)([vscode, cursor], {}), undefined);
|
|
59
61
|
strict_1.default.equal((0, install_1.selectAutoInstallCandidate)([cursor], { CURSOR_TRACE_ID: "trace" }), cursor);
|
|
60
62
|
});
|
|
61
63
|
void (0, node_test_1.default)("builds forced Marketplace install args", () => {
|
|
62
64
|
strict_1.default.deepEqual((0, install_1.buildInstallArgs)(), ["--force", "--install-extension", install_1.PI_X_IDE_EXTENSION_ID]);
|
|
63
65
|
});
|
|
66
|
+
void (0, node_test_1.default)("resolves configurable Pi TUI attach shortcut", () => {
|
|
67
|
+
strict_1.default.equal((0, commands_1.resolveAttachShortcut)({}), commands_1.DEFAULT_ATTACH_SHORTCUT);
|
|
68
|
+
strict_1.default.equal((0, commands_1.resolveAttachShortcut)({ [commands_1.PI_X_IDE_ATTACH_SHORTCUT_ENV]: "Ctrl+Shift+I" }), "ctrl+shift+i");
|
|
69
|
+
strict_1.default.equal((0, commands_1.resolveAttachShortcut)({ [commands_1.PI_X_IDE_ATTACH_SHORTCUT_ENV]: "off" }), undefined);
|
|
70
|
+
strict_1.default.equal((0, commands_1.resolveAttachShortcut)({ [commands_1.PI_X_IDE_ATTACH_SHORTCUT_ENV]: "0" }), undefined);
|
|
71
|
+
});
|
|
64
72
|
void (0, node_test_1.default)("/ide install completion and handler are wired", async () => {
|
|
65
73
|
let registered;
|
|
74
|
+
let shortcut;
|
|
66
75
|
let installCalled = false;
|
|
67
76
|
const pi = {
|
|
68
77
|
registerCommand: (_name, command) => {
|
|
69
78
|
registered = command;
|
|
70
79
|
},
|
|
80
|
+
registerShortcut: (key) => {
|
|
81
|
+
shortcut = key;
|
|
82
|
+
},
|
|
71
83
|
};
|
|
72
84
|
(0, commands_1.registerIdeCommand)(pi, (0, state_1.createRuntime)(), {
|
|
73
85
|
refreshCandidates: () => Promise.resolve([]),
|
|
@@ -78,8 +90,9 @@ void (0, node_test_1.default)("/ide install completion and handler are wired", a
|
|
|
78
90
|
installCalled = true;
|
|
79
91
|
return Promise.resolve();
|
|
80
92
|
},
|
|
81
|
-
});
|
|
93
|
+
}, { env: { [commands_1.PI_X_IDE_ATTACH_SHORTCUT_ENV]: "ctrl+shift+i" } });
|
|
82
94
|
strict_1.default.ok(registered);
|
|
95
|
+
strict_1.default.equal(shortcut, "ctrl+shift+i");
|
|
83
96
|
strict_1.default.ok(registered.getArgumentCompletions("")?.some((completion) => completion.value === "install"));
|
|
84
97
|
await registered.handler("install", createCommandContext());
|
|
85
98
|
strict_1.default.equal(installCalled, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.test.js","sourceRoot":"","sources":["../../test/install.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAwC;AACxC,+CAA6D;AAC7D,qCAAiC;AACjC,yCAAiC;AACjC,0DAA6B;AAI7B,+CAS2B;AAC3B,
|
|
1
|
+
{"version":3,"file":"install.test.js","sourceRoot":"","sources":["../../test/install.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/schemas/config.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://github.com/balaenis/pi-x-ide/schemas/config.json",
|
|
4
4
|
"title": "Pi config.json",
|
|
5
|
-
"description": "Schema for Pi-side configuration read from ~/.pi/config.json.",
|
|
5
|
+
"description": "Schema for Pi-side configuration read from ~/.pi/pi-x-ide/config.json.",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"additionalProperties": true,
|
|
8
8
|
"properties": {
|
|
@@ -25,6 +25,10 @@
|
|
|
25
25
|
],
|
|
26
26
|
"description": "Controls VS Code-family extension auto-install. Values 0, false, and off disable it."
|
|
27
27
|
},
|
|
28
|
+
"PI_X_IDE_ATTACH_SHORTCUT": {
|
|
29
|
+
"type": "string",
|
|
30
|
+
"description": "Pi TUI shortcut for attaching the latest IDE selection. Set to off, none, false, or 0 to disable."
|
|
31
|
+
},
|
|
28
32
|
"PI_X_IDE_ZED_DB": {
|
|
29
33
|
"type": "string",
|
|
30
34
|
"description": "Override path to Zed's SQLite database."
|
|
@@ -44,6 +48,7 @@
|
|
|
44
48
|
{
|
|
45
49
|
"env": {
|
|
46
50
|
"PI_X_IDE_AUTO_INSTALL": "0",
|
|
51
|
+
"PI_X_IDE_ATTACH_SHORTCUT": "ctrl+alt+k",
|
|
47
52
|
"PI_X_IDE_ZED_DB": "/home/user/.local/share/zed/db/0-stable/db.sqlite",
|
|
48
53
|
"PI_X_IDE_ZED_POLL_INTERVAL_MS": 1000
|
|
49
54
|
}
|
package/src/pi/commands.ts
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
|
-
import type { ExtensionAPI, ExtensionCommandContext } from "@earendil-works/pi-coding-agent" with {
|
|
1
|
+
import type { ExtensionAPI, ExtensionCommandContext, ExtensionContext } from "@earendil-works/pi-coding-agent" with {
|
|
2
2
|
"resolution-mode": "import",
|
|
3
3
|
};
|
|
4
|
+
import { resolvePiConfigEnv } from "../shared/config";
|
|
4
5
|
import { formatRangeMention } from "../shared/format";
|
|
5
6
|
import type { LockFileCandidate } from "../shared/protocol";
|
|
6
7
|
import type { PiIdeRuntime } from "./state";
|
|
7
8
|
import { buildWidget, updateIdeUi } from "./ui";
|
|
8
9
|
|
|
10
|
+
export const PI_X_IDE_ATTACH_SHORTCUT_ENV = "PI_X_IDE_ATTACH_SHORTCUT";
|
|
11
|
+
export const DEFAULT_ATTACH_SHORTCUT = "ctrl+alt+k";
|
|
12
|
+
|
|
13
|
+
const DISABLED_ATTACH_SHORTCUT_VALUES = new Set(["", "0", "false", "off", "none", "disabled"]);
|
|
14
|
+
|
|
15
|
+
type ShortcutKey = Parameters<ExtensionAPI["registerShortcut"]>[0];
|
|
16
|
+
|
|
9
17
|
export interface IdeCommandActions {
|
|
10
18
|
refreshCandidates: (ctx: ExtensionCommandContext) => Promise<LockFileCandidate[]>;
|
|
11
19
|
connectAuto: (ctx: ExtensionCommandContext) => Promise<void>;
|
|
@@ -14,7 +22,23 @@ export interface IdeCommandActions {
|
|
|
14
22
|
installExtension: (ctx: ExtensionCommandContext) => Promise<void>;
|
|
15
23
|
}
|
|
16
24
|
|
|
17
|
-
export function registerIdeCommand(
|
|
25
|
+
export function registerIdeCommand(
|
|
26
|
+
pi: ExtensionAPI,
|
|
27
|
+
runtime: PiIdeRuntime,
|
|
28
|
+
actions: IdeCommandActions,
|
|
29
|
+
options: { env?: NodeJS.ProcessEnv } = {},
|
|
30
|
+
): void {
|
|
31
|
+
const attachShortcut = resolveAttachShortcut(options.env);
|
|
32
|
+
if (attachShortcut) {
|
|
33
|
+
pi.registerShortcut(attachShortcut, {
|
|
34
|
+
description: "Attach latest IDE selection to the prompt",
|
|
35
|
+
handler: (ctx) => {
|
|
36
|
+
runtime.ctx = ctx;
|
|
37
|
+
attachLatest(runtime, ctx);
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
|
|
18
42
|
pi.registerCommand("ide", {
|
|
19
43
|
description: "Manage IDE connection and editor selection context",
|
|
20
44
|
getArgumentCompletions: (argumentPrefix: string) => {
|
|
@@ -114,7 +138,14 @@ async function listCandidates(actions: IdeCommandActions, ctx: ExtensionCommandC
|
|
|
114
138
|
);
|
|
115
139
|
}
|
|
116
140
|
|
|
117
|
-
function
|
|
141
|
+
export function resolveAttachShortcut(env: NodeJS.ProcessEnv = process.env): ShortcutKey | undefined {
|
|
142
|
+
const value = resolvePiConfigEnv(env)[PI_X_IDE_ATTACH_SHORTCUT_ENV] ?? DEFAULT_ATTACH_SHORTCUT;
|
|
143
|
+
const normalized = value.trim().toLowerCase();
|
|
144
|
+
if (DISABLED_ATTACH_SHORTCUT_VALUES.has(normalized)) return undefined;
|
|
145
|
+
return normalized as ShortcutKey;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
function attachLatest(runtime: PiIdeRuntime, ctx: ExtensionContext): void {
|
|
118
149
|
if (!runtime.latestSelection) {
|
|
119
150
|
ctx.ui.notify("No IDE selection is available.", "warning");
|
|
120
151
|
return;
|
package/src/pi/install.ts
CHANGED
|
@@ -243,7 +243,10 @@ export function selectAutoInstallCandidate(
|
|
|
243
243
|
const configuredEnv = resolvePiConfigEnv(env);
|
|
244
244
|
const currentIde = inferCurrentIdeFromEnv(configuredEnv);
|
|
245
245
|
const highConfidence = candidates.filter(
|
|
246
|
-
(candidate) =>
|
|
246
|
+
(candidate) =>
|
|
247
|
+
candidate.confidence === "current-terminal" &&
|
|
248
|
+
candidate.reason !== "unknown" &&
|
|
249
|
+
(!currentIde || candidate.id === currentIde),
|
|
247
250
|
);
|
|
248
251
|
return highConfidence.length === 1 ? highConfidence[0] : undefined;
|
|
249
252
|
}
|
package/src/pi/ui.ts
CHANGED
|
@@ -39,18 +39,18 @@ function isPendingEditorContext(runtime: PiIdeRuntime): boolean {
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
export function buildStatusLine(runtime: PiIdeRuntime, cwd?: string): string {
|
|
42
|
-
if (!runtime.enabled || runtime.connectionStatus === "disabled") return "IDE: off";
|
|
43
|
-
if (runtime.connectionStatus === "connecting") return "IDE: connecting";
|
|
42
|
+
if (!runtime.enabled || runtime.connectionStatus === "disabled") return "Pi x IDE: off";
|
|
43
|
+
if (runtime.connectionStatus === "connecting") return "Pi x IDE: connecting";
|
|
44
44
|
if (runtime.connectionStatus === "error")
|
|
45
|
-
return `IDE: error${runtime.connectionMessage ? ` ${runtime.connectionMessage}` : ""}`;
|
|
46
|
-
if (runtime.connectionStatus !== "connected") return "IDE: disconnected";
|
|
45
|
+
return `Pi x IDE: error${runtime.connectionMessage ? ` ${runtime.connectionMessage}` : ""}`;
|
|
46
|
+
if (runtime.connectionStatus !== "connected") return "Pi x IDE: disconnected";
|
|
47
47
|
|
|
48
48
|
const ide = runtime.connectedServer?.ide ?? runtime.currentCandidate?.lock.ide ?? "ide";
|
|
49
49
|
const selection = runtime.latestSelection;
|
|
50
|
-
if (!selection) return
|
|
50
|
+
if (!selection) return `${ide} ✓`;
|
|
51
51
|
const rel = toRelativeDisplayPath(selection.filePath, selection.workspaceFolder, cwd);
|
|
52
52
|
const range = describeRanges(selection.ranges);
|
|
53
|
-
return
|
|
53
|
+
return `${ide} ✓ ${rel}${range === "open file" ? "" : range} ${runtime.attachState}`;
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
export function buildWidget(runtime: PiIdeRuntime, cwd?: string): string[] | undefined {
|
|
@@ -22,6 +22,11 @@ export const CONFIG_ENV_OPTIONS = {
|
|
|
22
22
|
default: "enabled",
|
|
23
23
|
description: "Controls VS Code-family extension auto-install. Values 0, false, and off disable it.",
|
|
24
24
|
},
|
|
25
|
+
PI_X_IDE_ATTACH_SHORTCUT: {
|
|
26
|
+
type: ["string"],
|
|
27
|
+
default: "ctrl+alt+k",
|
|
28
|
+
description: "Pi TUI shortcut for attaching the latest IDE selection. Set to off, none, false, or 0 to disable.",
|
|
29
|
+
},
|
|
25
30
|
PI_X_IDE_ZED_DB: {
|
|
26
31
|
type: ["string"],
|
|
27
32
|
description: "Override path to Zed's SQLite database.",
|
package/src/shared/config.ts
CHANGED
|
@@ -8,7 +8,7 @@ export const PI_CONFIG_FILE = "config.json";
|
|
|
8
8
|
const processEnvOverlays = new WeakSet<NodeJS.ProcessEnv>();
|
|
9
9
|
|
|
10
10
|
export function resolvePiConfigPath(home: string = homedir()): string {
|
|
11
|
-
return resolve(home, ".pi", PI_CONFIG_FILE);
|
|
11
|
+
return resolve(home, ".pi", "pi-x-ide", PI_CONFIG_FILE);
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export function readPiConfigEnv(configPath: string = resolvePiConfigPath()): NodeJS.ProcessEnv {
|