Portál AbcLinuxu, 1. května 2025 03:30
Když jsem zkoušel Awesome 3 WM, docela se mi zalíbila možnost mít right-click menu i v dynamickém window manageru. Je to fajn způsob jak spouštět nejpoužívanější aplikace, aniž by člověk musel pokaždé datlovat jméno programu v dmenu.
Proč vlastně píšu tenhle zápisek? Hledal jsem všude možně po internetu, jak zakomponovat takové menu do dwm, ale jediné, co jsem našel byl nějáký starý patch pro dwm 3.9. Rozhodl jsem se tedy uveřejnit způsob jak na to pro případné zájemce, aby nemuseli ztrácet čas hledáním informací na internetu, nebo vymýšlením různých skriptů pro dzen2.
Nejsnažší způsob je stáhnout si program 9menu, který by měl být někde v repozitáři pro vaší distribuci. Potom vytvořit soubor (pojmenujme ho třeba 9menurc), do kterého napíšeme, co chceme spouštět. Syntaxe je jednoduchá
název : executablea uložit soubor třeba do ~/config/9menu/9menurc. Poté je třeba v souboru config.h "namapovat" pravé tlačítko tak, aby při klepnutí na plochu spustilo 9menu. To se udělá tak, že sekci commands upravíme následovně (viz poslední řádek):
/* commands */ static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL }; static const char *termcmd[] = { "urxvt", NULL }; static const char *menucmd[] = { "9menu", "-popup", "-teleport", "-file", "/home/david/.config/9menu/9menurc", "-bg", normbgcolor, "-fg", selfgcolor, "-font", font, NULL };Potom do sekce button commands přidáme tuto řádku:
{ ClkRootWin, 0, Button3, spawn, {.v =menucmd } },Teď už jen překompilovat dwm a je to.
Třeba se to někomu bude hodit. Výsledek můžete vidět zde
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.