diff options
author | Blaise Thompson <blaise@untzag.com> | 2019-03-20 19:00:29 -0500 |
---|---|---|
committer | Blaise Thompson <blaise@untzag.com> | 2019-03-20 19:00:29 -0500 |
commit | 7d6cad8c27ad9dbb1da11296d5804963aaa29c25 (patch) | |
tree | 1950b30b771afb17600c24eac93761828f2834e0 /i3/#config# | |
parent | bfab5a4e382917435dd0ddcf626cb2815e2ddba3 (diff) |
2019-03-20 19:00
Diffstat (limited to 'i3/#config#')
-rw-r--r-- | i3/#config# | 197 |
1 files changed, 197 insertions, 0 deletions
diff --git a/i3/#config# b/i3/#config# new file mode 100644 index 0000000..c1ace02 --- /dev/null +++ b/i3/#config# @@ -0,0 +1,197 @@ +# i3 config file (v4) +# +# Please see http://i3wm.org/docs/userguide.html for a complete reference! + + +# --- basics -------------------------------------------------------------------------------------- + +set $mod Mod4 + +font pango:DejaVu Sans Mono 10 + +# default workspace layout <default|stacking|tabbed> +workspace_layout stacking + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# start a terminal +#bindsym $mod+Return exec i3-sensible-terminal +bindsym $mod+Return exec xterm +bindsym $mod+Shift+Return exec qutebrowser + + +# kill focused window +bindsym $mod+Shift+q kill + +# launcher +bindsym $mod+d exec rofi -show run -hide-scrollbar -separator-style "solid" + +# reload the configuration file +bindsym $mod+Shift+c reload + +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart + +# exit i3 (logs you out of your X session) +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'" + + +# --- custom shortcuts ---------------------------------------------------------------------------- + + +# i3lock +bindsym $mod+l exec i3lock -c 000000 && exec xset dpms force off + +# touchpad toggle +bindsym $mod+t exec ~/.config/i3/toggle_mouse.sh + + +# --- navigation ---------------------------------------------------------------------------------- + + +# change focus +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+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +# split in horizontal orientation +bindsym $mod+h split h + +# split in vertical orientation +bindsym $mod+v split v + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+Shift+f focus mode_toggle + +# focus the parent container +bindsym $mod+a focus parent + +# focus the child container +#bindsym $mod+d focus child + +# switch to workspace +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+b workspace B +bindsym $mod+c workspace C +bindsym $mod+x workspace X +bindsym $mod+space workspace ~ + +# move focused container to workspace +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 + +# resize window (you can also use the mouse for that) +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym j resize shrink width 10 px or 10 ppt + bindsym k resize grow height 10 px or 10 ppt + bindsym l resize shrink height 10 px or 10 ppt + bindsym semicolon resize grow width 10 px or 10 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 + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + +bindsym $mod+r mode "resize" + +bindsym $mod+Tab workspace back_and_forth + +bindsym $mod+Shift+Tab move workspace to output right + +# --- theme --------------------------------------------------------------------------------------- + + +# colors --- https://github.com/chriskempson/tomorrow-theme +set $background #1d1f21 +set $current #282a2e +set $selection #373b41 +set $foreground #c5c8c6 +set $comment #969896 +set $red #cc6666 +set $orange #de935f +set $yellow #f0c674 + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +bar { + status_command i3blocks + position top + colors { + background $selection + focused_workspace $selection $selection $yellow + inactive_workspace $selection $selection $foreground + } +} + +# class border background text indicator child_border +client.focused $selection $selection $yellow $red $yellow +client.focused_inactive $selection $selection $yellow $red $selection +client.unfocused $selection $selection $comment $red $selection +client.urgent $selection $selection $red $red $red +client.placeholder #282a2e #0c0c0c #ffffff #000000 #0c0c0c +client.background $background + +for_window [class="^.*"] border pixel 5 +hide_edge_borders smart + + +# --- software ------------------------------------------------------------------------------------ + +exec xrdb ~/.Xresources +exec --no-startup-id /usr/libexec/gnome-settings-daemon-localeexec +exec --no-startup-id /usr/lib/gnome-settings-daemon/gsd-xsettings +exec --no-startup-id dconf write /org/gnome/settings-daemon/plugins/cursor/active false +exec --no-startup-id xsetroot -solid "#000000" + +exec xset s off -dpms +exec xset -b # never beep + +exec-always --no-startup-id dunst -config ~/.dunstrc |