Remove unnecessary parts of i3 conf and refine settings

This commit is contained in:
Vili Sinervä 2024-07-12 18:40:14 +03:00
parent baaa54e59c
commit e82ef3576b
No known key found for this signature in database
GPG key ID: DF8FEAF54EFAC996

256
i3.nix
View file

@ -71,106 +71,6 @@ pkgs.writeText "i3-conf" ''
# Set mod key (Mod1=<Alt>, Mod4=<Super>) # Set mod key (Mod1=<Alt>, Mod4=<Super>)
set $mod Mod4 set $mod Mod4
# Workspace names
# to display names or symbols instead of plain workspace numbers you can use
set $ws1 1
set $ws2 2
set $ws3 3
set $ws4 4
set $ws5 5
set $ws6 6
set $ws7 7
set $ws8 8
set $ws9 9
set $ws10 10
set $ws11 11
set $ws12 12
set $ws13 13
set $ws14 14
set $ws15 15
set $ws16 16
set $ws17 17
set $ws18 18
set $ws19 19
set $ws20 20
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
bindsym $mod+Mod1+1 workspace $ws11
bindsym $mod+Mod1+2 workspace $ws12
bindsym $mod+Mod1+3 workspace $ws13
bindsym $mod+Mod1+4 workspace $ws14
bindsym $mod+Mod1+5 workspace $ws15
bindsym $mod+Mod1+6 workspace $ws16
bindsym $mod+Mod1+7 workspace $ws17
bindsym $mod+Mod1+8 workspace $ws18
bindsym $mod+Mod1+9 workspace $ws19
bindsym $mod+Mod1+0 workspace $ws20
# Move focused container to workspace
bindsym $mod+Ctrl+1 move container to workspace $ws1
bindsym $mod+Ctrl+2 move container to workspace $ws2
bindsym $mod+Ctrl+3 move container to workspace $ws3
bindsym $mod+Ctrl+4 move container to workspace $ws4
bindsym $mod+Ctrl+5 move container to workspace $ws5
bindsym $mod+Ctrl+6 move container to workspace $ws6
bindsym $mod+Ctrl+7 move container to workspace $ws7
bindsym $mod+Ctrl+8 move container to workspace $ws8
bindsym $mod+Ctrl+9 move container to workspace $ws9
bindsym $mod+Ctrl+0 move container to workspace $ws10
bindsym $mod+Mod1+Ctrl+1 move container to workspace $ws11
bindsym $mod+Mod1+Ctrl+2 move container to workspace $ws12
bindsym $mod+Mod1+Ctrl+3 move container to workspace $ws13
bindsym $mod+Mod1+Ctrl+4 move container to workspace $ws14
bindsym $mod+Mod1+Ctrl+5 move container to workspace $ws15
bindsym $mod+Mod1+Ctrl+6 move container to workspace $ws16
bindsym $mod+Mod1+Ctrl+7 move container to workspace $ws17
bindsym $mod+Mod1+Ctrl+8 move container to workspace $ws18
bindsym $mod+Mod1+Ctrl+9 move container to workspace $ws19
bindsym $mod+Mod1+Ctrl+0 move container to workspace $ws20
# Move to workspace with focused container
bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10; workspace $ws10
bindsym $mod+Mod1+Shift+1 move container to workspace $ws11; workspace $ws11
bindsym $mod+Mod1+Shift+2 move container to workspace $ws12; workspace $ws12
bindsym $mod+Mod1+Shift+3 move container to workspace $ws13; workspace $ws13
bindsym $mod+Mod1+Shift+4 move container to workspace $ws14; workspace $ws14
bindsym $mod+Mod1+Shift+5 move container to workspace $ws15; workspace $ws15
bindsym $mod+Mod1+Shift+6 move container to workspace $ws16; workspace $ws16
bindsym $mod+Mod1+Shift+7 move container to workspace $ws17; workspace $ws17
bindsym $mod+Mod1+Shift+8 move container to workspace $ws18; workspace $ws18
bindsym $mod+Mod1+Shift+9 move container to workspace $ws19; workspace $ws19
bindsym $mod+Mod1+Shift+0 move container to workspace $ws20; workspace $ws20
# Configure border style <normal|1pixel|pixel xx|none|pixel>
default_border pixel 3
default_floating_border normal
# Hide borders
hide_edge_borders none
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font xft:URWGothic-Book 14
# Use Mouse+$mod to drag floating windows # Use Mouse+$mod to drag floating windows
floating_modifier $mod floating_modifier $mod
@ -181,7 +81,7 @@ pkgs.writeText "i3-conf" ''
bindsym $mod+Shift+q kill bindsym $mod+Shift+q kill
# start program launcher # start program launcher
bindsym $mod+d exec --no-startup-id "rofi -theme 'Arc-Dark' -show combi -combi-modes 'run,ssh' -modes combi" bindsym $mod+d exec --no-startup-id "rofi -theme 'Arc-Dark' -show combi -combi-modes 'window,drun,run' -modes combi"
# change focus # change focus
bindsym $mod+h focus left bindsym $mod+h focus left
@ -208,16 +108,12 @@ pkgs.writeText "i3-conf" ''
bindsym $mod+Shift+Right move right bindsym $mod+Shift+Right move right
# split orientation # split orientation
bindsym $mod+e split h;exec notify-send 'tile horizontally' bindsym $mod+s split h
bindsym $mod+v split v;exec notify-send 'tile vertically' bindsym $mod+v split v
# toggle fullscreen mode for the focused container # toggle fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
# toggle tiling / floating # toggle tiling / floating
bindsym $mod+Shift+space floating toggle bindsym $mod+Shift+space floating toggle
@ -230,7 +126,6 @@ pkgs.writeText "i3-conf" ''
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart bindsym $mod+Shift+r restart
# Resize window (you can also use the mouse for that)
bindsym $mod+r mode "resize" bindsym $mod+r mode "resize"
mode "resize" { mode "resize" {
bindsym h resize shrink width 5 px or 5 ppt bindsym h resize shrink width 5 px or 5 ppt
@ -238,86 +133,105 @@ pkgs.writeText "i3-conf" ''
bindsym k resize shrink height 5 px or 5 ppt bindsym k resize shrink height 5 px or 5 ppt
bindsym l resize grow width 5 px or 5 ppt bindsym l resize grow width 5 px or 5 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# exit resize mode: Enter or Escape
bindsym Return mode "default" bindsym Return mode "default"
bindsym Escape mode "default" bindsym Escape mode "default"
} }
# Color palette used for the terminal ( ~/.Xresources file ) # Configure border style <normal|1pixel|pixel xx|none|pixel>
# Colors are gathered based on the documentation: default_border pixel 3
# https://i3wm.org/docs/userguide.html#xresources
# Change the variable name at the place you want to match the color exec --no-startup-id nm-applet --sm-disable
# of your terminal like this:
# [example] # Screen brightness controls
# If you want your bar to have the same background color as your bindcode 232 exec --no-startup-id brightnessctl set 5%-
# terminal background change the line 362 from: bindcode 233 exec --no-startup-id brightnessctl set 5%+
# background #14191D
# to: for_window [window_type="notification"] floating enable
# background $term_background
# Same logic applied to everything else. gaps inner 2
set_from_resource $term_background background
set_from_resource $term_foreground foreground font xft:DejaVuSansMono-Book 14
# Start i3bar to display a workspace bar (plus the system information i3status if available)
bar { bar {
i3bar_command i3bar i3bar_command i3bar
status_command i3status -c ${i3status-conf} status_command i3status -c ${i3status-conf}
position bottom
## please set your primary output first. Example: 'xrandr --output eDP1 --primary' ## please set your primary output first. Example: 'xrandr --output eDP1 --primary'
tray_output primary tray_output primary
bindsym button4 nop
bindsym button5 nop
strip_workspace_numbers yes
colors { colors {
background #222D31 background #0f212f
statusline #F9FAF9 statusline #d0d0d0
separator #454947 separator #d0d0d0
# border backgr. text # border back. text
focused_workspace #F9FAF9 #16a085 #292F34 active_workspace #303030 #505050 #d0d0d0
active_workspace #595B5B #353836 #FDF6E3
inactive_workspace #595B5B #222D31 #EEE8D5
binding_mode #16a085 #2C2C2C #F9FAF9
urgent_workspace #16a085 #FDF6E3 #E5201D
} }
} }
# Theme colors # switch to workspace
# class border backgr. text indic. child_border bindsym $mod+1 workspace 1
client.focused #556064 #556064 #80FFF9 #FDF6E3 bindsym $mod+2 workspace 2
client.focused_inactive #2F3D44 #2F3D44 #1ABC9C #454948 bindsym $mod+3 workspace 3
client.unfocused #2F3D44 #2F3D44 #1ABC9C #454948 bindsym $mod+4 workspace 4
client.urgent #CB4B16 #FDF6E3 #1ABC9C #268BD2 bindsym $mod+5 workspace 5
client.placeholder #000000 #0c0c0c #ffffff #000000 bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10
bindsym $mod+Mod1+1 workspace 11
bindsym $mod+Mod1+2 workspace 12
bindsym $mod+Mod1+3 workspace 13
bindsym $mod+Mod1+4 workspace 14
bindsym $mod+Mod1+5 workspace 15
bindsym $mod+Mod1+6 workspace 16
bindsym $mod+Mod1+7 workspace 17
bindsym $mod+Mod1+8 workspace 18
bindsym $mod+Mod1+9 workspace 19
bindsym $mod+Mod1+0 workspace 20
client.background #2B2C2B # Move focused container to workspace
bindsym $mod+Ctrl+1 move container to workspace 1
bindsym $mod+Ctrl+2 move container to workspace 2
bindsym $mod+Ctrl+3 move container to workspace 3
bindsym $mod+Ctrl+4 move container to workspace 4
bindsym $mod+Ctrl+5 move container to workspace 5
bindsym $mod+Ctrl+6 move container to workspace 6
bindsym $mod+Ctrl+7 move container to workspace 7
bindsym $mod+Ctrl+8 move container to workspace 8
bindsym $mod+Ctrl+9 move container to workspace 9
bindsym $mod+Ctrl+0 move container to workspace 10
bindsym $mod+Mod1+Ctrl+1 move container to workspace 11
bindsym $mod+Mod1+Ctrl+2 move container to workspace 12
bindsym $mod+Mod1+Ctrl+3 move container to workspace 13
bindsym $mod+Mod1+Ctrl+4 move container to workspace 14
bindsym $mod+Mod1+Ctrl+5 move container to workspace 15
bindsym $mod+Mod1+Ctrl+6 move container to workspace 16
bindsym $mod+Mod1+Ctrl+7 move container to workspace 17
bindsym $mod+Mod1+Ctrl+8 move container to workspace 18
bindsym $mod+Mod1+Ctrl+9 move container to workspace 19
bindsym $mod+Mod1+Ctrl+0 move container to workspace 20
############################# # Move to workspace with focused container
### settings for i3-gaps: ### bindsym $mod+Shift+1 move container to workspace 1; workspace 1
############################# bindsym $mod+Shift+2 move container to workspace 2; workspace 2
bindsym $mod+Shift+3 move container to workspace 3; workspace 3
# Set inner/outer gaps bindsym $mod+Shift+4 move container to workspace 4; workspace 4
gaps inner 2 bindsym $mod+Shift+5 move container to workspace 5; workspace 5
gaps outer 0 bindsym $mod+Shift+6 move container to workspace 6; workspace 6
bindsym $mod+Shift+7 move container to workspace 7; workspace 7
# Smart gaps (gaps used if only more than one container on the workspace) bindsym $mod+Shift+8 move container to workspace 8; workspace 8
smart_gaps on bindsym $mod+Shift+9 move container to workspace 9; workspace 9
bindsym $mod+Shift+0 move container to workspace 10; workspace 10
# Smart borders (draw borders around container only if it is not the only container on this workspace) bindsym $mod+Mod1+Shift+1 move container to workspace 11; workspace 11
smart_borders on bindsym $mod+Mod1+Shift+2 move container to workspace 12; workspace 12
bindsym $mod+Mod1+Shift+3 move container to workspace 13; workspace 13
# Screen brightness controls bindsym $mod+Mod1+Shift+4 move container to workspace 14; workspace 14
bindcode 232 exec brightnessctl set 5%- bindsym $mod+Mod1+Shift+5 move container to workspace 15; workspace 15
bindcode 233 exec --no-startup-id brightnessctl set 5%+ bindsym $mod+Mod1+Shift+6 move container to workspace 16; workspace 16
bindsym $mod+Mod1+Shift+7 move container to workspace 17; workspace 17
exec --no-startup-id nm-applet --sm-disable bindsym $mod+Mod1+Shift+8 move container to workspace 18; workspace 18
bindsym $mod+Mod1+Shift+9 move container to workspace 19; workspace 19
bindsym $mod+Mod1+Shift+0 move container to workspace 20; workspace 20
'' ''