revert(menu): keep the hand-rolled fd files module, drop rofi-file-browser
The rofi-file-browser-extended navigate-a-tree model felt worse than flat fuzzy-find for a quick launcher (yazi already covers real browsing), so `files` goes back to `fd` → `rofi -dmenu` → xdg-open. calc (rofi-calc) and emoji (rofi-emoji) stay. Re-adds `fd` to the module's packages and notes the dropped plugin in the roadmap. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
13
README.md
13
README.md
@@ -295,9 +295,9 @@ close · `SUPER+1..9` workspaces · `Print` region screenshot.
|
|||||||
`nomarchy-menu` dispatcher: root picker (no args) · `power`
|
`nomarchy-menu` dispatcher: root picker (no args) · `power`
|
||||||
(lock/logout/suspend/hibernate/reboot/shutdown, SUPER+X) ·
|
(lock/logout/suspend/hibernate/reboot/shutdown, SUPER+X) ·
|
||||||
`theme` (SUPER+T) · `clipboard` (cliphist, SUPER+CTRL+V) · `calc`
|
`theme` (SUPER+T) · `clipboard` (cliphist, SUPER+CTRL+V) · `calc`
|
||||||
(rofi-calc, live, SUPER+CTRL+C) · `files` (rofi-file-browser, live
|
(rofi-calc, live, SUPER+CTRL+C) · `files` (fd → xdg-open,
|
||||||
navigation, SUPER+CTRL+F) · `emoji` (rofi-emoji, SUPER+CTRL+E) ·
|
SUPER+CTRL+F) · `emoji` (rofi-emoji, SUPER+CTRL+E) · `web` (Google).
|
||||||
`web` (Google). SUPER+D is `rofi -show drun`.
|
SUPER+D is `rofi -show drun`.
|
||||||
- ✓ shipped modules: `network` (nmtui in `$TERMINAL`) · `bluetooth`
|
- ✓ shipped modules: `network` (nmtui in `$TERMINAL`) · `bluetooth`
|
||||||
(blueman-manager) · `capture` (grim/slurp submenu: region/full →
|
(blueman-manager) · `capture` (grim/slurp submenu: region/full →
|
||||||
clipboard/file, saved to `~/Pictures/Screenshots`) · `keybinds` (the
|
clipboard/file, saved to `~/Pictures/Screenshots`) · `keybinds` (the
|
||||||
@@ -326,11 +326,12 @@ close · `SUPER+1..9` workspaces · `Print` region screenshot.
|
|||||||
- **calc** → **rofi-calc**: live results as you type via libqalculate
|
- **calc** → **rofi-calc**: live results as you type via libqalculate
|
||||||
directly (dodging the qalc-CLI "of" bug), Enter copies, menu persists
|
directly (dodging the qalc-CLI "of" bug), Enter copies, menu persists
|
||||||
to chain calculations.
|
to chain calculations.
|
||||||
- **files** → **rofi-file-browser-extended**: live directory navigation
|
|
||||||
(Backspace to ascend, toggle hidden) opening with xdg-open, replacing
|
|
||||||
the flat `fd` dump of `$HOME`. yazi (SUPER+E) stays the power browser.
|
|
||||||
- **emoji** → **rofi-emoji** (new module, SUPER+CTRL+E): glyph picker,
|
- **emoji** → **rofi-emoji** (new module, SUPER+CTRL+E): glyph picker,
|
||||||
copies via the plugin's Wayland clipboard adapter.
|
copies via the plugin's Wayland clipboard adapter.
|
||||||
|
- **files** stays the hand-rolled `fd` → `rofi -dmenu` → xdg-open fuzzy
|
||||||
|
search: rofi-file-browser-extended was tried and dropped — its
|
||||||
|
navigate-a-tree model felt worse than flat fuzzy-find for a quick
|
||||||
|
launcher, and yazi (SUPER+E) already covers real browsing.
|
||||||
- **More menu modules from rofi tools:** the script-based counterparts
|
- **More menu modules from rofi tools:** the script-based counterparts
|
||||||
(run via `rofi -dmenu`, like the hand-rolled modules), each a deliberate
|
(run via `rofi -dmenu`, like the hand-rolled modules), each a deliberate
|
||||||
replacement of an existing flow: **rofi-network-manager** (a keyboard
|
replacement of an existing flow: **rofi-network-manager** (a keyboard
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
{ mods = "$mod CTRL"; key = "V"; action = "exec, nomarchy-menu clipboard"; desc = "Clipboard history"; }
|
{ mods = "$mod CTRL"; key = "V"; action = "exec, nomarchy-menu clipboard"; desc = "Clipboard history"; }
|
||||||
{ mods = "$mod CTRL"; key = "C"; action = "exec, nomarchy-menu calc"; desc = "Calculator"; }
|
{ mods = "$mod CTRL"; key = "C"; action = "exec, nomarchy-menu calc"; desc = "Calculator"; }
|
||||||
{ mods = "$mod CTRL"; key = "W"; action = "exec, nomarchy-menu web"; desc = "Web search"; }
|
{ mods = "$mod CTRL"; key = "W"; action = "exec, nomarchy-menu web"; desc = "Web search"; }
|
||||||
{ mods = "$mod CTRL"; key = "F"; action = "exec, nomarchy-menu files"; desc = "File browser"; }
|
{ mods = "$mod CTRL"; key = "F"; action = "exec, nomarchy-menu files"; desc = "File search"; }
|
||||||
{ mods = "$mod CTRL"; key = "E"; action = "exec, nomarchy-menu emoji"; desc = "Emoji picker"; }
|
{ mods = "$mod CTRL"; key = "E"; action = "exec, nomarchy-menu emoji"; desc = "Emoji picker"; }
|
||||||
{ mods = "$mod CTRL"; key = "N"; action = "exec, nomarchy-menu network"; desc = "Network (nmtui)"; }
|
{ mods = "$mod CTRL"; key = "N"; action = "exec, nomarchy-menu network"; desc = "Network (nmtui)"; }
|
||||||
{ mods = "$mod CTRL"; key = "B"; action = "exec, nomarchy-menu bluetooth"; desc = "Bluetooth"; }
|
{ mods = "$mod CTRL"; key = "B"; action = "exec, nomarchy-menu bluetooth"; desc = "Bluetooth"; }
|
||||||
|
|||||||
@@ -108,13 +108,11 @@ let
|
|||||||
-calc-command "echo -n '{result}' | wl-copy" ;;
|
-calc-command "echo -n '{result}' | wl-copy" ;;
|
||||||
|
|
||||||
files)
|
files)
|
||||||
# Live file browser (rofi-file-browser-extended): navigate into
|
sel=$(fd . "$HOME" --type f --hidden --exclude .git --exclude .cache 2>/dev/null \
|
||||||
# directories, go up with Backspace, toggle hidden files with the
|
| head -n 50000 \
|
||||||
# rofi custom key, and open the selection with xdg-open. Starts in
|
| sed "s|^$HOME/||" \
|
||||||
# $HOME. The keyboard-heavy TUI flagship for real work is yazi
|
| rofi -dmenu -p file) || exit 0
|
||||||
# (SUPER+E); this is the quick launcher path.
|
[ -n "$sel" ] && exec xdg-open "$HOME/$sel" ;;
|
||||||
exec rofi -show file-browser-extended -modi file-browser-extended \
|
|
||||||
-file-browser-dir "$HOME" -file-browser-cmd xdg-open ;;
|
|
||||||
|
|
||||||
emoji)
|
emoji)
|
||||||
# Emoji / symbol picker (rofi-emoji). The default action copies the
|
# Emoji / symbol picker (rofi-emoji). The default action copies the
|
||||||
@@ -217,7 +215,8 @@ in
|
|||||||
config = lib.mkIf cfg.rofi.enable {
|
config = lib.mkIf cfg.rofi.enable {
|
||||||
home.packages = [
|
home.packages = [
|
||||||
nomarchy-menu
|
nomarchy-menu
|
||||||
pkgs.xdg-utils # xdg-open for the web + file-browser modules
|
pkgs.fd # files module (fuzzy search over $HOME)
|
||||||
|
pkgs.xdg-utils # xdg-open for the files + web modules
|
||||||
pkgs.nodejs # npx, for the Ask Claude module (claude-code from npm)
|
pkgs.nodejs # npx, for the Ask Claude module (claude-code from npm)
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -226,11 +225,11 @@ in
|
|||||||
terminal = cfg.terminal;
|
terminal = cfg.terminal;
|
||||||
font = "${t.fonts.ui} 12";
|
font = "${t.fonts.ui} 12";
|
||||||
|
|
||||||
# Native rofi modi backing three menu modules: calc (live, via
|
# Native rofi modi backing two menu modules: calc (live, via
|
||||||
# libqalculate — no qalc CLI needed), emoji (glyph picker, copies via
|
# libqalculate — no qalc CLI needed) and emoji (glyph picker, copies
|
||||||
# its bundled Wayland adapter), file-browser (live navigation). All
|
# via its bundled Wayland adapter). Both render through the
|
||||||
# render through the generated/whole-swap theme like every other modi.
|
# generated/whole-swap theme like every other modi.
|
||||||
plugins = [ pkgs.rofi-calc pkgs.rofi-emoji pkgs.rofi-file-browser ];
|
plugins = [ pkgs.rofi-calc pkgs.rofi-emoji ];
|
||||||
|
|
||||||
extraConfig = {
|
extraConfig = {
|
||||||
modi = "drun,run";
|
modi = "drun,run";
|
||||||
|
|||||||
Reference in New Issue
Block a user