
StumpWM 1.0 Released - ghostDancer
https://stumpwm.github.io/
======
ne01
StumpWM is so awesome! And I'm really happy to see this release!!!

I love StumpWM because it does not force a workflow on me! I have configured
it to work the way I want it to! And as far as I know I cannot have this
workflow in any other tiling window manager!

If I want to open firefox I press `F9` and then `f`.

Let's start a terminal window... `F9` `t`

Let's open emacs... `F9` `e`

Now I want to go back to firefox... `F9` `f`

Press `F8` if you want to switch between last 2 windows (emacs & firefox)...

F8 ... and I'm back at my emacs window...

Neat ha?

Oh, and I forgot to mention that everything is in full screen! 29" of real
estate for every app! No tiling or stacking windows.

There are no numbers, tags or anything to remember. Too bad this will never
work on a mac... everything starts with an i... just kidding! :)

If you are interested in my stumpwmrc file:

[https://github.com/seyedip/my-stumpwmrc](https://github.com/seyedip/my-
stumpwmrc)

~~~
FrancoDiaz
I wonder if you could configure StumpWM to use vim-like leaders?
[http://stackoverflow.com/questions/1764263/what-is-the-
leade...](http://stackoverflow.com/questions/1764263/what-is-the-leader-in-a-
vimrc-file)

I'd love to be able to "right-windows o f" right windows is the leader key, o
would be open, and f is for firefox. "right-windows o c" to open chrome

~~~
lokedhs
Yes, you can. StumpWM uses a keybinding system that is very much inspired by
Emacs. You can bind any keypress to any action, or even another keymap in
order to create multi-key commands.

You can easily define new commands by using the "defcommand" macro. Here's an
example from my config file that creates a floating group (untiled windows)
and starts Android Studio in it (or switches to it if it isn't already
running):

    
    
        (defcommand android-studio () ()
          "Start Android Studio in its own group"
          (select-group-or-create ("Android Studio" :float t)
            (run-shell-command "~/src/android-studio/bin/studio.sh" nil)))
    

StumpWM isn't just about being a great tiling window manager. It's all about
the configurability. Just like Emacs without any configuration is a decent
editor, but can easily be challenged by other editors, it's the ability to
make it behave just the way you want to that really makes it shine.

