====== Tips & Tricks ======
Diese Seite enthält einige Tips für die Xfce-Arbeitsumgebung.
===== Leistungstips =====
Mal Klartext, einer der Hauptgründe für Xfce ist Leistung, es ist leichter und reagiert schneller als Gnome in den meisten Konfigurationen, insbesondere auf Rechnern mit weniger Speicher und schlechteren Prozessoren.
==== Schriftarten ====
Schriftarten spielen eine **große** Rolle in graphischen Oberflächen. Mit allem Schnickschnack wie Kantenglättung, Hinweisen und Rastern eingeschaltet kann es schon sein, dass man merkliche Verzögerungen beim Öffnen von Dialogen und Menüs feststellt. Wenn alles abgeschaltet ist, wird es dem entsprechend **viel** schneller. Das Blättern in Netzseiten, Textprogrammen und Konsolen wird ebenso schneller sein.
Das wesentliche Problem hier sind hässliche Schriftarten. "Kochi Gothic", "Helvetica", "Liberation Sans", "Luxi Sans" und "Verdana" geben auch ein nettes Aussehen des Desktops. Weitere Vorschläge sind gerne gesehen hier.
==== Hintergrundbild ====
Auf älteren Computern mit langsamem Prozessor und wenig Arbeitsspeicher kann es helfen, auf ein Hintergrundbild zu verzichten und die Hintergrundfärbung auf eine Farbe zu stellen, d.h. Farbverläufe abzuschalten.
==== Menü-Icons ====
Die Darstellung der Menü- und Programm-Icons im Startmenü bzw. der Entsprechung im Kontext-Menü des Desktops (Rechts-Klick!) kostet auch auf schnellen Computern spürbar Zeit. Während die Zehntelsekunde auf neueren Computern zu verschmerzen ist, kann das Abschalten der Icons auf langsameren Maschinen spürbaren Geschwindigkeitszuwachs bringen:
* Startmenü → Einstellungen → Einstellungseditor starten.
* xsettings → Gtk → MenuImages - diesen Bool'schen Parameter auf False setzen.
===== Wie bekomme ich das alternative GNOME-Menü? =====
Wenn Du das das neue Menü aus GNOME, mit Schnellstartern für deine Lieblingsprogramme und anderem magst, kannst Du das [[http://goodies.xfce.org/projects/panel-plugins/xfce4-xfapplet-plugin|xfapplet-Leistenmodul]] mit dem GNOME-Menüapplet benutzen. Das Menü selbst sollte idealerweise mithilfe deiner Paketverwaltung installiert sein, schau nach **gnome-main-menu**. [[http://wirelessimage4.pbwiki.com/f/Screenshot.png|Xfce-Bildschirmphoto]], [[http://www.novell.com/video/desktop/|Kurzfilm]].
Füge ein neues xfapplet-Objekt in Deine Leiste ein und bearbeite seine Eigenschaften um das GNOME-Menü einzufügen.
Siehe auch: [[/howto/customize-menu|Das Xfce-4.5+-Menü anpassen]]
===== gtkrc Dateien =====
GTK benutzt eine Vielzahl verschiedener Oberflächenelemente, wie Knöpfe, Eingabefelder oder auch Bildlaufleisten, genannt "Widgets". All diese Elemente können einzeln mit einem Thema oder Stil versehen und somit angepasst werden.
Ein sehr nettes Tutorial ist hierfür im [[http://live.gnome.org/GnomeArt/Tutorials/GtkThemes|GNOME-Wiki]] zu finden, das gtkrc-Dateien sehr gut erklärt.
Unter Xfce selber können auch benutzerdefinierte gtkrc-Einstellungen vorgenommen werden. Beispielsweise für [[http://svn.xfce.org/svn/xfce/xfdesktop/branches/xfce_4_4/README|xfdesktop]] und [[http://thunar.xfce.org/pwiki/documentation/advanced_settings|Thunar]]. ( Schau auch zusätzlich einmal unter [[http://thunar.xfce.org/pwiki/documentation/faq#how_do_i_assign_different_keyboard_shortcuts|veränderbare Tastenkürzel]]).
Möchte man beispielsweise am Aussehen der Leiste etwas verändern, ist es möglich folgendes zu benutzen:
# ~/.gtkrc-2.0
style "panel-background" {
bg_pixmap[NORMAL] = "foo.bar"
bg_pixmap[PRELIGHT] = "foo.bar"
bg_pixmap[ACTIVE] = "foo.bar"
bg_pixmap[SELECTED] = "foo.bar"
bg_pixmap[INSENSITIVE] = "foo.bar"
}
style "panel-color" {
fg[NORMAL] = "#222222"
fg[ACTIVE] = "#111111"
bg[NORMAL] = "#edeff2"
bg[PRELIGHT] = "#3d6eab"
bg[ACTIVE] = "#3d6eab"
}
widget_class "*Panel*" style "panel-background"
widget "*PanelWidget*" style "panel-color"
widget "*PanelApplet*" style "panel-color"
widget "*Panel*" style "panel-color"
widget_class "*Panel*" style "panel-color"
class "*Panel*" style "panel-color"
class "*Tray*" style "panel-color"
class "*tray*" style "panel-color"
===== Einträge im Programmmenü hinzufügen und entfernen =====
=== Programm hinzufügen ===
Einen neuen Eintrag für das Programmmenü kann erstellt werden, entweder Systemweit mit einer neuen ''.desktop'' Datei unter ''/usr/share/applications'' oder für einen Benutzer unter ''~/.local/share/applications''.
Ein Eintrag mit den Namen "foo" in dem Submenü "Multimedia" könnte so aussehen:
[Desktop Entry]
Encoding=UTF-8
Name=foo
GenericName=bar
Comment=Ein sinnloses Programm
Exec=foobar
Icon=/usr/share/pixmaps/foobar.xpm
Terminal=false
Type=Application
Categories=Multimedia;
Mehr über ''.desktop'' Dateien ist auf der Internetseite von [[http://standards.freedesktop.org/desktop-entry-spec/latest/|freedesktop.org]] zu finden.
Das ''libexo'' bietet ein Programm mit dem es möglich ist solche ''.desktop'' Dateien anzulegen. Dieses Programm heißt **exo-desktop-item-edit** und über die Kommandozeile kann man mit ''exo-desktop-item-edit --create-new'' einen solchen Eintrag erstellen. Weitere Informationen ist unter ''exo-desktop-item-edit --help'' zu finden.
=== Ein Programm aus dem Menü entfernen ===
Dazu gibt es zwei Möglichkeiten:
* Die eine, leichtere, Möglichkeit ist, einfach die .desktop-Datei aus dem Ordner ''/usr/share/applications/'' zu entfernen. Allerdings bedeutet das, dass MIME-Zuordnungen ebenfalls verloren gehen (etwa die Zuordnung von Programmen zu Dateitypen).
* Die zweite Möglichkeit ist, diese Zeile zu der entsprechenden .desktop-Datei hinzuzufügen:
NoDisplay=true
=====Den Start von Xfce anpassen=====
//Bitte korrigieren: Der Sinn dieses Abschnitts ist unklar//
Dies schließt ein, die entsprechenden Umgebungsvariablen in die Oberfläche aufzunehmen
* Kopiere die Datei /etc/xdg/xfce4/xinitrc nach ~/.config/xfce4/
* Bearbeite diese Datei und füge etwa das folgende mittig ein:
* source $HOME/.bashrc
* # start rxvt-unicode server
* urxvtd -q -o -f
===== Seitenränder von Arbeitsflächen richtig nutzen =====
Die Seitenränder können den verfügbaren Platz vergrößerter Fenster eingrenzen. Wenn man nur eine einzelne Leiste hat lässt sich das trickreich ausnutzen.
Öffne **Einstellungen > Arbeitsflächen und Seitenränder > Seitenränder**. Wenn Du z.B. eine Leiste an der Oberkante des Bildes hast kannst Du Rand an der unteren Seite einstellen. Das gewährt Dir ab jetzt immer Zugriff auf den Hintergrund, z.B. um das Programmmenü zu öffnen oder die Arbeitsflächen anzuzeigen.
Der gleiche Trick klappt mit Leisten an allen Rändern.
===== Zeige Xfce-Logout Optionen durch drücken des Stromschalters =====
Wenn ihr System ACPI unterstützt, können Sie folgendes um durch betätigen des Stromschalters das Xfce-Logout Menü zu zeigen:
* ''/etc/acpi/events/powerbtn''
# /etc/acpi/events/powerbtn
# This is called when the user presses the power button and calls
# /etc/acpi/powerbtn.sh for further processing.
# Optionally you can specify the placeholder %e. It will pass
# through the whole kernel event message to the program you've
# specified.
# We need to react on "button power.*" and "button/power.*" because
# of kernel changes.
event=button[ /]power
action=/usr/local/sbin/xfce4-shutdown-as-user.sh
* ''/usr/local/sbin/xfce4-shutdown-as-user.sh''
#!/bin/sh
# xfce4-shutdown-as-user.sh
#
# Check how many users are currently logged into X.
# If only one user is logged in, run a script which sets
# up the environment to call xfce4-session-logout.
LOGGED_IN_USER=`ls -trl /tmp/.ICE-unix/ | tail -n -1 | cut -d' ' -f3`
NUM_X_USERS=`echo $LOGGED_IN_USER | wc -l`
if [ $NUM_X_USERS -eq 1 ]; then
sudo -H -u $LOGGED_IN_USER /usr/local/sbin/xfce4-user-session-shutdown.sh
fi
* ''/usr/local/sbin/xfce4-user-session-shutdown.sh''
#!/bin/sh
# xfce4-user-session-shutdown.sh
#
# Set up the environment so that DISPLAY and
# SESSION_MANAGER are valid, and xfce4-session-logout can run
HOST=`hostname`
SESSION_ID=`ls -trl /tmp/.ICE-unix/ | head -n1`
# Note that distros use different syntax for the SESSION_MANAGER variable (this script has Debian's format).
# If this does not work, then try something like SESSION_MANAGER="local/$HOST:@/tmp/.ICE-unix/$SESSION_ID"
# instead. You can always find the correct format for your distribution by looking at the
# value of SESSION_MANAGER in a X session.
DISPLAY=:0 SESSION_MANAGER="local/$HOST:/tmp/.ICE-unix/$SESSION_ID" /usr/bin/xfce4-session-logout