fixes, new features like initial debbugs
[distro-setup] / i3-sway / common.conf
1 ####### DO NOT EDIT LIVE CONFIG. generated from /a/bin/distro-setup/i3-sway/gen #######
2
3 # https://i3wm.org/docs/userguide.html#keybindings
4 #To get the current mapping of your keys, use xmodmap -pke. To
5 #interactively enter a key and see what keysym it is configured to, use
6 #xev.
7 set $mod Mod4
8
9 bindsym $mod+2 exec "pavucontrol"
10 # calling without -no-remote makes this to be the instance that links
11 # will open in from other applications.
12 bindsym $mod+3 exec "abrowser"
13 # calling just abrowser mysteriously stopped working,
14 # so I figured out this is how to get output, but then
15 # it suddenly started working again.
16 #bindsym $mod+3 exec "abrowser 2>&1 >/tmp/l"
17 #bindsym $mod+3 exec "abrowser -no-remote -P sfw"
18 bindsym $mod+4 exec "abrowser -no-remote -P firefox-main-profile"
19 bindsym $mod+5 exec "/a/bin/ds/laptop-xrandr"
20 bindsym $mod+6 exec "/usr/local/bin/start-tor-browser"
21 #bindsym $mod+6 exec "/a/bin/redshift.sh"
22 # bindsym $mod+equal exec "t s w; t in"
23 # bindsym $mod+Home exec "t out"
24 # #bindsym $mod+End exec "t s x; t in"
25 # bindsym $mod+grave exec "t s lunch; t in; t out -a '45 minutes from now'"
26
27
28 bindsym $mod+1 focus parent
29 bindsym $mod+equal exec "dunstctl close-all"
30 # move firefox to current workspace.
31 # https://i3wm.org/docs/userguide.html#keybindings
32 # get class with xprop, example output
33 # WM_CLASS(STRING) = "irssi", "URxvt"
34 # xprop |& grep WM_CLASS
35 bindsym $mod+w [class="abrowser"] move workspace current
36
37 bindsym $mod+e fullscreen toggle
38 bindsym $mod+r exec "/a/bin/ds/xl"
39 # todo, in newer i3, make this toggle split tabbed
40 bindsym $mod+t layout toggle split
41 #bindsym $mod+Shift+t move workspace to output up
42 bindsym $mod+Shift+t move workspace to output right
43 bindsym $mod+g layout tabbed
44
45 # Use Mouse+$mod to drag floating windows to their wanted position
46 floating_modifier $mod
47
48 bindsym $mod+u focus left
49 bindsym $mod+i focus right
50 bindsym $mod+o focus up
51 bindsym $mod+p focus down
52
53 bindsym $mod+Left move left
54 bindsym $mod+Right move right
55 bindsym $mod+Up move up
56 bindsym $mod+Down move down
57
58 # switch to workspace
59 bindsym $mod+Shift+a move container to workspace 4
60 bindsym $mod+a workspace 4
61 # move focused container to workspace
62 bindsym $mod+Shift+s move container to workspace 3
63 bindsym $mod+s workspace 3
64
65 bindsym $mod+Shift+d move container to workspace 2
66 bindsym $mod+d workspace 2
67
68 bindsym $mod+Shift+f move container to workspace 1
69 bindsym $mod+f workspace 1
70
71 bindsym $mod+Shift+z move container to workspace 5
72 bindsym $mod+z workspace 5
73
74 bindsym $mod+Shift+x move container to workspace 6
75 bindsym $mod+x workspace 6
76
77
78 # todo, in newer i3, make this split toggle
79 bindsym $mod+v split vertical
80 bindsym $mod+Shift+v split horizontal
81 # https://faq.i3wm.org/question/7662/reverse-perl-matches-in-criteria-in-i3-config.1.html
82 # I found their regex slightly wrong. This is a hacky way to
83 # ignore my irc emacs instances, their window titles
84 # are irc room names. Another way would be to hack on the
85 # window title, or xprop stuff, but I figure I'm switching
86 # to wayland soon, lets wait and see how things work there.
87 bindsym $mod+b [class="Emacs" title="^(?!#[a-zA-Z][a-zA-Z-]*$)"] move workspace current
88
89 bindsym $mod+c kill
90
91
92 bindsym $mod+Shift+Home move container to workspace 7
93 bindsym $mod+Home workspace 7
94 bindsym $mod+Shift+q move container to workspace 8
95 bindsym $mod+q workspace 8
96
97 bindsym $mod+Shift+8 move container to workspace 9
98 bindsym $mod+8 workspace 9
99 bindsym $mod+Shift+9 move container to workspace 10
100 bindsym $mod+9 workspace 10
101
102
103 bindsym $mod+Shift+m border toggle
104
105 # 65 = space.
106 # toggle tiling / floating
107 bindcode $mod+Shift+65 floating toggle
108
109 # change focus between tiling / floating windows
110 bindcode $mod+65 focus mode_toggle
111 # Use Mouse+$mod to drag floating windows to their wanted position
112 floating_modifier $mod
113
114 bindsym $mod+j exec emacsclient -c
115 bindsym $mod+k exec konsole
116 bindsym $mod+l exec dmenu_run
117 # note default is 27% on my system76. not sure if these
118 # keybinds will screw up other laptop brightness keys.
119 bindsym XF86MonBrightnessUp exec brightnessctl s +5%
120 bindsym XF86MonBrightnessDown exec brightnessctl s 5%-
121
122 # Font for window titles. Will also be used by the bar unless a different font
123 # is used in the bar {} block below.
124 font pango:monospace 8
125
126 # todo: only available in newer i3n
127 #hide_edge_borders smart
128
129 #exec --no-startup-id /usr/lib/x86_64-linux-gnu/libexec/kdeconnectd
130
131 # Start clipster daemon
132 #exec --no-startup-id /a/opt/clipster/clipster -d
133
134
135 # shortcut to selection widget (primary)
136 bindsym $mod+End exec /a/opt/clipster/clipster -sp
137
138 # file:///usr/share/doc/i3-wm/userguide.html#_border_style_for_new_windows
139 new_window none
140
141 # I dont see a way to make processing windows act like normal windows,
142 # this does it.
143 # https://unix.stackexchange.com/questions/450700/opening-a-programme-in-a-floating-window-in-i3
144 #
145 # This is the info for a processing window launched from the ide.
146 # I'm not sure I want it like this, so commenting it out for now.
147 #for_window [class="processing-core-PApplet" instance="processing-core-PApplet"] floating disable
148
149 # this is the processing window for my app named focus.
150 for_window [class="focus" instance="focus"] floating disable