You are not logged in.
Pages: 1
This is my own WM that I wrote a few months back.
It started out as a test project (I was starting to learn Xlib fiddling with TinyWM) but it turned out into an usable application.
It does not follow standars and it's in no way a WM I would encourage anyone to use for more than 1 hour but it does work so I thought I'd share it.
Plans are for me to rewrite it but not that much free time at the moment.
I was also going to implement a configuration file but I shelved the project so for now you just need to edit the source to change settings(at the end of the
source).
Features:
1. No window decoration apart from a border (yes..for me that's a feature ). Border size can be modified in the config
2. 9 Virtual workspaces (names can be set in the source)
3. GhoulBAR (displays workspaces, list of window class names and a status wich can be piped from a shell script (see at the bottom of the post)
4. Screen padding (you can set how many pixels should the wm ignore on each of the four screen sides)
5. Floating rules (set what applications to NOT start fullscreen wich is the default behaviour)
6. Internal messaging system (displays workspace names and a startup message for now)
Take notice that it has lots of bugs especially when dealing with GTK applications. Also the screenshot is a bit older. A few modifications were made since then (replaced window titles with class names etc)
Keybindings
Mod4 + click/hold/drag : Move window
Mod4 + rightclick/hold/drag : Scale window
Mod4 + t : Spawn terminal
Mod4 + m : Maximize window
Mod4 + c : Kill selected window
Mod4 + p : Spawn menu application (set to use dmenu)
Mod4 + TAB : Cycle windows
Mod4 + 1..9 : Switch to coresponding workspace
Configurables
GhoulCONFIG.TERMINAL Terminal to start (Mod4 + t)
GhoulCONFIG.FONT The font Gh0ulWM uses to display everything
GhoulCONFIG.FGCOLOR Default foreground color
GhoulCONFIG.BGCOLOR Default background color
GhoulCONFIG.SELCOLOR Selected window border color
GhoulCONFIG.USELCOLOR Unselected window border color
GhoulCONFIG.SELWSCOLOR Selected workspace color
GhoulCONFIG.USELWSCOLOR Unselected workspace color
GhoulCONFIG.SELWINCOLOR Selected window color (in the window list)
GhoulCONFIG.USELWINCOLOR Unselected window color
GhoulCONFIG.BORDER Border size
GhoulCONFIG.MENU Menu GhoulWM should spawn on Mod4 + p
Spaces to ignore
GhoulCONFIG.PADDING.n Top
GhoulCONFIG.PADDING.w Left
GhoulCONFIG.PADDING.s Bottom
GhoulCONFIG.PADDING.e Right
GhoulCONFIG.BARSIZE Size (height) of Gh0ulBAR
GhoulCONFIG.MSGWAIT How many seconds should messages stay on screen
GhoulCONFIG.WELCOME Show welcome message ?
INSTALL:
"make && sudo make install" to install it
To be able to get status displayed don't run ghoulwm..use this script (save it as ~/.ghoulwmrc or something and make .xinitrc run that)
#!/bin/bash
exec xsetroot -solid black -cursor_name left_ptr &
while true; do
DATESTATUS=$(echo "`date +%d-%B-%y` `date +%r`")
echo "$DATESTATUS"
sleep 1
done | ghoulwm
So have fun with this..feel free to do anythign you want with it...it was just a project of mine and it should atleast give you a rough idea of how a window
manager works (every other window manager is WAY better coded than mine lol!)
EDIT: Ooops..forgot the source: http://www.quickfilepost.com/download.d … 395789c9cd
Last edited by ArchGh0ul (2008-11-06 11:55:51)
Offline
Pages: 1