dustin
/
i3
Archived
1
0
Fork 0
This repository has been archived on 2023-11-14. You can view files and clone it, but cannot push or open issues/pull-requests.
i3/config

227 lines
7.8 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# i3 config file (v4)
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
# default modifier key is Alt
set $mod Mod1
# alternate modifier key is Win
set $modb Mod4
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below. ISO 10646 = Unicode
font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# The font above is very space-efficient, that is, it looks good, sharp and
# clear in small sizes. However, if you need a lot of unicode glyphs or
# right-to-left text rendering, you should instead use pango for rendering and
# chose a FreeType font, such as:
# font pango:DejaVu Sans Mono 10
font pango:Liberation Sans 10
# Disable focus-follows-mouse
focus_follows_mouse no
mouse_warping none
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal &
# kill focused window
bindsym $mod+Shift+q kill
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
bindsym $modb+space exec exec dmenu_run -fn 'Liberation Mono-10' &
# There also is the (new) i3-dmenu-desktop which only displays applications
# shipping a .desktop file. It is a wrapper around dmenu, so you need that
# installed.
# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
# start a dmenu for i3-msg commands
bindsym $modb+$mod+space exec i3-input
# change focus
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# alternatively, you can use the cursor keys:
bindsym $modb+Left focus left
bindsym $modb+Down focus down
bindsym $modb+Up focus up
bindsym $modb+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
# alternatively, you can use the cursor keys:
bindsym $modb+Shift+Left move left
bindsym $modb+Shift+Down move down
bindsym $modb+Shift+Up move up
bindsym $modb+Shift+Right move right
# move workspace to another output
bindsym $mod+Shift+Ctrl+h move workspace to output left
bindsym $mod+Shift+Ctrl+j move workspace to output down
bindsym $mod+Shift+Ctrl+k move workspace to output up
bindsym $mod+Shift+Ctrl+l move workspace to output right
# split in horizontal orientation
bindsym $mod+b split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+F11 fullscreen
# change container layout (tabbed, toggle split)
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+space 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
# 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
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $modb+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'"
#bindsym $modb+Shift+Escape exit
# Send the current window to the scratchpad
bindsym $mod+Shift+minus move scratchpad
# show the window in the scratchpad
bindsym $mod+minus scratchpad show
# 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 windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym h resize shrink width 10 px or 5 ppt
bindsym j resize grow height 10 px or 5 ppt
bindsym k resize shrink height 10 px or 5 ppt
bindsym l resize grow width 10 px or 5 ppt
bindsym Shift+h resize shrink width 5 px or 2 ppt
bindsym Shift+j resize grow height 5 px or 2 ppt
bindsym Shift+k resize shrink height 5 px or 2 ppt
bindsym Shift+l resize grow width 5 px or 2 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 5 ppt
bindsym Down resize grow height 10 px or 5 ppt
bindsym Up resize shrink height 10 px or 5 ppt
bindsym Right resize grow width 10 px or 5 ppt
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
mode "wow" {
bindsym $mod+Escape mode "default"
}
bindsym $mod+p mode "wow"
bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
i3bar_command exec i3bar
tray_output primary
status_command exec py3status -c ~/.config/i3/i3status -i ~/.config/i3/py3status -b
}
# Colors
# class border backgr text
client.focused #000000 #000000 #FFFFFF
# per-window settings
for_window [class="Synapse"] border none
for_window [window_role="Preferences"] floating enable
for_window [window_role="addressbook"] floating enable
for_window [window_role="page-info"] floating enable
for_window [class="Gnome-keyring-prompt"] floating enable
for_window [class="Virt-manager" title=".*Connection Details"] floating enable
for_window [title="Open Database File"] floating enable
for_window [title="Select key file manually"] floating enable
for_window [window_role="buddy_list"] floating enable
for_window [title="VPN Connection"] floating enable
for_window [class="Pavucontrol"] floating enable
for_window [title="Microsoft Silverlight"] floating enable
for_window [title="^vimpc$"] move scratchpad
for_window [title="myNoise.net Minified Player"] floating enable
for_window [class="Galculator"] floating enable
for_window [class="Audacious"] floating enable
for_window [class="Pinentry"] floating enable
for_window [window_role="GvimNotes"] floating enable
assign [window_role="conversation"] 3
# multimedia keys
bindsym XF86AudioMute exec pactl info | awk -F: '/Default Sink/{print $2}' | xargs -I{} pactl set-sink-mute {} toggle
#bindsym XF86AudioMute exec amixer -D hw sset Master toggle
#bindsym XF86AudioLowerVolume exec mpc volume -1
#bindsym XF86AudioRaiseVolume exec mpc volume +1
#bindsym XF86AudioStop exec mpc stop
#bindsym XF86AudioPrev exec mpc prev
#bindsym XF86AudioPlay exec mpc toggle
#bindsym XF86AudioNext exec mpc next
#bindsym Control+XF86AudioStop exec mpc stop-after-current
#bindsym Control+XF86AudioNext exec mpd-random-pl-album.py
# launcher shortcuts
bindsym $modb+a exec i3-sensible-terminal &
bindsym $modb+e exec pcmanfm &
bindsym $mod+Shift+F12 exec xrandr --output Virtual1 --mode 1280x768
bindsym Print exec screenshot
bindsym $modb+t exec exec passmenu
bindsym $modb+g exec exec dmenu_snips
bindsym $modb+XF86AudioPlay exec exec audacious
bindsym $modb+v exec exec cachedpass ${USER}
bindsym $modb+n exec exec gvimnotes