Beispielkonfiguration

Twm Konfiguration
Fvwm Konfiguration
Freedesktop Konfiguration
Pipe-Read Konfiguration
Weitere Beispiele

 Twm Konfiguration

Bearbeiten sie die Twm Konfigurationsdatei "$HOME/.twmrc" und suchen sie nach der vorhandenen Menükonfiguration.
Beispiel:

menu "defops"
{
 "Startmenu" f.title
 "Mc" f.exec "xterm -t Mc -e mc &"
 "Shell" f.exec "xterm &"
 "" f.nop
 "Show Iconmgr" f.showiconmgr
 "Hide Iconmgr" f.hideiconmgr
 "" f.nop
 "Restart" f.restart
 "Exit" f.quit
}

Nun wird die folgende Zeile hinzugefügt:

"Wmconfig" f.menu "Wmconfig"

Benennen sie die twmrc Datei um und anstatt Twm direkt auszuführen wird dieses kleine Script benutzt:

cp $HOME/.new_twmrc $HOME/.twmrc
wmconfig --output twm >> $HOME/.twmrc
twm

So wird bei jedem Start Wmconfig aufgerufen und das Menü wird erstellt. Falls sie diese Art des Start benutzen, müssen Änderungen an der Twm Konfiguration in der Datei "$HOME/.new_twmrc" erfolgen.

Dies funktioniert auch für ähnliche Windowmanager wie Mwm und Ctwm.

Nach oben
 Fvwm Konfiguration

Bearbeiten sie "$HOME/.fvwmrc" mit einem Editor und finden sie die Konfiguration des Rootmenü.

Beispiel:

Popup "Startmenu"
 Title "Startmenu"
 Exec "Shell" exec xterm &
 Nop ""
 Popup "Modules" Module-Popup
 Nop ""
 Popup "Exit Fvwm" Quit-Verify
EndPopup

Über dieser Zeile erfolgt der Split der Konfigurationsdatei da bei Fvwm Menüs konfiguriert sein müssen, bevor sie benutzt werden können (im Gegensatz zu Twm).
Der Aufruf von Fvwm erfolgt dann mit:

cp $HOME/.fvwmrc_1 $HOME/.fvwmrc
wmconfig --output fvwm >> $HOME/.fvwmrc
cat $HOME/.fvwmrc_2 >> $HOME/.fvwmrc
fvwm

Diese Art der Konfiguration funktioniert für Fvwm und Mlvwm

Nach oben
 Freedesktop Konfiguration

Die Freedesktop Ausgabe sollte mit jedem XDG kompatiblen Desktop wie Gnome, LXDE oder KDE funktionieren. Die Wmconfig Ausgabe besteht aus 2 Teilen. Der Erste erstellt die Menü Konfigurationsdatei, der zweite Teil die einzelnen Dateien für die Menüeinträge.
Die Menüdatei wird unter "$HOME/.config/menus/applications-merged/" mit dem Name wmconfig.menu erstellt. Diese Datei wird bspw. vom Gnome Panel eingelesen. Sie enthält die Instruktionen wie das Wmconfig Menü aufgebaut ist.
Die Dateien für die Menüeinträge befinden sich unter "$HOME/.local/share/applications".
Falls die Dateien existieren, aber kein Menü angezeigt wird, versuchen sie die generische Freedesktop Ausgabe zu benutzen. Auch patchen einige Distributionen Gnome oder LXDE (z. Bsp. FreeBSD) was zu Problemen führen kann.

Einige Desktop Umgebungen (wie Mate, E17) ignorieren ".config/menus/applications-merged" als Verzeichnis und nutzen eigene Verzeichnisse in denen die Menü Konfiguration gesucht wird. Sollte dies der Fall sein können Sie die "outputdir" Option nutzen um festzulegen wo Wmconfig die entsprechende Konfigurationsdatei anlegen soll. Um den richtigen Namen zu erhalten können Sie z. Bsp. folgendes nutzen (Beispiel für Cinnamon):

ls /etc/xdg/menus

falls eine Datei: cinnamon-applications.menu existiert

wmconfig --output freedesktop --outputdir ~/.config/menus/cinnamon-merged

erstellt die Konfiguration an der richtigen Stelle. Vereinfacht kann folgendes Schema angewendet werden:

/etc/xdg/menus/<name_der_desktop_umgebung&qt;-applications.menu

Dann ist die richtige outputdir Option:

~/.config/menus/<name_der_desktop_umgebung&qt;-merged

Falls die die "outputdir" Option nicht angeben wollen können Sie Symlinks erstellen vom Standardverzeichis, "~/.config/menus/applications-merged". Zum Beispiel Symlinks dieses Verzeichnisses zu enlightenment-merged, kde4-merged, gnome-merged, mate-merged erlaubt es das gleiche Menü für verschiedene Desktop Umgebungen zu nutzen, falls die "freedesktop" Ausgabe Option gewählt wird.

Nach oben
 Pipe-Read Konfiguration

Andere Windowmanager wie Windowmaker, Pekwm oder Golem unterstützen die Nutzung von speziellen Pipe-Read Menüs. Die Ausgabe eines Script oder von Wmconfig wird dabei benutzt, um ein Menü zu erstellen.
Für Windowmaker ist dies etwas wie:

(Wmconfig, OPEN_MENU, "|| wmconfig --output wmaker"),

Openbox unterstützt eine ähnliche Konfiguration. In der "menu.xml" bindet eine Zeile wie:

<menu id="wmconfig" label="Wmconfig" execute="wmconfig --output openbox"></menu>

Wmconfig ein. Diese Konfiguration funktioniert möglicherweise nicht falls die LXDE Konfiguration von Openbox verwendet wird.

Pekwm unterstützt auch Pipe Menüs:

COMMAND = "wmconfig --output pekwm"

in der Konfiguration nutzt dann Wmconfig.

Die Konfiguration für Golem:

.exec "/usr/local/bin/wmconfig --output golem"

Und Fvwm2 sowie Fvwm95:

AddToMenu "Wmconfig" "Wmconfig" Title
 + DynamicPopupAction Function Wmconfig_Menu

AddToFunc Wmconfig_Menu  + I DestroyMenu recreate Wmconfig
 + I AddToMenu Wmconfig "Wmconfig" Title
 + I PipeRead 'wmconfig --output fvwm2'

Und schließlich die Zeile:

+ "Wmconfig" Popup Wmconfig

um das Menü aufzurufen.

Für JWM kann die folgende Konfiguration innerhalb der RootMenu Definition genutzt werden:

 <Menu icon="folder.png" label="Wmconfig">
  <Include>exec:wmconfig --output jwm</Include>
 </Menu>

Diese Anweisungen zeigen die Ausgabe von Wmconfig in einem Untermenü an.

Nach oben
 Weitere Beispiele

Die hier gezeigten Beispiele sollten sich leicht auf andere Windowmanager wie Qvwm oder Ol(v)wm übertragen lassen. Bitte lesen sie dazu die Dokumentation des entsprechenden Windowmanager oder schreiben sie mir eine Email.

Nach oben