Update
This commit is contained in:
+272
-280
@@ -1,334 +1,326 @@
|
||||
# Start i3bar to display a workspace bar (plus the system information i3status
|
||||
# finds out, if available)
|
||||
#bar {
|
||||
#status_command i3status
|
||||
#}
|
||||
## Copyright (C) 2020-2023 Aditya Shakya <adi1090x@gmail.com>
|
||||
##
|
||||
## i3wm configuration for Archcraft
|
||||
##
|
||||
## i3 config file (v4)
|
||||
|
||||
# This file has been auto-generated by i3-config-wizard(1).
|
||||
# It will not be overwritten, so edit it as you like.
|
||||
#
|
||||
# Should you change your keyboard layout some time, delete
|
||||
# this file and re-run i3-config-wizard(1).
|
||||
#
|
||||
##-- Include Config Files ----------------------
|
||||
|
||||
# i3 config file (v4)
|
||||
#
|
||||
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
|
||||
#
|
||||
## Tilde expands to the user’s home directory:
|
||||
#include ~/.config/i3/01_theme.conf
|
||||
|
||||
set $mod Mod4
|
||||
## Environment variables are expanded:
|
||||
#include $HOME/.config/i3/01_theme.conf
|
||||
|
||||
# Font for window titles. Will also be used by the bar unless a different font
|
||||
# is used in the bar {} block below.
|
||||
font pango:DejaVu Sans Mono 10
|
||||
## Wildcards are expanded:
|
||||
#include ~/.config/i3/config.d/*.conf
|
||||
|
||||
# This font is widely installed, provides lots of unicode glyphs, right-to-left
|
||||
# text rendering and scalability on retina/hidpi displays (thanks to pango).
|
||||
#font pango:DejaVu Sans Mono 8
|
||||
## Command substitution:
|
||||
#include ~/.config/i3/`hostname`.conf
|
||||
|
||||
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
|
||||
# they are included here as an example. Modify as you see fit.
|
||||
## i3 changes the working directory while parsing a config file
|
||||
## so that relative paths are interpreted relative to the directory
|
||||
## of the config file that contains the path:
|
||||
#include 01_theme.conf
|
||||
|
||||
# xss-lock zen grabs a logind suspend inhibit lock and will use i3lock to lock the
|
||||
# screen before suspend.
|
||||
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
|
||||
## To list all loaded configuration files, run `i3 --moreversion`
|
||||
|
||||
# NetworkManager is the most popular way to manage wireless networks on Linux,
|
||||
# and nm-applet is a desktop environment-independent system tray GUI for it.
|
||||
exec --no-startup-id nm-applet
|
||||
#------
|
||||
|
||||
exec --no-startup-id telegram-desktop
|
||||
# exec --no-startup-id syncthing-gtk
|
||||
exec --no-startup-id keepass
|
||||
exec --no-startup-id onboard
|
||||
exec --no-startup-id touchegg
|
||||
exec --no-startup-id xscreensaver
|
||||
# exec --no-startup-id mailspring
|
||||
# exec --no-startup-id minetime
|
||||
## Load i3 config files
|
||||
include ~/.config/i3/config.d/*.conf
|
||||
|
||||
# No border :)
|
||||
default_border pixel 1
|
||||
default_floating_border none
|
||||
# Default colors
|
||||
# class border backgr. text indicator child_border
|
||||
client.focused #ffffff #888888 #000000 #ffffff #888888
|
||||
client.focused_inactive #333333 #5f676a #ffffff #484e50 #5f676a
|
||||
client.unfocused #a000ff #040404 #888888 #444444 #444444
|
||||
client.urgent #2f343a #600099 #ffffff #600099 #600099
|
||||
client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
|
||||
## Enable/Disable i3 bar
|
||||
#include ~/.config/i3/i3status/statusbar.conf
|
||||
|
||||
client.background #000000
|
||||
##-- Mod Keys ----------------------------------
|
||||
set $MOD Mod4
|
||||
set $ALT Mod1
|
||||
|
||||
# Use pactl to adjust volume in PulseAudio.
|
||||
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +8%
|
||||
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -7%
|
||||
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle
|
||||
##-- General Settings --------------------------
|
||||
|
||||
# Brightness settings
|
||||
bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 5
|
||||
bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 5
|
||||
## Floating Modifier
|
||||
##
|
||||
## To move floating windows with your mouse, you can either grab their titlebar
|
||||
## or configure the so-called floating modifier which you can then press and click
|
||||
## anywhere in the window itself to move it.
|
||||
##
|
||||
## When holding the floating modifier, you can resize a floating window by pressing
|
||||
## the right mouse button on it and moving around while holding it.
|
||||
## If you hold the shift button as well, the resize will be proportional
|
||||
## (the aspect ratio will be preserved).
|
||||
floating_modifier $MOD
|
||||
|
||||
# Transparent lock
|
||||
bindsym $mod+i exec xtrlock
|
||||
#------
|
||||
|
||||
# Multiple display settings
|
||||
bindsym XF86Display exec --no-startup-id arandr
|
||||
## Orientation for new workspaces
|
||||
##
|
||||
## New workspaces get a reasonable default orientation: Wide-screen monitors
|
||||
## (anything wider than high) get horizontal orientation, rotated monitors
|
||||
## (anything higher than wide) get vertical orientation.
|
||||
##
|
||||
## Syntax: default_orientation horizontal|vertical|auto
|
||||
default_orientation auto
|
||||
|
||||
# Use Mouse+$mod to drag floating windows to their wanted position
|
||||
floating_modifier $mod
|
||||
#------
|
||||
|
||||
# start a terminal
|
||||
bindsym $mod+Return exec i3-sensible-terminal
|
||||
## Layout mode for new containers
|
||||
##
|
||||
## This option determines in which mode new containers on workspace level will start.
|
||||
##
|
||||
## Syntax: workspace_layout default|stacking|tabbed
|
||||
workspace_layout default
|
||||
|
||||
# kill focused window
|
||||
bindsym $mod+w kill
|
||||
#------
|
||||
|
||||
# start dmenu (a program launcher)
|
||||
#bindsym $mod+r exec dmenu_run
|
||||
bindsym $mod+r exec --no-startup-id ~/.config/rofi/bin/menu_powermenu
|
||||
#bindsym $mod+r exec --no-startup-id ~/rofi/files/powermenu/type-2/powermenu.sh
|
||||
# start rofi
|
||||
bindsym $mod+p exec "rofi -modes combi -show combi run,window"
|
||||
# switch rofi
|
||||
bindsym $mod+q exec rofi -show window
|
||||
# rofi fb
|
||||
bindsym $mod+g exec rofi -show file-browser-extended
|
||||
# ssh rofi
|
||||
#bindsym $mod+c exec rofi -show ssh
|
||||
bindsym $mod+c exec --no-startup-id ~/.config/rofi/bin/menu_time
|
||||
# lock screen
|
||||
bindsym $mod+o exec ~/lock.sh
|
||||
#bindsym $mod+o exec slimlock
|
||||
# ristretto
|
||||
bindsym $mod+e exec nemo
|
||||
## Window title alignment
|
||||
##
|
||||
## This option determines the window title’s text alignment. Default is left
|
||||
##
|
||||
## Syntax: title_align left|center|right
|
||||
title_align center
|
||||
|
||||
# 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
|
||||
## Print all window titles in format of 'class | title'
|
||||
for_window [class=".*"] title_format "%class | %title"
|
||||
|
||||
# change focus
|
||||
bindsym $mod+h focus left
|
||||
bindsym $mod+j focus down
|
||||
bindsym $mod+k focus up
|
||||
bindsym $mod+l focus right
|
||||
## Enable window icons for all windows
|
||||
for_window [all] title_window_icon off
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
## Enable window icons for all windows with extra horizontal padding
|
||||
#for_window [all] title_window_icon padding 5px
|
||||
|
||||
# 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 $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
## Default border style for new windows
|
||||
##
|
||||
## This option determines which border style new windows will have. The default is `normal`.
|
||||
## Note that `default_floating_border` applies only to windows which are starting out
|
||||
## as floating windows, e.g., dialog windows, but not windows that are floated later on.
|
||||
##
|
||||
## Setting border style to `pixel` eliminates title bars. The border style `normal`
|
||||
## allows you to adjust edge border width while keeping your title bar.
|
||||
##
|
||||
## Syntax:
|
||||
#default_border normal|none|pixel
|
||||
#default_border normal|pixel <px>
|
||||
#default_floating_border normal|none|pixel
|
||||
#default_floating_border normal|pixel <px>
|
||||
#default_border pixel 2
|
||||
#default_floating_border pixel 2
|
||||
|
||||
# Resizing windows
|
||||
bindsym $mod+Ctrl+Shift+Up resize shrink height 10 px or 10 ppt
|
||||
bindsym $mod+Ctrl+Shift+Down resize grow height 10 px or 10 ppt
|
||||
bindsym $mod+Ctrl+Shift+Right resize shrink width 10 px or 10 ppt
|
||||
bindsym $mod+Ctrl+Shift+Left resize grow width 10 px or 10 ppt
|
||||
#------
|
||||
|
||||
bindsym $mod+Ctrl+Shift+k resize shrink height 10 px or 10 ppt
|
||||
bindsym $mod+Ctrl+Shift+j resize grow height 10 px or 10 ppt
|
||||
bindsym $mod+Ctrl+Shift+l resize shrink width 10 px or 10 ppt
|
||||
bindsym $mod+Ctrl+Shift+h resize grow width 10 px or 10 ppt
|
||||
## Hiding borders adjacent to the screen edges
|
||||
##
|
||||
## You can hide container borders adjacent to the screen edges using `hide_edge_borders`
|
||||
## (the default is none). Hiding borders is useful if you are using scrollbars,
|
||||
## or do not want to waste even two pixels in displayspace.
|
||||
##
|
||||
## The `smart` setting hides borders on workspaces with only one window visible,
|
||||
## but keeps them on workspaces with multiple windows visible.
|
||||
##
|
||||
## The `smart_no_gaps` setting hides edge-specific borders of a container if the
|
||||
## container is the only container on its workspace and the gaps to the screen edge are 0.
|
||||
##
|
||||
## Syntax: hide_edge_borders none|vertical|horizontal|both|smart|smart_no_gaps
|
||||
hide_edge_borders none
|
||||
|
||||
# split in horizontal orientation
|
||||
bindsym $mod+b split h
|
||||
#------
|
||||
|
||||
# split in vertical orientation
|
||||
bindsym $mod+v split v
|
||||
## Smart borders
|
||||
##
|
||||
## Smart borders will draw borders on windows only if there is more than one window
|
||||
## in a workspace. This feature can also be enabled only if the gap size between
|
||||
## window and screen edge is 0.
|
||||
##
|
||||
## Syntax: smart_borders on|off|no_gaps
|
||||
#smart_borders on
|
||||
|
||||
# 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+t layout tabbed
|
||||
bindsym $mod+a layout toggle split
|
||||
## Don’t focus window upon opening
|
||||
##
|
||||
## When a new window appears, it will be focused. The `no_focus` directive allows
|
||||
## preventing this from happening and must be used in combination with [command_criteria].
|
||||
##
|
||||
## Syntax: no_focus <criteria>
|
||||
#no_focus [window_role="pop-up"]
|
||||
|
||||
# toggle tiling / floating
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
#------
|
||||
|
||||
# change focus between tiling / floating windows
|
||||
bindsym $mod+space focus mode_toggle
|
||||
## Automatically putting workspaces on specific screens
|
||||
##
|
||||
## If you assign clients to workspaces, it might be handy to put the workspaces on
|
||||
## specific screens. Also, the assignment of workspaces to screens will determine
|
||||
## which workspace i3 uses for a new screen when adding screens or when starting
|
||||
## (e.g., by default it will use 1 for the first screen, 2 for the second screen and so on).
|
||||
##
|
||||
## Syntax: workspace <workspace> output <output1> [output2]…
|
||||
##
|
||||
## The `output` is the name of the RandR output you attach your screen to.
|
||||
## On a laptop, you might have VGA1 and LVDS1 as output names.
|
||||
## You can see the available outputs by running `xrandr --current`
|
||||
#workspace 1 output LVDS1
|
||||
#workspace 2 output primary
|
||||
#workspace 5 output VGA1 LVDS1
|
||||
#workspace "2: vim" output VGA1
|
||||
|
||||
# focus the parent container
|
||||
# bindsym $mod+a focus parent
|
||||
#------
|
||||
|
||||
# focus the child container
|
||||
#bindsym $mod+d focus child
|
||||
## Interprocess communication
|
||||
##
|
||||
## i3 uses Unix sockets to provide an IPC interface. This allows third-party programs
|
||||
## to get information from i3, such as the current workspaces (to display a workspace bar), and to control i3.
|
||||
##
|
||||
## You can override the default path through the environment-variable `I3SOCK`
|
||||
## or by specifying the `ipc-socket` directive.This is discouraged, though,
|
||||
## since i3 does the right thing by default. If you decide to change it,
|
||||
## it is strongly recommended to set this to a location in your home directory
|
||||
## so that no other user can create that directory.
|
||||
#ipc-socket ~/.i3/i3-ipc.sock
|
||||
|
||||
# Define names for default workspaces for which we configure key bindings later on.
|
||||
# We use variables to avoid repeating the names in multiple places.
|
||||
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 $ws11 "A"
|
||||
set $ws12 "B"
|
||||
set $ws13 "C"
|
||||
set $ws14 "D"
|
||||
set $ws15 "E"
|
||||
set $ws16 "F"
|
||||
set $ws17 "G"
|
||||
set $ws18 "H"
|
||||
set $ws19 "I"
|
||||
set $ws20 "J"
|
||||
#------
|
||||
|
||||
# switch to workspace
|
||||
bindsym $mod+1 workspace $ws1
|
||||
bindsym $mod+2 workspace $ws2
|
||||
bindsym $mod+3 workspace $ws3
|
||||
bindsym $mod+4 workspace $ws4
|
||||
bindsym $mod+5 workspace $ws5
|
||||
bindsym $mod+6 workspace $ws6
|
||||
bindsym $mod+7 workspace $ws7
|
||||
bindsym $mod+8 workspace $ws8
|
||||
bindsym $mod+9 workspace $ws9
|
||||
bindsym $mod+0 workspace $ws10
|
||||
bindsym $mod+F1 workspace $ws11
|
||||
bindsym $mod+F2 workspace $ws12
|
||||
bindsym $mod+F3 workspace $ws13
|
||||
bindsym $mod+F4 workspace $ws14
|
||||
bindsym $mod+F5 workspace $ws15
|
||||
bindsym $mod+F6 workspace $ws16
|
||||
bindsym $mod+F7 workspace $ws17
|
||||
bindsym $mod+F8 workspace $ws18
|
||||
bindsym $mod+F9 workspace $ws19
|
||||
bindsym $mod+F10 workspace $ws20
|
||||
## Focus follows mouse
|
||||
##
|
||||
## By default, window focus follows your mouse movements as the mouse crosses window borders.
|
||||
## However, if you have a setup where your mouse usually is in your way
|
||||
## (like a touchpad on your laptop which you do not want to disable completely),
|
||||
## you might want to disable `focus follows mouse` and control focus only by using your keyboard.
|
||||
## The mouse will still be useful inside the currently active window (for example to click on links in your browser window).
|
||||
##
|
||||
## Syntax: focus_follows_mouse yes|no
|
||||
focus_follows_mouse yes
|
||||
|
||||
# Scratchpad
|
||||
# Make the currently focused window a scratchpad
|
||||
bindsym $mod+Shift+minus move scratchpad
|
||||
# Show the first scratchpad window
|
||||
bindsym $mod+minus scratchpad show
|
||||
#------
|
||||
|
||||
# move focused container to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace $ws1
|
||||
bindsym $mod+Shift+2 move container to workspace $ws2
|
||||
bindsym $mod+Shift+3 move container to workspace $ws3
|
||||
bindsym $mod+Shift+4 move container to workspace $ws4
|
||||
bindsym $mod+Shift+5 move container to workspace $ws5
|
||||
bindsym $mod+Shift+6 move container to workspace $ws6
|
||||
bindsym $mod+Shift+7 move container to workspace $ws7
|
||||
bindsym $mod+Shift+8 move container to workspace $ws8
|
||||
bindsym $mod+Shift+9 move container to workspace $ws9
|
||||
bindsym $mod+Shift+0 move container to workspace $ws10
|
||||
bindsym $mod+Shift+F1 move container to workspace $ws11
|
||||
bindsym $mod+Shift+F2 move container to workspace $ws12
|
||||
bindsym $mod+Shift+F3 move container to workspace $ws13
|
||||
bindsym $mod+Shift+F4 move container to workspace $ws14
|
||||
bindsym $mod+Shift+F5 move container to workspace $ws15
|
||||
bindsym $mod+Shift+F6 move container to workspace $ws16
|
||||
bindsym $mod+Shift+F7 move container to workspace $ws17
|
||||
bindsym $mod+Shift+F8 move container to workspace $ws18
|
||||
bindsym $mod+Shift+F9 move container to workspace $ws19
|
||||
bindsym $mod+Shift+F10 move container to workspace $ws20
|
||||
## Mouse warping
|
||||
##
|
||||
## By default, when switching focus to a window on a different output
|
||||
## (e.g. focusing a window on workspace 3 on output VGA-1, coming from workspace 2 on LVDS-1),
|
||||
## the mouse cursor is warped to the center of that window.
|
||||
##
|
||||
## With the `mouse_warping` option, you can control when the mouse cursor should be warped.
|
||||
## `none` disables warping entirely, whereas `output` is the default behavior described above.
|
||||
##
|
||||
## Syntax: mouse_warping output|none
|
||||
mouse_warping none
|
||||
|
||||
# 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'"
|
||||
#
|
||||
#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
|
||||
## Popups during fullscreen mode
|
||||
##
|
||||
## When you are in fullscreen mode, some applications still open popup windows (take Xpdf for example).
|
||||
## This is because these applications might not be aware that they are in fullscreen mode
|
||||
## (they do not check the corresponding hint).
|
||||
## There are three things which are possible to do in this situation.
|
||||
##
|
||||
## Syntax: popup_during_fullscreen smart|ignore|leave_fullscreen
|
||||
popup_during_fullscreen smart
|
||||
|
||||
# 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 or $mod+r
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
bindsym $mod+r mode "default"
|
||||
}
|
||||
#
|
||||
# Supposed to kill with center button
|
||||
bindsym --release button2 killa
|
||||
## Focus wrapping
|
||||
##
|
||||
## By default, when in a container with several windows or child containers,
|
||||
## the opposite window will be focused when trying to move the focus over the edge of
|
||||
## a container (and there are no other containers in that direction) — the focus wraps.
|
||||
##
|
||||
## Syntax: focus_wrapping yes|no|force|workspace
|
||||
# Disable focus wrapping
|
||||
#focus_wrapping no
|
||||
# Force focus wrapping
|
||||
#focus_wrapping force
|
||||
|
||||
# Custom config window
|
||||
for_window [class="vlc"] floating enable
|
||||
for_window [class="feh"] floating enable
|
||||
#------
|
||||
|
||||
# Assign to desktop
|
||||
assign [class="Firefox"] 1
|
||||
assign [class="KeePass"] 3
|
||||
assign [class="Clementine"] 8
|
||||
assign [class="Telegram"] 9
|
||||
assign [class="Mailspring"] 7
|
||||
assign [class="MineTime"] 7
|
||||
## Forcing Xinerama
|
||||
##
|
||||
## As explained in-depth in https://i3wm.org/docs/multi-monitor.html, some X11 video
|
||||
## drivers (especially the nVidia binary driver) only provide support for Xinerama
|
||||
## instead of RandR. In such a situation, i3 must be told to use the inferior Xinerama
|
||||
## API explicitly and therefore don’t provide support for reconfiguring your screens
|
||||
## on the fly (they are read only once on startup and that’s it).
|
||||
##
|
||||
## Syntax: force_xinerama yes|no
|
||||
#force_xinerama yes
|
||||
|
||||
#bindsym $mod+Return mode "resize"
|
||||
#------
|
||||
|
||||
# Workspace config
|
||||
#workspace 1 output DisplayPort-2
|
||||
## Automatic back-and-forth when switching to the current workspace
|
||||
##
|
||||
## This configuration directive enables automatic `workspace back_and_forth`
|
||||
## when switching to the workspace that is currently focused.
|
||||
##
|
||||
## Syntax: workspace_auto_back_and_forth yes|no
|
||||
workspace_auto_back_and_forth yes
|
||||
|
||||
# i3 bar configuration
|
||||
# ----------------------------------------------------------------------------
|
||||
#------
|
||||
|
||||
# Start i3bar to display a workspace bar (plus the system information i3status
|
||||
# finds out, if available)
|
||||
bar {
|
||||
# status_command i3status --
|
||||
status_command py3status
|
||||
## Delaying urgency hint reset on workspace change
|
||||
##
|
||||
## If an application on another workspace sets an urgency hint, switching to this
|
||||
## workspace might lead to immediate focus of the application, which also means the
|
||||
## window decoration color would be immediately reset to `client.focused`.
|
||||
## This might make it unnecessarily hard to tell which window originally raised the event.
|
||||
##
|
||||
## In order to prevent this, you can tell i3 to delay resetting the urgency state by
|
||||
## a certain time using the `force_display_urgency_hint` directive.
|
||||
## Setting the value to 0 disables this feature. The default is 500ms.
|
||||
##
|
||||
## Syntax: force_display_urgency_hint <timeout> ms
|
||||
force_display_urgency_hint 500 ms
|
||||
|
||||
position top
|
||||
tray_output DisplayPort-2
|
||||
#------
|
||||
|
||||
colors {
|
||||
background #000000
|
||||
statusline #a000ff
|
||||
separator #aaaaaa
|
||||
## Focus on window activation
|
||||
##
|
||||
## If a window is activated, e.g., via `google-chrome www.google.com`, it may request to take focus.
|
||||
## Since this might not be preferable, different reactions can be configured.
|
||||
##
|
||||
## Note that this might not affect windows that are being opened.
|
||||
## To prevent new windows from being focused.
|
||||
##
|
||||
## Syntax: focus_on_window_activation smart|urgent|focus|none
|
||||
focus_on_window_activation smart
|
||||
|
||||
# Default conf
|
||||
# focused_workspace #4c7899 #285577 #ffffff
|
||||
focused_workspace #ffffff #888888 #000000
|
||||
active_workspace #888888 #444444 #ffffff
|
||||
inactive_workspace #888888 #000000 #a000ff
|
||||
urgent_workspace #2f343a #600099 #ffffff
|
||||
binding_mode #2f343a #600099 #ffffff
|
||||
}
|
||||
#------
|
||||
|
||||
separator_symbol "ʃ"
|
||||
#separator_symbol "❰"
|
||||
#separator_symbol "❱"
|
||||
#separator_symbol " ▷ "
|
||||
#separator_symbol " ∠ "
|
||||
#separator_symbol "|"
|
||||
#separator_symbol "ǁ"
|
||||
## Drawing marks on window decoration
|
||||
##
|
||||
## If activated, marks on windows are drawn in their window decoration.
|
||||
## However, any mark starting with an underscore in its name (_) will not be drawn
|
||||
## even if this option is activated.
|
||||
##
|
||||
## The default for this option is yes.
|
||||
##
|
||||
## Syntax: show_marks yes|no
|
||||
show_marks yes
|
||||
|
||||
strip_workspace_name no
|
||||
strip_workspace_numbers yes
|
||||
#------
|
||||
|
||||
binding_mode_indicator no
|
||||
}
|
||||
## Tiling drag
|
||||
##
|
||||
## You can configure how to initiate the tiling drag feature.
|
||||
##
|
||||
## Syntax:
|
||||
#tiling_drag off
|
||||
#tiling_drag modifier|titlebar [modifier|titlebar]
|
||||
tiling_drag modifier titlebar
|
||||
|
||||
##-- Autostart ---------------------------------
|
||||
|
||||
## Automatically starting applications on i3 startup
|
||||
##
|
||||
## By using the `exec` keyword outside a keybinding, you can configure which commands
|
||||
## will be performed by i3 on initial startup. `exec` commands will not run when
|
||||
## restarting i3, if you need a command to run also when restarting i3 you should
|
||||
## use the `exec_always` keyword. These commands will be run in order.
|
||||
##
|
||||
## Syntax:
|
||||
#exec [--no-startup-id] <command>
|
||||
#exec_always [--no-startup-id] <command>
|
||||
exec_always --no-startup-id ~/.config/i3/scripts/i3_autostart
|
||||
|
||||
## The --no-startup-id parameter disables startup-notification support for this particular exec command.
|
||||
## With startup-notification, i3 can make sure that a window appears on the workspace on which you used the exec command.
|
||||
|
||||
Reference in New Issue
Block a user