Skip to content

moetunes/Nextwm

Repository files navigation

##snapwm

it's minimal and dynamic

I started this from catwm 31/12/10 ( https://bbs.archlinux.org/viewtopic.php?id=100215&p=1 ) See snapwm.c for thanks and licensing. Screenshots and ramblings/updates at https://bbs.archlinux.org/viewtopic.php?id=126463

###Summary

snapwm is a xinerama aware, very minimal and lightweight dynamic tiling window manager.

All configuration is read from three files in ~/.config/snapwm/ .

rc.conf has colours and window manager configurations.

key.conf is mandatory for shortcuts and commands to run.

apps.conf is optional and where apps settings are read from.

###Modes

It allows the "normal" method of tiling window managers(with the new window as the master) and with the new window opened at the bottom of the stack(like dwm's attach_aside)

There's vertical tiling mode:

--------------
|        | W |
|        |___|
| Master |   |
|        |___|
|        |   |
--------------

Horizontal tiling mode:

-------------
|           |
|  Master   |
|-----------|
| W |   |   |
-------------

Grid tiling mode:

-------------
|      | W  |
|Master|    |
|------|----|
|      |    |
-------------

Stacking mode:

-------------
|   _______  |
|  |  ___  | |
|  | |___| | |
|  |_______| |
-------------

Fullscreen mode(which you'll know when you see it)

All accessible with keyboard shortcuts defined in key.conf file.

  • The window W at the top of the stack can be resized on a per desktop basis.
  • Changing a tiling mode or window size on one desktop doesn't affect the other desktops.
  • Windows can be added/removed to/from the master area with keyboard shortcuts
  • There is a bar with a desktop switcher, space to show the focused window's name and space to show external text.
  • The rc file is reloadable 'on the run'.

###Recent Changes

10/10/12

  • Added multi monitor support

###Status

  • Added bar with desktop switcher and statusbar to dminiwm.
  • Colours and font are read from an rc file and can be updated with a keyboard shortcut.
  • Text (e.g. conky) can be piped into the status bar from .xinitrc.
  • Unfocused windows have an alpha value so can be transparent if e.g. cairo-compmgr is used
  • Lots of things can be changed in the running wm from the rc file.
    • e.g. Whether the bar is at the top or bottom
    • font, colours, border width, default mode etc (see the sample rc file).
  • In the rc file, lines starting with a hash are ignored.
  • Desktop switcher can show number of open windows on unfocused desktops and in fullscreen mode
  • Option to show number of windows open in the desktop switcher in the config and rc file
  • Clicking on the current desktop in the switcher will focus the next window
  • Added option in the config and rc files for opening new window at the top or bottom of the stack when using attach aside
  • Added a stacking window mode
  • Seperated the window and bar colours in the config.h and rc files
  • Added support for multibyte fonts
  • Added 'double buffer' for text in the bar
  • Changed grid mode: First column and second window can be resized
  • Moved the RC FILE to $HOME/.config/snapwm/rc.conf
  • Windows can be added/removed to/from the master area with keyboard shortcuts
  • Keyboard shortcuts and apps settings moved to files in ~/.config/snapwm/
  • rc.conf changed to semi-colon seperated
  • Number of desktops now read from rc.conf
  • Whether to left align the current windows' name in the bar moved to rc.conf
  • No need to rebuild the wm to change a setting
  • Colours changed in rc.conf
  • Background colour can be changed

###Installation

Need Xlib, then:

Copy the sample.rc.conf file to $HOME/.config/snapwm/rc.conf and edit it to suit.

Copy the sample.apps.conf file to $HOME/.config/snapwm/apps.conf and edit it to suit.

Copy the sample.key.conf file to $HOME/.config/snapwm/key.conf and edit it to suit.

$ make
# make install
$ make clean

###Bugs

[ * No bugs for the moment ;) (I mean, no importants bugs ;)]

###Todo

  • Maybe xft fonts

About

snapwm is an easy to configure, dynamic, tiling window manager. Built on dminiwm with a desktop switcher, info bar and reloadable rc file.

Resources

Stars

Watchers

Forks

Packages

No packages published