Last active
August 17, 2023 18:32
-
-
Save pawelkl-zz/6b54761f478463895583 to your computer and use it in GitHub Desktop.
my i3 config
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# http://i3wm.org/docs/userguide.html | |
# font pango: share tech mono, comfortaa, FontAwesome, octicons, Ionicons 10 | |
# Lekton, NotCourierSans, SaxMono | |
font pango: Ubuntu Mono for Powerline, KlarTextMono, comfortaa, FontAwesome, octicons, Ionicons 11 | |
# ubuntu 10 | |
# ubuntu mono 11 | |
smart_borders on | |
# on / no_gaps | |
# gaps inner 5 | |
# gaps outer 5 | |
### user settings | |
set $pulseaudiosink 1 | |
set $chrome google-chrome-unstable | |
#### | |
set $mod Mod4 | |
set $alt Mod1 | |
set $mon_lap LVDS-0 | |
set $mon_ext VGA-0 | |
set $mon_dig DP-0 | |
set $term ~/bin/urxvt | |
set $editor subl | |
set $browser google-chrome-unstable | |
set $filemanager pcmanfm | |
set $gimp gimp | |
set $selectfocusorrun $HOME/bin/selectfocusorrun.sh | |
set $dmenu ~/bin/dmenu_recent_new | |
set $dmenu_desktop ~/bin/dmenu_desktop | |
set $shutdown ~/bin/dmenu_shutdown | |
#set $specialt ~/bin/dmenu_finder | |
### SHORTCUTS | |
set $: exec --no-startup-id | |
set $:: exec_always --no-startup-id | |
set $_ pkill -9 | |
set $show scratchpad show | |
set $toscratch move scratchpad | |
set $move move position | |
set $float floating enable | |
set $nofloat floating disable | |
set $border-none border none | |
set $border-0px border normal 0px | |
set $border-1px border normal 1px | |
# tray | |
set $t [instance="stalonetray"] | |
set $tray [instance="stalonetray"] floating enable, move to scratchpad, scratchpad show, focus mode_toggle | |
# show shortut | |
set $s scratchpad show | |
# fix | |
set $f focus mode_toggle | |
set $moveto move workspace | |
set $goto workspace | |
### ### ### # General settings | |
floating_modifier $mod | |
default_orientation horizontal | |
# new_window 1pixel | |
# new_window 1pixel | |
# new_float normal 1px | |
new_window normal 0px | |
new_float normal 0px | |
focus_follows_mouse yes | |
popup_during_fullscreen smart | |
floating_minimum_size 150x100 | |
hide_edge_borders both | |
force_focus_wrapping yes | |
mouse_warping none | |
force_display_urgency_hint 3500 ms | |
workspace_auto_back_and_forth yes | |
workspace_layout tabbed | |
# hide_edge_borders: horizontal vertical both | |
# popup_during_fullscreen: leave_fullscreen #smart #ignore | |
# floating_maximum_size 1280x790 | |
## colorclass border bg text indicator | |
client.focused #d64937 #d64937 #f9f9f9 #2e9ef4 | |
client.focused_inactive #a62917 #a62917 #f9f9f9 #484e50 | |
client.unfocused #662917 #662917 #CCCCCC #292d2e | |
client.urgent #a0a020 #acac20 #f9f9f9 #900000 | |
# client.focused #d64937 #d64937 #f9f9f9 #2e9ef4 | |
# # client.focused_inactive #c62917 #c62917 #f9f9f9 #484e50 | |
# # client.unfocused #87281C #87281C #CCCCCC #292d2e | |
# client.urgent #a0a020 #acac20 #f9f9f9 #900000 | |
client.placeholder #000000 #0c0c0c #ffffff #000000 | |
# client.background #111111 | |
# bindsym $mod+x mode "launch" | |
# mode "launch" { | |
# bindsym b $: $browser, mode "default" | |
# bindsym d $: $filem, mode "default" | |
# bindsym e $: $editor, mode "default" | |
# # back to normal: Enter or Escape | |
# bindsym Return mode "default" | |
# bindsym Escape mode "default" | |
# } | |
# mode "focus" { | |
# bindsym b [class="$browser"] focus, mode "default" | |
# bindsym d [class="$filem"] focus, mode "default" | |
# # back to normal: Enter or Escape | |
# bindsym Return mode "default" | |
# bindsym Escape mode "default" | |
# } | |
### # KEYBINDINGS | |
bindsym $mod+Shift+R reload | |
bindsym $mod+Shift+Control+R restart | |
# logoff | |
# bindsym $mod+Shift+e $: "i3-nagbar -f 'play:pixelsize=24' -t warning -m 'Logoff i3?' -b 'Logoff' 'i3-msg exit'" | |
# bindsym $mod+Shift+q $: $shutdown | |
bindsym XF86PowerOff $: $shutdown | |
bindcode 151 $: $term | |
bindsym $mod+BackSpace kill | |
# bindsym $mod+button3 kill | |
bindsym $mod+Shift+o $: "i3-msg bar mode hide, bar position bottom" | |
bindsym $mod+Ctrl+o $: "i3-msg bar mode dock, bar position top" | |
bindsym $mod+Return $: urxvt | |
# bindsym $mod+F9 [class="urxvt"] focus | |
bindsym $mod+shift+X $: wine /vm/everything/Everything.exe | |
bindsym $mod+X $: xdotool key --window $(xdotool search --all --limit 1 --pid $(pgrep Everything)) "ctrl+alt+c" windowfocus --sync | |
for_window [class="Wine" id=50331662 instance="Everything.exe"] floating enable, focus | |
bindsym $mod+Z $: dcommands-ex | |
# bindsym $mod+Z $: $browser | |
# bindsym $mod+X $: $editor | |
bindsym $mod+N $: pcmanfm | |
bindsym $mod+shift+N $: xterm -e ranger | |
# bindsym $mod+B $: $gimp | |
## bindsym $mod+p $: display.sh on | |
## bindsym $mod+shift+p $: display.sh off | |
## bindsym XF86Screensaver $: power suspend | |
# bindsym $mod+t $: $specialt | |
# ~/bin/dmenu_desktop | |
# $dmenu_desktop | |
bindsym $mod+y $: j4-dmenu-desktop --dmenu="dmenu -t" --term=urxvtc | |
bindsym $mod+u $: fmenu | |
bindsym $mod+shift+u $: fmenu -i / | |
bindsym $mod+ctrl+u $: fmenu -i $(dmenu -noinput) | |
bindsym $mod+i $: i3-winmenu2 | |
bindsym $mod+o $: $dmenu | |
bindsym $mod+p $: $chrome --show-app-list & | |
bindsym XF86AudioRaiseVolume $: volume.rb +4 | |
bindsym XF86AudioLowerVolume $: volume.rb -4 | |
# bindsym XF86AudioRaiseVolume $: vol --osd --sink $pulseaudiosink -v "+4" | |
# bindsym XF86AudioLowerVolume $: vol --osd --sink $pulseaudiosink -v "-4" | |
# bindsym ctrl+XF86AudioRaiseVolume $: snd micup 1 | |
# bindsym ctrl+XF86AudioLowerVolume $: snd micdown 1 | |
# bindsym XF86AudioMute $: snd toggle 1 | |
bindsym XF86AudioMute $: vol --toggle 1 | |
# XF86MonBrightnessUp / XF86MonBrightnessDown | |
### # bindsym $mod+PgUp $: bl osd up | |
### # bindsym $mod+PgDn $: bl osd down | |
bindsym $mod+Home $: bl osd max | |
bindsym $mod+End $: bl osd min | |
bindsym XF86AudioNext $: bl osd up | |
bindsym XF86AudioPause $: bl osd min | |
bindsym XF86AudioPrev $: bl osd down | |
bindsym XF86AudioStop $: bl osd max | |
# bindcode 227 $: "sleep 1; xset dpms force off" | |
bindcode 167 $: bl osd up 15 | |
bindcode 166 $: bl osd down 15 | |
# bindcode shift+167 $: snd up | |
# bindcode shift+166 $: snd down | |
bindcode ctrl+167 $: bl osd set 100 | |
bindcode ctrl+166 $: bl osd set 1 | |
bindcode ctrl+shift+167 $: bl osd up 5 | |
bindcode ctrl+shift+166 $: bl osd down 5 | |
# bindcode $mod+110 $: bl 100 | |
# bindcode $mod+115 $: bl 1 | |
# bindsym $mod+Ctrl+Up $: bri up 8 | |
# bindsym $mod+Ctrl+Down $: bri down 7 | |
# bindsym $mod+Escape $: "sleep 1; xset s activate" | |
bindsym $mod+Escape $: "sleep 1; xset dpms force off" | |
bindsym $mod+$alt+Delete $: sudo halt | |
# kill focused window | |
bindsym $mod+Q kill | |
bindsym $mod+ctrl+Q $: xkill | |
# change focus | |
bindsym $mod+j focus left | |
bindsym $mod+k focus down | |
bindsym $mod+l focus up | |
bindsym $mod+semicolon focus right | |
bindsym $mod+ctrl+j focus output left | |
bindsym $mod+ctrl+k focus output down | |
bindsym $mod+ctrl+l focus output up | |
bindsym $mod+ctrl+semicolon focus output right | |
# bindsym $mod+x [urgent=latest] focus | |
# change output focus | |
# bindsym $mod+$alt+j focus output left | |
# bindsym $mod+$alt+semicolon focus output right | |
# move focused window | |
bindsym $mod+Shift+j move left | |
bindsym $mod+Shift+k move down | |
bindsym $mod+Shift+l move up | |
bindsym $mod+Shift+semicolon move right | |
# new windows (horizontal/vertical) | |
bindsym $mod+h split h | |
bindsym $mod+v split v | |
# # focus the parent container | |
# bindsym $mod+shift+a focus parent | |
# # focus the child container | |
# bindsym $mod+shift+c focus child | |
# focus the parent container | |
bindsym $mod+a focus parent | |
# focus the child container | |
bindsym $mod+d focus child | |
# enter fullscreen mode for the focused container | |
## bindsym $mod+f fullscreen | |
# change container layout (stacked, tabbed, default) | |
bindsym $mod+Shift+w layout stacking | |
# $mod+s$mod+ | |
bindsym $mod+w layout tabbed | |
bindsym $mod+shift+ctrl+w layout default | |
# bindsym $mod+e layout default | |
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 | |
set $hangouts 0: | |
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 $f1 11:f1 | |
# set $f2 12:f2 | |
# set $f3 13:f3 | |
# set $f4 14:f4 | |
# bindsym $mod+shift+b exec i3-save-tree --workspace $ws4 > ~/.i3/gimp | |
# bindsym $mod+b append_layout ~/.i3/gimp | |
#; exec sleep 1; exec gimp | |
# Web | |
# Code | |
# Stuff | |
# System | |
# 💋 kiss | |
# youtube | |
# play | |
# picture | |
# child | |
# term | |
# task | |
# bug | |
# quote | |
# female | |
# tint/drop | |
# tasks | |
# star | |
# TERM | |
# DATA | |
# WORK | |
# switch to workspace | |
bindsym $mod+F1 $goto $hangouts, $tray | |
bindsym $mod+1 $goto $ws1, $tray | |
bindsym $mod+2 $goto $ws2, $tray | |
bindsym $mod+3 $goto $ws3, $tray | |
bindsym $mod+4 $goto $ws4, $tray | |
bindsym $mod+5 $goto $ws5, $tray | |
bindsym $mod+6 $goto $ws6, $tray | |
bindsym $mod+7 $goto $ws7, $tray | |
bindsym $mod+8 $goto $ws8, $tray | |
bindsym $mod+9 $goto $ws9, $tray | |
bindsym $mod+0 $goto $ws10, $tray | |
# bindsym $mod+F1 $goto $f1, $tray | |
# bindsym $mod+F2 $goto $f2, $tray | |
# bindsym $mod+F3 $goto $f3, $tray | |
# bindsym $mod+F4 $goto $f4, $tray | |
bindsym $mod+minus scratchpad show | |
bindsym $mod+Shift+minus move scratchpad | |
# switch between the current and the previously focused one | |
bindsym $mod+Tab $goto back_and_forth, $tray | |
bindsym $mod+grave $goto next, $tray | |
bindsym $mod+Shift+grave $goto prev, $tray | |
bindsym $mod+ctrl+grave $moveto next, $goto next, $tray | |
bindsym $mod+ctrl+Shift+grave $moveto prev, $goto prev, $tray | |
# # above rightarrow | |
# bindcode 167 $goto next | |
# # above leftarrow | |
# bindcode 166 $goto prev | |
# move focused container to workspace | |
bindsym $mod+Shift+F1 $moveto $hangouts, $goto $hangouts | |
bindsym $mod+Shift+1 $moveto $ws1, $goto $ws1 | |
bindsym $mod+Shift+2 $moveto $ws2, $goto $ws2 | |
bindsym $mod+Shift+3 $moveto $ws3, $goto $ws3 | |
bindsym $mod+Shift+4 $moveto $ws4, $goto $ws4 | |
bindsym $mod+Shift+5 $moveto $ws5, $goto $ws5 | |
bindsym $mod+Shift+6 $moveto $ws6, $goto $ws6 | |
bindsym $mod+Shift+7 $moveto $ws7, $goto $ws7 | |
bindsym $mod+Shift+8 $moveto $ws8, $goto $ws8 | |
bindsym $mod+Shift+9 $moveto $ws9, $goto $ws9 | |
bindsym $mod+Shift+0 $moveto $ws10, $goto $ws10 | |
# bindsym $mod+Shift+F1 $moveto $f1, $goto $f1 | |
# bindsym $mod+Shift+F2 $moveto $f2, $goto $f2 | |
# bindsym $mod+Shift+F3 $moveto $f3, $goto $f3 | |
# bindsym $mod+Shift+F4 $moveto $f4, $goto $f4 | |
bindsym $mod+Ctrl+Shift+1 $moveto $ws1 | |
bindsym $mod+Ctrl+Shift+2 $moveto $ws2 | |
bindsym $mod+Ctrl+Shift+3 $moveto $ws3 | |
bindsym $mod+Ctrl+Shift+4 $moveto $ws4 | |
bindsym $mod+Ctrl+Shift+5 $moveto $ws5 | |
bindsym $mod+Ctrl+Shift+6 $moveto $ws6 | |
bindsym $mod+Ctrl+Shift+7 $moveto $ws7 | |
bindsym $mod+Ctrl+Shift+8 $moveto $ws8 | |
bindsym $mod+Ctrl+Shift+9 $moveto $ws9 | |
bindsym $mod+Ctrl+Shift+0 $moveto $ws10 | |
# bindsym $mod+Ctrl+Shift+F1 $moveto $f1 | |
# bindsym $mod+Ctrl+Shift+F2 $moveto $f2 | |
# bindsym $mod+Ctrl+Shift+F3 $moveto $f3 | |
# bindsym $mod+Ctrl+Shift+F4 $moveto $f4 | |
# ##################### | |
# spatial | |
# bindsym $mod+t $: ~/bin/i3/get_workspace_options.py | dmenu -t | ~/bin/i3/go_to_workspace.py | |
# i3-msg move container to output (xrandr | grep -w connected | cut -d" " -f1 | dmenu) | |
bindsym $mod+shift+e $: ~/bin/move_to_display container | |
bindsym $mod+ctrl+e $: ~/bin/move_to_display workspace | |
bindsym $mod+t $: ~/bin/i3/go_to, | |
bindsym $mod+shift+t $: ~/bin/i3/move_go_to | |
bindsym $mod+control+shift+t $: ~/bin/i3/move_to | |
bindsym $mod+$alt+t $: ~/bin/i3/move_workspace | |
# bindsym $mod+x $: i3-msg move workspace $( ~/bin/i3/get_workspace_options.py | dmenu -t ) | |
# set $control ~/.i3/workspace_controller.py | |
# bindsym $mod+p $: $control open | |
# bindsym $mod+t $: $control dynamic go | |
## bindsym $mod+r $: $control dynamic go | |
## bindsym $mod+Shift+t $: $control dynamic move | |
bindsym $alt+Tab focus right | |
bindsym $alt+Shift+Tab focus left | |
# # alternatively, you can use the cursor keys: | |
# bindsym $mod+Left $: $control prev go | |
# bindsym $mod+Right $: $control next go | |
# bindsym $mod+Up $: $control up go | |
# bindsym $mod+Down $: $control down go | |
# # alternatively, you can use the cursor keys: | |
# bindsym $mod+Shift+Left $: $control prev move | |
# bindsym $mod+Shift+Right $: $control next move | |
# bindsym $mod+Shift+Up $: $control up move | |
# bindsym $mod+Shift+Down $: $control down move | |
bindsym $mod+f fullscreen | |
bindsym $mod+shift+f fullscreen global | |
# bindsym $mod+ctrl+f $: "sleep .5; xdotool key F11; sleep .5; xdotool key meta+f" | |
bindsym $mod+ctrl+f $: "sleep .5; xdotool key F11; i3-msg fullscreen" | |
# bindsym $mod+f11 $: sleep 2; xdotool key F11; i3-msg fullscreen | |
# # switch to workspace | |
# bindsym $mod+1 $: $control go 1 | |
# bindsym $mod+2 $: $control go 2 | |
# bindsym $mod+3 $: $control go 3 | |
# bindsym $mod+4 $: $control go 4 | |
# bindsym $mod+5 $: $control go 5 | |
# bindsym $mod+6 $: $control go 6 | |
# bindsym $mod+7 $: $control go 7 | |
# bindsym $mod+8 $: $control go 8 | |
# bindsym $mod+9 $: $control go 9 | |
# bindsym $mod+0 $: $control go 0 | |
# # move focused container to workspace | |
# bindsym $mod+Shift+1 $: $control move 1 | |
# bindsym $mod+Shift+2 $: $control move 2 | |
# bindsym $mod+Shift+3 $: $control move 3 | |
# bindsym $mod+Shift+4 $: $control move 4 | |
# bindsym $mod+Shift+5 $: $control move 5 | |
# bindsym $mod+Shift+6 $: $control move 6 | |
# bindsym $mod+Shift+7 $: $control move 7 | |
# bindsym $mod+Shift+8 $: $control move 8 | |
# bindsym $mod+Shift+9 $: $control move 9 | |
# bindsym $mod+Shift+0 $: $control move 0 | |
# $moveto between outputs | |
# bindsym $mod+y $moveto to output left | |
### end spatial | |
# bindsym $mod+u $: ~/bin/dmenu_quickswitch | |
# bindsym $mod+y $: ~/bin/dmenu_ | |
# bindsym --release Print $: gnome-screenshot -f "~/Pictures/shots/$(date %Y-%m-%d_%H:%M:%S).png" | |
bindsym --release Print $: gnome-screenshot --file="/home/pawel/Pictures/shots/"$(date +%Y-%m-%d_%H:%M:%S).png | |
#bindsym --release $alt+Print $: "sleep ; gnome-screenshot" | |
bindsym --release $mod+Print $: gnome-screenshot --file="/home/pawel/Pictures/shots/"$(date +%Y-%m-%d_%H:%M:%S).png -w | |
# bindsym $alt+Print $: gnome-screenshot -a | |
# bindsym $alt+Print $: scrot -q 100 -s -e 'move ' | |
bindsym --release $alt+Print $: scrot -q 100 -s "%Y-%m-%d_%H:%M:%S.png" -e "mv $f ~/Pictures/shots/" | |
bindsym --release $mod+$alt+Print $: scrot_clipboard | |
# bindsym $mod+comma [instance="^scratchpad$"] scratchpad show | |
# $:_always flock -w1 ~/bin/i3_lockfile ~/bin/ie_perpetual_terminal.sh | |
# for_window [instance="^scratchpad$"] $toscratch | |
# bindsym $mod+Pri2 | |
# bindsym $mod+t $border-0px | |
# bindsym $mod+y $border-1px | |
# bindsym $mod+u $border-none | |
bindsym $mod+ctrl+s $border-none | |
bindsym $mod+s $border-0px | |
bindsym $mod+shift+s $border-1px | |
# bindsym $alt+Tab focus right | |
# bindsym $alt+Shift+Tab focus left | |
# bar { | |
# id second | |
# # output VGA-0 | |
# # output $mon_dig | |
# strip_workspace_numbers yes | |
# binding_mode_indicator yes | |
# # mode hide | |
# status_command /home/pawel/.i3/conky_ex.sh $HOME/.i3/bottom.conky | |
# # font pango:play bold 20 | |
# # font pango: Play, Ionicons, FontAwesome Bold 10 | |
# # font pango:DejaVu Sans Mono, Ionicons, FontAwesome 8 | |
# workspace_buttons yes | |
# # tray_output primary | |
# colors { | |
# background #1e1e1e | |
# statusline #808080 | |
# separator #333333 | |
# # colorclass <border><bg> <text> | |
# active_workspace #1e1e1e #d6d6d6 #1e1e1e | |
# inactive_workspace #1e1e1e #1e1e1e #808080 | |
# urgent_workspace #1e1e1e #1e1e1e #d64937 | |
# focused_workspace #1e1e1e #1e1e1e #ffffff | |
# } | |
# # colors { | |
# # background #333333 | |
# # # statusline #f9f9f9 | |
# # statusline #8f8f8f | |
# # separator #8f8f8f | |
# # active_workspace #a7483C #a7483C #f9f9f9 | |
# # inactive_workspace #87281C #87281C #cccccc | |
# # urgent_workspace #a0a020 #acac20 #2d2d2d | |
# # focused_workspace #d64937 #d64937 #f9f9f9 | |
# # } | |
# } | |
bar { | |
id main | |
# height 19 # for 13 default font | |
height 17 | |
# for 10 font is 17 | |
# output LVDS-0 | |
modifier $mod | |
position bottom | |
strip_workspace_numbers yes | |
binding_mode_indicator yes | |
# mode dock | |
# status_command /home/pawel/.i3/conky_ex.sh $HOME/.i3/top-test.conky | |
status_command i3blocks -c ~/.i3blocks.conf | |
# font pango:play bold 10 | |
# font pango: Play, Ionicons, FontAwesome Bold 10 | |
# font pango: Ubuntu Mono derivative Powerline, Ionicons, FontAwesome Bold 13 | |
# font pango: Play, Ionicons, FontAwesome Bold 10 | |
# font pango: Isonorm NM, Ionicons, FontAwesome Bold 10 | |
tray_output primary | |
# tray_output LVDS-0 | |
workspace_buttons yes | |
#PREV_PREV | |
# background #444444 | |
# statusline #f9f9f9 | |
# separator #87281C | |
# separator #222222 | |
# separator #333333 | |
# active_workspace #444444 #444444 #f9f9f9 | |
# inactive_workspace #444444 #444444 #808080 | |
# urgent_workspace #444444 #444444 #d64937 | |
# focused_workspace #444444 #444444 #f9f9f9 | |
# PREVIOUS | |
# background #444444 | |
# statusline #808080 | |
# separator #333333 | |
# active_workspace #444444 #444444 #f9f9f9 | |
# inactive_workspace #444444 #444444 #808080 | |
# urgent_workspace #444444 #444444 #d64937 | |
# focused_workspace #444444 #444444 #f9f9f9 | |
# LIGHTp | |
# background #fafafa | |
# statusline #808080 | |
# separator #333333 | |
# active_workspace #fafafa #fafafa #424242 | |
# inactive_workspace #fafafa #fafafa #808080 | |
# urgent_workspace #fafafa #fafafa #d64937 | |
# focused_workspace #fafafa #fafafa #4424242 | |
colors { | |
background #1e1e1e | |
statusline #808080 | |
separator #333333 | |
# #d64937 #662917 | |
# colorclass <border><bg> <text> | |
active_workspace #1e1e1e #d6d6d6 #1e1e1e | |
inactive_workspace #1e1e1e #1e1e1e #808080 | |
urgent_workspace #1e1e1e #1e1e1e #d64937 | |
focused_workspace #1e1e1e #1e1e1e #ffffff | |
# active_workspace #1e1e1e #1e1e1e #8080ff | |
# inactive_workspace #1e1e1e #1e1e1e #808080 | |
# urgent_workspace #1e1e1e #1e1e1e #d64937 | |
# focused_workspace #1e1e1e #1e1e1e #fafafa | |
# placeholder #000000 #0c0c0c #ffffff #000000 | |
} | |
# colors { | |
# background #333333 | |
# #statusline #f9f9f9 | |
# statusline #8f8f8f | |
# # separator #87281C | |
# # separator #222222 | |
# separator #333333 | |
# active_workspace #a7483C #a7483C #f9f9f9 | |
# inactive_workspace #87281C #87281C #cccccc | |
# urgent_workspace #a0a020 #acac20 #2d2d2d | |
# focused_workspace #d64937 #d64937 #f9f9f9 | |
# } | |
} | |
# bar { | |
# id below | |
# output LVDS-0 | |
# position top | |
# tray_output none | |
# # tray_output LVDS-0 | |
# workspace_buttons yes | |
# colors { | |
# background #424242 | |
# statusline #808080 | |
# separator #333333 | |
# active_workspace #424242 #424242 #424242 | |
# inactive_workspace #424242 #424242 #808080 | |
# urgent_workspace #424242 #424242 #d64937 | |
# focused_workspace #424242 #424242 #fafafa | |
# } | |
# status_command i3blocks -c ~/.i3blocks-below.conf | |
# } | |
workspace "$ws1" output $mon_lap | |
workspace "$ws2" output $mon_lap | |
workspace "$ws3" output $mon_lap | |
workspace "$ws4" output $mon_lap | |
workspace "$ws5" output $mon_lap | |
# workspace "$ws6" output $mon_ext | |
# workspace "$ws7" output $mon_ext | |
# workspace "$ws8" output $mon_ext | |
# workspace "$ws9" output $mon_ext | |
# workspace "$ws10" output $mon_ext | |
workspace "$ws6" output $mon_dig | |
workspace "$ws7" output $mon_dig | |
workspace "$ws8" output $mon_dig | |
workspace "$ws9" output $mon_dig | |
workspace "$ws10" output $mon_dig | |
### # Workspaces location | |
# assign [class="^Google-chrome$"] $ws1 | |
assign [class="Subl" title="^(?!(Save File|Open File|Select Folder)$)"] $ws3 | |
### window_role="^(?!GtkFileChooserDialog$)" | |
# assign [title="Hangouts"] $ws8 | |
# assign [class="^Google-chrome" instance="^crx_nckgahadagoaajjgafhacjanaoiihapd$"] → 2 | |
# for_window [title="Form" class="ViberPC"] $float | |
assign [title="^Viber +" class="ViberPC"] $hangouts | |
for_window [title="[0%] cISV| http://trello.com" class="Surf"] $border-none | |
# assign [instance="crx_nckgahadagoaajjgafhacjanaoiihapd"] $hangouts | |
# assign [title="Katarzyna Trzcianka"] trzcika | |
### for_window [instance="crx_nckgahadagoaajjgafhacjanaoiihapd"] $float | |
#### HANGOUTS | |
### for_window [instance="crx_nckgahadagoaajjgafhacjanaoiihapd"] $border-none | |
### for_window [title="Hangouts"] $border-none | |
### for_window [title="Hangouts"] $float, $border-none | |
#, $move 600px 23px | |
# bindsym F12 [title="^Buddy List"] move to scratchpad, [instance="scratchpad_urxvt"] scratchpad show, $move 600px 23px | |
# for_window [title="Hangouts"] $float, $border-none, move to scratchpad | |
#, $move 1000px 25px, resize shrink width 1000px, resize shrink height 1000px, resize grow height 650 px, resize grow width 350 px | |
# for_window [class="^Google-chrome"] resize shrink width 1000px, resize shrink height 1000px, resize grow height 400 px, resize grow width 350 px | |
# bindsym F12 scratchpad show | |
# for_window [instance="^crx_nckgahadagoaajjgafhacjanaoiihapd$"] $float, $border-none, move to scratchpad | |
# bindsym Shift+F12 [instance="^crx_nckgahadagoaajjgafhacjanaoiihapd$"] scratchpad show | |
# assing [title="Hangouts"] $ws2 | |
# for_window [class="crx(?i)"] $float, $border-0px, $move 600px 23px | |
for_window [instance="xterm" title="sh"] floating enable, move down 632px, exec xdotool search --class xterm getwindowpid -- windowsize --usehints '%@' 80 4 | |
for_window [instance="xterm" title="sh"] $border-none | |
for_window [class="(?i)Yad"] floating enable | |
for_window [class="Xfce4-notifyd"] $float | |
for_window [title="File Operations"] $float, $move 600px 650px | |
# $float, $border-0px, resize width hN300 px, resize height 100px,$move 600px -30px | |
# for_window [window_role="pop-up"] $float | |
### # Window assignment | |
for_window [class="(?i)dolphin"] $float | |
# for_window [class="(?i)okular"] $float | |
for_window [class="(?i)gwenview"] $float | |
###? ERROR # | |
for_window [class="(?i)vlc"] $float, resize height 600px, $move 600px 300px | |
for_window [class="(?i)mplayer"] $float | |
for_window [class="(?i)gloobus-preview"] $float | |
for_window [class="URxvt"] $border-none | |
# $border-1px | |
for_window [class="terminator"] $border-1px | |
for_window [class="(?i)firefox"] $border-none | |
for_window [class="Eclipse" title="^Eclipse( SDK )?$"] $float | |
for_window [class="Orca" title="orca"] $float $border-none | |
for_window [class="gnome-pie"] $float $border-0px | |
for_window [class="Guake"] $float | |
for_window [class="altyo"] $float | |
# for_window [class="^Gnome-calculator$"] $float, move 970 px 550 px | |
# for_window [class="Gnome-calculator"] floating enable, move position 900 px 450 px, resize shrink up 120 px, resize shrink left 80 px | |
for_window [class="Gnome-calculator"] floating enable, move position 900 px 580 px, exec xdotool search --class Gnome-calculator getwindowpid -- windowsize %@ 250 195 | |
for_window [title="synapse"] $border-0px | |
# for_window [class="file_progress"] $float, $move 600px 650px | |
# for_window [title="(?i)Moving file"] $float, $move 600px 650px | |
# for_window [title="(?i)Copying"] $float, $move 600px 650px | |
for_window [instance="file_progress"] $float, $move 600px 650px | |
for_window [title="File Operation Progress"] $float, $move 600px 650px | |
# for_window [class="(?i)google-chrome-"] $float, $border-none | |
for_window [title="Sidewise"] $border-none, move left, resize shrink width 1000px,resize grow width 50 px | |
for_window [window_role="GtkFileChooserDialog"] $float, $border-0px, $move 600px 250px, resize shrink width 1000px, resize shrink height 1000px, resize grow height 450 px, resize grow width 550 px | |
# # assign [class="Gimp"] $ws4 | |
# for_window [class="Gimp"] $border-none | |
# for_window [class="Gimp"] $nofloat | |
# for_window [class="gimp-startup"] $float | |
for_window [window_role="gimp-toolbox"] $nofloat | |
# #, split v, move left | |
for_window [window_role="gimp-dock"] $nofloat | |
# #, move right | |
for_window [window_role="gimp-toolbox-color-dialog"] $float | |
# for_window [window_role="gimp-image-window"] layout tabbed | |
# exec xdotool search --class getwindowpid -- windowsize --'%@' 300 4 | |
for_window [class="I3-exit"] $float | |
for_window [class="VirtualBox"] $border-none | |
for_window [class="Synapse"] $border-none | |
# for_window [title="Page(s) Unresponsive"] $float, resize grow width 300px, resize grow height 200px | |
# $: urxvtd -q -f -o & | |
# $: i3-msg workspace empty | |
# $: enable_scrolling | |
# $: set_keyboard | |
# for_window [title="^htop$"] move scratchpad | |
# $: --no-startup-id $: $terminal -title htop -e "htop -d 10" | |
# Start up scratchpad | |
# $:: urxvt -t "Scratchpad1"; urxvt -t "Scratchpad2"; urxvt -t "Scratchpad3" | |
# for_window [title="^Scratchpad"] move to scratchpad, $float, border pixel 3 | |
# bindsym $mod+z scratchpad show; | |
# bindsym $mod+shift+z move to scratchpad; | |
#################[[[ SESSION MANAGEMENT MODE ]]]############## | |
set $mode_reset mode "default" | |
set $mode_session "SESSION: [B]lock display, S[w]itch, [S]leep, [H]ibernate, H[y]brid, [R]eboot, [P]oweroff, [E]xit" | |
set $block i3lock -I 1 -p win -e -d -c 000000 | |
bindsym $mod+shift+q mode $mode_session | |
mode $mode_session { | |
bindsym w $: /usr/bin/dm-tool switch-to-greeter; $mode_reset | |
bindsym b $: $block; $mode_reset | |
bindsym r $: systemctl reboot; $mode_reset | |
bindsym s mode "default"; $: $block && systemctl suspend; $mode_reset | |
bindsym h mode "default"; $: $block && systemctl hibernate; $mode_reset | |
bindsym y mode "default"; $: $block && systemctl hybrid-sleep; $mode_reset | |
bindsym p $: systemctl poweroff || $mode_reset | |
bindsym e exit || $mode_reset | |
# bindsym e $: "i3-nagbar -f 'play:pixelsize=24' -t warning -m 'Logoff i3?' -b 'Logoff' 'i3-msg exit'"; $mode_reset | |
# back to normal: Enter or Escape | |
bindsym Escape $mode_reset | |
} | |
set $win for_window | |
# set $geo 120x28 | |
# set $top 20px | |
set $terms exec --no-startup-id urxvtq | |
# set $notes exec --no-startup-id exbyclass nvpy Nvpy | |
# set $termsa exec --no-startup-id urxvtq | |
set $bi bindsym | |
set $mts move to scratchpad | |
set $ss scratchpad show | |
set $mp move position | |
set $bpix0 border pixel 0 | |
set $s1 scratch_-YZ | |
set $s2 scratch_X-Z | |
set $s3 scratch_XY- | |
# set $n1 | |
# font 10 - 18px | |
# font 11 - 20px | |
set $s1p 0px 20px | |
set $s2p 280px 20px | |
set $s3p 560px 20px | |
set $g1p 80x28+0+20 | |
set $g2p 80x28+280+20 | |
# old 320 | |
set $g3p 80x28-0+20 | |
# old 640 | |
# set $n1 500px 400px | |
# 2nd line: y 200px | |
set $s1k Mod1+q | |
set $s2k Mod1+w | |
set $s3k Mod1+e | |
# set $n1k Mod1+1 | |
# $:: nvpy | |
# for_window [title="nvPY"] $mts, $float, $bpix0 | |
# $:: urxvt -t $s1; urxvt -t $s2; urxvt -t $s3 | |
for_window [instance="^scratch_"] $mts, $float, $bpix0 | |
for_window [title="$s1"] $mp $s1p | |
for_window [title="$s2"] $mp $s2p | |
for_window [title="$s3"] $mp $s3p | |
# $:: urxvtq $s1 $geo | |
$bi $s1k $terms $s1 $g1p; [instance="X[-Y][-Z]$"] $mts; [instance="_-YZ$"] $ss | |
$bi $s2k $terms $s2 $g2p; [instance="[-X]Y[-Z]$"] $mts; [instance="_X-Z$"] $ss | |
$bi $s3k $terms $s3 $g3p; [instance="[-X][-Y]Z$"] $mts; [instance="_XY-$"] $ss | |
for_window [title="Hangouts" window_role="pop-up"] $mts | |
for_window [instance="chrome_app_list" window_role="bubble"] floating enable | |
for_window [instance="crx_nckgahadagoaajjgafhacjanaoiihapd" window_role="pop-up"] $mts | |
# bindsym $mod+x [instance="crx_nckgahadagoaajjgafhacjanaoiihapd" window_role="pop-up"] $ss | |
for_window [title="^cISV | Kamila Mikuła$" instance="surf"] $mts | |
# bindcode $mod+94 [title="cISV | Kamila Mikuła"] $ss | |
bindcode $mod+94 [instance="surf"] $ss | |
# bindcode $mod+94 [instance="scratchpad_urxvt_top"] $ss, [instance="scratchpad_urxvt_bottom"] $ss | |
# bottom-right | |
# for_window [title="fish /home/pawel/Work"] $float | |
# bindsym $mod+m [title="^fish /"] scratchpad show | |
### notes | |
# for_window [instance="$n1"] $mts | |
# $bi $n1k $notes, [instance="$s1"] $mts, [instance="$s2"] $mts, [instance="$s3"] $mts, [title="nvPY"] $ss, [title="nvPY"] $bpix0 | |
# bar { | |
# font pango:FontAwesome, Inconsolata 10 | |
# strip_workspace_numbers no | |
# position top | |
# colors { | |
# background #202020 | |
# statusline #808080 | |
# separator #808080 | |
# focused_workspace #202020 #202020 #c0c0c0 | |
# active_workspace #202020 #202020 #c0c0c0 | |
# inactive_workspace #202020 #202020 #808080 | |
# urgent_workspace #ff0000 #ff0000 #808080 | |
# } | |
# } | |
# facebook tabs | |
# for_window | |
# move to temp, | |
# layout tabbed, | |
# focus parent, | |
# $float, | |
# move position 944px 358px, | |
# 335x420 | |
# $mts, | |
# Specific terminal rules | |
for_window [class="URxvt" instance="ranger"] border normal, floating enable | |
for_window [class="XTerm" title="ranger"] border normal, floating enable | |
# Correct handling of dialogs | |
for_window [window_role="pop-up"] floating enable | |
for_window [window_role="app"] floating enable | |
for_window [window_role="app" class="Vivaldi-snapshot"] floating disable | |
for_window [window_role="task_dialog"] floating enable | |
for_window [window_role="News-BlogSubscriptions"] floating enable | |
for_window [title="Preferences$"] floating enable | |
for_window [class="Chromium"] focus child, layout tabbed, focus | |
for_window [class="^Google-chrome"] focus child, layout tabbed, focus | |
for_window [title="^xzoom x"] floating enable | |
# bindsym $mod+b border toggle | |
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" | |
} | |
# Enter resize mode | |
bindsym $mod+r mode "resize" | |
### to vertical split | |
# for_window [title="Page(s) Unresponsive"] floating enable | |
# for_window $t $mts |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Very cool configuration. Thanks!