Fluxbox – tworzenie własnego menu

Uwaga: Ten wpis został utworzony ponad rok temu. Informacje w nim zawarte mogą być nieaktualne!

Prawy klawiszy myszki, a dokładniej menu, które on otwiera, to podstawa w Fluxboksie. Daje nam ono ogromne możliwości. Dobrze skonfigurowane znacznie przyśpieszy naszą pracę. Standardowe menu nie jest idealne i wymaga lekkich korekt, jednak moim zdaniem najlepiej jest utworzyć własne menu i dokładnie je zaplanować, aby potem nie tracić czasu na szukanie potrzebnych aplikacji.

Plik konfiguracyjny menu znajduje się w /home/user/.fluxbox/menu możemy ten plik wyedytować np. w programie gedit, chociaż osobiście polecam nano – gedit zostawmy GNOME.

Standardowe menu ukrywa się w /etc/X11/fluxbox/fluxbox-menu, możesz je wyedytować, aby mieć przykład przy tworzeniu własnego menu.

Do roboty!

Otwórz terminal (z menu kryjącego się pod prawym przyciskiem myszy wybierz Akcesoria > Emulatory Terminala) i wydaj polecenie:

nano ~/.fluxbox/menu

Powinieneś zobaczyć kilka linijek kodu, który może Ci nic nie mówić, już wyjaśniam:

[begin] (fluxbox) - to początek menu, radzę go nie zmieniać (możesz zmienić nazwę w nawiasie okrągłym)
[include] (/etc/X11/fluxbox/fluxbox-menu) - ten wpis odpowiada za wczytanie standardowego menu, o którym pisałem wyżej. Usuń ten wpis, albo wykomentuj (dodaj przed nim #), aby zlikwidować domyślne menu.
[submenu] (Akcesoria) - tak oznaczane będzie każde nowe podmenu, w nim będą znajdować się kolejne podmenu lub aplikacje.
[exec] (Gedit) {gedit} - pierwszy człon oznacza, że mamy do czynienia z aplikacją, drugi określa pod jaką nazwą w menu będzie się ona kryła, a trzeci to polecenie, które je otworzy.
[end] - kończy submenu lub całe menu - w zależności w którym miejscu występuje.

Przykładowe menu wyglądające mniej więcej tak:

MENU GŁÓWNE:
> Akcesoria (katalog)
> Gry (katalog)
- Tetris (aplikacja)
> Programy (katalog)
- OpenOffice Wirter (aplikacja)

W postaci kodu będzie wyglądało następująco:

[begin] (fluxbox)
[submenu] (Akcesoria)
[submenu] (Gry)
[exec] (Tetris) {tetris} #załóżmy, że to polecenie otwiera tetris ;)
[end] #wpis kończący submenu "Gry"
[submenu] (Programy)
[exec] (OpenOffice Wirter) {/usr/bin/oowriter}
[end] #wpis kończący submenu "Programy"
[end] #wpis kończący submenu "Akcesoria"
[end] #wpis kończący całe główne menu

Jeśli nie wiesz jakie polecenie otwiera określone aplikacje możesz wspomóc się gotowym menu:

sudo nano /etc/X11/fluxbox/fluxbox-menu

Dobrze jest każde nowe submenu jakoś widocznie zaznaczyć (np. klawiszem tabulacji). Ja tą zasadę stosuję, dzięki temu zapis jest czytelniejszy. Niestety WordPress ignoruje mój wysiłek i wszystko zlewa do kupy ;)

Moje menu wygląda tak:

[begin] (fluxbox)
#[include] (/etc/X11/fluxbox/fluxbox-menu)

[exec] (Terminal) {gnome-terminal}

[submenu] (Akcesoria)
[exec] (Gedit) {gedit}
[exec] (Nano) { x-terminal-emulator -T "Nano" -e /bin/nano} </usr/share/nano/nano-menu.xpm>
[end]

[submenu] (Biuro)
[exec] (OpenOffice Calc) {/usr/bin/oocalc} </usr/share/icons/gnome/32x32/apps/openofficeorg24-calc.xpm>
[exec] (OpenOffice Impress) {/usr/bin/ooimpress} </usr/share/icons/gnome/32x32/apps/openofficeorg24-impress.xpm>
[exec] (OpenOffice Writer) {/usr/bin/oowriter} </usr/share/icons/gnome/32x32/apps/openofficeorg24-writer.xpm>
[exec] (OpenOffice Draw) {/usr/bin/oodraw} </usr/share/icons/gnome/32x32/apps/openofficeorg24-draw.xpm>
[end]

[submenu] (Dźwięk i obraz)
[exec] (Audacious) {/usr/bin/audacious} <>
[exec] (The GIMP) {/usr/bin/gimp} </usr/share/pixmaps/gimp.xpm>
[exec] (XSane) {/usr/bin/xsane} </usr/share/pixmaps/xsane.xpm>
[exec] (VLC media player) {/usr/bin/wxvlc} </usr/share/vlc/vlc.xpm>
[end]

