KDE: A Nice Tiling Environment and a Surprisingly Awesome DE
changelog.complete.org
changelog.complete.org
For example, there are some terminal windows or similar with running logs (or chats) at some of the edges, partially obscured by other windows who make better use of the space they cover. But those partially covered windows are still showing me what's currently going on at all times (i.e. the last few lines), and I can get their full content at a mouse click/keyboard shortcut press.
Then there are partially obscured browser windows. Again the most relevant part of their content remains visible (e.g. for blogs that's usually roughly their "left half", for documentation with a content bar on the left their "right half"), and scrolling them does not require giving them focus.
Then there are tiny windows like minimized views of media players that usually neatly fit into some of the open space resulting from my arrangement. And series of windows all similar to each other that are carefully arranged such that a single click reveals any of them, nearly obscuring the rest of the same series, but never hiding any of them completely.
It may look "unkempt" at a first glance, but is actually very deliberate. I feel like a tiling environment with its constantly changing layout would be actual chaos... and somehow generally a step backwards. There are some dedicated situations where I tile two windows next to each other, but that's just that: A dedicated situation, often happening on another space/desktop.
Tiling WM are largely about just not thinking that much about windows at all. They're visible or they're not, they occupy precise areas on your screen, and moving them around is easy and simple and they don't scatter to the 4 winds when you plug your laptop into an external monitor and then unplug it again.
Every time I have to go use a computer with overlapping windows I suddenly find myself thinking about where things are about 10 times as much and it's frustrating and tiring.
You’ll often find that some who work in organised chaos still know exactly where everything is.
Is their organisation worse than those who keep things tidy? From an outsiders perspective it might seem that way. But if they’re the only ones using that workspace then it doesn’t really matter.
For some people, remembering where stuff is creates no extra cognitive overhead. For others, it’s like trying to access their computer while it’s covered in bubble wrap.
I don't know where things "go", but I know where I last put them!
> if they’re the only ones using that workspace then it doesn’t really matter
Yup, both methods have the exact same weakness - someone else moving something I need.
Of course, as you imply, everything should have it's place in a shared workspace.
I've pretty much always relied on full searches of my entire surroundings, or very long term plans with labels and everything, since remembering a new location takes active effort or weeks of time, I don't just see things and passively remember where they were.
The desktop completely rearranging itself randomly doesn't even bother me, as long as I can quickly scan the task bar, since I basically never use Windows any way other than maximized.
It's just windows. You put roughly where you want them when you need them to have what you want visible. They stack. If one is out of your sight and you need it, you use the list or expose to find it and move it where it will be useful. It's like manipulating documents in the physical world except it's always easy to find a window in your stack of windows. It's a very natural flow.
Tiling is the solution imposing an unnatural cognitive burden on the user. With tiling you need to constantly think about exactly what you want to see, where you want your windows and you constantly need to fiddle with the arrangements and spend time preemptively positioning your windows. It gets very annoying to me as soon as I want more than one full screen window.
I found myself constantly planning layouts and positioning things. Nothing ever ended up feeling right, and it was exhausting.
“I’ll have my browser window take the full height and half the width over here. Then I’ll put my code editor over on the right, half high, then my Terminal below it.
No wait, that’s not enough height for the code editor, so let’s shrink the Terminal down… except now the terminal’s uncomfortably short.
Well, maybe the browser can be split with the Terminal and the code editor can be full height.
Except now the code editor feels too narrow and I don’t really need it this tall, it would be really nice if I could have the browser window full height instead.”
And then I’m back where I started.
And if I finally get used to a layout and whatever shortcut keys I have for jumping around, then !!! A wild Slack message appears!
Now I need to open a PDF viewer along with Slack along with my code editor but don’t need my browser but maybe need my Terminal, and I’m back to the layout drawing board for the next task.
With overlapping windows, every window can be the exact size and shape it needs to be.
I’m open to the likelihood that I’m just doing it wrong. I would also bet this is less of an issue if I were using multiple large, unscaled 4K monitors.
So I’ll try it again someday with a different setup, but for now I’m mostly happy with my 1440p monitor(s), and overlapping windows.
The most useful arrangement for windows to be tiled into is 1-2 windows on a horizontal monitor with more windows accommodated by adding more monitors to your workspace instead of splitting a window 7 ways.
Workspace 1-4 Primary monitor (center, ultrawide, landscape)
Workspace 5-7 Second Monitor (left, portrait)
Workspace 8-10 Third Monitor (right, landscape)
1. Browser and terminals/vim for current project (ultrawide monitor = 4:3ish split)
2. As above if I need to switch to another project
3. As above if I need to switch to another project
4. Spare/"Personal" slacking off things like HN
5. Comms Slack/IRC etc...
6. Spare/Displaying things that work will in portrait like reading PDFs
7. Spare/Monitoring specific things to do with what I'm working on
8. Spare/Background noise videos
9. Music player
10. Email/Calendar
For me I usually sit with 5, 1, 10 visible across the 3 monitors 95% of the time which means I can see everything I immediately need. However if on a single monitor device the workspaces have the same use (mostly, 1 might get split into 1 = Terminals, 2 = Browser because it's a bit cramped on 16:9).
This means If I need my emails I hit Mod+0 which then focusses my email/calendar whether it's visible on my 3rd monitor or hidden on a single monitor setup. Or Mod+5 and I get Slack.
Once it's in your muscle memory you don't even think about it. The way I see it is it's like vim, once you have the shortcuts in your muscle memory you don't even think about where things are, they just appear when you need them.
How did you manage that? Or don't you use KDE but something like i3? (Especially because you call them workspaces).
I think you may have misunderstood how one works with a tiling wm rather than fiddling with the arrangement constantly one hardly does at all. Certain applications can be automatically routed to certain monitors and in certain arrangements. 99% of the time the primary window management operation one does is simply to switch what a given monitor is displaying or change focus between applications with none of the sizing arranging exposing or alt tabbing through lists of windows. The most useful arrangement of windows on a per monitor workspace is either a single large window or 2-3 aligned horizontally or vertically based on the orientation of the monitor and the creation of the arrangement is by no other means than simply opening an application and having it pop into the arrangement.
This is increasingly evident and useful with multiple monitors and increasing number of windows. There is probably no meaningful difference in utility between any window management method that can be discerned with 3 windows on a single monitor but at some point between 3 windows and say 15 one really needs at least virtual desktops to break up the windows and switching windows is a 2-3 level operation switching virtual desktop then focusing the correct monitor and then expose.
Much worse if it it would useful at the moment to have an application from Desktop 2 Monitor 2 on Desktop 1 Monitor 1 and then back again in its original location. Especially if you need it to share space with an existing window because now one most resize both windows in addition to rearranging.
The cognitive overhead is in remembering which desktop one has which window however this is trivially mitigated by always using the same desktop for the same task. This ultimately microscopic amount of overhead is paid for by not constantly paying for windows arrangement amnesia by using overview and expose to find the window you were using 30 seconds ago.
Well, I guess it’s another thing I will never understand with people having trouble managing their hundreds of open tabs. It’s fascinating to me how people actually have very different way to use their tools and how it much shape the feelings they have towards them.
So then overlapping windows serves the requirements of:
- constant visual reminder of which secondary windows you have
- but occupying minimal window space so as to be effectively ignorable if you're concentrating on your primary windows
- that might be able to show some visual indication in the corner of your eye when focus is required
- that can be easily switched to be the primary window when such indication happens, and then back again to the secondary state
If you want to fast organization, showing all windows and desktop is also achievable. Open the view, drag and drop windows or desktops.
For me, both views have their active corners and keyboard shortcuts. People give me sideways looks when I use both of them.
macOS used to have the grid view (with virtual desktops in a grid), along with Expose, basically like KDE has it now. But at some point (a long time ago) they decided I shouldn't want a grid view anymore, reduced virtual desktops to a horizontal line only and combined it with Expose, and called the whole thing "mission control". Since then my use of it reduced dramatically because it didn't fit my workflow anymore.
It was one of the many things they broke over time which built up and eventually caused me to leave macOS. KDE still gives you choices. Apple will just take away what you've been using and often gives something worse back in return.
For one, the grid view is really great if you're monitoring multiple things. I have 9 virtual desktops and I often use it to "zoom out" so I can see multiple screens at once. This is especially useful because I run my 4K screen at 200% scaling so even zoomed out it's still fairly readable (about 60% of normal pixels)
Also many apps have their own built in tiling or separation. I use emacs, I use CLion, irsii, etc and I use a web browser. None of them have agreement on how tabs/documents/windows can be broken up.
I like the idea. The practice of any of them has been less than desirable.
Some tiling WMs are really into the whole "a keyboard should be all you ever use" thing and I don't personally like that. One of the reasons I like i3wm in particular is it's not extremely mouse-hostile and the number of key bindings I have to keep track of is pretty low and most of them make intuitive sense (mostly variants of <modifier-set>-<direction>.
Naturally you need a binding to start the sequence. Personally I like setting it up to produce a different binding if shift keys are pressed and released because this is much easier to press than a modifier key + key or a key which would require moving away from the home row.
https://atp.fm/96 (at 1:29:30)
With virtual desktops you just have 2 opened windows at most per workspace.
My first experiences with overlapped windows was actually probably Turbo C for DOS. :P Windows 3.0 and Macintosh System.. 6? after that. I've been through a lot of them.
I find nearly all overlapped windowing system's concepts of virtual desktops nearly unusable and incomprehensible, and I have used many. I'm a daily polyglot with operating systems, I use macs and linux for work, windows for play, and linux for everything else.
The only version of virtual desktops that's ever actually worked for me is i3's, because it's simple and easy to use.
My desk is a tragedy, but I much prefer tiling window managers and rigid, well-organized computing environments. Great to see the variety of options provided by KDE. I'll have to give this a try.
For MacOS, I love Rectangle, which is both great and open source:
M1 Mac, but I'm still on Big Sur. Maybe Monterey breaks it. Guess I'll find out soonish.
I'm reluctant to change a piece of software that's never given me so much as a hiccup in years of use, until I have to.
Though I use spectacle.app for those rare occasions when I want to snap a window to the left or right.
I'm not on Mac but I missed the real expose too. Mission control is too cluttery for me. And I really really missed the desktops in a grid. In a line does not work for me, I just have too many and I want them to have fixed places, not to jump order when I maximise something.
I honestly found it infuriating on my Mac.
At least bootup is a lot quicker on the latest M1s (privately I use KDE now but for work iIm still on Mac)
I’m really not sure what happened.
I use Hammerspoon (https://www.hammerspoon.org/) and a few little Lua methods to do the following and it works perfectly:
- Resize windows
- Position windows around the screen
- Instantly jump between apps I frequently use (this is especially good, for example with option+1 I can focus on the browser, with option+2 I can focus on my text editor, no more cmd+tab)
So I general, my layout is highly consistent: just one tile.
For what it's worth, hiding the unimportant details in a web page can also be accomplished by zoom/scroll - but that's definitely not to say your approach is wrong. Different things for different people.
On the rare occasion when I need to use data from a window to write something on other (like something that can't be copied and pasted, or cases where I need to extract information but not literally copying, such as using some data points from a reference file in code I'm writing) I just use win+left and win+right to spliut the screen between the two windows (I assume that OSes other than Windows have similar hotkeys).
The full-screen mode is a marvel of ergonomics once you get it. Just maximize your apps and switch between them with the trackpad like they are virtual desktops (because they, in fact, are).
It’s an awesome mode for a single screen workflow.
Tilings WM are cool but you are rapidly limited with be screen (and even with two).
I've basically trained myself not to click links anywhere, because I know the macOS window manager will f* up my virtual desktop order and I'll have to fix it.
I love using many virtual desktops so YMMV.
You can still initiate the old behaviour by holding option when you click the green dot, by the way.
But macOS (at least since macOS X) has never had a maximise in the way that most other desktop environments have it. To simply make a window occupy the whole screen on top of everything else.
You could have one virtual desktop that defaults to tiling and another to floating. With a keyboard shortcut you can toggle a window between the two states.
I was aware of tiling window managers for a decade before I switched from Gnome to Sway. Now I don’t want to go back.
Tiling may seem chaotic, but with Sway you are in the driver’s seat, deciding where each window goes and whether it’s floating or not. There is also interactive window resizing with the mouse and as well as moving windows with the mouse via drag and drop.
Sway also supports a tabbed layout! I'm a full-time window maximizer (as are sibling commenters). I keep all windows fully maximized and organized on virtual desktops: web and music on 1, terminals on 2, email and office on 3, etc. Love it!
Windows being fully maximized was something I learned to like from GNOME 3 when it came out a decade ago. I used Openbox, Fluxbox, GNOME and others for years and I would never go back. Never KDE though. Too messy...
I'm pretty sure kwin's window rules support everything you can express in a sway configuration.
That seems very unlikely
There might be "levels" of appeal and value... I too a few years ago moved to i3. The "tiling" nature is not where I got the most value from. I got it from have "multiple dedicated virtual workspaces(vdesktops)". With the ability to switch to them fast.
Example:
1) Terminal
2) Browser
3) Browser-2
4) Code (VStudio)
5) Code-2 (VStudio)
6) Files (File manager)
7) Gimp
8) Geany (Text Editor)
9) Empty
10)Empty
Just "knowing" how to "instantly" go from Code to a Browser or Text Editor has giving me A LOT of productivity. I'd say more so than any "tiling feature"
What I really don't like is the swipe-the-entire-full-screen to an entirely new context when working on another part of the same thing.
Are we very few, or just non vocal?
I maximize the windows I work on. When I need to see two things on a screen, my window manager's ability to place windows side by side using the mouse or keyboard shortcuts is more than enough. I usually disable compositing to make shadows disappear when I do this, they are distracting.
Kwin (like more window managers I think) can place windows side by side (left - right or top - bottom), or one window on each corner of the screen. I can't imagine needing to see more than 4 windows at the same time. Seeing three / four windows is already more than distracting enough for me. My brain is too small for that. They wouldn't hold enough information anyway since I zoom text quite a bit, so I can be far from my screen and watch it for long hours without tiring my eyes.
When I notice colleagues tiling their terminal sessions with Terminator I feel claustrophobic. Konsole offers this now, but I've been sticking with tabs so far.
KDE + bismuth user, with dual screens. Terminal, IDE, window for the application I'm working on, browser for the documentation of the framework or tool I'm using. Sometimes an extra browser window for miscellaneous searching. Sometimes MS Teams is in the mix there too. Oh and as you mentioned, terminal is usually tmuxed into 2 or more panes.
And if I do need to focus down to one maximised window, meta+m to toggle "monocle" layout which maximises and removes borders.
But, I have ADHD and find that if something isn't visible in front of me, it's basically non-existent from the point of view of my working memory.
For Windows 10+ I made Stack WM: https://losttech.software/stack.html
I works differently from i3: you predefine screen zones (possibly overlapping), and then just move your windows between them with keyboard shortcuts or middle mouse button.
IMHO, covers the problems you mentioned. You can have:
- multiple windows in one zone with normal Z ordering
- an improvised taskbar for any zone or a group of zones
- zones that stack windows vertically or horizontally or tile them in a fixed grid
- zones that dynamically adjust size depending on contents
- windows of certain app opening directly into a certain zone
- floating windows
- widgets (the easiest one is simply showing text from a URL with XQuery or JSON parser)
- customize the hell out of it with WPF
It is now one of a few things holding me back on Windows: until I have it or something else very similar running on Linux, I have no replacement to manage my 3 screens the way I like it.
I had seen all these screenshots and work colleagues using i3, Awesome, dwm and such like and looking ultra cool (from a nerdy point of view) and fooled myself into thinking this is what I should be doing too without realizing that I was already happy and productive without them.
But everyone is different, which is why I go for configurable over programs that expect you to work a particular way. KDE is very good about this.
Personally, I have 2-3 external 32" 4k monitors and I want to maximize the real estate that's used, tiling wm (specifically i3 in this case) makes it very easy to move windows around, to switch between different screens, to move screens between different monitors quickly. Dragging a mouse across that relatively high screen real estate is a huge pita without i3.
For example, right now i have 4 1080p monitors connected to my computer. I've never really needed anything more than the ability to snap windows to either side of the monitors (or bottom/top for vertical ones) or make them full screen.
With a higher resolution monitor (or an ultra widescreen one) i suspect that it would rapidly change and i'd need to look into either more advanced snapping setups (e.g. AquaSnap or PowerToys FancyZones on Windows, or the Linux equivalent, though even XFCE is pretty flexible out of the box there).
That said, on a laptop i probably wouldn't even try doing that and in many cases the software where i would actually want some sort of tiling already has it baked in - SSH clients like MobaXTerm (though Remmina is also nice on *nix) or all of JetBrains products. Tiling OS windows with smaller sizes feels rather inefficient, because many OSes out there waste space immensely with menus and other always visible items.
But hey, i'd argue that my current setup only has manageable cognitive load because i use overlapping windows managers as "optionally tileable" and due to the amount of monitors have a maximum of 8 open windows without any overlapping. Someone might achieve the same with a single (albeit larger) monitor and a proper tiling manager.
Of course, you can also just choose to float individual windows across background tiles in practically all tiling window managers too. I guess it depends a lot on whether the neovim use is an exception, or a layout style you use for other projects too.
Bit of first time setup but then you can just bind it to a hotkey after that.
setting a window to always-on-top with a hotkey is another useful one
When things get complex gnome is only about 50% as good as I need it to be to manage many things going on at once, though. Alt-tab application switching is a trash paradigm that is terrible no matter the OS.
1) Tiling WMs make Workspaces incredibly easy to access. Super + # is usually enough to get you to a specific workspace and you can easily have 10 of those. So if you are monitoring stuff constantly, it’s easy enough to tile them all in a workspace and gain almost immediate access and come right back to your primary workflow without disrupting much.
2) If you want constant visibility to a small section of a webpage, for example, you can trivially tile it and resize it to be extremely narrow/high on your current workspace, and scroll to ensure the party you want to be visible is visible.
And you can do all of this with a keyboard probably a lot faster than you can with a mouse.
And the tiling WM ensures you’re using up all the space in the screen without you doing anything (as you make the “background” window smaller, the “foreground” window grows).
3) Finally, you can always pop out 1 or more floating windows as well.
I think you have a good point about the sidebars of webpages. A lot of webpages don't cope very well with being put in a narrow window like documentation beside a code editor. A lot of cruft, padding, menubars etc tend to take up unmoveable space. It would be nice if we could pan and zoom that kind of stuff out of the way.
But I personally use something in the middle. I have 9 virtual desktops (mapped directly to the numpad on my keyboard using KDE's shortcuts) with some static tiled configurations of the apps I use daily. This way I can quickly check an IM that comes in and snap back to my work stuff in an instant.
But like I said, whatever works for you! I don't think it's a matter of one size fits all.
The only thing I really miss about KDE is having virtual desktops switchable per monitor, not as a whole set of all monitors together :(
So I prefer to alt-tab cycle. Even though I know that this is an extra effort, at least I can size the windows so that they contain the optimal amount of information.
I do use tools which help me with sizing and positioning of windows.
When I was younger I used to turn the font size way down to make two across work in 900p, but these days I stick to more comfortable font sizes.
Perhaps eyesight is important here? I'm short sighted but find wearing glasses when reading a monitor gives me eye strain, so just keep a distance from my monitor where I can read without my glasses (about 1m). To tile windows in a way that is useful I'd need to have much smaller fonts, and I wouldn't be able to read.
As an aside, it’s interesting to me that it’s predominantly OS X users that “don’t see the point in tiling WMs”.
Most of the time I'm in a single full-screen window unless I need to context switch. Some exceptions would be working on a pdf where the markdown is edited in one window and the pdf is to the right (auto-reloading when I save the markdown).
Other exceptions are running a terminal right next to my browser because I need to enter a few commands (installation instructions etc).
I used dwm, switched to i3 then stuck with sway. What I love about it is my limited screen real-estate (laptop) isn't wasted. I don't have an external monitor because I move a lot. My colleagues can't imagine working productively just on a laptop. It's perfect for me.
I usually have 3 windows open at a given time, either a terminal/IM/notes program at the bottom right corner, vlc/deadbeef/copyq/scrcpy at the top right corner, and everything else is the main program I'm working with (2/3rds of the screen width, 100% of height, so stuff like Firefox, Krusader, vscode, Godot, Blender/Krita/GIMP/Inkscape, Audacity, qemu/Virtualbox, etc). I use 3 hotkeys to put a window into one of those 3 spots, via wmctrl, everything else is floating. If things get messy (like if I need a few virtual machines and seeing their contents all at once) I use virtual desktops. I also assigned hotkeys that either open or focus specific programs (like meta+X to focus Konsole or launch it if it doesn't exist, meta+E for Krusader...) so I can quickly switch to them even if they are at the bottom of the stack or aren't opened yet. Got all sorts of custom launchers, clipboard processing and a lot more functions available to key combinations I can do with my left hand only (it's the "alt+tab" hand so I extended it to all important shortcuts). The layout is a standard Windows style bottom panel (Used to have an Unity-style left sidebar but that gave me whiplash when using other computers) full of info/alert plasmoids, including custom ones. All support scripts are fairly universal and mostly work in other desktops, but KDE has nice configuration options to automate window settings, so it works better with it. Also got custom themes but I have no idea how to port them out of KDE. So KDE it is.
Anyway with the description out of the way, tiling might work fine if all you work with is terminals, a browser and other text sources, but for that I'd rather just have tmux managing the important stuff and extra Konsole tabs for the minor operations (or to passively display output of updates in a new self-destructing tab so it gets rid of itself if I forget to close after seeing the output). Because I work with many visual tools that need plenty of space (and don't like sudden resizing) the tiling workflow just can't work for me, anyway. I can see why some would prefer it, though. As I said my use case is unusual. (Yeah I know artists would rather use Windows or Macs but my job requires Linux. My creative things are a hobby, but I wanted to have my cake and eat it. KDE has enough flexibility to let me hack it into submission, so it's not bad at all.)
That said either of those beats the pants off current or previous windows versions. Existing companies (dell and lenova) should start making Linux only laptops through partnerships with either KDE/distro maintainers. I would bet that most of the users can't even tell the difference especially if they are mostly on web browser based workflows.
With KDE+X11 it's trivially easy to change the window manager away from KWin and still get the benefits of suspend/resume, multi-monitor auto-configuration, wifi, system tray, etc, by just setting the KDEWM environment variable in your profile. https://userbase.kde.org/Tutorials/Using_Other_Window_Manage...
But with things moving to Wayland, etc, this simple swap out method isn't possible right now, so I've been keeping tabs and playing with Khronkite and KWin-tiling every so often for when I inevitably swap over to Wayland. It's basically a perfectly serviceable tiling WM OS without having to deal with any of the screen locker, systray, R&R, that Sway et al force you to contend with yourself. Most of the setup is in unbinding system defaults + rebinding window management shortcuts in to better "places".
I still use KDEWM=/usr/bin/i3 equivalent for now.
[Unit]
Description=KDE Window Manager
#Wants=plasma-kcminit.service
PartOf=graphical-session.target
[Service]
ExecStart=/usr/bin/i3
BusName=org.kde.KWin
Slice=app.slice
Restart=on-failure
The only downside is that you will need to wait a bit more for it to start.I don't see why all of that couldn't be integrated in nice, modular packages and sets of configuration. Some say that wayland made everything more monolithic. If anything, I think it helped make everything more modular by forcing to specify the interfaces into wayland protocols.
Now, of course some DE prefer using private interfaces instead of proper protocols...
1 Thunderbird and Firefox(I mostly use it for developement, I prefer Ff dev tools, look to me easy to read)
2 File Manager and Kate (a plain text editor, I mostly use it to write temp notes or paste temp stuff there)
3 Slack and Skype
4 Vivaldi(a web browser I setup with JS off by default , I use it to read stuff or listen to things not work), Konsole (a terminal app with tabs)
5 Intellij
6 Play on Linux, Steam, video games that I start to use in my free time
7 is mostly empty
I quickly switch with keyboard shortcuts Ctrl+F1,F2,F3... but I used KDE global shortcuts to remap the Alt button into Ctrl, Meta (Win) into Alt, I remap all my shortcuts to use Ctrl instead of Alt , or Ctrl+Shift . My key shortcuts are designed to be used with only left hand , especially because most of the time I have the Desktop Zoomed in so I have Zoom follows mouse and I might keep my hand of the mouse a lot more then a regular user.
So global shortcuts in KDE is a 10 of 10 for me.
KDE remembers each individual set-up, so once I have arranged my two external monitors, I know that the next time I plug them in they will automatically be arranged the same way. Once I have set up a particular projector to be virtually above or aside from my laptop screen, it will have the same arrangement next time I plug it in. This should be the default but back when I switched to KDE a few years ago none of the other environments I tried gave me this experience (I hope it's better now). And indeed, is was the main motivation for me to give KDE Neon a try
A tiling window managers lets you:
- Map different apps to different workspaces.
- Open apps directly into specific workspaces.
- Tiling of apps to suit your needs.
- Utilizing maximum screen real estate (Uggghhh GNOME).
- Have peace with no more endless search for a window cos you don't know where the app is. Alt+tab Alt+tab Alt+tab Alt+tab Alt+tab Alt+tab!!!
- Have stable workflow cos they move slowly and less workflow breaks. Functional bugs could be reduced if you use old WMs like i3.
- Less bloat.
- First class citizen of the keyboard shortcuts workflow.
- There is one for everyone - https://wiki.archlinux.org/title/Window_manager#Tiling_windo...
I also don't think Tiling WM's are for everyone though. If you use <4 apps open at a time, maybe you don't need one. But if you have a browser open, a text editor, a terminal, A bunch of chat apps like Slack, Discord, Telegram. Then your email client... it is already crazy. But then you open your file manager to open bunch of files and then you have have those documents. It can get out of hand. Even if you are rebooting only once every couple of months or so, you will still eventually have to redo all the organization again.
Also if you do get interested in using a tiling WM, don't just jump right away (in Linux). Use it with a DE of your preference. I used XFCE and it worked well along with i3wm. It took a couple of months to remove my DE in full and embrace Tiling WM life. But it was well worth it. :)
I think this is also true for different layouts. You can happily work with simple equal size window layouts, but you can also have per-project or per-app layouts should you wish.
The software grows naturally with you, or if you prefer the other functionality just stays out of your way.
¹ https://github.com/w0ng/wongdev.com/blob/master/content/dwm-...
[1]: https://www.dedoimedo.com/computers/plasma-look-like-ubuntu-...
KWin will also let you set how much (or how little) window decorations you want if at all. I'm very happy with it.
I first used KDE over 20 years ago, version 2.x. KDE 4 was awful, and I moved to Gnome. Since version 5 I'm back on KDE and most notably, the battery life of my laptop is twice as much! And it's configurable. And beautiful.
After a few point revisions it was almost back to it's former glory. 5/plasma is basically back to the power of 3.0, but I still miss Konqueror.
I'm quite old now I guess :)
If it kept up, I probably wouldn't be using Firefox now.
So ideally I'd select a window, shift+win+1 to save that window, and win+1 to recall that window.
Seriously? Isn't it weird that people can be impressed by keyboard shortcuts working or apps being able to put an icon in the system tray in the year of 2022?
Disclaimer: I have been a KDE user since the first time I managed to boot into the graphical shell on my Gentoo box back in early noughties. That's it, just a happy user.
KDE has been around for 25+ years. It has a huge community: Both a substantial amount of users and a daring team that is totally chill not only about diving head-first into colossal amount of work, but also about making substantial changes to its codebase when they think it's necessary. Just look at how much work went into migrating KDE 3 to 4 or splitting kdelibs when going 4 => 5 which is the status quo now.
It's also got a solid legal foundation[1], better than relying on just GPL. They got flak when they first decided to build on Qt, a commercial framework so they negotiated this deal with Trolltech. (EDIT: Here's the context[2]) The point is that their dedication to the community is also top notch, which seems rare in the open source world.
So I, for one, am not one bit surprised that a team this competent managed to get keyboard shortcuts to work after all. Actually, I'll go one step further and say this: If your daily driver is Linux and you are not forced to running Fluxbox/Openbox/etc. due to resource constraints, you should be running KDE, period.
What's next, we will praise Linux for doing preemptive scheduling? Come on :)
[1]: https://kde.org/community/whatiskde/kdefreeqtfoundation/ [2]: http://openbooks.sourceforge.net/books/kde20devel/ch19lev1se...
PS: I see comments talking about eg. how bad the early 4.x releases were. Well, that's mainly Ubuntu's fault for shipping a barely finished tech preview in its stable channel. I, for one, don't remember having a problem switching to KDE 4.something once it was offered in the stable channel by the Gentoo KDE team.
Global shortcuts existed before, but the implementation was different, and the configuration UI for both global and app-local shortcuts was different. I talked to a UX designer and implemented the new thing. In KDE3, there was conflict detection with a short, hardcoded list of shortcuts that didn't necessarily correspond to the actually configured shortcuts. I made it work with the real data (global shortcuts, standard shortcuts like copy & paste, maybe app-specific shortcuts of the current app). As always, the devil is in the details. Other people made important improvements later.
One of the things that I added was a once-per-session component to remember and listen for global keyboard shortcuts, which, by luck, is exactly the right design for Wayland, where only a privileged part of system (either the compositor or a delegate) can snoop on key presses.
And with the right amount of extensions a GNOME desktop can be tamed into a bottom bar only desktop / virtual desktops without activities one. I should write a blog post to provide a link to my customization. However if KDE does it out of the box, good for them. I tested KDE back in 2014 and I didn't like what I saw. I went to GNOME Fallback (or was it Flashback?). Too many clicks to do anything. Maybe they fixed it now but I don't have the time to test it again and get basically the same functionality I have now.
- how can I see that a screen/dialog is active? It is with the default theme extremely hard to see
- why is drag handle area impossibly small? When I need to manually resize a window (or column) I need to have the mouse pointer on the specific pixel of the window border, or else I wouldn't get the resize pointer
You need to change the window decoration
https://docs.kde.org/trunk5/en/kwin/kcontrol/kwindecoration/...
"Tip
For accessibility purposes, some window decorations support extra wide borders. If this is available, you can also choose a Window border size here. The large borders are easier to see for low vision users, and easier to grab for people with limited mobility or difficulty using a mouse."
Great tip!
I use "Dim inactive" desktop effect which darkens windows that aren't focused. You can configure the strength of dimming, so that difference active vs. inactive is clearly visible but you can still (somewhat) read the content of inactive window without activating it.
Currently I'm waiting for Plasma Wayland session to iron out major bugs before switching to it.
> Support for setting windows to floating or quitting tiling altogether, per-desktop (Meta+Shift+F11) and per-window (Meta-f) (“Meta” refers to the “super” or “windows” key here)
I think this might be worth a try...
For those more graphically oriented, there is also Bismuth[2] which seems cool.
Maybe not directly related but I'm looking forward to learning more of KDE with Pinephone Pro and Kirigami. I would be interested in some kind of tiling manager there again for resource saving.
My intent ultimately is a UI like Windows Phone if that somehow makes it snappier. I tried SxMO and it was brutal.
I have used i3 before, but setup and configuration was painful, and some applications had problems, like ex. KeePassXC was showing with very small font etc. PaperWP is Gnome based, so I never had any problem with any Ubuntu application.
That's not really true. I use the gnome-flashback sesson and have an .desktop in ~/.config/autostart that runs xmonad --replace after I log in. It's true that logging in with a gnome session using xmonad as the WM isn't really an option any more but switching to xmonad after login continues to work great and is easier to set up than creating your own session ever was.
https://github.com/aclough/dotfiles/blob/master/setup-xmonad...
Typically split into 3 vertical panes: nav, editors, terminals. I mostly just use one big editor pane, but sometimes further split one way or the other depending on what I’m doing. Same for terminal sessions, though more frequently using some kind of watcher in a lower split.
Anyhow, it works pretty nice.
GNOME... uses D-Bus for a lot of stuff where wlroots uses wayland protocol, which makes it hard to integrate under other compositors.
[1]: Random link from a search: https://fossbytes.com/how-to-install-pop-shell-on-ubuntu-20-...
I have both workflows on separate machines. Each works well for what I want to do and I am comfortable in either environment.
- Arch + DWM + St + LibreWolf (for scripting and networking) - Linux Mint + Cinnamon + Terminator + Web Apps (daily-driver at the office)
But anyway yeah KDE is amazing. I use it as my daily driver. It's so configurable. I don't want any opinionated software anymore.
My 'tiling' is a vertical split which is done easily with a shortcut and mouse follows focus. That serves me well.
According to me (and I think many other HN commenters), go back another 10 years and it'll be great :)
I personally still prefer the glossy and somewhat kids-appropriate KDE3 [1] over the latest superflat trends
[1] https://upload.wikimedia.org/wikipedia/commons/2/23/KDE-3.1-...
I wish there was a project like elementary OS, which takes the tech of GNOME and applies its own theme, naming etc., but for KDE/Qt. (I know, I know, elementary is doing way more than just that.)
If something like this exists, I'd love to try it out.
(I like the "K" names. They usually mean the application fully integrates with KDE.)
We don't have the same opinion on what looks good and what doesn't. That's fine - but I wish someone from "my side" had tried to build a KDE-based distro. I've found some KDE distros with alternative theming, but nothing that leans towards the elementary/Apple style.
I guess I wish Ubuntu had picked KDE as its replacement DE, I really liked their theme around 20.04, and they put a lot of work in the details (like just getting desktop icons back).