/xwm

A tiny XCB floating window manager.

Primary LanguageCMIT LicenseMIT

xwm - a tiny XCB floating window manager
========================================

A minimal viable solution that was developed with single-monitor
workflows in mind. Despite the small footprint, xwm maintains
extensibility and can be customized to enhance the user experience.

REQUIREMENTS
------------

xcb-util-keysyms, along with any default or user defined utilities:
    application launcher   https://git.suckless.org/dmenu
    terminal emulator      https://git.suckless.org/st
    internet browser       https://git.suckless.org/surf

COMMANDS
--------

Default keys and behavior can be customized via the config.h file:
    Win+Button1            raise focused window to top of stack
    Win+Button3            raise focused window to top of stack
    Win+Button1+[drag]     interactive window move
    Win+Button3+[drag]     interactive window resize
    Win+Space              run launcher menu (default: dmenu_run)
    Win+Enter              create new terminal window (default: st)
    Win+b                  create new browser window (default: surf)
    Win+q                  kill focused window
    Win+f                  full-screen focused window
    Win+Shift+q            quit window manager

INSTALL
-------

Building and installing from source:
    $ git clone https://github.com/mcpcpc/xwm
    $ cd xwm
    $ make
    $ sudo make install

EXAMPLES
--------

Checking the installed version of xwm:
    $ xwm -v

Using startx to run xwm:
    $ echo "exec xwm" > ~/.xinitrc
    $ startx

Using imagemagick to set a wallpaper:
    $ display -window root background.png

Patching xwm:
    $ patch -p0 < mypatch.patch

DISCLAIMER
----------

xwm ("XCB Window Manager") is an homage to the original and 
now-defunct "X Window Manager". Both projects are unaffiliated 
and do not share any common source code.

CONTACT
-------

For questions or issues, please contact michaelczigler[at]mcpcpc[dot]com.