[xmonad] Project to make tiling window managers more accessible to newcomers

Ismael Carnales icarnales at gmail.com
Wed Apr 8 14:04:31 EDT 2009

Lol, is this thread a joke! if now i'm willing to put all can I do to help
you in your projects, I was trying to go in the same direction but for
XMonad being more "open" to newcomers, nothing more.


On Wed, Apr 8, 2009 at 2:43 PM, Gwern Branwen <gwern0 at gmail.com> wrote:

> On Wed, Apr 8, 2009 at 12:23 PM, Jan Vornberger <
> Jan.Vornberger at informatik.uni-oldenburg.de> wrote:
>> Hello,
>> my name is Jan Vornberger and I'm a student at the University of
>> Oldenburg (Germany). I would like to introduce myself and the project
>> that I will be working on for the next semester.
>> As part of my studies I have to work on a semester-long project. I
>> decided to work on the question, how tiling window managers can be made
>> more 'beginner-friendly' and how the barrier to entry can be lowered.
>> I have decided to use XMonad as a basis for implementing my ideas.
>> Therefore I wanted to introduce myself, as I will probably be asking a
>> question here and there in the future. :-)
>> For those who are interested, here is a rough sketch on what I have in
>> mind for my project: My goal is to create a modern tiling window manager
>> that can be productively used with virtually no training, meaning most
>> core functionality needs to be accessible in an intuitive way or drawing
>> from well-known conventions in more conventional window managers.
>> My target user is someone who wants to give tiling window managers a
>> try, but doesn't want to learn keyboard commands (at least not in the
>> beginning), read a detailed manual or write any sort of configuration
>> file.
>> I'm planning to decide on a somewhat fixed configuration of XMonad,
>> probably in combination with Gnome as a DE, and then trying to make this
>> functionality available via mouse commands that - hopefully - will be
>> easy to pick up.
>> I also want to completely rework the whole floating layer thing, as it
>> seems to me to be a fairly foreing concept for a newcomer and it's
>> awkward to use. My current idea is to instead use a floating layout
>> algorithm, that could work similiar to a conventional window manager. It
>> could even be set as the default layout algorithm. That way, the WM
>> could almost be a 'drop-in' replacement for - let's say Metacity -
>> greeting the user with the familiar concept of manipulating windows and
>> then leading him to the tiling paradigm once he switches the layout.
>> I do believe that eventually the keyboard is a more effective way to
>> control the WM, so I will also investigate the possibility of some kind
>> of help system, that can point out how - for example - the last action,
>> the user did, can be done with keyboard commands instead. Alternatively
>> tooltips could also be used to display key bindings.
> ...
>> That's it, the project in a nutshell. Any thoughts, pointers, related
>> ideas, doubts or comments are most welcome. :-)
>> Cheers!
>> Jan
> One idea I've always wondered about is a menubar based tiling WM. The user,
> say, middle-clicks (hardly anyone uses middle-click), and then a geometrical
> menu pops up along the lines of XMonad.Actions.GridSelect. In it are all the
> default operations - 'kill', 'refresh',  'sendMessage NextLayout', etc. The
> user left-clicks on one and voila.
> Further refinements: the menu could be shaped like some of the funky HCI
> designs (such as the pie ones, or using hyperbolic shrinking); could be
> sorted by frequency of use; each item could have in very small text the
> keybound equivalent ('M-Space') - kind of like how Emacs will echo the
> keybinding of a menu-item if you select it the hard way.
> And of course this would be a focus-follows-mouse setup. The nice thing
> about this is that I think it's doable by one person in a semester (really,
> the hardest part is stealing the GUI code from GridSelect and making it
> mouse-enabled*), and should be dead simple for people new to the tiling
> paradigm to learn. Just middle-click and pick what sounds right. The menubar
> makes 'visible' the 'invisible'.
> * In theory if you wanted to make a menubar that worked with arbitrary
> keymaps, you'd need some sort of Show equivalent for functions, since you
> need to be able to have a textual equivalent to whatever crazy things people
> may do - how could you really foresee my binding of 'runOrRaise "amarok"
> (className =? "amarokapp")'? - which gets you into complex territory fast.
> But if you're serious about the default config, you could just write up a
> static [String]. Which would also let you use more newbie-friendly names:
> instead of 'spawn "exe=`dmenu_path | dmenu` && eval \"exec $exe\""' you
> could just have 'run Dmenu'.
> --
> gwern
> _______________________________________________
> xmonad mailing list
> xmonad at haskell.org
> http://www.haskell.org/mailman/listinfo/xmonad
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/xmonad/attachments/20090408/c9d00fd0/attachment.htm

More information about the xmonad mailing list