Skip to content
Mahdy Mirzade edited this page May 16, 2021 · 4 revisions
LightDM Gif

i3 is a tiling window manager and I use it as my daily WM.

Installation

Using Pacman:

$ pacman -S i3 dmenu \
scrot nitrogen sbxkb \
dunst

Using dot.sh:

$ ./dot.sh i i3

Configuration

If you used pacman:

$ ./dot.sh c i3

If you used dot.sh:

No need for extra config, it will install config files within the last command.

CheatSheet

Window Management Keybinds

Key Functionality
Super The Main Controller
Super + Enter Run Terminal
Super + Space Change Keyboard Layout (~/.scripts.sh)
Super + Q Lock Screen (i3lock)
Super + Shift + Q Close Windows
Super + Z Simple Launcher
Super + Shift + Z Rofi Launcher
Super + j/k/l/, Change Focus
Super + Arrows Change Focus (Curser Keys)
Super + Shift + j/k/l/, Move Focused Window
Super + Shift + Arrows Move Focused Window (Curser Keys)
Super + F Full Screen the Focused Window
Super + R Enter the Resize Mode
Super + H/V Change Split Direction (horizontal/vertical)
Super + Shift + A Show Window on Active Workspace
Super + Shift + Space Toggle Floating/Tiling Mode on a Window
Super + Space Change Focus between Floating/Tiling windows
Super + N Change Current Workspace's Name
Super + 1-9 Switch to Workspace 1-9
Super + Shift + 1-9 Move Focused Window to Workspace 1-9
Super + Shift + R Restart i3 Window Manager
Super + Shift + E Exit i3 Window Manager

Custom Keybinds

Key Functionality
PrtSc Capturing Screen Shot Using scrot
Super + PrtSc Capturing Focused Window's Screen

.config/i3/config

I have done some extra configuration on my keyboard:

Adjust Volume : I use pactl(PulseAudio) to change my volume.

bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status

Adjust Brightness : I use light for changing brightness.

bindsym XF86MonBrightnessUp exec --no-startup-id light -A 10%
bindsym XF86MonBrightnessDown exec --no-startup-id light -U 10%

Control Music : I use mpc to take control:

bindsym XF86AudioPlay exec --no-startup-id "mpc toggle"
bindsym XF86AudioNext exec --no-startup-id "mpc next"
bindsym XF86AudioPrev exec --no-startup-id "mpc prev"

.config/i3status/config

Default settings:

#order += "load"
order += "disk /"
#order += "disk /home"
#order += "wireless _first_"
#order += "ethernet _first_"
order += "battery all"
order += "volume all"
order += "tztime local"

Commenting modules will disable them:

order += "disk /"
->
#order += "disk /"

@ Disabled 'remaining available disk' module

Commenting modules will enable them:

#order += "load"
->
order += "load"

@ Enabled 'load average' module