v3.0.0
AI generated. Reviewed by Johnny.
This release makes jd a standalone program, and removes the 1.x shims.
Breaking changes
- The
jd-nav/andjd-prompt/directories are gone. A.zshrcthat
sources either one now fails at shell start with "no such file".
Replace that line withsource ~/.jd/cli/jd.sh. jd new --jsonno longer changes directory. It prints the object and
exits. Without--json,jd newmoves into the new folder as before.
Features
bin/jdis the program. It can be run without sourcing anything,
from a script, cron, an agent, or another program.- A move run from the program prints the folder on stdout and exits 0,
socd "$(~/.jd/cli/bin/jd 11.11)"works. - The shell hook sets
JD_HOOKwhen it runs the program. A move then
exits 3 instead of 0, and the hook does thecd. --systemis now read only as the first word, so it cannot be taken
for a title or for a flag ofjd new.jd helpnow works without a config.source ~/.jd/cli/jd.shnow adds~/.jd/cli/binto$PATH.
Changes
jd.shis now a hook. It definesjd,jdexand one command per
system, addsbinto$PATH, and loads nothing fromlibbut the
zsh prompt. Each function it defines is self-contained, so a shell
that copiesjdwithout its helpers still gets a working command.- The version number now lives only in
bin/jd.jd versionreads it
from there. jdandjdexno longer hard-code a system. The program resolves
the default on every run, so a config edit takes effect immediately.