Repository navigation
Releases: whybebabo/dsh-code-nav
Release list
v0.4.0
v0.4.0
@whybebabo/dsh-code-nav — DSH web plugin (dsh-better-sidebar companion): code and config file preview with per-language syntax highlighting, symbol outline navigation (class / method / variable, JSON/YAML/TOML/XML keys), in-file search and selection -> clickable quote chip in the conversation.
Install
dsh plugin --profile web add https://github.com/whybebabo/dsh-code-nav.gitThen restart dsh web and hard-refresh the browser (Cmd/Ctrl+Shift+R). Requires dsh-better-sidebar.
Alternatively install the attached tarball:
dsh plugin --profile web add ./whybebabo-dsh-code-nav-0.4.0.tgzArtifacts
whybebabo-dsh-code-nav-0.4.0.tgz— pre-packed plugin tarball
Verified
npm test— 309/309 unit tests passnode --check lib/client.js— bundle syntax OK
v0.3.0
v0.3.0
@whybebabo/dsh-code-nav — DSH web plugin (dsh-better-sidebar companion): code and config file preview with per-language syntax highlighting, symbol outline navigation (class / method / variable, JSON/YAML/TOML/XML keys), in-file search and selection -> add to conversation. Fork of AnakinCao/dsh-code-nav.
Install
dsh plugin --profile web add https://github.com/whybebabo/dsh-code-nav.gitThen restart dsh web and hard-refresh the browser (Cmd/Ctrl+Shift+R). Requires dsh-better-sidebar.
Alternatively install the attached tarball:
dsh plugin --profile web add ./whybebabo-dsh-code-nav-0.3.0.tgzArtifacts
whybebabo-dsh-code-nav-0.3.0.tgz— pre-packed plugin tarball
Verified
node test/code-nav.test.mjs— 117/117 unit tests passnode --check lib/client.js— bundle syntax OK
v0.2.2
v0.2.2
@whybebabo/dsh-code-nav — DSH web plugin (dsh-better-sidebar companion): code and config file preview with per-language syntax highlighting, symbol outline navigation (class / method / variable, JSON/YAML/TOML/XML keys), in-file search and selection -> add to conversation. Fork of AnakinCao/dsh-code-nav.
Install
dsh plugin --profile web add https://github.com/whybebabo/dsh-code-nav.gitThen restart dsh web and hard-refresh the browser (Cmd/Ctrl+Shift+R). Requires dsh-better-sidebar.
Alternatively install the attached tarball:
dsh plugin --profile web add ./whybebabo-dsh-code-nav-0.2.2.tgzArtifacts
whybebabo-dsh-code-nav-0.2.2.tgz— pre-packed plugin tarball
Verified
node test/code-nav.test.mjs— 111/111 unit tests passnode --check lib/client.js— bundle syntax OK
v0.2.1
v0.2.1
@whybebabo/dsh-code-nav — DSH web plugin (dsh-better-sidebar companion): code and config file preview with per-language syntax highlighting, symbol outline navigation (class / method / variable, JSON/YAML/TOML/XML keys), in-file search and selection -> add to conversation. Fork of AnakinCao/dsh-code-nav.
Install
dsh plugin --profile web add https://github.com/whybebabo/dsh-code-nav.gitThen restart dsh web and hard-refresh the browser (Cmd/Ctrl+Shift+R). Requires dsh-better-sidebar.
Alternatively install the attached tarball:
dsh plugin --profile web add ./whybebabo-dsh-code-nav-0.2.1.tgzArtifacts
whybebabo-dsh-code-nav-0.2.1.tgz— pre-packed plugin tarball
Verified
node test/code-nav.test.mjs— 92/92 unit tests passnode --check lib/client.js— bundle syntax OK
@whybebabo/dsh-code-nav v0.1.2
@whybebabo/dsh-code-nav v0.1.2
Documentation-only release. The client bundle is byte-identical to v0.1.1
(lib/client.js sha256 F31583CA…63D0E) — the version string is not embedded in
it. Selection → add to conversation behaves exactly as in v0.1.1.
Fixed
- Install docs pointed at the wrong profile. Both READMEs and
cordis.patch.ymlsaiddsh plugin --profile desktop add …, which cannot
work: the desktop profile is owned exclusively by the Electron app and the CLI
refuses it —error: profile "desktop" is managed exclusively by the Electron application. They now documentdsh plugin --profile web add …, and
cordis.patch.ymlrecords the desktop caveat (install from the in-app plugin
page instead).
npm cannot amend the files of an already-published version, so this fix from
commit e04d2e9 only reaches users through a new release.
Upgrading from an earlier version
Name an exact version instead of relying only on the ^ range:
@whybebabo/dsh-code-nav@0.1.2
pnpm 11 guards against freshly published packages with
minimumReleaseAge, whose built-in default is 1440 minutes (24 hours). Because
that value is a built-in default and not an explicit setting,
minimumReleaseAgeStrict defaults to false: instead of failing, pnpm falls
back to a version old enough to pass the age gate. So while ^0.1.1 is recorded
in the profile, a reinstall resolves 0.1.1 (mature) over 0.1.2 (too new) and the
command reports success while the installed version never changes.
With an exact version there is a single candidate in range; pnpm installs it and
records it in minimumReleaseAgeExclude. Reinstalling 0.1.2 this way was
verified to land on 0.1.2 (lib/client.js sha256 F31583CA…63D0E).
(Note the contrast: setting minimumReleaseAge explicitly turns strict mode on
by default, and then an over-age request fails outright with
ERR_PNPM_NO_MATURE_MATCHING_VERSION rather than falling back.)
Alternatively, wait 24 hours after a release before upgrading with a ^ range.
Install
dsh plugin --profile web add @whybebabo/dsh-code-navSee the README for the fork origin and the full difference table against
upstream. The upstream change is open as
AnakinCao/dsh-code-nav#1;
if it merges and upstream publishes, prefer the upstream package.
@whybebabo/dsh-code-nav v0.1.1
@whybebabo/dsh-code-nav v0.1.1
Fork of AnakinCao/dsh-code-nav at commit 0d34d27.
Published to npm as @whybebabo/dsh-code-nav@0.1.1.
dsh plugin --profile desktop add @whybebabo/dsh-code-navAdded
-
Selection → add to conversation — selecting code in the preview floats
the same "Add to conversation" button the better-sidebar built-in viewers
show, inserting the selection into the session composer as a fenced block
headed byrelative/path:start[-end](the built-in payload shape; over 500
characters inserts the path line only).Taking the preview over used to lose this affordance entirely: the plugin
registers withpriority: 10, so the built-inTextEditornever mounts,
and the popup lives insideTextEditoronly — thebetterSidebarservice
exposes no selection, popup or draft API.
Notes
- Line numbers come from the rendered line containers and the text from the
per-line code column, so theuser-select: nonegutter never leaks into the
payload; a selection ending exactly at the next line start narrows the span. - The insert prefers the official
captureInsertion()/insertText()(one
undo step, reference chips preserved, refuses without touching the draft
while the composer is busy) and falls back tosetDrafton older hosts. - Dismissal follows better-sidebar's contract: outside mousedown, Escape,
hidden document, blur, scroll, surface leaving the viewport. - The registration id in
lib/client.jsis now injected frompackage.jsonby
scripts/build.mjs— client-modules keys its module table by the full package
name, so the scoped rename required it. ⚠️ Do not install alongside the upstreamdsh-code-nav: both register the
viewer iddsh-code-nav:outline.
The upstream change is open as AnakinCao/dsh-code-nav#1;
if it merges and upstream publishes, prefer the upstream package.