Repository navigation
Releases: Yu-jianhai/dsh-sidebar-layout
Release list
v0.1.6
新版本要点
设置界面做了一个可诊断的兜底
设置页外面包了一层错误边界:万一某个 DSH 版本上渲染失败,页面会直接画出报错文本和排查提示(__dsl.state() / __dsl.reset()),而不是留一片空白。
设置接口本身没有缺失,注册一直是成功的——settings.section 的占用者实测为 id: sidebar-layout、order: 70、active: true。两个入口都能到:
- 设置 → 侧栏布局(设置导航里,靠下)
- 侧栏底部的三条横线图标(浮层里是同一套开关)
README 改为中英双语
中文为主(痛点 / 解决 / 能力表 / 安装 / 设计边界 / 调试 / 自检 / 卸载),整段 ## English 供外部读者快速判断这个插件解决什么问题;顶部加了 version / license / platform 三枚徽章。
完整能力(沿用 0.1.5)
限高滚动 · 行内拖动排序 · 拖动底边调高 · 逐个显隐 · 行数上限跟随入口数(装新插件自动长高,主动设小的上限被尊重)· 实验性紧凑密度。
安装
见 README:把包加进 profile 的 dependencies(link: 可用)与 bundles,让 node_modules/dsh-sidebar-layout 指向本目录,重启 DSH。
v0.1.5
首个公开版本。
能解决的问题
DSH 的左侧栏入口是固定高度的一整列(每行 36px + 2px 间距),装一个带侧栏的插件就长高一行。
装到八个入口时这一列固定吃掉约 348px,多出来的高度只能从下面挤——被挤掉的正是工作区会话列表的可见行数。
这个插件把那一列变成有限高、可滚动、顺序可调、逐个可关的窗口,省下的高度还给会话列表。
功能
- 限高滚动:入口只占你允许的行数(3 … 入口数),其余收进窗口内滚动
- 拖动排序:行尾抓手上下拖,顺序持久化;设置页另提供 ↑↓ 作为键盘可达兜底
- 拖动调高:底边热区上下拖动改显示行数,双击恢复不限高
- 逐个显隐:设置 → 侧栏布局,勾选即彻底不显示;底栏图标提供同一套开关
- 上限随入口数派生:最多拖到「一行一个入口」;拖到「全部 N 行」后新装插件自动长高,主动设小的上限会被尊重
- 实验性紧凑密度:行高 36 → 28px
实现要点
- 叠加层增强,不替换
sidebar单例槽(该槽replaceRisk: shadows-shipped-ui) - 靠自己的底栏按钮
[data-dsl-anchor="1"]定位列表,不依赖哈希类名与文案;找不到侧栏即静默降级 - 滚动条完全交回宿主
scrollbar.css,只做横向对齐补偿;拖拽热区让开滚动条列 - 拖动落点用数数法判定,避开 CSS
order与 DOM 顺序混用导致的位置回跳 - 纯客户端、无构建步骤、宿主侧零状态
安装
见 README 的「安装」一节:把它加进 profile 的 dependencies(link:)与 bundles,让 node_modules/dsh-sidebar-layout 指向本目录,重启 DSH。