DWM: Unterschied zwischen den Versionen

Aus Linupedia.org
Wechseln zu: Navigation, Suche
(Installatio)
 
(9 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Wettbewerb}}
 
 
{{UnderConstruction}}
 
 
 
{{Infobox Software
 
{{Infobox Software
|Name=DWM
+
|Name=[[Bild:Logo dwm.png]]
 
|Logo=[[Bild:Dwm.png]]
 
|Logo=[[Bild:Dwm.png]]
 
|Screenshot=[[Bild:Dwm-screenshot.png|240px]]
 
|Screenshot=[[Bild:Dwm-screenshot.png|240px]]
 
|Beschreibung=DWM Screenshot
 
|Beschreibung=DWM Screenshot
 
|Hersteller=[http://dwm.suckless.org Anselm R. Garbe]
 
|Hersteller=[http://dwm.suckless.org Anselm R. Garbe]
|AktuelleVersion=4.0
+
|AktuelleVersion=4.1
 
|Kategorie=Windowmanager
 
|Kategorie=Windowmanager
|AktuelleVersionFreigabeDatum=24. Februar 2007
+
|AktuelleVersionFreigabeDatum=21. Mai 2007
 
|Betriebssystem=Linux, Solaris
 
|Betriebssystem=Linux, Solaris
|Lizenz=[[MIT/X Consortium license|MIT/X Consortium license]]
+
|Lizenz= MIT/X Consortium license
 
|Deutsch=nein
 
|Deutsch=nein
 
|Website=[http://dwm.suckless.org/ dwm.suckless.org]
 
|Website=[http://dwm.suckless.org/ dwm.suckless.org]
Zeile 20: Zeile 16:
 
[http://dwm.suckless.org DWM] ('''D'''ynamic '''W'''indow '''M'''anager) ist ein kleiner Fenstermanager der komplett über die Tastatur bedient werden kann.
 
[http://dwm.suckless.org DWM] ('''D'''ynamic '''W'''indow '''M'''anager) ist ein kleiner Fenstermanager der komplett über die Tastatur bedient werden kann.
  
Entstanden ist die Idee zu DWM vom Hauptentwickler von [[WMII]], da dieser ihm zu groß wurde und etwas wollte, was seinen Bedürfnissen angepasst war. Daher sollte man zu Anfang auch keine Verbesserungen vorschlagen, jedoch mit größerem Interesse wurde eine Mailingliste erstellt und Patsches veröffentlicht.
+
Entstanden ist die Idee zu DWM vom Hauptentwickler von [[WMII]], da dieser ihm zu groß wurde und etwas wollte, was '''seinen''' Bedürfnissen angepasst war. Daher sollte man zu Anfang auch keine Verbesserungen vorschlagen, jedoch mit größerem Interesse wurde eine Mailingliste erstellt und Patsches veröffentlicht.  
  
 +
DWM ist komplett über die Tastatur bedienbar und wird deshalb bei vielen Konsolennutzern immer beliebter.
  
== Ansichtsmodi ==
+
DWM gehört zu einer Gruppe von Programmen die mit der Idee entstanden sind den Quellcode klein und kompakt zu halten (10.000 Zeilen Quellcode maximal).
{{Achtung|Ab Version 4.1 sollen weitere Änderungen der Modi stattfinden (z.B. ausblenden der Leiste), allerdings steht das noch nicht alles genau fest.}}
+
 
 +
== Layouts (Anordnungen) ==
 
DWM hat standardmäßig 2 Ansichtsmodi:
 
DWM hat standardmäßig 2 Ansichtsmodi:
  
===Tiled-layout===
+
===Tiled layout (Gekachelte Anordnung)===
 
[[Bild:Tiledlayout.png|framed|
 
[[Bild:Tiledlayout.png|framed|
'''Tiled-layout''' <br\>
+
'''"Tiled layout"''' <br\>
 
Blau: Hauptfenster <br\>
 
Blau: Hauptfenster <br\>
 
Grün: Restliche Fenster]]
 
Grün: Restliche Fenster]]
[[Bild:Tiledlayout-2.png|thumb|Weitere Fensteranordnungen im Tiled-layout]]
+
[[Bild:Tiledlayout-2.png|thumb|Weitere Fensteranordnungen im "Tiled layout"]]
 +
Im "Tiled layout" wird der Bildschirmplatz in eine Haupt- und einen Stapelbereich unterteilt.
  
Das Tiled-Layout besteht standardmäßig aus einem Hauptfenster und den restlichen Fenstern die rechts untereinander Angeordnet werden.
+
Der Hauptbereich beinhaltet das/die Fenster die momentan wichtig sind und der Stapelbereich die Fenster, die unwichtig oder gerade von keinem Interesse sind.
Man kann die Fenster der Reihe nach über einen Tastenkürzel (Mod1-j) auswählen und durch einen weiteren Tastenkürzel (Mod1-Return) das ausgewählte Fenster zum Hauptfenster machen.
 
  
Desweiteren kann man das Hauptfenster noch verbreitern oder verkleinern.
+
Der Hauptbereich kann vergrößert und verkleinert werden und die Anzahl der Fenster im Hauptbereich kann vergrößert und verkleinert werden.
  
Mittels einem neu dazugekommenen Tastenkürzel (Mod1-Shift-j) kann man auch die Anzahl der im Hauptfensterbereich anzuzeigenden Fenster erhöhen.
+
Desweiteren kann man das momentan fokussierte Fenster in den frei bewegbaren Modus versetzen, ohne das die restlichen Fenster dadurch beeinflusst werden.
  
===Floating-layout===
+
===Floating layout (Gleitende Anordnung)===
 
[[Bild:Floatlayout.png|framed|
 
[[Bild:Floatlayout.png|framed|
'''Floating-layout''' <br\>
+
'''"Floating layout"''' <br\>
 
Blau: Altes Hauptfenster <br\>
 
Blau: Altes Hauptfenster <br\>
 
Grün: Alte Nebenfenster <br\>
 
Grün: Alte Nebenfenster <br\>
 
Rot: Neues Fenster]]
 
Rot: Neues Fenster]]
Das Floating-layout ist der Standard bei vielen gängigen Fenstermanagern, mit der Unterschied das bei DWM auch in diesem Modi die Fenster ohne eine Tastatur nicht gesteuert werden können.
+
Bekannt von den meisten großen Fenstermanagern ist dieser Modus für viele Programme wichtig, da sie sonst den Inhalt verschoben anzeigen (z.B. MPlayer).
  
In diesem Layout werden alle Fenster beweglich und können in ihrer Größe verändert werden ohne das sie andere Fenster beeinflussen.
+
Im "Floating layout" werden alle Fenster frei beweglich und können maximiert werden, ohne sich gegenseitig zu beeinflussen.
 +
 +
Wechselt man vom "Floating layout" in das "Tiled layout" wird das momentan fokussierte Fenster in den Hauptbereich gelegt.
  
Wechselt man vom diesem Ansichtsmodus in den Anderen wird das gerade fokussierte Fenster zum Hauptfenster.  
+
==Tags (Etiketts)==
 +
DWM besitzt keine Task-Leiste und deswegen sind virtuelle Desktops (hier "Tags" genannt) umso wichtiger um die Übersichtlichkeit zu waren.  
  
== Tags ==
+
Standardmäßig benutzt ein Fenster nur einen Tag und kann von einem zum anderen oder zu mehreren Tags gleichzeitig zu geschoben werden.
DWM besitzt keine Taskbar und somit sind virtuelle Desktops umso wichtiger um die Übersichtlichkeit zu waren.
 
  
Standardmäßig benutzt ein Fenster nur einen Tag und kann von einem Tag zum anderen geschoben werden, aber man kann ein Fenster auch mit mehreren Tags versehen. Desweiteren kann man mit dem Tag "0" (Mod1-0) alle Fenster jeglicher Tags in einem anzeigen lassen.
+
Ein besonderer Tag ist der Tag "0", auf dem alle Fenster jeglicher Tags zugleich angezeigt werden.
  
== Leiste ==
+
==Bar (Leiste)==
 
Die Leiste ist in vier Punkte unterteilt:
 
Die Leiste ist in vier Punkte unterteilt:
*Links sieht man die Namen der Tags, sowie farblich hinterlegt den ausgewählten Tag und ein Quadrat zeigt an ob Fenster diesen Tag nutzen.
+
* Links sieht man die Namen der Tags, sowie farblich hinterlegt den ausgewählten Tag und ein Quadrat zeigt an ob Fenster diesen Tag nutzen.
*Danach kommt das Symbol für den momentan genutzten Ansichtsmodus (Tiled-layout: "[]="; Floating-layout: "><>")
+
* Danach kommt das Symbol für den momentan genutzten Ansichtsmodus (Tiled layout: "[]="; Floating layout: "><>")
*In der Mitte steht der Titel des jeweils fokussierten Fensters.
+
* In der Mitte steht der Titel des jeweils fokussierten Fensters.
*Rechts steht Text, den man DWM mit der xinitrc-Datei übergeben kann.
+
* Rechts steht Text, den man DWM bei seinem Start übergeben kann.
  
 +
Seit der Version 4.1 kann man die Leiste zur Laufzeit ausblenden und somit den gesammten Bildschirmplatz für die Fenster benutzen.
  
 
Beispiel wie man DWM mit der ~/.xinitrc aufrufen kann und ihm die Uhrzeit übergibt:
 
Beispiel wie man DWM mit der ~/.xinitrc aufrufen kann und ihm die Uhrzeit übergibt:
 +
 
  while true
 
  while true
    do
+
    do
        echo `date +%H:%M\ %A\ %d.%m.%Y`
+
        echo `date +%H:%M\ %A\ %d.%m.%Y`
        sleep 1
+
        sleep 1
 
  done | /usr/local/bin/dwm
 
  done | /usr/local/bin/dwm
 +
 +
== Installation ==
 +
 +
Infos zur Installation
 +
 +
=== Debian ===
 +
 +
Da DWM selbst zu kompilieren ist sind vollgende Pakete von noeten.
 +
 +
<pre>
 +
apt-get update
 +
apt-get install install x-dev xlibs-static-dev
 +
</pre>
 +
 +
Im Anschluss laed man sich den DWM Code von deren Homepage runter und bearbeitet die in C geschriebene Konfigurationsdatei ''config.h'' entsprechend.
 +
Man kann auch die config.default.h als Vorlage verwenden.
 +
 +
Installiert wird am Ende das ganze mit:
 +
 +
<pre>
 +
make && make install
 +
</pre>
 +
 +
AFAIK gibt es in Debian DWM auch als fertiges Paket welches mit:
 +
 +
<pre>
 +
apt-get update
 +
apt-get install dwm
 +
</pre>
 +
 +
installieren kann, hierbei muss allerdings die bereits vorhandene Konfiguration so wie sie ist weiter verwendet werden.
  
 
== Konfiguration ==
 
== Konfiguration ==
DWM wird grundsätzlich nur über eine Headerdatei (config.h) konfiguriert und muss bei jeder Änderung neu kompiliert werden.
+
DWM wird grundsätzlich nur über eine Headerdatei (config.h) konfiguriert und muss bei jeder Änderung neu kompiliert werden. Der Vorteil liegt darin, dass DWM somit sicherer und schneller ist, da Fehler nur bei der Kompilierung auftreten sollten. Auch wenn man kaum bis gar keine C-Kenntnisse hat kann man DWM trotzdem simpel konfigurieren.
Der Vorteil liegt darin, dass DWM somit sicherer und schneller ist, da Fehler nur bei der Kompilierung auftreten sollten.
 
Auch wenn man kaum bis gar keine C-Kenntnisse hat kann man diese trotzdem simpel bearbeiten.
 
  
 
Folgende Dinge können standardmäßig eingestellt werden:
 
Folgende Dinge können standardmäßig eingestellt werden:
 +
* Position der Liste
 +
* Rahmenbreite der Fenster
 +
* Schriftart und Größe
 +
* Farben
 +
* Anzahl und Namen der Tags
 +
* Regeln, welche Programme immer oder niemals im Tiled-/Floating layout angezeigt werden sollen.
 +
* Auswahl der Layouts und deren Symbol
 +
* Standardmäßige Hauptbereichsbreite
 +
* Standardmäßige Anzahl der Fenster im Hauptbereich
 +
* Tastenkombination
  
*Schriftart und Größe
+
== Patches ==
*Farben
+
Es gibt eine Reihe von Patches, die hauptsächlich andere Layouts beinhalten oder andere kleine Hacks.
*Rahmenbreite
 
*Position der Leiste
 
*Anzahl und Namen der Tags
 
*Regeln, welche Programme immer oder niemals im Tiled-/Floating-Layout angezeigt werden sollen.
 
*Auswahl der Layouts
 
*Tastenkombination
 
  
== Patches ==
+
Wichtig ist, dass man die meisten Patches mit folgendem Befehl einfach und schnell einfügen kann:
Da vielen Leuten unter anderem die standardmäßigen Layouts und die Position der Leiste nicht gefielen entstanden viele nützliche Patches die auf der Homepage von DWM gesammelt.
 
  
Falls nicht anders angegeben kann man den Quelltext einfach mit folgendem Befehl modifizieren:
 
 
  diff -up original-dwm-ordner modifizierter-dwm-ordner > patchname.diff
 
  diff -up original-dwm-ordner modifizierter-dwm-ordner > patchname.diff
  
{{Achtung|Nicht jeder hier beschrieben Patch existiert für die Version 4.0, könnte aber Übertragen werden.
+
Da viele Patches nur für bestimmte Versionen geschrieben wurden und in den allgemeinen Quelltext übernommen wurde lohnt es sich nicht näher auf dieses Thema einzugehen, aber als Beispiel soll folgender Patch dienen:
  
Die hier beschriebenen Patches sollen lediglich als Beispiele für die Möglichkeiten dienen, die DWM bieten kann.}}
+
===Bottom stack patch===
 +
Dieser Patch bietet drei weitere Möglichkeiten für das "Tiled layout", die z.B. für viele Audioprogramme sehr sinnvoll sein können:
  
if(your_idea_is_not_included_in_dwm()==true)
+
* Hauptbereich auf die linke Seite verschieben
    do_it_yourself();
+
* Alle Fenster horizontal statt vertikal zu positionieren (bis auf die einzelnen Fenster im Stackbereich)
 +
* Alle Fenster (auch der Stackbereich) horizontal positionieren. Diesen Modus könnte man auch mit dem normalen "Tiled layout" herstellen, allerdings kann man mit diesem Patch trotzdem noch das Fenster aus dem Hauptbereich vegrößern (Ohne Patch existiert bei diesem Layout '''kein''' Stapelbereich).
  
 
== DMENU ==
 
== DMENU ==
DWM besitzt standardmäßig kein Menü, allerdings existiert auch ein kleiner Bruder vom WMII-Menü namens [[DMENU]], welches extra für DWM geschrieben wurde.
+
DWM selbst bringt kein Menü mit, allerdings existiert auch ein kleiner Bruder vom WMII-Menü, namens DMENU. Es wurde extra an DWM angepasst und wird genauso wie DWM über den Quellcode angepasst.
 +
 
 +
'''Beispiel wie man mit DMENU eine Datei aufrufen kann in der die Programme aufgelistet sind:'''
 +
 
 +
* Inhalt der Menüdatei (~/.dmenu_input):
 +
xterm
 +
firefox
 +
aterm
 +
dillo
 +
 
 +
* DWM Konfiguration (config.h) für DMENU:
 +
{ MODKEY,                      XK_p,          spawn,          "exe=`cat ~/.dmenu_input | dmenu` && exec $exe" }, \
  
 
== Weblinks ==
 
== Weblinks ==

Aktuelle Version vom 16. Dezember 2007, 14:37 Uhr

Logo dwm.png
Dwm-screenshot.png
DWM Screenshot
Basisdaten
Entwickler: Anselm R. Garbe
Aktuelle Version: 4.1
letzte Veröffentlichung: 21. Mai 2007
Betriebssystem: Linux, Solaris
Kategorie: Windowmanager
Lizenz: MIT/X Consortium license
Deutschsprachig: nein
Webseite: dwm.suckless.org

DWM (Dynamic Window Manager) ist ein kleiner Fenstermanager der komplett über die Tastatur bedient werden kann.

Entstanden ist die Idee zu DWM vom Hauptentwickler von WMII, da dieser ihm zu groß wurde und etwas wollte, was seinen Bedürfnissen angepasst war. Daher sollte man zu Anfang auch keine Verbesserungen vorschlagen, jedoch mit größerem Interesse wurde eine Mailingliste erstellt und Patsches veröffentlicht.

DWM ist komplett über die Tastatur bedienbar und wird deshalb bei vielen Konsolennutzern immer beliebter.

DWM gehört zu einer Gruppe von Programmen die mit der Idee entstanden sind den Quellcode klein und kompakt zu halten (10.000 Zeilen Quellcode maximal).

Layouts (Anordnungen)

DWM hat standardmäßig 2 Ansichtsmodi:

Tiled layout (Gekachelte Anordnung)

"Tiled layout" <br\> Blau: Hauptfenster <br\> Grün: Restliche Fenster
Weitere Fensteranordnungen im "Tiled layout"

Im "Tiled layout" wird der Bildschirmplatz in eine Haupt- und einen Stapelbereich unterteilt.

Der Hauptbereich beinhaltet das/die Fenster die momentan wichtig sind und der Stapelbereich die Fenster, die unwichtig oder gerade von keinem Interesse sind.

Der Hauptbereich kann vergrößert und verkleinert werden und die Anzahl der Fenster im Hauptbereich kann vergrößert und verkleinert werden.

Desweiteren kann man das momentan fokussierte Fenster in den frei bewegbaren Modus versetzen, ohne das die restlichen Fenster dadurch beeinflusst werden.

Floating layout (Gleitende Anordnung)

"Floating layout" <br\> Blau: Altes Hauptfenster <br\> Grün: Alte Nebenfenster <br\> Rot: Neues Fenster

Bekannt von den meisten großen Fenstermanagern ist dieser Modus für viele Programme wichtig, da sie sonst den Inhalt verschoben anzeigen (z.B. MPlayer).

Im "Floating layout" werden alle Fenster frei beweglich und können maximiert werden, ohne sich gegenseitig zu beeinflussen.

Wechselt man vom "Floating layout" in das "Tiled layout" wird das momentan fokussierte Fenster in den Hauptbereich gelegt.

Tags (Etiketts)

DWM besitzt keine Task-Leiste und deswegen sind virtuelle Desktops (hier "Tags" genannt) umso wichtiger um die Übersichtlichkeit zu waren.

Standardmäßig benutzt ein Fenster nur einen Tag und kann von einem zum anderen oder zu mehreren Tags gleichzeitig zu geschoben werden.

Ein besonderer Tag ist der Tag "0", auf dem alle Fenster jeglicher Tags zugleich angezeigt werden.

Bar (Leiste)

Die Leiste ist in vier Punkte unterteilt:

  • Links sieht man die Namen der Tags, sowie farblich hinterlegt den ausgewählten Tag und ein Quadrat zeigt an ob Fenster diesen Tag nutzen.
  • Danach kommt das Symbol für den momentan genutzten Ansichtsmodus (Tiled layout: "[]="; Floating layout: "><>")
  • In der Mitte steht der Titel des jeweils fokussierten Fensters.
  • Rechts steht Text, den man DWM bei seinem Start übergeben kann.

Seit der Version 4.1 kann man die Leiste zur Laufzeit ausblenden und somit den gesammten Bildschirmplatz für die Fenster benutzen.

Beispiel wie man DWM mit der ~/.xinitrc aufrufen kann und ihm die Uhrzeit übergibt:

while true
   do
       echo `date +%H:%M\ %A\ %d.%m.%Y`
       sleep 1
done | /usr/local/bin/dwm

Installation

Infos zur Installation

Debian

Da DWM selbst zu kompilieren ist sind vollgende Pakete von noeten.

apt-get update
apt-get install install x-dev xlibs-static-dev

Im Anschluss laed man sich den DWM Code von deren Homepage runter und bearbeitet die in C geschriebene Konfigurationsdatei config.h entsprechend. Man kann auch die config.default.h als Vorlage verwenden.

Installiert wird am Ende das ganze mit:

make && make install

AFAIK gibt es in Debian DWM auch als fertiges Paket welches mit:

apt-get update
apt-get install dwm

installieren kann, hierbei muss allerdings die bereits vorhandene Konfiguration so wie sie ist weiter verwendet werden.

Konfiguration

DWM wird grundsätzlich nur über eine Headerdatei (config.h) konfiguriert und muss bei jeder Änderung neu kompiliert werden. Der Vorteil liegt darin, dass DWM somit sicherer und schneller ist, da Fehler nur bei der Kompilierung auftreten sollten. Auch wenn man kaum bis gar keine C-Kenntnisse hat kann man DWM trotzdem simpel konfigurieren.

Folgende Dinge können standardmäßig eingestellt werden:

  • Position der Liste
  • Rahmenbreite der Fenster
  • Schriftart und Größe
  • Farben
  • Anzahl und Namen der Tags
  • Regeln, welche Programme immer oder niemals im Tiled-/Floating layout angezeigt werden sollen.
  • Auswahl der Layouts und deren Symbol
  • Standardmäßige Hauptbereichsbreite
  • Standardmäßige Anzahl der Fenster im Hauptbereich
  • Tastenkombination

Patches

Es gibt eine Reihe von Patches, die hauptsächlich andere Layouts beinhalten oder andere kleine Hacks.

Wichtig ist, dass man die meisten Patches mit folgendem Befehl einfach und schnell einfügen kann:

diff -up original-dwm-ordner modifizierter-dwm-ordner > patchname.diff

Da viele Patches nur für bestimmte Versionen geschrieben wurden und in den allgemeinen Quelltext übernommen wurde lohnt es sich nicht näher auf dieses Thema einzugehen, aber als Beispiel soll folgender Patch dienen:

Bottom stack patch

Dieser Patch bietet drei weitere Möglichkeiten für das "Tiled layout", die z.B. für viele Audioprogramme sehr sinnvoll sein können:

  • Hauptbereich auf die linke Seite verschieben
  • Alle Fenster horizontal statt vertikal zu positionieren (bis auf die einzelnen Fenster im Stackbereich)
  • Alle Fenster (auch der Stackbereich) horizontal positionieren. Diesen Modus könnte man auch mit dem normalen "Tiled layout" herstellen, allerdings kann man mit diesem Patch trotzdem noch das Fenster aus dem Hauptbereich vegrößern (Ohne Patch existiert bei diesem Layout kein Stapelbereich).

DMENU

DWM selbst bringt kein Menü mit, allerdings existiert auch ein kleiner Bruder vom WMII-Menü, namens DMENU. Es wurde extra an DWM angepasst und wird genauso wie DWM über den Quellcode angepasst.

Beispiel wie man mit DMENU eine Datei aufrufen kann in der die Programme aufgelistet sind:

  • Inhalt der Menüdatei (~/.dmenu_input):
xterm
firefox
aterm
dillo
  • DWM Konfiguration (config.h) für DMENU:
{ MODKEY,                       XK_p,           spawn,          "exe=`cat ~/.dmenu_input | dmenu` && exec $exe" }, \

Weblinks



zurück zum Windowmanager