Simplify omarchy-bar into a bar-settings and bar-plugin split
The omarchy-bar command had grown three overlapping ways to inspect the bar (show/layout/list/options, plus selected/active/available/widgets aliases) and mixed layout mutation in with bar-level settings. Untangle it into two focused commands: - omarchy-bar keeps only the bar-level settings that write shell.json: use, reset, position, transparent, and settings. reset now delegates to `use omarchy.bar` rather than duplicating the del(.bar.id) write. - omarchy-bar-plugin owns all layout mutation: add, move, remove, set, and replace, with the placement flags and jq resolve/anchor helpers. `omarchy bar plugin ...` routes here via the dispatcher. Drop the inspection commands entirely: the layout is visible on the bar, the config is shell.json, and widget/option ids come from `omarchy plugin list`. Nothing consumed the show output programmatically except tests. This also removes omarchy-bar-position, whose jq write was a duplicate of `omarchy bar position`. Strip environment-invariant guards (require_command, require_omarchy_path) that defended against jq or OMARCHY_PATH being absent — neither happens on a real system. Keep the user-input validation (--section/--index) and the atomic shell.json write. Update callers (service install/remove, refresh-shell, plugin-clone, plugin enable), keybindings, the menu, tests, and docs to the new split.
This commit is contained in:
@@ -7,9 +7,10 @@
|
||||
# Walks $OMARCHY_PATH/shell/plugins and ~/.config/omarchy/plugins, reads every
|
||||
# manifest.json / *.manifest.json, and emits one JSON object per plugin with
|
||||
# computed fields (sourceDir, barWidgetPath, barPath, firstParty). This is the
|
||||
# single source of truth that omarchy-bar (widget/option enumeration and add
|
||||
# validation) and omarchy-plugin-clone (source enumeration) read, so the bar
|
||||
# and plugin commands never re-implement manifest walking.
|
||||
# single source of truth that omarchy-bar (widget/option enumeration),
|
||||
# omarchy-bar-plugin (add validation), and omarchy-plugin-clone (source
|
||||
# enumeration) read, so the bar and plugin commands never re-implement
|
||||
# manifest walking.
|
||||
|
||||
set -o pipefail
|
||||
|
||||
|
||||
Reference in New Issue
Block a user