Alright. Welcome back, this post is going to be my cheat sheet for working with i3. I also hope it serves as a concise introduction to i3 and the essential commands that will make you immediately productive. In this Post You’ll learn to:
- Move Between Windows
- Move Windows Themselves
- Navigate Between WorkSpaces
- Move Windows Between Workspace
- Toggle Window Floating Mode
- Set Your Own Keybindings
- Launch A Terminal Session
- Launch Regular Applications
Shell Navigation & Configuration
How Do I Move Between Windows?
Mod + J or Left Arrow | Move 1 window Left |
Mod + K or Down Arrow | Move 1 window Down |
Mod + L or Up Arrow | Move 1 window Up |
Mod + ; or Right Arrow | Move 1 window Right |
How Do I Move Windows Themselves?
You do this by pressing the modifier key + shift and then either J,K,L,; OR the arrow Keys:
Mod + shift + J or Left Arrow | Move window Left |
Mod + shift +K or Down Arrow | Move window Down |
Mod + shift + L or Up Arrow | Move 1 window Up |
Mod + shift + ; or Right Arrow | Move 1 window Right |
How do I navigate between work spaces?
Mod + 1 | Switch to Workspace 1 |
Mod + 2 | Switch to Workspace 2 |
Mod + 3 | Switch to Workspace 3 |
(…) | (…) |
How do I move a window to another workspace?
with the window hightlighted (“in focus”) press mod + shift + TargetWorkspace Number
Mod + shift + 1 | Move highlighted window to workspace 1 |
Mod + shift + 2 | Move highlighted window to workspace 2 |
Mod + Shift + 3 | Move highlighted window to workspace 3 |
(…) | (…) |
How do I toggle window floating mode?
With the desired window highlighted, press Mod + Shift + Space.
Floating Mode:

Tile Mode:

How do I Set My Own Keybindings?
Bind to a key symbol
A Key Symbol also reffered to as a “keysm” is used to map a binding relative to value of the key pressed for example “1”, “_”, It’s aware of the symbols used.
bindsym $mod+Shift+x halt
Bind to a Keycode
I think these are the key codes?
Used to map a binding relative to the key code or the physical location on the keyboard. you would use these kinds of bindings if you change keyboard layouts ( keyboards with different localizations or different key placements) you would use Key codes to create bindings relative to a key’s position on the board, it does not know the value of a key, just that a specific one was pressed.
bindcode 214 exec --no-startup-id /home/michael/toggle_beamer.sh
Application Management
How Do I launch a terminal console?
Mod + <Enter>
How do I launch applications?
You do this by using dmenu, if you need to install it, you can do so with:
sudo apt -fy install dmenu
and then launch your menu and type the application you want.
Mod + d
Notice as you type it gives you instant feedback on the app you might be looking for to the right, in this case we’re looking for the application “shotwell”:


Conclusion
Okay, that’s enough. That’s basically everything I do in gnome anyways. So armed with this knowledge we can start figuring out how to customize i3, with essentials like a background wallpaper, transparency, probably configuring i3bar, and then starting on some Linux experiments using mail, to create labs for LVM, Disk Partitioning, and regex.