]> git.vanrenterghem.biz Git - Dotty.git/blob - i3/.config/i3/config
9fbef1f63afc616e2d61834fa16fa37daf708b15
[Dotty.git] / i3 / .config / i3 / config
1 # This file has been auto-generated by i3-config-wizard(1).
2 # It will not be overwritten, so edit it as you like.
3 #
4 # Should you change your keyboard layout some time, delete
5 # this file and re-run i3-config-wizard(1).
6 #
8 # i3 config file (v4)
9 #
10 # Please see https://i3wm.org/docs/userguide.html for a complete reference!
12 # Set up laptop monitor as primary screen and external screen on its right
13 # Managed by autorandr
14 exec --no-startup-id autorandr --change
15 #exec_always --no-startup-id xrandr --output eDP-1 --mode 2048x1152 --primary \
16 #     --output DP-1-2 --auto --mode 2560x1440 --right-of eDP-1
18 set $mod Mod4
20 # Move the current workspace to the next output
21 # (effectively toggles when you only have two outputs)
22 bindsym $mod+x move workspace to output next
24 # Font for window titles. Will also be used by the bar unless a different font
25 # is used in the bar {} block below.
26 font pango:monospace 8
28 # This font is widely installed, provides lots of unicode glyphs, right-to-left
29 # text rendering and scalability on retina/hidpi displays (thanks to pango).
30 #font pango:DejaVu Sans Mono 8
32 # The combination of xss-lock, nm-applet and pactl is a popular choice, so
33 # they are included here as an example. Modify as you see fit.
35 # xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
36 # screen before suspend. Use loginctl lock-session to lock your screen.
37 exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
39 # NetworkManager is the most popular way to manage wireless networks on Linux,
40 # and nm-applet is a desktop environment-independent system tray GUI for it.
41 exec --no-startup-id nm-applet
43 ## Control brightness
44 bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl set +5%
45 bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl set 5%-
47 # Use pactl to adjust volume in PulseAudio.
48 # Notification via dunst - TODO refactor as per https://github.com/dunst-project/dunst/blob/master/contrib/progress-notify.sh
49 exec --no-startup-id dunst
51 set $refresh_i3status killall -SIGUSR1 i3status
52 bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status && dunstify -a "changeVolume" -u low -i audio-volume-medium \
53     -h int:value:"$(pamixer --get-volume)" "Volume: $(pamixer --get-volume)%" \
54     -h string:x-dunst-stack-tag:volume \
55     -h string:hlcolor:#3397ff
56 bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && \
57 $refresh_i3status && \
58 dunstify -a "changeVolume" -u low -i audio-volume-low \
59     -h int:value:"$(pamixer --get-volume)" "Volume: $(pamixer --get-volume)%" \
60     -h string:x-dunst-stack-tag:volume \
61     -h string:hlcolor:#3397ff
62     
63 bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status && dunstify -t 2000 -u low -i audio-volume-muted \
64 -h string:x-dunst-stack-tag:volume "Muted"
66 bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
68 # Use Mouse+$mod to drag floating windows to their wanted position
69 floating_modifier $mod
71 # start a terminal
72 bindsym $mod+Return exec i3-sensible-terminal
74 # kill focused window
75 bindsym $mod+Shift+q kill
77 # start dmenu (a program launcher)
78 bindsym $mod+d exec dmenu_run
79 # There also is the (new) i3-dmenu-desktop which only displays applications
80 # shipping a .desktop file. It is a wrapper around dmenu, so you need that
81 # installed.
82 # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
84 # switch light on
85 bindsym $mod+l exec --no-startup-id ~/scripts/keylights.sh toggle
87 # change focus using the cursor keys:
88 bindsym $mod+Left focus left
89 bindsym $mod+Down focus down
90 bindsym $mod+Up focus up
91 bindsym $mod+Right focus right
93 # move focused window
94 bindsym $mod+Shift+j move left
95 bindsym $mod+Shift+k move down
96 bindsym $mod+Shift+l move up
97 bindsym $mod+Shift+semicolon move right
99 # alternatively, you can use the cursor keys:
100 bindsym $mod+Shift+Left move left
101 bindsym $mod+Shift+Down move down
102 bindsym $mod+Shift+Up move up
103 bindsym $mod+Shift+Right move right
105 # split in horizontal orientation
106 bindsym $mod+h split h
108 # split in vertical orientation
109 bindsym $mod+v split v
111 # enter fullscreen mode for the focused container
112 bindsym $mod+f fullscreen toggle
114 # change container layout (stacked, tabbed, toggle split)
115 bindsym $mod+s layout stacking
116 bindsym $mod+w layout tabbed
117 bindsym $mod+e layout toggle split
119 # toggle tiling / floating
120 bindsym $mod+Shift+space floating toggle
122 # change focus between tiling / floating windows
123 bindsym $mod+space focus mode_toggle
125 # focus the parent container
126 bindsym $mod+a focus parent
128 # focus the child container
129 #bindsym $mod+d focus child
131 # Define names for default workspaces for which we configure key bindings later on.
132 # We use variables to avoid repeating the names in multiple places.
133 set $ws1 "1"
134 set $ws2 "2"
135 set $ws3 "3"
136 set $ws4 "4"
137 set $ws5 "5"
138 set $ws6 "6"
139 set $ws7 "7"
140 set $ws8 "8"
141 set $ws9 "9"
142 set $ws10 "10"
143  
144 # switch to workspace
145 bindsym $mod+1 workspace number $ws1
146 bindsym $mod+2 workspace number $ws2
147 bindsym $mod+3 workspace number $ws3
148 bindsym $mod+4 workspace number $ws4
149 bindsym $mod+5 workspace number $ws5
150 bindsym $mod+6 workspace number $ws6
151 bindsym $mod+7 workspace number $ws7
152 bindsym $mod+8 workspace number $ws8
153 bindsym $mod+9 workspace number $ws9
154 bindsym $mod+0 workspace number $ws10
156 # move focused container to workspace
157 bindsym $mod+Shift+1 move container to workspace number $ws1
158 bindsym $mod+Shift+2 move container to workspace number $ws2
159 bindsym $mod+Shift+3 move container to workspace number $ws3
160 bindsym $mod+Shift+4 move container to workspace number $ws4
161 bindsym $mod+Shift+5 move container to workspace number $ws5
162 bindsym $mod+Shift+6 move container to workspace number $ws6
163 bindsym $mod+Shift+7 move container to workspace number $ws7
164 bindsym $mod+Shift+8 move container to workspace number $ws8
165 bindsym $mod+Shift+9 move container to workspace number $ws9
166 bindsym $mod+Shift+0 move container to workspace number $ws10
168 # reload the configuration file
169 bindsym $mod+Shift+c reload
170 # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
171 bindsym $mod+Shift+r restart
172 # exit i3 (logs you out of your X session)
173 bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
175 # resize window (you can also use the mouse for that)
176 mode "resize" {
177         # These bindings trigger as soon as you enter the resize mode
179         # Pressing left will shrink the window’s width.
180         # Pressing right will grow the window’s width.
181         # Pressing up will shrink the window’s height.
182         # Pressing down will grow the window’s height.
183         bindsym j resize shrink width 10 px or 10 ppt
184         bindsym k resize grow height 10 px or 10 ppt
185         bindsym l resize shrink height 10 px or 10 ppt
186         bindsym semicolon resize grow width 10 px or 10 ppt
188         # same bindings, but for the arrow keys
189         bindsym Left resize shrink width 10 px or 10 ppt
190         bindsym Down resize grow height 10 px or 10 ppt
191         bindsym Up resize shrink height 10 px or 10 ppt
192         bindsym Right resize grow width 10 px or 10 ppt
194         # back to normal: Enter or Escape or $mod+r
195         bindsym Return mode "default"
196         bindsym Escape mode "default"
197         bindsym $mod+r mode "default"
200 bindsym $mod+r mode "resize"
202 # Start i3bar to display a workspace bar (plus the system information i3status
203 # finds out, if available)
204 bar {
205         status_command i3status
209 # Display Wallpaper
210 exec_always feh --bg-fill images/20180418T1659__Outback_regenboog.jpg
212 # Take a screenshot upon pressing PrtSc (select an area)
213 bindsym --release Print exec --no-startup-id import /tmp/`date +%Y%m%dT%H%M%S`--screenshot-`hostname`.png
215 # Take a screenshot upon pressing PrtSc (select an area)
216 bindsym --release Shift+Print exec --no-startup-id import -window root /tmp/`date +%Y%m%dT%H%M%S`--screenshot-`hostname`.png