dsh-workspace-default-dir
其他 活跃维护

dsh-workspace-default-dir

dragan2023/dsh-workspace-default-dir

支持配置DSh工作区目录选择器的默认初始路径,内置自愈补丁机制,可通过CLI快速设置对应环境变量,适配原生与浏览后退两类后端模式,开箱即用无需手动修改配置。

1
Stars 标星
0
Forks 分支
1
Watchers 关注
0
Open Issues
JavaScript
主要语言
MIT
开源协议
324 KB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:dragan2023/dsh-workspace-default-dir
git clone https://github.com/dragan2023/dsh-workspace-default-dir.git
git clone git@github.com:dragan2023/dsh-workspace-default-dir.git
README.md main

dsh-workspace-default-dir

English · 中文 · 日本語 · 한국어 · Français · Deutsch · Español · Português · Русский
Settings card
Make dsh's workspace directory picker (Add workspace → Select workspace directory) open at a directory you choose — for example E:\python_project — instead of the Windows user home.

Install

Pick one of the three ways below, then restart dsh web:

# 1) npm package (when published to npm)
dsh plugin --profile web add dsh-workspace-default-dir

# 2) GitHub repository (ships the prebuilt lib/, no local build required)
dsh plugin --profile web add https://github.com/dragan2023/dsh-workspace-default-dir

# 3) Local directory (development / self-hosted)
dsh plugin --profile web add D:\path\to\dsh-workspace-default-dir

After restarting dsh web, a Workspace default directory entry appears under Settings.

Usage

Open Settings → Workspace default directory (设置 → 工作区默认目录). Type an absolute path — for example E:\python_project — then click Save (保存). The next time you open the Add workspace directory picker it starts at that folder — no restart needed.

Directory picker opening at E:\ComfyUI-aki-v3

The card always shows the currently active directory (当前生效). Leave the input empty and save, or click Clear (清除), to return to the default (the user home).

The same setting is available on the command line:

dsh-workspace-default-dir set E:\python_project   # set the default directory
dsh-workspace-default-dir get                     # show the current default
dsh-workspace-default-dir clear                   # clear it (back to home)
dsh-workspace-default-dir status                  # patch & setting state

The GUI card and the CLI write the same DSH_PICKER_INITIAL_DIR (setx-persisted), so they stay in sync.

Behavior & limitations

  • Both picker backends are covered: the native Windows dialog (via IFileDialog::SetFolder) and the browse picker (used when the web server binds a non-loopback host, e.g. LAN 0.0.0.0).
  • Registry fallback: the patched pickers read DSH_PICKER_INITIAL_DIR from the process environment first, then straight from HKCU\Environment — bypassing the stale-Explorer-environment problem (no Explorer restart needed after setx).
  • Self-healing: on every dsh boot the plugin idempotently re-applies the two small backend patches, so a dsh upgrade that restored the stock files is repaired automatically.
  • This is a patch-type plugin: it modifies the two picker package files inside the dsh installation (idempotent, additive only). The browse backend loads its patched module at dsh startup, so one dsh web restart is needed after install/upgrade; the native dialog reads its worker on every open.
  • Verified on Windows + dsh 0.1.0-rc.6. On other platforms/versions, if the edit pairs do not match, a warning is logged and the patch is skipped (dsh still boots).

License

MIT — see LICENSE.