As an example, I have built a Dbus integration module for StumpWM. It's a work
in progress, but useful for daily work. It's nice to be able to exactly
control which notifications are displayed and how long they stay on the screen
(I'm looking at you, IDEA compilation notifications).

It runs inside of StumpWM and implements a Dbus notifications provider:
[https://github.com/lokedhs/dbus-test](https://github.com/lokedhs/dbus-test)

The kind of flexibility offered by StumpWM is hard to beat, and combined with
the ability to connect SLIME to it in order to have a REPL running in Emacs
directly working with the running window manager makes it, in my opinion,
better than any alternative.

------
josteink
> StumpWM is a tiling, keyboard driven X11 Window Manager written entirely in
> Common Lisp.

Just in time for Fedora making Wayland the new default :)

Seriously though. Someone please make a good, working Wayland tiling WM.

Wayland is just super nice compared to X11 for enough tasks to justify using
it.

~~~
stutonk
You should have a look at Sway. It's a Wayland i3-alike with a few extra
features. It even plays nicely with X11 only applications via X-Wayland.

[http://swaywm.org/](http://swaywm.org/)

~~~
josteink
Last time I tried it, I found it somewhat lacking in the copy/paste
department.

Iirc copying between Wayland and X11/xwayland apps didn't work. Any news on
improvements in that area?

~~~
Sir_Cmpwn
There's a bounty for that feature:
[https://github.com/SirCmpwn/sway/issues/986](https://github.com/SirCmpwn/sway/issues/986)

Why don't you work on it?

~~~
hashkb
Is that a real suggestion or meant to be ironic?

~~~
Sir_Cmpwn
A real suggestion. Why would it be ironic? It's open source and easy to
contribute to.

~~~
josteink
With all due respect: I don't have time. I just asked because this was an
issue last time I tried sway, and I was curious about improvements since then.
It was not meant to razz on your wm :)

As a maintainer and contributor to several projects I already use (and thus
see the return on) I already see myself too short on resources to follow up
everything I'd like to.

Trying to fix shortcomings in projects which (for me) are not yet production
ready just doesn't make it onto my TODO list. I hope someone does help you fix
this though.

Really. No harm meant. Hope it didn't come off that way.

~~~
Sir_Cmpwn
I didn't take any offense. I'm just suggesting you try implementing the
feature. It isn't going to be done on your schedule unless you do it.

~~~
hackmiester
I like the feeling behind this sentiment, but I figure that poster just wants
a computer where they can copy and paste.

So: if there isn't a WM for Wayland that allows their workflow, then they will
stick with X.

~~~
Sir_Cmpwn
That's fine, sticking with X is a totally acceptable option. If they _want_ to
move to Wayland, though, and it's missing something they need, then of course
they should help work on that thing.

~~~
josteink
Honest (naive?) question:

Given that these issues has persisted for so long and that they seem solved in
Gnome and KDE...

Not accusing you of full NIH, but are there any technical reasons for not just
reusing/leveraging kwin or whatever Gnome uses, instead of creating your own
compositor library where all these issues has to be solved, yet again?

~~~
Sir_Cmpwn
kwin and Gnome's solutions aren't reusable on other compositors. Gnome is
awful at making their stuff reusable. KDE is much better, but their clipboard
stuff isn't reusable, and Sway's likely won't be either due to the nature of
the problem. There are plans to collaborate more with KDE on reusing KDE
components in Sway and other compositors, which both parties are excited
about.

------
cygned
It's actually nice to open a repository of an application with a complexity
like that one and just see a few files, no crazy folder structures, no insane
build scripts or similar.

~~~
yellowapple
I've found that to be true in general for Common Lisp projects.

With StumpWM, it's nice in terms of finding where certain functionality is
implemented so I can rework it in my ~/.stumpwmrc. Having easily-accessible
source code was invaluable for me adding gaps between tiled windows (and has
helped me get 90% of the way done with adding a second modeline to hold
WindowMaker-style dockapps).

------
znpy
I've been using stumpwm for quite a while, and in my opinion, the best
possible setup is stumpwm as a repalcement for the xfce4 window manager
(xfwm4).

This way you get a nice winwdowing environment but still have tiling wm.

------
driusan
This looks incredibly similar to a WM I'm writing.. except mine is written in
Go using literate programming, as an excuse to try to do something substantial
with LP.

In the last screenshot, what's the header at the top of the screen? Is that
from the WM or the program running inside of it just drawing at the top of the
screen? (It's too low resolution to tell..)

And is stumpwm autotiled or manually tiled?

~~~
Avshalom
that's probably [https://stumpwm.github.io/git/stumpwm-
git_7.html#Mode_002dli...](https://stumpwm.github.io/git/stumpwm-
git_7.html#Mode_002dline)

~~~
driusan
Thanks! I wasn't sure since it says that there's no window decorations.

------
girzel
I used this for a few years, and loved it -- it's my favorite of all the
tiling window managers I've tried, for conceptual simplicity, extensibility,
and ease of use. It was dog-slow, though, and often couldn't keep up with my
commands. I switched to i3 (and sway when I'm feeling adventurous) and have
enjoyed that. Making window splits still isn't as brain-dead simple as it was
in StumpWM, though. Maybe I'll try the new release and see if it goes any
faster.

~~~
yellowapple
One consideration might be which Lisp you're using. SBCL is known for its
speed compared to other CL implementations, for example, so using it
(especially now that it's the one recommended Lisp to use with StumpWM) might
help considerably.

I personally don't notice any significant performance issues, even on old
single-core 32-bit hardware.

~~~
girzel
I was using SBCL! Here's an old mailing list thread about it. It often took
StumpWM a second or two to notice that I'd typed the prefix key.

[https://lists.nongnu.org/archive/html/stumpwm-
devel/2014-03/...](https://lists.nongnu.org/archive/html/stumpwm-
devel/2014-03/msg00043.html)

~~~
yellowapple
Come to think of it, I recall some performance issues that supposedly existed
if SBCL was compiled with threading support. It's since been resolved, though,
as far as I can tell.

~~~
girzel
I went far enough down the rabbit hole to conclude that the source of the
trouble was threading. If that's been fixed, then I'm going to give stump
another shot right now.

~~~
girzel
I did, and it's lickety-split. I'm home!

------
k__
n00b question, what are the benefits of tiling window managers?

I never used them and always have my windows maximized when working.

~~~
brudgers
If you're using Linux, it's worth just trying one. On OSX, it usually means
running X11 instead of the Mac display manager which is usually not really a
great thing. If you're using Windows, the options are worse.

For me, the advantages of a tiling window manager [xmonad] are:

1\. Keyboard control of app switching that is easy to setup in a 'habitual'
configuration yet flexible enough to change on the fly.

2\. The ability to quickly switch via keystroke to and from full screen views
of an application. And when I switch via keystroke from the full screen view
to a view of multiple applications the multiple application view is presented
in a sane and consistent way _right away_.

3\. The ability to switch via keystroke immediately to a view of two or more
applications side by side or one above the other.

There is a learning curve and as with all things that occur up until the year
of the linux desktop, there is a configuration curve. But basically, a tiling
window manager lets me make my windows dance to whatever tune I choose.

~~~
e12e
> If you're using Linux, it's worth just trying one. On OSX, it usually means
> running X11 instead of the Mac display manager which is usually not really a
> great thing. _If you 're using Windows, the options are worse._

Yes and no. Windows 10 has some tiling wm features, try win-leftarrow, win-
rightarrow, win-uparrow and win-downarrow.

Ed: and mouse-drag to resize the split(s).

Ed2: Also try with more than one screen. I actually think ms have struck a
tremendous balance between tiling power-user, and basic computer literacy
users. _I_ still prefer a pure/proper tiling wm.

It's not xmonad, but it is an improvement.

~~~
brudgers
But for Vista, I've had a daily driver with every version of Windows since
3.1. Windows 10 is a big step forward with multiple desktops. It's not
comparable to Xmonad in my use case because of:

1\. Xmonad's predictability.

2\. Xmonad's ability to keyboard shortcut between window configurations.

3\. Xmonad utilizing home position keys rather than the arrows for primary
manipulation.

Anyway, the alternatives I see mentioned for Windows are based around
AutoHotKey.

------
lokedhs
Previously posted:
[https://news.ycombinator.com/item?id=13385264](https://news.ycombinator.com/item?id=13385264)

