feat(shell): enhance log browser, add yay wrapper, and integrate starship OSC prompt markers #26
Reference in New Issue
Block a user
Delete Branch "feat/log-browser-yay-ov-and-starship-osc"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
logs.fish): yay category support;ov-powered viewing for paru/yay logs (syntax highlights,==>AUR build section headers) and scrollback logs (OSC 133;A sticky prompt headers); fzfCtrl-Ddelete with Y/n confirm and live list refresh;?toggleable keybind help overlay_scrollback_prune_junk.fish): new reusable utility that removes empty, single-line, and Kitty tab-rename noise logs; called by bothlogs(before display) andsmart_exit(before max-file pruning)conf.d/yay-wrapper.fish): mirrorsparu-wrapper.fish; auto-generates~/.local/bin/yayon first shell start when yay is installed, teeing all output to timestamped logs inSCROLLBACK_HISTORY_DIRconf.d/starship.fish): extractsfish_promptfromconfig.fishinto its ownconf.dfile; emits OSC 133;A after the prompt's leading newline so the marker lands on the info-bar line (enablingovsticky headers); guarded bytype -q starshipso clean fish sessions use built-in markers unchangedfish_promptblock; adds areturnsentinel at EOF to prevent tool-injectedinit | sourcelines from conflicting with theconf.d/-based integration approachreturnsentinel for users adding new toolsManual Verification
paru <package>andyay <package>; confirm timestamped log files appear in$SCROLLBACK_HISTORY_DIRprefixedparu_andyay_respectivelylogs; confirm scrollback, paru, and yay entries all appear; open a paru/yay log with Enter and verify ov shows coloured section headers; open a scrollback log and verify the info-bar line sticks to the top while scrollinglogs, pressCtrl-Don an entry — confirm Y/n prompt appears, Enter deletes and refreshes the list,ncancels; press?to toggle the help overlay on and offexit; verify ascrollback_*.logis saved; re-openlogsand confirm single-line junk files (e.g. bare[exited]captures) are absent from the liststarship init fish | source(simulating a tool injection); confirm the prompt still behaves correctly and the injected line has no effect (thereturnsentinel blocked it)