
i3 4.18 - trulyrandom
https://i3wm.org/downloads/RELEASE-NOTES-4.18.txt
======
Naac
For anyone here who loves i3, but has always had trouble getting full
integration to work on their laptop ( sleep, screen brightness, etc. ), check
out the Regolith project[0]

It's a curation of several tools combined with i3 that gives a pretty
fantastic gnome/i3 experience. Similar to spacemacs and emacs.

[0] [https://regolith-linux.org/](https://regolith-linux.org/)

~~~
reciprocornous
If you are looking for a distro with i3 preinstalled, Manjaro i3 edition is
another option.

[https://manjaro.org/download/#i3](https://manjaro.org/download/#i3)

~~~
trenchgun
I can recommend that.

------
truncate
i3 ruined my life. It's an absolute delight to use, particularly when
programming. However, its hard to get Linux laptops at work (Mac or Windows),
and I constantly miss i3.

Also, among all tiling window managers, I think its config is probably the
most intuitive to mingle with. Hardly ever breaks (if ever) between upgrades,
and default workflow is very intuitive and explicit. Other window managers
(eg. Awesome, xmonad) have pre-defined layouts, which (for me at-least) create
more confusion than value.

PS> I think I've been using i3 since 2010 something.

~~~
butterthebuddha
If you're on Mac, I can't recommend the yabai [1]/skhd [2] combo enough!

I haven't used i3, so I don't know if yabai mirrors the i3 experience, but
it's a very nice programmable keyboard-centric tiling wm for macOS.

[1]
[https://github.com/koekeishiya/yabai](https://github.com/koekeishiya/yabai)

[2]
[https://github.com/koekeishiya/skhd/](https://github.com/koekeishiya/skhd/)

~~~
Sir_Omnomnom
How did you setup your menu bar? I can't find something that can replicate the
i3bar/polybar experience, and I don't like having the native mac menu bar as
it is hard to see the desktop I currently am on.

~~~
butterthebuddha
I haven't set it up.

------
mherrmann
I've been using i3 for a few months and can never see myself going back to
working without it now. I must say that I think it makes most sense when you
have multiple monitors though.

~~~
mbreedlove
I used i3 for a while and really enjoyed it. Though, I eventually switched
back to KDE. I didn't like having to fiddle with power management and
configuring screen locking.

I was noticing that I was only using 1-2 tiles at a time and I could easily
emulate that by just side-by-siding windows in KDE.

I think if I ever have the chance to use a Linux machine professionally,
especially with multiple monitors, I'll definitely reach for i3 again.

~~~
city41
i3 couples with desktop environments rather nicely. I've used it with KDE and
MATE, and others have used it successfully with XFCE.

My success with it with KDE was a little mixed, but I also didn't make any
effort to resolve the little issues. With MATE though, it works flawlessly
with no downsides or really any config needed. It's fantastic.

Here is how I set it up with MATE: [https://www.mattgreer.org/articles/mate-
and-i3/](https://www.mattgreer.org/articles/mate-and-i3/)

~~~
blaser-waffle
Cheers for the MATE panel applet you put together (that's in the blog post):
[https://github.com/city41/mate-i3-applet](https://github.com/city41/mate-i3-applet)

Also, got any pictures of the desktop?

------
djsumdog
I love tiling WMs. I'll try out new ones every now and then for a few days,
but I always come back to i3; which has been my primary window manager since
2012. It's an amazing window manager and I'm glad to see all the work still
going into it.

Sometime this year, I'll have to give Sway/Wayland another try on my laptop.
I'd love to switch to Wayland, but the past few releases of Sway there was
always something I got stuck on I couldn't patch or work around.

~~~
green7ea
My experience with Sway was the same until the 1.0 release (about 11 months
ago). The 1.0 release fixed all the show stoppers and I've been happily using
it ever since. It also comes with a few nice things build in like gaps.

To be honest though, there isn't much difference from a day to day perspective
between X11 and wayland. A few things are nice (adding and extra screen
doesn't reset the video mode) and a few things are worse (recording video).
Make the switch when it's the natural choice, don't force it ;-)

------
kilovoltaire
I recently saw someone playing around with i3 and xzoom to make fractals and
video feedback, seems fun-
[https://twitter.com/maxbittker/status/1228241766240768000](https://twitter.com/maxbittker/status/1228241766240768000)

------
cosmojg
If you're looking to switch from X11 to Wayland, you should definitely check
out Sway[1]. It's all the greatness of i3 rebuilt on top of a cleaner, leaner,
meaner tech stack!

[1]: [https://swaywm.org/](https://swaywm.org/)

~~~
Naac
>> cleaner, leaner, meaner tech stack!

What does that mean?

Sway is a great project, but I would be careful of using Wayland, as lots of
minor issues came up last time I was using it ( death by a thousand papercuts
).

For example, if you rely on years of small x scripts ( xrandr, etc. ), be
prepared to rewrite all of them for wayland.

Last time I used Sway/Wayland, I couldn't find a good alternative to redshift.
While Gnome has it, I can't seem to just use this feature independently on
other DEs.

Again, Sway is fantastic, and I fully support moving off to Wayland. But best
case scenario Sway is a drop-in replacement. Most likely there will be some
fiddling. Especially if you've been using i3 for years and have built a custom
ecosystem around it.

~~~
thomasfortes
There's a patched redshift for wlroots compositors (sway is the most prominent
one) on AUR, works perfectly in my machine.

------
webmobdev
I guess tiling window managers should be considered more of a specialized
niche tool, and in that it is commendable that i3 does such a good job of it.
I do really admire it for being so light-weight on resources compared to a lot
of the other more popular WMs.

I say a niche tool because I've never really understood why someone would
prefer a Window Manager that places a lot of constraints than one that lets
you controls / customize the windows as you please and is thus "freer".

I guess it can seem useful for, say, multiple terminal windows. But would suck
for a scenario where you have to open different kinds of applications like a
browser, file manager, video converter, movie player, terminal etc. etc. (just
citing all the apps I have open now and am multi-tasking with) where the
ability to stack them would prove to be more productive for the user.

That even control freaks like Apple, who like to think only they know what's
best for their consumers, doesn't use a tiling only WM in their OS is telling.
Even Microsoft switched from a tiling WM from Windows 2.0 on wards and has
stuck to it (Source:
[https://en.wikipedia.org/wiki/Tiling_window_manager](https://en.wikipedia.org/wiki/Tiling_window_manager)
).

~~~
city41
Window management is truly a preference thing.

I feel the opposite of what you state. To me, a non tiling-window manager
burdens me with moving and resizing windows, mostly with my mouse. With i3,
its algorithm sizes and places the window ideally 90% of the time, and I fix
up the 10% of the time with key commands, never needing my mouse.

My windows being so predictable and so easily maintained with the keyboard
enables me to stay in flow much better. I basically never think about my
windows, it's just a "solved problem" for me.

It's unfortunate that tiling window managers are really only available on Xorg
based OSes. I feel if Windows and OSX had really good tiling window management
(the available solutions are nowhere near as good as what something like i3
can do), then tiling window managers would be much more popular IMO.

~~~
kimjongtrill
For me the built in shortcuts to snap things to the left, right, and push to
second monitor are all I really need and I get both tiling and non-tiling with
windows/OS X/gnome... never understood why people go i3 when the shortcuts are
built in to what you likely are already using. To each their own though, if i3
works better for y’all I think that is great too.

~~~
flyingcircus3
The built-in snapping only works for two windows per screen though. If you
want 3 or more, you're stuck with the mouse.

~~~
doubleunplussed
There's the gtile gnome shell extension. I have shortcuts defined to snap
windows to predetermined regions of the screen, which can be defined on an
arbitrary grid.

That plus gnome's builtin shortcuts to move windows to different monitors and
different desktops, and setting alt-tab to "switch windows directly" gives me
pretty much everything I need.

Windows don't _start_ tiled, but this doesn't feel like a big drawback. When
matplotlib pops up five plot windows I'd rather they stay the aspect ratio
they were intended, anyway. But I'll snap my text editors, terminals, and file
browser windows to half/quarter of the screen.

It's pretty great, and I get to stay within GNOME which is the 'happy path'
for linux desktop use IMHO.

------
jlebar
The thing I love about i3 is that the config file is the complete
documentation. Forget how to do something? Open the config file. That's it.

<3 i3

~~~
richard78459
And reloading the new config is even simpler with a combination of keystrokes.

------
cpascal
I've been considering trying out a tiling window manager. I'm curious what
people feel they gain using a tiling window manager versus something like
Windows/Gnome's screen splitting features. Is it being able to arrange more
windows on the screen than just side-by-side windows? Is it keyboard shortcut
efficiencies? Is it just cool?

~~~
happimess
On my personal machine, I use i3wm, and on my work machine I use OSX with
Spectacle (a window tiler).

For me, the killer feature of i3wm is not how it lets me arrange windows on my
screen, but how it lets me switch between them. With OSX, I have to maintain a
mental stack of recently-used applications: If I'm in my terminal and I want
to get to firefox, I have to hit cmd-tab, or maybe cmd-tab-tab, or maybe cmd-
tab-tab-tab. At least once a day, I make an off-by-one error and get stuck in
a context-shift loop until I pause, think, and do the needful. With i3wm, I
have 10 workspaces, and each is available with a single chord press. I have my
own conventions about what's where, and there's no cognitive load associated
with switching between text editor and documentation, or whatever.

Along the same lines, I like to keep a roguelike open for quick breaks, but
ideally I'd never accidentally switch to a video game. OSX gives you no
ability to punt an application from your cmd-tab list except to quit the
application. With i3wm, I keep that on workspace 0, and have never
accidentally switched over to it.

You may think I'm being precious, but it really does make a huge difference in
my ability to stay in the zone.

~~~
flyingcircus3
Do you manually move certain apps to certain workspaces, or do you have
configurations to do it automatically? I've tried setting up the config to
always have Firefox on workspace 3 and Slack on 4, but it doesn't work. I can
do it with terminal, though. I've also done the xprop command to find the
WM_CLASS property, but still no luck

~~~
Kubuxu
See my dotfiles:
[https://github.com/Kubuxu/dotfiles/blob/master/i3/config.bas...](https://github.com/Kubuxu/dotfiles/blob/master/i3/config.base#L193-L211)

'assign' allows you make so if window opens, it opens on given screen Lower,
you can see me switch to given workspace before autostarting apps.

~~~
flyingcircus3
I've tried the assign keyword, but I can't get it to work with Firefox or
slack

assign [class="Firefox] 3 assign [class="Slack"] 4

But it doesn't work for me

~~~
cycomanic
It definitely works. I'm on mobile now but remember that the two parameters in
the wm_class correspond to name and class (I always forget which is which) .
Also you can use regex in the matching iirc

------
esjeon
As a long time dwm[1] user and the developer of a tiling script for KDE,
Krohnkite[2], I'm purely curious what makes i3 so popular. It makes you spend
extra brain cycles on managing windows, which isn't far from stacking WMs in
my perspective. I mean, this extra cycle was the reason why I abandoned
stacking WM.

Especially on small ("13 ~ "15) laptop screens, where people usually have <= 4
apps per virtual desktop, I think i3 doesn't have much benefit, because there
are only a few possible layouts: half-and-half, master-and-stack(│├│ or │┤│)
and quarter(田). All of these are well covered by Tile layout (or nv-stack,
according to Arch wiki[3]).

On the other hand, I do admit manual layout can be really useful on large
screens and ultra-wide ones. There's neither golden nor silver layout that
always works well on large area. There are just too many possibilities, and
imagination is the only limit in this case.

[1]: [https://dwm.suckless.org/](https://dwm.suckless.org/) [2]:
[https://github.com/esjeon/krohnkite](https://github.com/esjeon/krohnkite)
[3]:
[https://wiki.archlinux.org/index.php/Comparison_of_tiling_wi...](https://wiki.archlinux.org/index.php/Comparison_of_tiling_window_managers#Layouts)

------
capableweb
So I'm a long time awesomewm user (5+ years) and when I started shopping
around for a wm I tried both awesome and i3 (and another I don't recall the
name). Awesome was easier to get started with and all the Lua code is easy to
understand and use.

However, could someone who used both elaborate on the differences? Would I
gain anything from trying to migrate to i3 instead?

At my point of view, only the community size is the difference, but that
hasn't bothered me too much as awesome for most part just simply works.

~~~
qzx_pierri
Why change if Awesome works for you?

~~~
capableweb
Just because it works doesn't mean there isn't better things out there.
Wouldn't change if the benefits are not greater, obviously, but I find it
healthy to always reconsider past choices every now and then.

~~~
qzx_pierri
true. I never thought about it that way.

------
pedrovhb
I've always liked i3 a lot but it was a real pain to get some stuff working
(like connecting a new monitor, or having to deal with wifi and bluetooth, or
using two different keyboard layouts). Everything had to be configured, and
while that's great for understanding how things work together, it's pretty
painful when you're just trying to get stuff done.

All the pain went away when I found Regolith [0], which I heavily recommend.
It's i3 with Ubuntu but it comes with sensible defaults, a nicer theme and
shortcuts to all the configs you could need out of the box. It really makes
things a lot easier than using just i3, especially when doing a fresh install
(it's available both as an installable image and as a package - I've had no
issue with either).

Some default shortcuts are different so if you've been using i3 for a while
you'll have to iterate a bit over the config to get to a comfortable point,
but it's the same config file. I also changed the default terminal back to
gnome term, since their default one doesn't have a scrollbar, but again it's
pretty easy to do and you only do it once. All in all, really made my life
better.

[0] [https://regolith-linux.org/](https://regolith-linux.org/)

~~~
asterisk_
I personally didn't encounter any problems whatsoever installing a clean i3,
but for anyone searching a batteries-included version of the window manager
I've heard a lot of good things about i3-Manjaro (cf. 30-minute review on
Youtube [0]).

[0]
[https://www.youtube.com/watch?v=-vG9ORRUkUQ](https://www.youtube.com/watch?v=-vG9ORRUkUQ)

------
nickjj
If you're on Windows and are upset that nothing like i3 exists, you can get a
useful but watered down i3-like experience by:

1\. Using Windows 10's snapped windows along with various Windows key + arrow
key hotkeys[0] for managing windows.

2\. Using DexPot[1] for hotkey controlled virtual workspaces (same ALT + N
hotkeys as i3)

3\. Using Keypirinha[2] for fuzzy finding programs to launch (similar'ish to
dmenu for launching apps at least)

Combine that with WSL + tmux + terminal Vim and it's not bad for day to day
development. I've been using the above for over a year for full time
development and while I miss my i3 set up on my native Linux laptop, it's
manageable.

[0]: [https://support.microsoft.com/en-nz/help/12445/windows-
keybo...](https://support.microsoft.com/en-nz/help/12445/windows-keyboard-
shortcuts)

[1]: [https://dexpot.de/?lang=en](https://dexpot.de/?lang=en)

[2]: [https://keypirinha.com/](https://keypirinha.com/)

------
adminu
Quick and shameless plug: I wrote a windows 10 style, true transparency
enabled notification center/daemon, extending on the concept of dunst:
[https://github.com/phuhl/linux_notification_center](https://github.com/phuhl/linux_notification_center)

Feel free to check it out and give it a try.

PS, for the enthusiasts: 100% written in Haskell

------
d33
I love i3, but there's one thing I really wish I could do that I still hadn't
figured out.

I used to be a KDE user and I loved the fact that I could stack windows and
make the one on top semi-transparent. I'd be using this feature to watch
movies while hacking in the terminal. The way you'd set it up is that you'd
stack one window on top of another, set it to "always on top" and control its
transparency through extra options unlocked in the title bar.

Now, the question is, could i3 do that? In other words, does the "tabbed" mode
actually "render" the windows underneath so that I could use an external
compositor to set its transparency to whatever I want? Ideally I'd love to
have a shortcut for that.

------
ddavis
Happy i3 user for 7 years, thanks to all of the developers. i3 is incredibly
smooth to use. Looking at the bug fixes I've only ever hit one in the wild:

> move workspace to output: don’t create duplicate numbered workspace

and didn't even realize it was a bug, always thought it was an issue with my
configuration.

------
mxschumacher
I've been using i3-wm for many years and am a big fan. It's great to be able
to switch between workspaces so quickly and get such an efficient use of
screen "real estate".

My current setup i3-wm on Manjaro, alacritty with fish is exactly what I need.

------
TZVdosOWs3kZHus
Huge shoutout to all developers of i3, I absolutely love it! Since I started
using it, the connection to my machine improved vastly. The precious pixel
space of my X230 finally felt utilised fully!

I never had any issues with i3. Cannot recommend it enough!

------
richard78459
I use i3 on rooted chrome book and its amazing. I also use it on a 21 inch
monitor its still amazing. It's so light weight, boots very quickly, uses all
of the pixels and loading the new configuration is extremely simple. Just edit
~/.config/i3/config file and press Win-shift-R it loads the new configuration,
basically very easy to experiment. Thanks so much Michael
Stapelberg([https://michael.stapelberg.ch/](https://michael.stapelberg.ch/))
for this amazing software.

------
raoof
I'm using i3 for a long time, the only feature I'm really missing is `bindsym
j [class="google-chrome"] xdotool key Down` so I can make vi like key binding
for every program that I use.

~~~
shabble
If you're still looking, I quite like XKeysnail
([https://github.com/mooz/xkeysnail](https://github.com/mooz/xkeysnail)) for
that, although it does occasionally get confused. It does seem like it's
something a WM should be capable of though.

~~~
raoof
thanks I'll look into it

------
simlevesque
i3 is a godsend. I used it for a long time before switching to Sway. I told my
brother about it, helped him a bit to set it up and now he stopped using any
other WM/OS.

~~~
city41
It's one of my most favorite pieces of software. It has put me in a slightly
odd spot of hoping to never be required to use Windows or OSX at work though.
Hopefully all my future companies let me use Linux.

------
Barrin92
been a long time i3 user mostly for the sane defaults. It requires
significantly less fiddling than any other window manager I've tried out.

~~~
abjKT26nO8
Have you figured out how to make i3 move the mouse pointer to the area of the
newly-focused window when you change window focus by keyboard? AwesomeWM does
that out of the box. i3 doesn't and it's very annoying, because then when my
table makes a microscopic movement and causes the mouse to move, suddenly what
I'm typing is diverted to another window and weird things happen.

~~~
jolmg
You can fix that with:

    
    
      focus_follows_mouse no
    

It doesn't do what you wanted, but I also can't see why anyone would want a
window to focus simply because you hovered over it.

~~~
tmm
Because why should I have to _click_ to get focus?

Less of an issue on a tiling window manager, but sometimes I really want to be
able to type in a window without bringing it to the foreground.

Also, selecting text should copy and middle click should paste. No one can
convince me these things are bad or unnecessary.

~~~
jolmg
> Because why should I have to click to get focus?

The click not only focuses but is also passed on to whatever you clicked on,
so it's like it was already focused.

> Less of an issue on a tiling window manager, but sometimes I really want to
> be able to type in a window without bringing it to the foreground.

I don't understand that. You have to somehow indicate to the system what it is
you want to type on.

> Also, selecting text should copy and middle click should paste. No one can
> convince me these things are bad or unnecessary.

I'm 100% with you on that. Although saying "selecting text should copy" makes
it sound like it's being copied when selecting, when it's actually copied when
pasting.

~~~
ubercow13
>You have to somehow indicate to the system what it is you want to type on

You do it by moving the mouse. It makes the mouse more useful because you can
now focus things with one less click.

On the other hand, in what circumstance would you want to move your hand to
the mouse, move it intentionally over another window without clicking, and
_not_ focus it? What would be the point in moving the cursor?

~~~
jolmg
> in what circumstance

Precisely in the one that brought this into topic. It's nice to not have to be
so careful with how the mouse moves. When it gets in the way, I can just flick
it off, not worried about my stuff changing focus. It also greatly decreases
the annoyance of accidentally touching a touchpad while typing.

~~~
ubercow13
Fair enough, that makes sense. In practice I don't ever find I make mistakes
with the mouse and focusing, but then I am very good with the mouse (after
playing those FPS games :)

------
danans
A great use case for i3 that is my daily driver is as a remote desktop
windowing solution. My i3 desktop state is preserved and sanely laid out if
I'm at home on a 15" laptop, at work on a 30" monitor, or even on my portable
12" laptop while I'm in meetings.

~~~
philwelch
How do you do the remote desktop part?

~~~
danans
I use Chrome Remote Desktop, but I imagine any similar system would work too.
This Wikipedia page has a server/client/OS support matrix for various systems:

[https://en.m.wikipedia.org/wiki/Comparison_of_remote_desktop...](https://en.m.wikipedia.org/wiki/Comparison_of_remote_desktop_software#Operating_system_support)

------
yewenjie
I used i3 about two years ago, and have been using awesome since then. Can
anybody elaborate how do these two projects compare in 2020?

------
ww520
Somehow I read that host name as “I3MW” and thought it’sa site for the BMW i3
car.

------
pkrumins
I have been using i3 for a long time and here are some advanced features that
I'd love it to have.

1) Workspaces of workspaces

Let's say I'm working on five projects at the same time. Each project usually
has totally different workspace configurations.

For example:

Project1 might have workspaces 1: dev, 2: mail, 3: tail -f access.log

Project2 might have workspaces 1: photoshop, 2: mypaint, 3: shell

Project3 might have workspaces 1: trello, 2: research

...

This is like tmux sessions. I can have multiple sessions, each session has
multiple windows and panes. In tmux this works very well but in i3 you can'd
do that.

I'm currently emulating this by running five independent i3 copies on five
displays :1, :2, :3, :4, :5 and I switch between displays to switch to another
project.

2) Static tiling

I3 is a dynamic tiling manager, which means it uses the entire screen.
However, once you establish your workflow, you often have windows that take
1/3 of the screen and are 1/3 off the top, etc. and you don't really want them
to take the entire screen because it makes you less productive and it feels
weird. Also, once you establish your workflow, you don't want the workspace to
change or resize. You just know where everything is and don't want a slightest
disturbance in your workflow.

This is often hard to do in i3 and you need to use tricks such as vertical and
horizontal splits of empty terminals to put the app where you need it to be.
And it's extremely easy to mess this up, if you accidentally open a new
terminal. Then your app resizes and shifts, and when you close the accidental
terminal, it's no longer where it was because of many vertical and horizontal
splits.

I found Notion window manager that is static tiling but I haven't tried it. It
can also have tabs inside static tiles, which makes it very interesting.

3) Run or raise

Run or raise starts a program if it's not running, focuses it if it's running,
and hides it when no longer needed.

For example, pressing alt+n starts and shows a notepad if it's not yet
running. If it's running, it focuses the notepad and pressing alt+n again
hides it.

I3 doesn't have this feature but it can be emulated via xdotool and
scratchpads.

4) Using fzf instead of dmenu

Dmenu is nice but you need to type too much. The solution is to use fzf
instead of dmenu.

I'm currently displaying a floating sticky terminal window that runs fzf, gets
my input, performs the action, and disappears. It's so much faster than dmenu.

5) Using fzf to switch apps, workspaces, workspaces-of-workspaces

Often, when you're working on project2, you remember you had similar
idea/code/notes in project4. You then have to switch to display :4, then
switch to correct workspace and find the info.

This could be simplified by using fzf and just instantly switching where you
need.

6) Using alt-tab to switch back to previous place you were.

Let's say you switched from appx in project2 on display :2 to appy in project4
on display :4, and now you have to cycle between them. You can't do that right
now so the workflow isn't perfect and there's a lot of drag.

~~~
ubercow13
Notion seems to have my ideal tiling paradigm for the same reasons you
describe, however it seems to be kind of buggy with modern applications, with
repect to window and input focus especially.

------
agumonkey
my arch setup uses i3, it's not the only tiling wm but it's really nice, light
and efficient.

------
purplezooey
Why isn't i3-gaps merged by now?

~~~
secure
The tracking issue for that feature is
[https://github.com/i3/i3/issues/3724](https://github.com/i3/i3/issues/3724)

Merging gap support isn’t that easy, and our spare time is not unlimited.
Serious offers to help very welcome.

------
tigrezno
Still no gaps support on main branch. Devs don't care about what their users
want/need.

Happy bspwm user here.

~~~
simlevesque
I wonder why that is, but I never understood the appeal of gaps. It's wasted
space.

I wonder if people who like gaps like bezel on their screen too.

~~~
ubercow13
Some gaps users claim that due to visual impairment, it helps them
differentiate windows from each other. I guess you could use larger borders
instead but gaps certainly look nicer than that.

