Zum Inhalt springen

xmonad

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 17. April 2026 um 15:35 Uhr durch imported>TaxonBot (Bot: Auflösung doppelter toter Links nach https://de.wikipedia.org/w/index.php?title=Wikipedia:Bots/Anfragen&oldid=266185123#Aufl%C3%B6sung_der_doppelten_Toten_Links).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
xmonad

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | Datei:Xmonad-2022-new-logo.svg
Datei:Xmonad-tall-status-dons.png
xmonad im Tiling-Modus
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Entwickler Spencer Janssen, Don Stewart, Jason Creighton
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem alle POSIX-kompatiblen, benötigt X Window und GHC
Programmier­sprache Haskell
Kategorie Fenstermanager
Lizenz BSD
http://www.xmonad.org/

xmonad ist ein Fenstermanager für das X Window System. Er ist in der funktionalen Programmiersprache Haskell geschrieben.

Im März 2007 wurde xmonad als Tiling-basierter Fenstermanager vorgestellt. Er organisiert daher die dargestellten Fenster kachelartig, so dass sie sich nicht überlappen. Außerdem bemühten sich die Entwickler, eine grafische Oberfläche zu schaffen, in der Benutzer ein produktives Arbeiten mit den Fenstern ohne Benutzung der Maus ermöglicht wird. Viele Linux-Distributionen liefern xmonad direkt über ihre Paketverwaltungssysteme aus und auch für FreeBSD, NetBSD, OpenBSD, und macOS ist es verfügbar.

Eigenschaften

Ursprünglich orientierte sich xmonad in Sachen Funktionalität und Bedienung an dwm, etwa bei der voreingestellten Tastenbelegung. Es enthält mittlerweile jedoch Funktionalitäten, die für dwm-Benutzer nicht verfügbar sind. Dies sind zum Beispiel ein für jede Desktop-Umgebung konfigurierbares Layout, Kachelreflexion, Speicherung des Zustands, Spiegeln des Layouts und Gnome-Unterstützung und Statusleisten für jeden Screen (X-Abstraktion).<ref>Keyboard-Driven Environments Open a New Window. OSnews, 31. Mai 2007, abgerufen am 31. Mai 2007.</ref><ref>xmonad 0.4 Released. OSnews, 19. Oktober 2007, abgerufen am 23. Dezember 2007.</ref> Es kann durch die Bearbeitung einer externen Konfigurationsdatei angepasst werden, die während des Betriebs neu geladen werden kann.<ref>Durch eine Kombination schnellen Neu-Kompilierens und anschließenden Ausführens der neuen xmonad-Binärdatei durch exec; siehe Haskell Weekly News: April 27, 2007. Haskell Weekly News, 27. April 2007, archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am 29. Mai 2007; abgerufen am 23. Mai 2007.</ref>

Datei:Xmonad-screen-triplehead-dons.png
Die xinerama-Unterstützung von xmonad: Tiling auf drei Monitoren gleichzeitig (mit Kinesis-Tastatur)

Erweiterungen für das Kernsystem, wie die Emulation anderer Fenstermanager und unübliche Layout-Algorithmen wie Fensterteilung basierend auf der Fibonacci-Spirale, wurden von der Community implementiert und sind als Bibliothek verfügbar.<ref>Xmonad-Benutzer verursachen signifikanten Traffic im IRC-Channel <templatestyles src="Webarchiv/styles.css" />#xmonad (Memento vom 29. Dezember 2007 im Internet Archive) und auf der xmonad Mailing-Liste; Außerdem gibt es eine signifikante Zahl von Commits zur Erweiterungsbibliothek aus nicht-Kern-devs (siehe <templatestyles src="Webarchiv/styles.css" />Statistik-Seite (Memento des Vorlage:IconExternal vom 23. Dezember 2007 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/xmonad.org von xmonad)</ref><ref>xmonad: Contributed code. xmonad.org, 22. Mai 2007, archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am 26. Dezember 2012; abgerufen am 23. Mai 2007.  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/xmonad.org</ref>

Neben dem Fokus auf den Verzicht der Maus, verwenden die xmonad-Entwickler häufig semi-formale Methoden und Programmableitung, um die Zuverlässigkeit zu erhöhen und die Zahl der Quellcodezeilen zu verringern. Mit Version 0.7 wurde diese auf unter 1200 reduziert und Fenstermanager-Einstellungen wie das Verhalten des Fokus werden nun durch die Haskell-Bibliothek QuickCheck kontrolliert. Dieser Schwerpunkt macht xmonad in verschiedener Hinsicht unüblich. Es ist außerdem der erste Fenstermanager, der die Zipper-Datenstruktur<ref>haskell.org</ref> zum automatischen Organisieren des Fokus nutzt.

xmonad macht Gebrauch von Haskell-Eigenschaften und Werkzeugen wie QuickCheck, GHC-Erweiterungen wie pattern guards, Monaden, monad transformers, zippers, und des Cabal-Paketsystems, sowie Haskell-Bindungen zu Xlib und xft-Schriftarten. Es ist geplant, wieder an XCB zu binden, wenn die Haskell-Bindings freigegeben werden. Sein Kern wurde auf Sicherheit in Bezug auf Pattern Matching geprüft, was weiter zur Zuverlässigkeit beiträgt.<ref>„Does xmonad crash? On proving pattern coverage in xmonad with Catch“; „Preconditions on XMonad“; siehe auch @1@2Vorlage:Toter Link/www-users.cs.york.ac.uk„Detecting pattern-match failures in Haskell“ (Seite nicht mehr abrufbar, festgestellt im Februar 2023. Suche im Internet Archive )Vorlage:Toter Link/archivebot (PDF; 160 kB)</ref>

Einfluss

Die Innovationen von xmonad haben auch Einfluss auf andere Tiling-basierte Fenstermanager genommen. So übernahm dwm „urgency hooks“ von xmonad<ref>Siehe die Diskussion der Entwickler auf der dwm-Mailingliste</ref> und unterstützt Xinerama (für Multi-Head-Systeme) seit dem Release 4.8. Außerdem existiert ein durch xmonad inspirierter Patch, der dwm um zwei Layouts ergänzt, die Fenster entsprechend der Fibonacci-Folge anordnen.<ref>Suckless.org: Fibonacci layouts patch to dwm</ref>

Einzelnachweise

<references />

Literatur

Weblinks

Commons: Xmonad – Sammlung von Bildern, Videos und Audiodateien