Scwm
Encyclopedia
Scwm or Scheme Constraints Window Manager is a window manager
for the X Window System
. Its main features are dynamic configurability and programmability via a language based on GNU Guile
and the embedded arithmetic Cassowary constraint solver
. The primary developers were Greg Badros and Maciej Stachowiak
.
The constraint solver is used to constrain window behavior. For example, one can constrain two windows to have equal height, or to force the distance between two windows to be constant. In real time, the Cassowary constraint solver
re-solves the system of equalities and inequalities and applies the new mathematical solution to the on-screen layout, animating windows to their new positions. Other features include flexible GUI-driven customization and per window decoration settings (per window 'themes').
Scwm, like many window managers, began from Fvwm
, another highly configurable window manager.. Scwm development has been stagnant since 2000 when Badros completed his Ph.D. at the University of Washington
; the last updates to the CVS
repository have focused on maintaining compatibility with Guile 1.8.x.
X window manager
An X window manager is a window manager which runs on top of the X Window System, a windowing system mainly used on Unix-like systems.Unlike the Mac OS and Microsoft Windows platforms which have historically provided a vendor-controlled, fixed set of ways to control how windows and panes display...
for the X Window System
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...
. Its main features are dynamic configurability and programmability via a language based on GNU Guile
GNU Guile
GNU Guile is an interpreter/virtual machine for the Scheme programming language. It was first released in 1993. Guile includes modularized extensions for POSIX system calls, APL array functionality, and others packaged as an object library...
and the embedded arithmetic Cassowary constraint solver
Cassowary constraint solver
Cassowary is an incremental constraint solving toolkit that efficiently solves systems of linear equalities and inequalities. Constraints may be either requirements or preferences...
. The primary developers were Greg Badros and Maciej Stachowiak
Maciej Stachowiak
Maciej Stachowiak is a Polish American software developer currently employed by Apple Inc. where he is a leader of the development team responsible for the Safari web browser and WebKit Framework. A longtime proponent of Open Source, Stachowiak was involved with the SCWM, GNOME and Nautilus...
.
The constraint solver is used to constrain window behavior. For example, one can constrain two windows to have equal height, or to force the distance between two windows to be constant. In real time, the Cassowary constraint solver
Cassowary constraint solver
Cassowary is an incremental constraint solving toolkit that efficiently solves systems of linear equalities and inequalities. Constraints may be either requirements or preferences...
re-solves the system of equalities and inequalities and applies the new mathematical solution to the on-screen layout, animating windows to their new positions. Other features include flexible GUI-driven customization and per window decoration settings (per window 'themes').
Scwm, like many window managers, began from Fvwm
FVWM
The F Virtual Window Manager is a virtual window manager for the X Window System. Originally a twm derivative, FVWM has evolved into a powerful and highly configurable environment for Unix-like systems.- History:...
, another highly configurable window manager.. Scwm development has been stagnant since 2000 when Badros completed his Ph.D. at the University of Washington
University of Washington
University of Washington is a public research university, founded in 1861 in Seattle, Washington, United States. The UW is the largest university in the Northwest and the oldest public university on the West Coast. The university has three campuses, with its largest campus in the University...
; the last updates to the CVS
Concurrent Versions System
The Concurrent Versions System , also known as the Concurrent Versioning System, is a client-server free software revision control system in the field of software development. Version control system software keeps track of all work and all changes in a set of files, and allows several developers ...
repository have focused on maintaining compatibility with Guile 1.8.x.