[submenu] (Gry) {}
[submenu] (Action) {}
[exec] (Gnibbles) {/usr/games/gnibbles} </usr/share/pixmaps/gnibbles.xpm>
[exec] (Hedgewars) {/usr/games/hedgewars} <>
[exec] (Wormux) {/usr/games/wormux} </usr/share/pixmaps/wormux_32x32.xpm>
[end]
[submenu] (Blocks) {}
[exec] (Frozen-Bubble) {/usr/games/frozen-bubble} </usr/share/pixmaps/frozen-bubble.xpm>
[exec] (Gnometris) {/usr/games/gnometris} </usr/share/pixmaps/gnometris.xpm>
[end]
[submenu] (Karciane) {}
[exec] (Gnome Blackjack) {/usr/games/blackjack} </usr/share/pixmaps/blackjack.xpm>
[exec] (Gnome FreeCell) {/usr/games/sol --variation freecell} </usr/share/pixmaps/freecell.xpm>
[exec] (Gnome Solitaire Games) {/usr/games/sol} </usr/share/pixmaps/aisleriot.xpm>
[end]
[submenu] (Planszowe) {}
[exec] (Four-in-a-row) {/usr/games/gnect} </usr/share/pixmaps/gnect.xpm>
[exec] (GL Chess) {/usr/games/glchess} </usr/share/pixmaps/glchess.xpm>
[exec] (Gnome GYahtzee) {/usr/games/gtali} </usr/share/pixmaps/gtali.xpm>
[exec] (Gnome Iagno) {/usr/games/iagno} </usr/share/pixmaps/iagno.xpm>
[exec] (Gnome Lines) {/usr/games/glines} </usr/share/pixmaps/glines.xpm>
[exec] (Gnome Mahjongg) {/usr/games/mahjongg} </usr/share/pixmaps/gnome-mahjongg.xpm>
[end]
[submenu] (Układanki) {}
[exec] (Gnome Klotski) {/usr/games/gnotski} </usr/share/pixmaps/gnotski.xpm>
[exec] (Gnome Robots) {/usr/games/gnobots2} </usr/share/pixmaps/gnobots2.xpm>
[exec] (Gnome Sudoku) {/usr/games/gnome-sudoku} </usr/share/pixmaps/gnome-sudoku.xpm>
[exec] (Gnome Tetravex) {/usr/games/gnotravex} </usr/share/pixmaps/gnotravex.xpm>
[exec] (Gnomine) {/usr/games/gnomine} </usr/share/pixmaps/gnomine.xpm>
[exec] (Same Gnome) {/usr/games/same-gnome} </usr/share/pixmaps/gsame.xpm>
[end]
[end]

[submenu] (Internet)
[exec] (Kadu) {kadu} </usr/share/pixmaps/kadu.xpm>
[exec] (Firefox) {firefox} </usr/share/pixmaps/firefox-3.0.png>
[exec] (Links 2) {/usr/bin/links2 -g} </usr/share/pixmaps/links2.xpm>
[exec] (Links 2 (text\)) { x-terminal-emulator -T "Links 2 (text)" -e /usr/bin/links2} </usr/share/pixmaps/links2.xpm>
[exec] (Skype) {skype}
[exec] (aMule) {amule} </usr/share/pixmaps/amule.xpm>
[exec] (kTorrent) {ktorrent}
[exec] (Thunderbird) {thunderbird} </usr/share/pixmaps/thunderbird.png>
[exec] (FileZilla) {/usr/bin/filezilla} </usr/share/pixmaps/filezilla.xpm>
[end]

[submenu] (System)
[config] (Konfiguracja)
[submenu] (Styles) {}
[stylesdir] (/usr/share/fluxbox/styles)
[stylesdir] (~/.fluxbox/styles)
[workspaces] (Pulpity)
[end]
[exec] (Synaptic) {/usr/bin/gksu /usr/sbin/synaptic} </usr/share/synaptic/pixmaps/synaptic_32x32.xpm>
[exec] (nvidia-settings) {/usr/bin/nvidia-settings} <>
[exec] (Firestarter) {gksu -g /usr/sbin/firestarter} </usr/share/pixmaps/firestarter.xpm>
[exec] (KControl) {/usr/bin/kcontrol} <>
[exec] (Boot-Up Manager) {/usr/bin/gksu /usr/bin/bum} </usr/share/pixmaps/bum.xpm>
[end]

[restart] (Restart)
[exit] (Wyłącz)
[end]
Jeżeli powyższy artykuł nie rozwiązał lub rozwiązał częściowo Twój problem, dodaj swój komentarz opisujący, w którym miejscu napotkałeś trudności.
Mile widziane komentarze z uwagami lub informacjami o rozwiązaniu problemu.