@opensumi/ide-terminal-next 3.4.5-next-1730120479.0 → 3.4.6-next-1730347271.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/lib/browser/component/resize.delegate.js.map +1 -1
- package/lib/browser/component/resize.view.js +1 -1
- package/lib/browser/component/resize.view.js.map +1 -1
- package/lib/browser/component/tab.item.js.map +1 -1
- package/lib/browser/component/tab.view.js.map +1 -1
- package/lib/browser/component/terminal.variable.js.map +1 -1
- package/lib/browser/component/terminal.view.js.map +1 -1
- package/lib/browser/component/terminal.widget.js.map +1 -1
- package/lib/browser/contribution/terminal.command.js +8 -24
- package/lib/browser/contribution/terminal.command.js.map +1 -1
- package/lib/browser/contribution/terminal.keybinding.js +2 -2
- package/lib/browser/contribution/terminal.keybinding.js.map +1 -1
- package/lib/browser/contribution/terminal.lifecycle.js +2 -2
- package/lib/browser/contribution/terminal.lifecycle.js.map +1 -1
- package/lib/browser/contribution/terminal.menu.js +2 -2
- package/lib/browser/contribution/terminal.menu.js.map +1 -1
- package/lib/browser/contribution/terminal.network.js +2 -2
- package/lib/browser/contribution/terminal.network.js.map +1 -1
- package/lib/browser/contribution/terminal.preference.js +4 -7
- package/lib/browser/contribution/terminal.preference.js.map +1 -1
- package/lib/browser/contribution/terminal.view.js +2 -2
- package/lib/browser/contribution/terminal.view.js.map +1 -1
- package/lib/browser/index.js +2 -2
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/links/external-link-provider-adapter.js +2 -2
- package/lib/browser/links/external-link-provider-adapter.js.map +1 -1
- package/lib/browser/links/helpers.js +5 -4
- package/lib/browser/links/helpers.js.map +1 -1
- package/lib/browser/links/link-manager.js +2 -2
- package/lib/browser/links/link-manager.js.map +1 -1
- package/lib/browser/links/link.js +2 -2
- package/lib/browser/links/link.js.map +1 -1
- package/lib/browser/links/protocol-link-provider.js +2 -2
- package/lib/browser/links/protocol-link-provider.js.map +1 -1
- package/lib/browser/links/validated-local-link-provider.js +7 -7
- package/lib/browser/links/validated-local-link-provider.js.map +1 -1
- package/lib/browser/terminal.addon.js.map +1 -1
- package/lib/browser/terminal.api.js +2 -2
- package/lib/browser/terminal.api.js.map +1 -1
- package/lib/browser/terminal.client.d.ts +1 -0
- package/lib/browser/terminal.client.d.ts.map +1 -1
- package/lib/browser/terminal.client.js +7 -17
- package/lib/browser/terminal.client.js.map +1 -1
- package/lib/browser/terminal.color.js +2 -2
- package/lib/browser/terminal.color.js.map +1 -1
- package/lib/browser/terminal.context-key.js +2 -2
- package/lib/browser/terminal.context-key.js.map +1 -1
- package/lib/browser/terminal.context-menu.d.ts +1 -0
- package/lib/browser/terminal.context-menu.d.ts.map +1 -1
- package/lib/browser/terminal.context-menu.js +2 -2
- package/lib/browser/terminal.context-menu.js.map +1 -1
- package/lib/browser/terminal.controller.d.ts +1 -0
- package/lib/browser/terminal.controller.d.ts.map +1 -1
- package/lib/browser/terminal.controller.js +9 -14
- package/lib/browser/terminal.controller.js.map +1 -1
- package/lib/browser/terminal.environment.service.js +2 -2
- package/lib/browser/terminal.environment.service.js.map +1 -1
- package/lib/browser/terminal.error.js +2 -2
- package/lib/browser/terminal.error.js.map +1 -1
- package/lib/browser/terminal.ext.host.proxy.js.map +1 -1
- package/lib/browser/terminal.hover.manager.js +2 -2
- package/lib/browser/terminal.hover.manager.js.map +1 -1
- package/lib/browser/terminal.input.js +2 -2
- package/lib/browser/terminal.input.js.map +1 -1
- package/lib/browser/terminal.internal.service.d.ts +1 -0
- package/lib/browser/terminal.internal.service.d.ts.map +1 -1
- package/lib/browser/terminal.internal.service.js +2 -2
- package/lib/browser/terminal.internal.service.js.map +1 -1
- package/lib/browser/terminal.network.js +2 -2
- package/lib/browser/terminal.network.js.map +1 -1
- package/lib/browser/terminal.preference.js +3 -7
- package/lib/browser/terminal.preference.js.map +1 -1
- package/lib/browser/terminal.profile.internal.js +2 -2
- package/lib/browser/terminal.profile.internal.js.map +1 -1
- package/lib/browser/terminal.profile.js +3 -3
- package/lib/browser/terminal.profile.js.map +1 -1
- package/lib/browser/terminal.render.d.ts +1 -0
- package/lib/browser/terminal.render.d.ts.map +1 -1
- package/lib/browser/terminal.render.js +2 -2
- package/lib/browser/terminal.render.js.map +1 -1
- package/lib/browser/terminal.restore.js +2 -2
- package/lib/browser/terminal.restore.js.map +1 -1
- package/lib/browser/terminal.search.js +2 -2
- package/lib/browser/terminal.search.js.map +1 -1
- package/lib/browser/terminal.service.js +3 -6
- package/lib/browser/terminal.service.js.map +1 -1
- package/lib/browser/terminal.theme.js +2 -2
- package/lib/browser/terminal.theme.js.map +1 -1
- package/lib/browser/terminal.typeAhead.addon.d.ts.map +1 -1
- package/lib/browser/terminal.typeAhead.addon.js +4 -7
- package/lib/browser/terminal.typeAhead.addon.js.map +1 -1
- package/lib/browser/terminal.typeAhead.ext.d.ts +186 -186
- package/lib/browser/terminal.typeAhead.ext.d.ts.map +1 -1
- package/lib/browser/terminal.typeAhead.ext.js +1 -1
- package/lib/browser/terminal.typeAhead.ext.js.map +1 -1
- package/lib/browser/terminal.view.js +4 -4
- package/lib/browser/terminal.view.js.map +1 -1
- package/lib/browser/xterm.js +5 -14
- package/lib/browser/xterm.js.map +1 -1
- package/lib/common/controller.d.ts +1 -0
- package/lib/common/controller.d.ts.map +1 -1
- package/lib/common/environmentVariable.js +5 -5
- package/lib/common/environmentVariable.js.map +1 -1
- package/lib/common/environmentVariableCollection.js.map +1 -1
- package/lib/common/error.js +3 -3
- package/lib/common/error.js.map +1 -1
- package/lib/common/extension.js +1 -1
- package/lib/common/extension.js.map +1 -1
- package/lib/common/link-computer.js +2 -2
- package/lib/common/link-computer.js.map +1 -1
- package/lib/common/network.js +1 -1
- package/lib/common/network.js.map +1 -1
- package/lib/common/preference.js +2 -2
- package/lib/common/preference.js.map +1 -1
- package/lib/common/profile.js +2 -2
- package/lib/common/profile.js.map +1 -1
- package/lib/common/pty.js +2 -2
- package/lib/common/pty.js.map +1 -1
- package/lib/common/render.d.ts +1 -0
- package/lib/common/render.d.ts.map +1 -1
- package/lib/common/render.js +1 -1
- package/lib/common/render.js.map +1 -1
- package/lib/common/shell.js +1 -1
- package/lib/common/shell.js.map +1 -1
- package/lib/common/xterm.js +1 -1
- package/lib/common/xterm.js.map +1 -1
- package/lib/node/index.js +2 -2
- package/lib/node/index.js.map +1 -1
- package/lib/node/pty.d.ts.map +1 -1
- package/lib/node/pty.js +14 -5
- package/lib/node/pty.js.map +1 -1
- package/lib/node/pty.manager.js +2 -2
- package/lib/node/pty.manager.js.map +1 -1
- package/lib/node/pty.manager.remote.d.ts +1 -0
- package/lib/node/pty.manager.remote.d.ts.map +1 -1
- package/lib/node/pty.manager.remote.js +2 -2
- package/lib/node/pty.manager.remote.js.map +1 -1
- package/lib/node/pty.proxy.d.ts +1 -0
- package/lib/node/pty.proxy.d.ts.map +1 -1
- package/lib/node/pty.proxy.js.map +1 -1
- package/lib/node/shell-integration.service.d.ts +3 -0
- package/lib/node/shell-integration.service.d.ts.map +1 -1
- package/lib/node/shell-integration.service.js +119 -2
- package/lib/node/shell-integration.service.js.map +1 -1
- package/lib/node/shell.d.ts +1 -0
- package/lib/node/shell.d.ts.map +1 -1
- package/lib/node/shell.js +9 -9
- package/lib/node/shell.js.map +1 -1
- package/lib/node/terminal.process.service.d.ts +1 -0
- package/lib/node/terminal.process.service.d.ts.map +1 -1
- package/lib/node/terminal.process.service.js +2 -2
- package/lib/node/terminal.process.service.js.map +1 -1
- package/lib/node/terminal.profile.service.js +2 -2
- package/lib/node/terminal.profile.service.js.map +1 -1
- package/lib/node/terminal.service.client.js +2 -2
- package/lib/node/terminal.service.client.js.map +1 -1
- package/lib/node/terminal.service.js +2 -2
- package/lib/node/terminal.service.js.map +1 -1
- package/package.json +17 -17
- package/src/node/pty.ts +14 -2
- package/src/node/shell-integration.service.ts +128 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.service.client.js","sourceRoot":"","sources":["../../src/node/terminal.service.client.ts"],"names":[],"mappings":";;;;AAAA,qCAAqD;AACrD,6DAAsD;AACtD,2DAA+F;AAE/F,sCAMmB;AAGnB,2CAAoF;AAEpF,mCAA2F;AAC3F,yEAAqG;AAWrG;;;GAGG;AAEI,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,2BAA+B;IAY5E,qBAAqB,CAAC,QAAgB;QACpC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,uBAAuB,EAAE,QAAQ,CAAC,CAAC;QAClF,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,aAAa,CAAC,EAAU,EAAE,IAAY;QACpC,IAAI,IAAI,CAAC,MAAM,EAAE
|
|
1
|
+
{"version":3,"file":"terminal.service.client.js","sourceRoot":"","sources":["../../src/node/terminal.service.client.ts"],"names":[],"mappings":"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"}
|
|
@@ -222,7 +222,6 @@ let TerminalServiceImpl = TerminalServiceImpl_1 = class TerminalServiceImpl {
|
|
|
222
222
|
return await ptyService.getCwd();
|
|
223
223
|
}
|
|
224
224
|
};
|
|
225
|
-
exports.TerminalServiceImpl = TerminalServiceImpl;
|
|
226
225
|
TerminalServiceImpl.TerminalPtyCloseThreshold = 10 * 1000;
|
|
227
226
|
tslib_1.__decorate([
|
|
228
227
|
(0, di_1.Autowired)(di_1.INJECTOR_TOKEN),
|
|
@@ -240,7 +239,8 @@ tslib_1.__decorate([
|
|
|
240
239
|
(0, di_1.Autowired)(pty_manager_1.PtyServiceManagerToken),
|
|
241
240
|
tslib_1.__metadata("design:type", Object)
|
|
242
241
|
], TerminalServiceImpl.prototype, "ptyServiceManager", void 0);
|
|
243
|
-
|
|
242
|
+
TerminalServiceImpl = TerminalServiceImpl_1 = tslib_1.__decorate([
|
|
244
243
|
(0, di_1.Injectable)()
|
|
245
244
|
], TerminalServiceImpl);
|
|
245
|
+
exports.TerminalServiceImpl = TerminalServiceImpl;
|
|
246
246
|
//# sourceMappingURL=terminal.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.service.js","sourceRoot":"","sources":["../../src/node/terminal.service.ts"],"names":[],"mappings":";;;;;AAAA,qCAA+E;AAC/E,2DAAoH;AACpH,6DAA4D;AAE5D,sCAAoH;AAGpH,+BAAmC;AACnC,+CAA2E;AAE3E,4GAA4G;AAC5G,oBAAoB;AACpB,MAAM,cAAc,GAAG,GAAG,GAAG,IAAI,CAAC;AAClC,QAAQ;AACR,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAE7B;;GAEG;AACH,MAAM,oBAAoB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAGvC,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAAzB;QAGG,uBAAkB,GAA6B,IAAI,GAAG,EAAE,CAAC;QACzD,sBAAiB,GAAyC,IAAI,GAAG,EAAE,CAAC;QAEpE,qBAAgB,GAAwC,IAAI,GAAG,EAAE,CAAC;QAClE,oBAAe,GAAgC,IAAI,GAAG,EAAE,CAAC;QAEzD,sBAAiB,GAAwB,IAAI,GAAG,EAAE,CAAC;QACnD,wBAAmB,GAAgC,IAAI,GAAG,EAAE,CAAC;IA6PvE,CAAC;IA/OQ,SAAS,CAAC,QAAgB,EAAE,MAA8B;QAC/D,IAAI,QAAQ,CAAC,OAAO,CAAC,8BAAqB,CAAC,IAAI,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"terminal.service.js","sourceRoot":"","sources":["../../src/node/terminal.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opensumi/ide-terminal-next",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.6-next-1730347271.0",
|
|
4
4
|
"files": [
|
|
5
5
|
"lib",
|
|
6
6
|
"src"
|
|
@@ -17,11 +17,11 @@
|
|
|
17
17
|
"url": "git@github.com:opensumi/core.git"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@opensumi/ide-connection": "3.4.
|
|
21
|
-
"@opensumi/ide-core-common": "3.4.
|
|
22
|
-
"@opensumi/ide-core-node": "3.4.
|
|
23
|
-
"@opensumi/ide-file-service": "3.4.
|
|
24
|
-
"@opensumi/ide-utils": "3.4.
|
|
20
|
+
"@opensumi/ide-connection": "3.4.6-next-1730347271.0",
|
|
21
|
+
"@opensumi/ide-core-common": "3.4.6-next-1730347271.0",
|
|
22
|
+
"@opensumi/ide-core-node": "3.4.6-next-1730347271.0",
|
|
23
|
+
"@opensumi/ide-file-service": "3.4.6-next-1730347271.0",
|
|
24
|
+
"@opensumi/ide-utils": "3.4.6-next-1730347271.0",
|
|
25
25
|
"@xterm/addon-canvas": "0.7.0",
|
|
26
26
|
"@xterm/addon-fit": "0.10.0",
|
|
27
27
|
"@xterm/addon-search": "0.15.0",
|
|
@@ -31,18 +31,18 @@
|
|
|
31
31
|
"os-locale": "^4.0.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@opensumi/ide-components": "3.4.
|
|
35
|
-
"@opensumi/ide-core-browser": "3.4.
|
|
36
|
-
"@opensumi/ide-dev-tool": "3.4.
|
|
37
|
-
"@opensumi/ide-editor": "3.4.
|
|
38
|
-
"@opensumi/ide-main-layout": "3.4.
|
|
39
|
-
"@opensumi/ide-overlay": "3.4.
|
|
40
|
-
"@opensumi/ide-status-bar": "3.4.
|
|
41
|
-
"@opensumi/ide-theme": "3.4.
|
|
42
|
-
"@opensumi/ide-variable": "3.4.
|
|
43
|
-
"@opensumi/ide-workspace": "3.4.
|
|
34
|
+
"@opensumi/ide-components": "3.4.6-next-1730347271.0",
|
|
35
|
+
"@opensumi/ide-core-browser": "3.4.6-next-1730347271.0",
|
|
36
|
+
"@opensumi/ide-dev-tool": "3.4.6-next-1730347271.0",
|
|
37
|
+
"@opensumi/ide-editor": "3.4.6-next-1730347271.0",
|
|
38
|
+
"@opensumi/ide-main-layout": "3.4.6-next-1730347271.0",
|
|
39
|
+
"@opensumi/ide-overlay": "3.4.6-next-1730347271.0",
|
|
40
|
+
"@opensumi/ide-status-bar": "3.4.6-next-1730347271.0",
|
|
41
|
+
"@opensumi/ide-theme": "3.4.6-next-1730347271.0",
|
|
42
|
+
"@opensumi/ide-variable": "3.4.6-next-1730347271.0",
|
|
43
|
+
"@opensumi/ide-workspace": "3.4.6-next-1730347271.0",
|
|
44
44
|
"@types/http-proxy": "^1.17.2",
|
|
45
45
|
"http-proxy": "^1.18.0"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "dc271e0c7c32f35a75bd4e45f28167773c912d13"
|
|
48
48
|
}
|
package/src/node/pty.ts
CHANGED
|
@@ -186,8 +186,8 @@ export class PtyService extends Disposable implements IPtyService {
|
|
|
186
186
|
) as { [key: string]: string };
|
|
187
187
|
}
|
|
188
188
|
|
|
189
|
-
// HACK: 这里的处理逻辑有些黑,后续需要整体去整理下 Shell
|
|
190
|
-
// 如果是启动 bash,则使用 init file 植入
|
|
189
|
+
// HACK: 这里的处理逻辑有些黑,后续需要整体去整理下 Shell Integration,然后整体优化一下
|
|
190
|
+
// 如果是启动 bash,则使用 init file 植入 Integration 能力
|
|
191
191
|
if (options.executable?.includes('bash')) {
|
|
192
192
|
const bashIntegrationPath = await this.shellIntegrationService.initBashInitFile();
|
|
193
193
|
if (!options.args) {
|
|
@@ -202,6 +202,18 @@ export class PtyService extends Disposable implements IPtyService {
|
|
|
202
202
|
}
|
|
203
203
|
}
|
|
204
204
|
|
|
205
|
+
// ZSH 相关的能力注入
|
|
206
|
+
if (options.executable?.includes('zsh')) {
|
|
207
|
+
const zshDotFilesPath = await this.shellIntegrationService.initZshDotFiles();
|
|
208
|
+
|
|
209
|
+
if (!ptyEnv) {
|
|
210
|
+
ptyEnv = {};
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
ptyEnv['USER_ZDOTDIR'] = ptyEnv['ZDOTDIR'] || os.homedir() || '~';
|
|
214
|
+
ptyEnv['ZDOTDIR'] = zshDotFilesPath;
|
|
215
|
+
}
|
|
216
|
+
|
|
205
217
|
this._ptyOptions['env'] = ptyEnv;
|
|
206
218
|
|
|
207
219
|
const results = await Promise.all([this._validateCwd(), this._validateExecutable()]);
|
|
@@ -11,6 +11,9 @@ export interface IShellIntegrationService {
|
|
|
11
11
|
|
|
12
12
|
// 获取 Bash 注入文件的 Content 内容
|
|
13
13
|
getBashIntegrationContent(): Promise<string>;
|
|
14
|
+
|
|
15
|
+
// 初始化 zsh 注入的配置,并且返回配置的路径
|
|
16
|
+
initZshDotFiles(): Promise<string>;
|
|
14
17
|
}
|
|
15
18
|
|
|
16
19
|
// 未来适配 OpenSumi 的时候需要调整
|
|
@@ -74,4 +77,129 @@ export class ShellIntegrationService implements IShellIntegrationService {
|
|
|
74
77
|
await fs.writeFile(bashIntegrationPath, await this.getBashIntegrationContent());
|
|
75
78
|
return bashIntegrationPath;
|
|
76
79
|
}
|
|
80
|
+
|
|
81
|
+
// ZSH 的智能化基于 ZDOTDIR 能力运行
|
|
82
|
+
async initZshDotFiles(): Promise<string> {
|
|
83
|
+
const zDotDir = path.join(os.tmpdir(), 'sumi-integration-zsh');
|
|
84
|
+
await this.writeZshConfigShellScripts(zDotDir);
|
|
85
|
+
return zDotDir;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
private async writeZshConfigShellScripts(outputDir: string) {
|
|
89
|
+
// 定义文件内容
|
|
90
|
+
const shellIntegrationEnv = String.raw`
|
|
91
|
+
if [[ -f $USER_ZDOTDIR/.zshenv ]]; then
|
|
92
|
+
SUMI_ZDOTDIR=$ZDOTDIR
|
|
93
|
+
ZDOTDIR=$USER_ZDOTDIR
|
|
94
|
+
|
|
95
|
+
# prevent recursion
|
|
96
|
+
if [[ $USER_ZDOTDIR != $SUMI_ZDOTDIR ]]; then
|
|
97
|
+
. $USER_ZDOTDIR/.zshenv
|
|
98
|
+
fi
|
|
99
|
+
|
|
100
|
+
USER_ZDOTDIR=$ZDOTDIR
|
|
101
|
+
ZDOTDIR=$SUMI_ZDOTDIR
|
|
102
|
+
fi
|
|
103
|
+
`;
|
|
104
|
+
|
|
105
|
+
const shellIntegrationLogin = String.raw`
|
|
106
|
+
if [[ -f $USER_ZDOTDIR/.zlogin ]]; then
|
|
107
|
+
ZDOTDIR=$USER_ZDOTDIR
|
|
108
|
+
. $ZDOTDIR/.zlogin
|
|
109
|
+
fi
|
|
110
|
+
`;
|
|
111
|
+
|
|
112
|
+
// 处理 zProfile 的情况,需要临时切回用户的 zshrc 目录配置执行 zProfile,然后记得要切回来,否则 zshrc hack 不生效
|
|
113
|
+
const shellIntegrationProfile = String.raw`
|
|
114
|
+
if [[ -f $USER_ZDOTDIR/.zprofile ]]; then
|
|
115
|
+
SUMI_ZDOTDIR=$ZDOTDIR
|
|
116
|
+
ZDOTDIR=$USER_ZDOTDIR
|
|
117
|
+
. $USER_ZDOTDIR/.zprofile
|
|
118
|
+
ZDOTDIR=$SUMI_ZDOTDIR
|
|
119
|
+
fi
|
|
120
|
+
`;
|
|
121
|
+
|
|
122
|
+
const shellIntegrationRc = `
|
|
123
|
+
builtin autoload -U add-zsh-hook
|
|
124
|
+
|
|
125
|
+
if [[ -f $USER_ZDOTDIR/.zshrc ]]; then
|
|
126
|
+
ZDOTDIR=$USER_ZDOTDIR
|
|
127
|
+
. $USER_ZDOTDIR/.zshrc
|
|
128
|
+
fi
|
|
129
|
+
|
|
130
|
+
__is_prompt_start() {
|
|
131
|
+
builtin printf '\\e]6973;PS\\a'
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
__is_prompt_end() {
|
|
135
|
+
builtin printf '\\e]6973;PE\\a'
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
__is_escape_value() {
|
|
139
|
+
builtin emulate -L zsh
|
|
140
|
+
|
|
141
|
+
# Process text byte by byte, not by codepoint.
|
|
142
|
+
builtin local LC_ALL=C str="$1" i byte token out=''
|
|
143
|
+
|
|
144
|
+
for (( i = 0; i < \${#str}; ++i )); do
|
|
145
|
+
byte="\${str:$i:1}"
|
|
146
|
+
|
|
147
|
+
# Escape backslashes and semi-colons
|
|
148
|
+
if [ "$byte" = "\\\\" ]; then
|
|
149
|
+
token="\\\\\\\\"
|
|
150
|
+
elif [ "$byte" = ";" ]; then
|
|
151
|
+
token="\\\\x3b"
|
|
152
|
+
elif [ "$byte" = $'\\n' ]; then
|
|
153
|
+
token="\\\\x0a"
|
|
154
|
+
elif [ "$byte" = $'\\e' ]; then
|
|
155
|
+
token="\\\\x1b"
|
|
156
|
+
elif [ "$byte" = $'\\a' ]; then
|
|
157
|
+
token="\\\\x07"
|
|
158
|
+
else
|
|
159
|
+
token="$byte"
|
|
160
|
+
fi
|
|
161
|
+
|
|
162
|
+
out+="$token"
|
|
163
|
+
done
|
|
164
|
+
|
|
165
|
+
builtin print -r "$out"
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
__is_update_cwd() {
|
|
169
|
+
builtin printf '\\e]6973;CWD;%s\\a' "$(__is_escape_value "\${PWD}")"
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
__is_update_prompt() {
|
|
173
|
+
__is_prior_prompt="$PS1"
|
|
174
|
+
if [[ $ISTERM_TESTING == "1" ]]; then
|
|
175
|
+
__is_prior_prompt="> "
|
|
176
|
+
fi
|
|
177
|
+
PS1="%{\$(__is_prompt_start)%}\$__is_prior_prompt%{\$(__is_prompt_end)%}"
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
__is_precmd() {
|
|
181
|
+
if [[ $PS1 != *"\$(__is_prompt_start)"* ]]; then
|
|
182
|
+
__is_update_prompt
|
|
183
|
+
fi
|
|
184
|
+
__is_update_cwd
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
__is_update_prompt
|
|
188
|
+
add-zsh-hook precmd __is_precmd
|
|
189
|
+
`;
|
|
190
|
+
|
|
191
|
+
const files = [
|
|
192
|
+
{ name: '.zshenv', content: shellIntegrationEnv },
|
|
193
|
+
{ name: '.zlogin', content: shellIntegrationLogin },
|
|
194
|
+
{ name: '.zprofile', content: shellIntegrationProfile },
|
|
195
|
+
{ name: '.zshrc', content: shellIntegrationRc },
|
|
196
|
+
];
|
|
197
|
+
|
|
198
|
+
await fs.mkdir(outputDir, { recursive: true });
|
|
199
|
+
|
|
200
|
+
for (const file of files) {
|
|
201
|
+
const filePath = path.join(outputDir, file.name);
|
|
202
|
+
await fs.writeFile(filePath, file.content, 'utf-8');
|
|
203
|
+
}
|
|
204
|
+
}
|
|
77
205
|
}
|