computingFreedom | Build | C Programmming | Computer Security | Emacs | vim | i3 | Javascipt | Linux | BASH | Tools and Software Operating Systems | Pharo Smalltalk | Picolisp | Picolisp Machine | pil sources | Python | SimpleLinuxConfig |

The i3 Window Manager

i3 Config File

  • i3wm:refcard
  • The location of this file is ../home/user/.i3/config.

    These are some notes on the i3 config file. It is not the complete file.

    # Set the Mod Key
    set $mod Mod4
    
    default_border pixel 1
    default_floating_border normal
    hide_edge_borders none
    
    bindsym $mod+u border none
    bindsym $mod+y border pixel 3
    bindsym $mod+n border pixel normal
    
    # Font for window tiles. Will also be used by the bar unless a different font
    # is used in the bar {} block below.
    font xft:URWGothic-Book 11
    
    floating_modifier $mod
    
    bindsym $mod+Return exec alacrity
    bindsym $mod+Shift+q kill
    
    bindsym $mod+d exec --no-startup-id dmenu_recency
    
    bindsym $mod+z exec --no-startup-id morc_menu
    
    bindsym XF86MonBightnessUP exec "xbacklight -inc 1; notify-send 'brightness up'"
    bimdsym XF86MonBrightnessDown exec "xbacklight -dec 1; notify-send 'brightness down'"
    
    bindsym $mod+Ctrl+b exec terminal -e 'bmenu'
    bindsym $mod+F2 exec firefox
    
    # File Managers
    bindsym $mod+F3 exec pcmanfm
    bindsym $mod+F4 exec ranger
    bindsym $mod+Shift+F3 exec pcmanfm_pkexec
    
    # The Console Audio Player
    bindsym $mod+F5 exec terminal -e 'mocp'
    
    bindsym $mod+t exec --no-startup-id pkill picom
    bindsym $mod+Ctrl+t exec --no-startup-id picom -b
    
    # Notification Daemon
    bindsym $mod+Shift+d --release exec "killall dunst; exec notify-send 'restart dunst'"
    
    # Screenshots
    bindsym $Print exec --no-startup-id i3-scrot
    bindsym $mod+Print -release exec --no-startup-id i3-scrot -w
    bindsym $mod+Shift+Print --release exec --no-startup-id i3-scrot -s
    
    bindsym $mod+Shift+h exec xdg-open /usr/share/doc/manjaro/i3_help.pdf
    
    bindsym $mod+Ctrl+x --release exec --no-startup-id xkill
    
    # change focus, move and split
    bindsym $mod+j focus left
    bindsym $mod+k focus down
    bindsym $mod+l focus up
    bindsym $mod+semicolon focus right
    
    bindsym $mod+Shift+j  move left
    bindsym $mod+Shift+k  move down
    bindsym $mod+Shift+l  move up
    bindsym $mod+Shift+semicolon  move right
    
    workspace_auto_back_and_forth yes
    bindsym $mod+b workspace back_and_forth
    bindsym $mod+Shift+b move container to workspace back_and_forth; workspace back_and_forth
    
    bindsym $mod+h split h; exec notify-send 'tile horizontally'
    bindsym $mod+v split v; exec notify-send 'tile vertically'
    bindsym $mod+q split toggle
    
    # toggle fullscreen
    bindsym $mod+f fullscreen toggle
    
    bindsym $mod+s layout stacking
    bindsym $mod+w layout tabbed
    bindsym $mod+e layout toggle split
    
    bindsym $mod+Shift+Space floating toggle
    
    bindsym $mod+space focus mode_toggle
    bindsym $mod+Shift+s stick toggle
    
    bindsym $mod+a focus parent
    
    bindsym $mod+Shift+minus move scratchpad
    
    bindsym $mod+Ctrl+Right workspace next
    bindsym $mod+Ctrl+Left workspace prev
    
    set $ws1 1:term
    set $ws2 2:browser
    set $ws3 3:emacs
    set $ws4 4:lisp
    set $ws5 5:cuis
    
    bindsym $mod+1 workspace $ws1
    # etc... etc...
    
    bindsym $mod+Ctrl+1 move container to workspace $ws1
    # etc... etc...
    
    bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
    # etc... etc...
    
    assign [class="Thunderbird"] $ws1
    
    for_window [title="alsmixer"] floating enable border pixel 1
    for_window [class="calamares"] floating enable border normal
    for_window [title="i3_help"] floating enable sticky enable border normal
    for_window [class="OBlogout"] fullscreen enable
    for_window [class="(?i)virtualbox"] floating enable border normal
    # etc... etc...
    
    for_window [urgent=latest] focus
    
    bindsym $mod+Shift+c reload
    bindsym $mod+Shift+r restart
    
    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 $mod+0 mode "$mode_system"
    mode "$mode_system"{
        bindsym l exec --no-startup-id i3exit lock, mode "default"
        bindsym s exec --no-startup-id i3exit suspend, mode "default"
        bindsym u exec --no-startup-id i3exit switch_user, mode "default"
        bindsym e exec --no-startup-id i3exit logout, mode "default"
        bindsym h exec --no-startup-id i3exit hibernate, mode "default"
        bindsym r exec --no-startup-id i3exit reboot, mode "default"
        bindsym Shift+s exec --no-startup-id i3exit shutdown, mode "default"
    
        bindsym Return mode "default"
        bindsym Escape mode "default"
    }
    
    bindsym $mod+r mode "resize"
    mode "resize" {
        bindsym j resize shrink width 5 px or 5 ppt
        bindsym k resize grow height 5 px or 5 ppt
        bindsym l resize shrink height 5 px or 5 ppt
        bindsym semicolon 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 $mod+9 exec --no-startup-id blurlock
    
    bindsym $mod+m bar mode toggle
    
    
    

    http:///wiki/?i3

    22may23   admin