aboutsummaryrefslogtreecommitdiff
path: root/tw/home/files/i3.conf
diff options
context:
space:
mode:
authorTimo Wilken2024-03-09 14:52:56 +0100
committerTimo Wilken2024-03-10 16:19:00 +0100
commitde20fc8d904643ffe6957febfc6a24e57c12b512 (patch)
tree8177459e40786bd432a37c5833f26350fb689356 /tw/home/files/i3.conf
parentda5e9d5ee98dfc216eb7e3b1559c09f4bf868bf6 (diff)
Separate home service into PIM, dev env and graphical parts
This means we only instantiate Shepherd and mcron services if we really need them, to avoid annoyance on servers.
Diffstat (limited to 'tw/home/files/i3.conf')
-rw-r--r--tw/home/files/i3.conf273
1 files changed, 0 insertions, 273 deletions
diff --git a/tw/home/files/i3.conf b/tw/home/files/i3.conf
deleted file mode 100644
index 10ae1133..00000000
--- a/tw/home/files/i3.conf
+++ /dev/null
@@ -1,273 +0,0 @@
-#
-# i3 config file (v4)
-#
-# Please see http://i3wm.org/docs/userguide.html for a complete reference!
-# Use xev to see keycodes for special keys.
-
-# Appearance and Styling {{{
-# Font for window titles. Will also be used by the bar unless a different font
-# is used in the bar {} block below.
-font pango:Fira Sans 10
-
-title_align center
-default_border pixel 3
-default_floating_border pixel 3
-hide_edge_borders smart
-gaps inner 15
-gaps outer 0
-smart_gaps on
-
-# Catppuccin colours
-# Foregrounds
-set $c_fg #cdd6f4
-set $c_inactive #7f849c
-# Backgrounds
-set $c_bg #11111b
-set $c_active #585b70
-set $c_urgent #f9e2af
-
-# class border background text indicator child_border
-client.focused $c_active $c_active $c_fg $c_active $c_active
-client.focused_inactive $c_bg $c_bg $c_fg $c_bg $c_bg
-client.unfocused $c_bg $c_bg $c_inactive $c_bg $c_bg
-client.urgent $c_urgent $c_urgent $c_fg $c_urgent $c_urgent
-client.placeholder $c_bg $c_bg $c_inactive $c_bg $c_bg
-client.background $c_bg
-# }}}
-
-# Basic Configuration {{{
-# use the Super key as $mod
-set $mod Mod4
-
-# Use Mouse+$mod to drag floating windows to their wanted position
-floating_modifier $mod
-
-# essential applications
-bindsym $mod+Return exec kitty "--directory=$(xcwd)"
-bindsym $mod+i exec icecat --new-window
-bindsym $mod+shift+i exec icecat --new-tab "$(xclip -out)"
-bindsym $mod+e exec $ASYNC_EDITOR
-# Use ASYNC_EDITOR so I can continue using ranger while the editor
-# remains open in a separate window.
-bindsym $mod+slash exec EDITOR=$ASYNC_EDITOR kitty ranger "$(xcwd)"
-bindsym $mod+semicolon exec --no-startup-id nheko
-bindsym $mod+shift+colon exec --no-startup-id kitty aerc
-bindsym $mod+y exec kitty pulsemixer
-
-# volume
-bindsym XF86AudioRaiseVolume exec --no-startup-id volume +5
-bindsym XF86AudioLowerVolume exec --no-startup-id volume -5
-bindsym XF86AudioMute exec --no-startup-id volume toggle-mute
-
-# notifications
-bindsym $mod+n exec dunstctl close
-bindsym $mod+shift+n exec dunstctl history-pop
-bindsym $mod+period exec dunstctl context
-
-# screen locking
-bindsym $mod+shift+slash exec screenlock
-
-# kill focused window
-bindsym $mod+shift+q kill
-
-# rofi menus
-bindsym $mod+d exec rofi -show combi
-bindsym $mod+shift+e exec rofi -show session:sessionmenu
-# When selecting a history line in rofi-calc, it is printed; copy it so we can use it elsewhere.
-bindsym $mod+q exec rofi -show calc | xclip -quiet -i -rmlastnl -selection clipboard
-bindsym $mod+p exec passmenu --type-all
-bindsym $mod+shift+p exec passmenu --type-pass
-bindsym $mod+o exec passmenu --type-otp
-bindsym $mod+comma exec rofi-colors.sh
-bindsym $mod+shift+Return exec rofi -show ssh
-# }}}
-
-# Basic Movement {{{
-# change focus
-bindsym $mod+h focus left
-bindsym $mod+j focus down
-bindsym $mod+k focus up
-bindsym $mod+l focus right
-bindsym $mod+Left focus left
-bindsym $mod+Down focus down
-bindsym $mod+Up focus up
-bindsym $mod+Right focus right
-
-# move focused window
-bindsym $mod+shift+h move left
-bindsym $mod+shift+j move down
-bindsym $mod+shift+k move up
-bindsym $mod+shift+l move right
-bindsym $mod+shift+Left move left
-bindsym $mod+shift+Down move down
-bindsym $mod+shift+Up move up
-bindsym $mod+shift+Right move right
-
-bindsym $mod+a focus parent
-bindsym $mod+shift+a focus child
-# }}}
-
-# Layout {{{
-bindsym $mod+b split h
-bindsym $mod+v split v
-
-# enter fullscreen mode for the focused container
-bindsym $mod+f fullscreen toggle
-bindsym $mod+shift+f floating enable, resize set 1920 1080, move position 0 0
-
-# change container layout (stacked, tabbed, toggle split)
-bindsym $mod+s layout stacking
-bindsym $mod+w layout tabbed
-bindsym $mod+x layout toggle split
-
-bindsym $mod+shift+space floating toggle
-# change focus between tiling / floating windows
-bindsym $mod+space focus mode_toggle
-
-# scratchpad
-bindsym $mod+numbersign scratchpad show
-bindsym $mod+shift+numbersign move to scratchpad
-bindsym $mod+apostrophe sticky disable, floating disable
-bindsym $mod+shift+apostrophe sticky enable, floating enable
-
-# move workspaces
-bindsym $mod+shift+comma move workspace to output left
-bindsym $mod+shift+period move workspace to output right
-# }}}
-
-# Default Workspaces {{{
-# switch to workspace
-bindsym $mod+Escape workspace back_and_forth
-bindsym $mod+1 workspace 1
-bindsym $mod+2 workspace 2
-bindsym $mod+3 workspace 3
-bindsym $mod+4 workspace 4
-bindsym $mod+5 workspace 5
-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+parenleft workspace prev
-bindsym $mod+parenright workspace next
-
-# move focused container to workspace
-bindsym $mod+shift+Escape move container to workspace back_and_forth
-bindsym $mod+shift+1 move container to workspace 1
-bindsym $mod+shift+2 move container to workspace 2
-bindsym $mod+shift+3 move container to workspace 3
-bindsym $mod+shift+4 move container to workspace 4
-bindsym $mod+shift+5 move container to workspace 5
-bindsym $mod+shift+6 move container to workspace 6
-bindsym $mod+shift+7 move container to workspace 7
-bindsym $mod+shift+8 move container to workspace 8
-bindsym $mod+shift+9 move container to workspace 9
-bindsym $mod+shift+0 move container to workspace 10
-bindsym $mod+shift+parenleft move container to workspace prev
-bindsym $mod+shift+parenright move container to workspace next
-# }}}
-
-# Custom Workspaces {{{
-set $ws_terminal 0:>_
-bindsym $mod+grave workspace "$ws_terminal"
-bindsym $mod+shift+grave move container to workspace "$ws_terminal"
-
-set $ws_coding 50:🖊️
-bindsym $mod+c workspace "$ws_coding"
-bindsym $mod+shift+c move container to workspace "$ws_coding"
-
-set $ws_games 60:🎮
-bindsym $mod+g workspace "$ws_games"
-bindsym $mod+shift+g move container to workspace "$ws_games"
-
-set $ws_music 80:🎵
-bindsym $mod+u workspace "$ws_music"
-bindsym $mod+shift+u move container to workspace "$ws_music"
-
-set $ws_messaging 90:💬
-bindsym $mod+m workspace "$ws_messaging"
-bindsym $mod+shift+m move container to workspace "$ws_messaging"
-
-# set default screens for workspaces
-# laptop: eDP-1-1 is the laptop screen, HDMI-0 is the external screen.
-# work desktop: DP-1-8 is on the left, DP-2 is the wide screen on the right.
-# The first workspaces listed for each output will be active at startup.
-workspace 1 output HDMI-0 DP-1-8
-workspace "$ws_messaging" output eDP-1-1 DP-2
-workspace 2 output HDMI-0 DP-1-8
-workspace 3 output HDMI-0 DP-1-8
-workspace 4 output HDMI-0 DP-1-8
-workspace 5 output HDMI-0 DP-1-8
-workspace 6 output eDP-1-1 DP-2
-workspace 7 output eDP-1-1 DP-2
-workspace 8 output eDP-1-1 DP-2
-workspace 9 output eDP-1-1 DP-2
-workspace 10 output eDP-1-1 DP-2
-workspace "$ws_terminal" output eDP-1-1 DP-1-8
-workspace "$ws_coding" output HDMI-0 DP-2
-workspace "$ws_games" output HDMI-0 DP-1-8
-workspace "$ws_music" output eDP-1-1 DP-1-8
-
-assign [class="^Franz$"] "$ws_messaging"
-assign [window_role="^weechat$"] "$ws_messaging"
-assign [window_role="^mutt$"] "$ws_messaging"
-assign [class="^evolution-initial$"] "$ws_messaging"
-assign [class="^kontact$"] "$ws_messaging"
-
-# NOTE: no_focus will also be ignored for the first window on a workspace as
-# there shouldn’t be a reason to not focus the window in this case. This allows
-# for better usability in combination with workspace_layout. (From i3 docs)
-#no_focus [class="^Franz$"]
-#no_focus [window_role="^weechat$"]
-#no_focus [window_role="^mutt$"]
-#no_focus [class="^evolution-initial$"]
-
-## PlayOnLinux
-for_window [title="PlayOnLinux"] floating enable
-
-## Plasma/KDE: https://ryanlue.com/posts/2019-06-13-kde-i3
-# Don’t treat Plasma pop-ups as full-sized windows
-for_window [class="plasmashell"] floating enable
-# Don’t spawn an empty window for the Plasma Desktop
-for_window [title="Desktop — Plasma"] move scratchpad
-# Don’t let notifications and non-interactive pop-up windows steal focus
-#no_focus [class="plasmashell" window_type="on_screen_display"]
-# https://github.com/heckelson/i3-and-kde-plasma
-# Move notifications to top-right corner.
-#for_window [class="plasmashell" window_type="notification"] move up 400, move right 750, no_focus
-# Notifications appear in the centre of the screen. According to
-# https://old.reddit.com/r/i3wm/comments/bw1yfs/kde_notifications_appearing_in_the_centre_of/,
-# setting notifications to appear in the top-left corner gets placement right.
-no_focus [class="plasmashell" window_type="notification"]
-
-for_window [class="^Pyneedle$"] floating enable
-for_window [instance="^emacs-initial$"] floating enable
-for_window [class="^Spotify$"] move container to workspace "$ws_music"
-for_window [class="^Pidgin$"] move container to workspace "$ws_messaging"
-for_window [class="^kitty$" title="^aerc$"] move container to workspace "$ws_messaging"
-# annoying pop-up from Bluetooth network manager
-for_window [class="^.blueman-applet-real$"] kill
-# }}}
-
-# Modes {{{
-mode "resize" {
- bindsym h resize shrink width 10 px or 10 ppt
- bindsym j resize grow height 10 px or 10 ppt
- bindsym k resize shrink height 10 px or 10 ppt
- bindsym l resize grow width 10 px or 10 ppt
-
- bindsym shift+h resize shrink width 5 px or 5 ppt
- bindsym shift+j resize grow height 5 px or 5 ppt
- bindsym shift+k resize shrink height 5 px or 5 ppt
- bindsym shift+l resize grow width 5 px or 5 ppt
-
- 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
-
- bindsym Return mode "default"
- bindsym Escape mode "default"
-}
-bindsym $mod+r mode "resize"
-# }}}