Compare commits
45 Commits
cb44f3ed10
...
wip
| Author | SHA1 | Date | |
|---|---|---|---|
| dbdfac823c | |||
| 8849674617 | |||
| 85f7da444e | |||
| 90786cef74 | |||
| bc85f3cb09 | |||
| 6e5dc5decd | |||
| 203913aa58 | |||
| 1b2b72e813 | |||
| f78d1ec922 | |||
| 9ddaf09c5c | |||
| 32036e2f76 | |||
| c626f849cf | |||
| de7dbf7f67 | |||
| 8715860090 | |||
| e64ba55973 | |||
| 1070fd29b9 | |||
| 6b4927cb51 | |||
| 8f5b3443db | |||
| 8ee04ac139 | |||
| 210fd7052f | |||
| d815cadb7b | |||
| f4dadb53a9 | |||
| 65e82799d6 | |||
| 9582b16219 | |||
| 6622539538 | |||
| caeb94082d | |||
| e08bf98d80 | |||
| fc7b72fe6b | |||
| a29b006b00 | |||
| 3aa7246458 | |||
| 7656f1db67 | |||
| 219b0466db | |||
| b3b04d9efe | |||
| 7f1fea5a8c | |||
| 1d42c23f1c | |||
| fdb736c39e | |||
| 7004a10dd6 | |||
| 8337231b23 | |||
| a37ae0f8bf | |||
| de8d8cf6ef | |||
| 61e964a0e0 | |||
| 5ad950c65e | |||
| aca76de49d | |||
| 9a77b3730e | |||
| b6f9d9c9b5 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -4,6 +4,7 @@ shell/.config/zsh/plugins/zsh-syntax-highlighting
|
||||
shell/.config/zsh/plugins/zsh-vi-mode
|
||||
qtile/.config/qtile/theme.txt
|
||||
lupan-clock/lupan-clock
|
||||
lupan-clock/stdout-clock
|
||||
lupan-wm/target
|
||||
*~
|
||||
__pycache__
|
||||
|
||||
@@ -8,10 +8,10 @@ TERM = "xterm-256color"
|
||||
size = 10
|
||||
|
||||
[font.bold]
|
||||
family = "Fira Code Nerd Font"
|
||||
family = "HurmitNerdFont"
|
||||
|
||||
[font.normal]
|
||||
family = "Fira Code Nerd Font"
|
||||
family = "HurmitNerdFont"
|
||||
|
||||
[general]
|
||||
import = ["~/.config/alacritty/dark.toml"]
|
||||
|
||||
158
argen/.config/argen/init
Executable file
158
argen/.config/argen/init
Executable file
@@ -0,0 +1,158 @@
|
||||
#!/bin/sh
|
||||
|
||||
wlr-randr --output DP-1 --mode 3840x2160 --scale 2
|
||||
wlr-randr --output HDMI-A-1 --mode 3840x2160 --scale 2 --left-of DP-1
|
||||
|
||||
foot --server &
|
||||
|
||||
argenctl config set label-mode modifier
|
||||
|
||||
# Terminal
|
||||
#argenctl binding set normal Super Return sh "kitty --single-instance --instance-group default"
|
||||
argenctl binding set normal Super Return sh "
|
||||
if [ -e ~/.lightmode ]; then
|
||||
exec footclient -o initial-color-theme=light
|
||||
else
|
||||
exec footclient -o initial-color-theme=dark
|
||||
fi
|
||||
"
|
||||
|
||||
# Reload config
|
||||
argenctl binding set normal Super+Shift R exec "$0"
|
||||
|
||||
argenctl binding set normal Super P exec fuzzel
|
||||
argenctl binding set normal Super+Shift L exec waylock
|
||||
argenctl binding set normal Super+Shift T sh "lupan-set-theme toggle"
|
||||
|
||||
# Window focus and swap
|
||||
argenctl binding set normal Super J window focus next
|
||||
argenctl binding set normal Super K window focus prev
|
||||
argenctl binding set normal Super+Shift J window swap next
|
||||
argenctl binding set normal Super+Shift K window swap prev
|
||||
|
||||
argenctl binding set normal Super F window fullscreen
|
||||
argenctl binding set normal Super W window float
|
||||
|
||||
argenctl binding set normal Super+Shift C window close
|
||||
argenctl binding set normal Super+Shift X window detach
|
||||
|
||||
# Output focus and send
|
||||
argenctl binding set normal Super Period output focus next
|
||||
argenctl binding set normal Super Comma output focus prev
|
||||
argenctl binding set normal Super+Shift Period window send next
|
||||
argenctl binding set normal Super+Shift Comma window send prev
|
||||
|
||||
# Layout
|
||||
argenctl binding set normal Super M layout switch monocle
|
||||
argenctl binding set normal Super S layout switch stacktile
|
||||
argenctl binding set normal Super H layout set primary-ratio -0.05
|
||||
argenctl binding set normal Super L layout set primary-ratio +0.05
|
||||
argenctl binding set normal Super+Control K layout set secondary-ratio -0.05
|
||||
argenctl binding set normal Super+Control J layout set secondary-ratio +0.05
|
||||
|
||||
# Pointer
|
||||
argenctl pointer-binding set normal Super BTN_LEFT move-window
|
||||
argenctl pointer-binding set normal Super BTN_RIGHT resize-window
|
||||
|
||||
# Context
|
||||
argenctl binding set normal Super+Shift+Control X context close
|
||||
argenctl binding set normal Super Tab context switch --last
|
||||
|
||||
# Switch contexts interactively
|
||||
argenctl binding set normal Super Space sh 'argenctl context switch "$(argenctl context list | fuzzel -d)"'
|
||||
|
||||
# Create new context interactively
|
||||
argenctl binding set normal Super+Shift Space sh '
|
||||
set -eu
|
||||
prompt="$(fuzzel -dl0 -p"new > ")"
|
||||
argenctl context new "$prompt"
|
||||
'
|
||||
|
||||
# Rename current context interactively
|
||||
argenctl binding set normal Super+Control Space sh '
|
||||
set -eu
|
||||
prompt="$(fuzzel -dl0 -p"rename > ")"
|
||||
argenctl context rename "$prompt"
|
||||
'
|
||||
|
||||
# Assign currently focused window to be toggled with Super U
|
||||
argenctl binding set normal Super+Shift U sh '
|
||||
set -eu
|
||||
window_id=$(argenctl window list --json | jq -r ".[] | select(.focused) | .id")
|
||||
argenctl binding set normal Super U window toggle $window_id
|
||||
'
|
||||
|
||||
# Attach window interactively
|
||||
argenctl binding set normal Super+Shift D sh '
|
||||
set -eu
|
||||
id=$(argenctl window list | fuzzel -d --with-nth 2 --accept-nth 1)
|
||||
argenctl window attach "$id"
|
||||
'
|
||||
|
||||
# Adopt all orphans
|
||||
argenctl binding set normal Super+Control D sh '
|
||||
argenctl window list --json | jq -r ".[] | select(.contexts | length == 0) | .id" | while read -r id; do
|
||||
argenctl window attach "$id"
|
||||
done
|
||||
'
|
||||
|
||||
# Quit after confirmed with 'yes'
|
||||
argenctl binding set normal Super+Shift Q sh '
|
||||
set -eu
|
||||
confirm="$(fuzzel -dl0 -p"quit? > ")"
|
||||
if [ "$confirm" = yes ]; then
|
||||
argenctl exit
|
||||
fi
|
||||
'
|
||||
|
||||
# Audio and brightness controls
|
||||
VOL_DEC='wpctl set-volume @DEFAULT_SINK@ --limit 1.5 5%-'
|
||||
VOL_INC='wpctl set-mute @DEFAULT_SINK@ 0 && wpctl set-volume @DEFAULT_SINK@ --limit 1.5 5%+'
|
||||
VOL_TOGGLE='wpctl set-mute @DEFAULT_SINK@ toggle'
|
||||
for mode in normal locked; do
|
||||
argenctl binding set $mode Super Bracketleft sh "$VOL_DEC"
|
||||
argenctl binding set $mode Super Bracketright sh "$VOL_INC"
|
||||
argenctl binding set $mode Super+Shift M sh "$VOL_TOGGLE"
|
||||
argenctl binding set $mode None XF86AudioLowerVolume sh "$VOL_DEC"
|
||||
argenctl binding set $mode None XF86AudioRaiseVolume sh "$VOL_INC"
|
||||
argenctl binding set $mode None XF86AudioMute sh "$VOL_TOGGLE"
|
||||
argenctl binding set $mode None XF86MonBrightnessDown sh "brightnessctl s 5%-"
|
||||
argenctl binding set $mode None XF86MonBrightnessUp sh "brightnessctl s +5%"
|
||||
argenctl binding set $mode Super+Shift Bracketleft sh "brightnessctl s 5%-"
|
||||
argenctl binding set $mode Super+Shift Bracketright sh "brightnessctl s +5%"
|
||||
done
|
||||
|
||||
# Passthrough mode
|
||||
argenctl mode declare passthrough
|
||||
argenctl binding set normal Super Grave mode enter passthrough
|
||||
argenctl binding set passthrough Super Grave mode enter normal
|
||||
|
||||
# Select/swap window by index
|
||||
for num in 1 2 3 4 5 6 7 8 9; do
|
||||
idx=$((num - 1))
|
||||
argenctl binding set normal Super $num sh "
|
||||
argenctl window focus \$(argenctl context list --json | jq -r '.[] | select(.current) | .windows | .[$idx]')
|
||||
"
|
||||
argenctl binding set normal Super+Shift $num sh "
|
||||
context_id=\$(argenctl context list --json | jq -r '.[] | select(.current) | .id')
|
||||
length=\$(argenctl context list --json | jq -r '.[] | select(.current) | .windows | length')
|
||||
focused_window=\$(argenctl context list --json | jq -r '.[] | select(.current) | .focused_window')
|
||||
dest_window=\$(argenctl context list --json | jq -r '.[] | select(.current) | .windows | .[$idx]')
|
||||
focused_output_id=\$(argenctl window list --json | jq -r \".[] | select(.id == \\\"\$focused_window\\\") | .contexts[] | select(.id = \$context_id) | .output_id\")
|
||||
dest_output_id=\$(argenctl window list --json | jq -r \".[] | select(.id == \\\"\$dest_window\\\") | .contexts[] | select(.id = \$context_id) | .output_id\")
|
||||
if [ -n \"\$focused_output_id\" -a \"\$focused_output_id\" = \"\$dest_output_id\" ]; then
|
||||
for i in \$(seq \$length); do
|
||||
if [ \"\$focused_window\" = \"\$dest_window\" ]; then
|
||||
break
|
||||
fi
|
||||
argenctl window swap next
|
||||
dest_window=\$(argenctl context list --json | jq -r '.[] | select(.current) | .windows | .[$idx]')
|
||||
done
|
||||
fi
|
||||
"
|
||||
done
|
||||
|
||||
argenctl binding set normal Super+Shift S exec ~/.config/argen/session.sh
|
||||
|
||||
# Rules
|
||||
argenctl rule add float --app-id "my-app"
|
||||
29
argen/.config/argen/session.sh
Executable file
29
argen/.config/argen/session.sh
Executable file
@@ -0,0 +1,29 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -eu
|
||||
|
||||
id=$(for name in $(ls ~/.config/argen/sessions/*.sh); do echo $(basename "${name%.sh}"); done | fuzzel -d -p'session> ')
|
||||
if argenctl context list | grep "^${id}\$"; then
|
||||
argenctl context switch "${id}"
|
||||
exit
|
||||
fi
|
||||
argenctl context new "$id"
|
||||
|
||||
first=$(argenctl output list --json | jq -r 'min_by(80000 * .y + .x).id')
|
||||
length=$(argenctl output list --json | jq -r 'length')
|
||||
for n in $(seq $length); do
|
||||
current=$(argenctl output list --json | jq -r '.[] | select(.focused).id')
|
||||
if [ "$current" = "$first" ]; then
|
||||
break
|
||||
fi
|
||||
argenctl output focus next
|
||||
done
|
||||
|
||||
if [ -e ~/.lightmode ]; then
|
||||
THEME=light
|
||||
else
|
||||
THEME=dark
|
||||
fi
|
||||
export TERMINAL="footclient -o initial-color-theme=$THEME"
|
||||
|
||||
exec sh ~/.config/argen/sessions/"${id}.sh"
|
||||
3
argen/.config/argen/sessions/dotfiles.sh
Normal file
3
argen/.config/argen/sessions/dotfiles.sh
Normal file
@@ -0,0 +1,3 @@
|
||||
argenctl output focus next
|
||||
|
||||
argenctl sh "$TERMINAL -D ~/dotfiles kak -s dotfiles"
|
||||
6
argen/.config/argen/sessions/web.sh
Normal file
6
argen/.config/argen/sessions/web.sh
Normal file
@@ -0,0 +1,6 @@
|
||||
argenctl exec librewolf
|
||||
|
||||
sleep 1
|
||||
argenctl output focus next
|
||||
|
||||
argenctl exec qutebrowser
|
||||
@@ -1,4 +1,60 @@
|
||||
[main]
|
||||
font = Fira Code Nerd Font:size=11
|
||||
font = HurmitNerdFont:size=10
|
||||
initial-color-theme = dark
|
||||
|
||||
include = /usr/share/foot/themes/nord
|
||||
[colors-dark]
|
||||
foreground = a29e98
|
||||
background = 272117
|
||||
cursor = 272117 73d0b1
|
||||
selection-foreground = 272117
|
||||
selection-background = 276c9a
|
||||
|
||||
regular0 = 85919b
|
||||
regular1 = c37583
|
||||
regular2 = 44a386
|
||||
regular3 = af8842
|
||||
regular4 = 5396c7
|
||||
regular5 = a57cba
|
||||
regular6 = 2da0ad
|
||||
regular7 = b0bcc7
|
||||
|
||||
bright0 = 85919b
|
||||
bright1 = f2a0ae
|
||||
bright2 = 73d0b1
|
||||
bright3 = dcb46e
|
||||
bright4 = 7fc3f5
|
||||
bright5 = d2a8e8
|
||||
bright6 = 62cdda
|
||||
bright7 = a29e98
|
||||
|
||||
[colors-light]
|
||||
foreground = 696257
|
||||
background = faf8f5
|
||||
cursor = faf8f5 7ad6b7
|
||||
selection-foreground = faf8f5
|
||||
selection-background = 3a7ead
|
||||
|
||||
regular0 = 272117
|
||||
regular1 = d0818f
|
||||
regular2 = 52af92
|
||||
regular3 = bc944f
|
||||
regular4 = 60a3d4
|
||||
regular5 = b289c7
|
||||
regular6 = 3dadba
|
||||
regular7 = b6c3cd
|
||||
|
||||
bright0 = 919da7
|
||||
bright1 = 85c9fc
|
||||
bright2 = 7ad6b7
|
||||
bright3 = e3ba74
|
||||
bright4 = 60a3d4
|
||||
bright5 = d9aeee
|
||||
bright6 = 85c9fc
|
||||
bright7 = faf8f5
|
||||
|
||||
[key-bindings]
|
||||
color-theme-toggle = Control+Shift+t
|
||||
primary-paste = Shift+Insert Control+Shift+i
|
||||
|
||||
[search-bindings]
|
||||
primary-paste = Shift+Insert Control+Shift+i
|
||||
|
||||
164
kakoune/.config/kak/autoload/local/jump-mode.kak
Normal file
164
kakoune/.config/kak/autoload/local/jump-mode.kak
Normal file
@@ -0,0 +1,164 @@
|
||||
# name: kakoune_jump_mode
|
||||
# version: 0.1.0
|
||||
# description: Click with your keyboard.
|
||||
# authors: ["Mathieu Ablasou <alexherbo2@gmail.com>"]
|
||||
# kakoune: 2023-12-12
|
||||
# license: MIT
|
||||
# dependencies: []
|
||||
# doc: yes
|
||||
# tests: no
|
||||
declare-option range-specs jump_ranges
|
||||
declare-option str-to-str-map jump_label_selection_map
|
||||
declare-option str-list jump_selections
|
||||
declare-option str-list jump_labels \
|
||||
'aa' 'ab' 'ac' 'ad' 'ae' 'af' 'ag' 'ah' 'ai' 'aj' 'ak' 'al' 'am' 'an' 'ao' 'ap' 'aq' 'ar' 'as' 'at' 'au' 'av' 'aw' 'ax' 'ay' 'az' \
|
||||
'ba' 'bb' 'bc' 'bd' 'be' 'bf' 'bg' 'bh' 'bi' 'bj' 'bk' 'bl' 'bm' 'bn' 'bo' 'bp' 'bq' 'br' 'bs' 'bt' 'bu' 'bv' 'bw' 'bx' 'by' 'bz' \
|
||||
'ca' 'cb' 'cc' 'cd' 'ce' 'cf' 'cg' 'ch' 'ci' 'cj' 'ck' 'cl' 'cm' 'cn' 'co' 'cp' 'cq' 'cr' 'cs' 'ct' 'cu' 'cv' 'cw' 'cx' 'cy' 'cz' \
|
||||
'da' 'db' 'dc' 'dd' 'de' 'df' 'dg' 'dh' 'di' 'dj' 'dk' 'dl' 'dm' 'dn' 'do' 'dp' 'dq' 'dr' 'ds' 'dt' 'du' 'dv' 'dw' 'dx' 'dy' 'dz' \
|
||||
'ea' 'eb' 'ec' 'ed' 'ee' 'ef' 'eg' 'eh' 'ei' 'ej' 'ek' 'el' 'em' 'en' 'eo' 'ep' 'eq' 'er' 'es' 'et' 'eu' 'ev' 'ew' 'ex' 'ey' 'ez' \
|
||||
'fa' 'fb' 'fc' 'fd' 'fe' 'ff' 'fg' 'fh' 'fi' 'fj' 'fk' 'fl' 'fm' 'fn' 'fo' 'fp' 'fq' 'fr' 'fs' 'ft' 'fu' 'fv' 'fw' 'fx' 'fy' 'fz' \
|
||||
'ga' 'gb' 'gc' 'gd' 'ge' 'gf' 'gg' 'gh' 'gi' 'gj' 'gk' 'gl' 'gm' 'gn' 'go' 'gp' 'gq' 'gr' 'gs' 'gt' 'gu' 'gv' 'gw' 'gx' 'gy' 'gz' \
|
||||
'ha' 'hb' 'hc' 'hd' 'he' 'hf' 'hg' 'hh' 'hi' 'hj' 'hk' 'hl' 'hm' 'hn' 'ho' 'hp' 'hq' 'hr' 'hs' 'ht' 'hu' 'hv' 'hw' 'hx' 'hy' 'hz' \
|
||||
'ia' 'ib' 'ic' 'id' 'ie' 'if' 'ig' 'ih' 'ii' 'ij' 'ik' 'il' 'im' 'in' 'io' 'ip' 'iq' 'ir' 'is' 'it' 'iu' 'iv' 'iw' 'ix' 'iy' 'iz' \
|
||||
'ja' 'jb' 'jc' 'jd' 'je' 'jf' 'jg' 'jh' 'ji' 'jj' 'jk' 'jl' 'jm' 'jn' 'jo' 'jp' 'jq' 'jr' 'js' 'jt' 'ju' 'jv' 'jw' 'jx' 'jy' 'jz' \
|
||||
'ka' 'kb' 'kc' 'kd' 'ke' 'kf' 'kg' 'kh' 'ki' 'kj' 'kk' 'kl' 'km' 'kn' 'ko' 'kp' 'kq' 'kr' 'ks' 'kt' 'ku' 'kv' 'kw' 'kx' 'ky' 'kz' \
|
||||
'la' 'lb' 'lc' 'ld' 'le' 'lf' 'lg' 'lh' 'li' 'lj' 'lk' 'll' 'lm' 'ln' 'lo' 'lp' 'lq' 'lr' 'ls' 'lt' 'lu' 'lv' 'lw' 'lx' 'ly' 'lz' \
|
||||
'ma' 'mb' 'mc' 'md' 'me' 'mf' 'mg' 'mh' 'mi' 'mj' 'mk' 'ml' 'mm' 'mn' 'mo' 'mp' 'mq' 'mr' 'ms' 'mt' 'mu' 'mv' 'mw' 'mx' 'my' 'mz' \
|
||||
'na' 'nb' 'nc' 'nd' 'ne' 'nf' 'ng' 'nh' 'ni' 'nj' 'nk' 'nl' 'nm' 'nn' 'no' 'np' 'nq' 'nr' 'ns' 'nt' 'nu' 'nv' 'nw' 'nx' 'ny' 'nz' \
|
||||
'oa' 'ob' 'oc' 'od' 'oe' 'of' 'og' 'oh' 'oi' 'oj' 'ok' 'ol' 'om' 'on' 'oo' 'op' 'oq' 'or' 'os' 'ot' 'ou' 'ov' 'ow' 'ox' 'oy' 'oz' \
|
||||
'pa' 'pb' 'pc' 'pd' 'pe' 'pf' 'pg' 'ph' 'pi' 'pj' 'pk' 'pl' 'pm' 'pn' 'po' 'pp' 'pq' 'pr' 'ps' 'pt' 'pu' 'pv' 'pw' 'px' 'py' 'pz' \
|
||||
'qa' 'qb' 'qc' 'qd' 'qe' 'qf' 'qg' 'qh' 'qi' 'qj' 'qk' 'ql' 'qm' 'qn' 'qo' 'qp' 'qq' 'qr' 'qs' 'qt' 'qu' 'qv' 'qw' 'qx' 'qy' 'qz' \
|
||||
'ra' 'rb' 'rc' 'rd' 're' 'rf' 'rg' 'rh' 'ri' 'rj' 'rk' 'rl' 'rm' 'rn' 'ro' 'rp' 'rq' 'rr' 'rs' 'rt' 'ru' 'rv' 'rw' 'rx' 'ry' 'rz' \
|
||||
'sa' 'sb' 'sc' 'sd' 'se' 'sf' 'sg' 'sh' 'si' 'sj' 'sk' 'sl' 'sm' 'sn' 'so' 'sp' 'sq' 'sr' 'ss' 'st' 'su' 'sv' 'sw' 'sx' 'sy' 'sz' \
|
||||
'ta' 'tb' 'tc' 'td' 'te' 'tf' 'tg' 'th' 'ti' 'tj' 'tk' 'tl' 'tm' 'tn' 'to' 'tp' 'tq' 'tr' 'ts' 'tt' 'tu' 'tv' 'tw' 'tx' 'ty' 'tz' \
|
||||
'ua' 'ub' 'uc' 'ud' 'ue' 'uf' 'ug' 'uh' 'ui' 'uj' 'uk' 'ul' 'um' 'un' 'uo' 'up' 'uq' 'ur' 'us' 'ut' 'uu' 'uv' 'uw' 'ux' 'uy' 'uz' \
|
||||
'va' 'vb' 'vc' 'vd' 've' 'vf' 'vg' 'vh' 'vi' 'vj' 'vk' 'vl' 'vm' 'vn' 'vo' 'vp' 'vq' 'vr' 'vs' 'vt' 'vu' 'vv' 'vw' 'vx' 'vy' 'vz' \
|
||||
'wa' 'wb' 'wc' 'wd' 'we' 'wf' 'wg' 'wh' 'wi' 'wj' 'wk' 'wl' 'wm' 'wn' 'wo' 'wp' 'wq' 'wr' 'ws' 'wt' 'wu' 'wv' 'ww' 'wx' 'wy' 'wz' \
|
||||
'xa' 'xb' 'xc' 'xd' 'xe' 'xf' 'xg' 'xh' 'xi' 'xj' 'xk' 'xl' 'xm' 'xn' 'xo' 'xp' 'xq' 'xr' 'xs' 'xt' 'xu' 'xv' 'xw' 'xx' 'xy' 'xz' \
|
||||
'ya' 'yb' 'yc' 'yd' 'ye' 'yf' 'yg' 'yh' 'yi' 'yj' 'yk' 'yl' 'ym' 'yn' 'yo' 'yp' 'yq' 'yr' 'ys' 'yt' 'yu' 'yv' 'yw' 'yx' 'yy' 'yz' \
|
||||
'za' 'zb' 'zc' 'zd' 'ze' 'zf' 'zg' 'zh' 'zi' 'zj' 'zk' 'zl' 'zm' 'zn' 'zo' 'zp' 'zq' 'zr' 'zs' 'zt' 'zu' 'zv' 'zw' 'zx' 'zy' 'zz'
|
||||
|
||||
set-face global JumpLabel 'black,bright-yellow+F'
|
||||
|
||||
define-command enter_jump_mode_with_replace_select_mode %{
|
||||
enter_jump_mode 'jump (replace):' %{
|
||||
try %{
|
||||
execute-keys -save-regs 's' '<esc><a-,>"sZz"s<a-z>a<esc>'
|
||||
} catch %{
|
||||
execute-keys '<esc>z<esc>'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
define-command enter_jump_mode_with_extend_select_mode %{
|
||||
enter_jump_mode 'jump (extend):' %{
|
||||
execute-keys -save-regs 's' '<esc>"sZ,<a-z>u"s<a-z>a<esc>'
|
||||
}
|
||||
}
|
||||
|
||||
define-command enter_jump_mode_with_append_select_mode %{
|
||||
enter_jump_mode 'jump (append):' %{
|
||||
execute-keys -save-regs 's' '<esc>"sZz"s<a-z>a<esc>'
|
||||
}
|
||||
}
|
||||
|
||||
define-command enter_jump_mode -params 2 %{
|
||||
create_jump_state_from_words_in_viewport
|
||||
create_jump_label_selection_map_option_buffer
|
||||
execute-keys 'ga'
|
||||
render_jump_labels
|
||||
open_jump_prompt %arg{1} %arg{2}
|
||||
}
|
||||
|
||||
define-command exit_jump_mode %{
|
||||
unrender_jump_labels
|
||||
close_jump_label_selection_map_option_buffer
|
||||
}
|
||||
|
||||
define-command render_jump_labels %{
|
||||
add-highlighter window/jump_ranges replace-ranges jump_ranges
|
||||
}
|
||||
|
||||
define-command unrender_jump_labels %{
|
||||
remove-highlighter window/jump_ranges
|
||||
}
|
||||
|
||||
define-command open_jump_prompt -params 2 %{
|
||||
prompt %arg{1} %{
|
||||
exit_jump_mode
|
||||
} -on-change %{
|
||||
handle_jump_input %val{text} %arg{2}
|
||||
} -on-abort %{
|
||||
exit_jump_mode
|
||||
}
|
||||
}
|
||||
|
||||
define-command handle_jump_input -params 2 %{
|
||||
evaluate-commands -save-regs '^/' -draft -verbatim try %{
|
||||
open_jump_label_selection_map_option_buffer
|
||||
set-register / "\A\Q%arg{1}\E=(\d+\.\d+,\d+\.\d+)\z"
|
||||
execute-keys 's<ret>'
|
||||
evaluate-commands -draft -client %val{client} %exp{
|
||||
select %reg{1}
|
||||
execute-keys -save-regs '' 'Z'
|
||||
}
|
||||
evaluate-commands -client %val{client} %arg{2}
|
||||
}
|
||||
}
|
||||
|
||||
define-command create_jump_state_from_words_in_viewport %{
|
||||
create_jump_state_from_selections_in_viewport %{
|
||||
execute-keys 's\w+<ret><a-i>w'
|
||||
}
|
||||
}
|
||||
|
||||
define-command create_jump_state_from_selections_in_viewport -params 1 %{
|
||||
evaluate-commands -draft %{
|
||||
execute-keys 'gtGbx'
|
||||
evaluate-commands %arg{1}
|
||||
execute-keys '<a-k>\A.{2,}\z<ret>)'
|
||||
evaluate-commands -client %val{client} -verbatim create_jump_state %val{selections_desc}
|
||||
}
|
||||
}
|
||||
|
||||
define-command create_jump_state -params .. %{
|
||||
evaluate-commands -save-regs '"ab' %{
|
||||
set-register a %arg{@}
|
||||
set-register b %opt{jump_labels}
|
||||
evaluate-commands -draft %{
|
||||
edit -scratch
|
||||
execute-keys '"a<a-P>a<space><c-r>b<esc>'
|
||||
evaluate-commands -itersel %{
|
||||
execute-keys 's\A(\d+)\.(\d+),(\d+)\.(\d+) (.{2})\z<ret>'
|
||||
set-register dquote %exp{
|
||||
set-option -add window jump_ranges "%reg{1}.%reg{2}+2|{JumpLabel}%reg{5}"
|
||||
set-option -add window jump_label_selection_map "%reg{5}=%reg{1}.%reg{2},%reg{3}.%reg{4}"
|
||||
}
|
||||
execute-keys 'R'
|
||||
}
|
||||
execute-keys -save-regs '' '%y'
|
||||
delete-buffer
|
||||
}
|
||||
set-option window jump_ranges %val{timestamp}
|
||||
set-option window jump_label_selection_map
|
||||
evaluate-commands %reg{dquote}
|
||||
}
|
||||
}
|
||||
|
||||
define-command create_jump_label_selection_map_option_buffer %{
|
||||
evaluate-commands -save-regs '"' %{
|
||||
set-register dquote %opt{jump_label_selection_map}
|
||||
edit -scratch "jump_label_selection_map@%val{client}.option"
|
||||
execute-keys '<a-P>'
|
||||
set-option buffer jump_selections %val{selections_desc}
|
||||
}
|
||||
}
|
||||
|
||||
define-command open_jump_label_selection_map_option_buffer %{
|
||||
edit -scratch "jump_label_selection_map@%val{client}.option"
|
||||
select %opt{jump_selections}
|
||||
}
|
||||
|
||||
define-command close_jump_label_selection_map_option_buffer %{
|
||||
delete-buffer "jump_label_selection_map@%val{client}.option"
|
||||
}
|
||||
125
kakoune/.config/kak/colors/five-colors-dark.kak
Normal file
125
kakoune/.config/kak/colors/five-colors-dark.kak
Normal file
@@ -0,0 +1,125 @@
|
||||
# Five colors dark theme
|
||||
|
||||
evaluate-commands %sh{
|
||||
bg="rgb:272117"
|
||||
bgmenu="rgb:282e38"
|
||||
fg="rgb:a29e98"
|
||||
gray="rgb:767778"
|
||||
|
||||
red1="rgb:f2a0ae"
|
||||
red2="rgb:c37583"
|
||||
red3="rgb:954c5b"
|
||||
|
||||
yellow1="rgb:dcb46e"
|
||||
yellow2="rgb:af8842"
|
||||
yellow3="rgb:845f10"
|
||||
|
||||
green1="rgb:73d0b1"
|
||||
green2="rgb:44a386"
|
||||
green3="rgb:04785d"
|
||||
|
||||
blue1="rgb:7fc3f5"
|
||||
blue2="rgb:5396c7"
|
||||
blue3="rgb:276c9a"
|
||||
|
||||
violet1="rgb:d2a8e8"
|
||||
violet2="rgb:a57cba"
|
||||
violet3="rgb:7b548e"
|
||||
|
||||
echo "
|
||||
## CODE
|
||||
|
||||
set-face global value $violet2
|
||||
set-face global type $green2
|
||||
set-face global variable $yellow3
|
||||
set-face global module $red3
|
||||
set-face global function $blue2
|
||||
set-face global string $yellow2
|
||||
set-face global keyword $violet3
|
||||
set-face global operator $red2
|
||||
set-face global attribute $green3
|
||||
set-face global comment $gray
|
||||
set-face global documentation $gray
|
||||
set-face global meta $blue3
|
||||
set-face global builtin $violet1
|
||||
|
||||
## MARKUP
|
||||
|
||||
set-face global title $red3
|
||||
set-face global header $violet3
|
||||
set-face global mono $yellow2
|
||||
set-face global block $blue3
|
||||
set-face global link $blue2
|
||||
set-face global bullet $red2
|
||||
set-face global list $red2
|
||||
|
||||
## BUILTIN
|
||||
|
||||
set-face global Default $fg,$bg
|
||||
set-face global PrimarySelection $bg,$green3
|
||||
set-face global SecondarySelection $bg,$blue3
|
||||
set-face global PrimaryCursor $bg,$green1
|
||||
set-face global SecondaryCursor $bg,$blue1
|
||||
set-face global PrimaryCursorEol $bg,$red1
|
||||
set-face global SecondaryCursorEol $bg,$yellow1
|
||||
set-face global MenuForeground $green1,$green3
|
||||
set-face global MenuBackground $fg,$bgmenu
|
||||
set-face global MenuInfo $green2
|
||||
set-face global Information $fg,$bgmenu
|
||||
set-face global InlineInformation $blue2,$bgmenu
|
||||
set-face global Error $red2
|
||||
set-face global DiagnosticError default,default,$red2+c
|
||||
set-face global DiagnosticWarning default,default,$yellow2+c
|
||||
set-face global DiagnosticInfo default,default,$green2+c
|
||||
set-face global DiagnosticHint default,default,$blue2+c
|
||||
set-face global StatusLine $fg,$bgmenu
|
||||
set-face global StatusLineMode $green2
|
||||
set-face global StatusLineInfo $yellow2
|
||||
set-face global StatusLineValue $blue2
|
||||
set-face global StatusCursor $bg,$green1
|
||||
set-face global Prompt $green2
|
||||
set-face global BufferPadding $bg,$bg
|
||||
|
||||
# Built-in highlighter faces
|
||||
|
||||
set-face global LineNumbers $gray
|
||||
set-face global LineNumberCursor $green3
|
||||
set-face global LineNumbersWrapped $bg,$bg
|
||||
set-face global MatchingChar $red1
|
||||
set-face global Whitespace $gray
|
||||
set-face global WhitespaceIndent $gray
|
||||
set-face global WrapMarker $yellow1
|
||||
|
||||
# PLUGINS
|
||||
|
||||
# kak-lsp
|
||||
|
||||
set-face global InfoDefault default
|
||||
set-face global InfoBlock $green2
|
||||
set-face global InfoBlockQuote $yellow2
|
||||
set-face global InfoBullet $red2
|
||||
set-face global InfoHeader $red3
|
||||
set-face global InfoLink $blue2
|
||||
set-face global InfoLinkMono $blue3
|
||||
|
||||
set-face global InfoMono $blue2
|
||||
set-face global InfoRule $yellow2
|
||||
set-face global InfoDiagnosticError $red2
|
||||
set-face global InfoDiagnosticHint $blue2
|
||||
set-face global InfoDiagnosticInformation $green2
|
||||
set-face global InfoDiagnosticWarning $yellow2
|
||||
|
||||
set-face global LineFlagError $red2
|
||||
set-face global LineFlagHint $blue2
|
||||
set-face global LineFlagInfo $green2
|
||||
set-face global LineFlagWarning $yellow2
|
||||
|
||||
set-face global InlayDiagnosticError $red2
|
||||
set-face global InlayDiagnosticHint $blue2
|
||||
set-face global InlayDiagnosticInfo $green2
|
||||
set-face global InlayDiagnosticWarning $yellow2
|
||||
|
||||
set-face global SnippetsNextPlaceholders $bg,$green2
|
||||
set-face global SnippetsOtherPlaceholders $bg,$yellow2
|
||||
"
|
||||
}
|
||||
125
kakoune/.config/kak/colors/five-colors-light.kak
Normal file
125
kakoune/.config/kak/colors/five-colors-light.kak
Normal file
@@ -0,0 +1,125 @@
|
||||
# Five colors dark theme
|
||||
|
||||
evaluate-commands %sh{
|
||||
bg="rgb:faf8f5"
|
||||
bgmenu="rgb:f6ede0"
|
||||
fg="rgb:696257"
|
||||
gray="rgb:c0c1c2"
|
||||
|
||||
red1="rgb:f9a6b5"
|
||||
red2="rgb:d0818f"
|
||||
red3="rgb:a95d6c"
|
||||
|
||||
yellow1="rgb:e3ba74"
|
||||
yellow2="rgb:bc944f"
|
||||
yellow3="rgb:967028"
|
||||
|
||||
green1="rgb:7ad6b7"
|
||||
green2="rgb:52af92"
|
||||
green3="rgb:278a6e"
|
||||
|
||||
blue1="rgb:85c9fc"
|
||||
blue2="rgb:60a3d4"
|
||||
blue3="rgb:3a7ead"
|
||||
|
||||
violet1="rgb:d9aeee"
|
||||
violet2="rgb:b289c7"
|
||||
violet3="rgb:8d65a1"
|
||||
|
||||
echo "
|
||||
## CODE
|
||||
|
||||
set-face global value $violet2
|
||||
set-face global type $green2
|
||||
set-face global variable $yellow3
|
||||
set-face global module $red3
|
||||
set-face global function $blue2
|
||||
set-face global string $yellow2
|
||||
set-face global keyword $violet3
|
||||
set-face global operator $red2
|
||||
set-face global attribute $green3
|
||||
set-face global comment $gray
|
||||
set-face global documentation $gray
|
||||
set-face global meta $blue3
|
||||
set-face global builtin $violet1
|
||||
|
||||
## MARKUP
|
||||
|
||||
set-face global title $red3
|
||||
set-face global header $violet3
|
||||
set-face global mono $yellow2
|
||||
set-face global block $blue3
|
||||
set-face global link $blue2
|
||||
set-face global bullet $red2
|
||||
set-face global list $red2
|
||||
|
||||
## BUILTIN
|
||||
|
||||
set-face global Default $fg,$bg
|
||||
set-face global PrimarySelection $bg,$green3
|
||||
set-face global SecondarySelection $bg,$blue3
|
||||
set-face global PrimaryCursor $bg,$green1
|
||||
set-face global SecondaryCursor $bg,$blue1
|
||||
set-face global PrimaryCursorEol $bg,$red1
|
||||
set-face global SecondaryCursorEol $bg,$yellow1
|
||||
set-face global MenuForeground $green1,$green3
|
||||
set-face global MenuBackground $fg,$bgmenu
|
||||
set-face global MenuInfo $green2
|
||||
set-face global Information $fg,$bgmenu
|
||||
set-face global InlineInformation $blue2,$bgmenu
|
||||
set-face global Error $red2
|
||||
set-face global DiagnosticError default,default,$red2+c
|
||||
set-face global DiagnosticWarning default,default,$yellow2+c
|
||||
set-face global DiagnosticInfo default,default,$green2+c
|
||||
set-face global DiagnosticHint default,default,$blue2+c
|
||||
set-face global StatusLine $fg,$bgmenu
|
||||
set-face global StatusLineMode $green2
|
||||
set-face global StatusLineInfo $yellow2
|
||||
set-face global StatusLineValue $blue2
|
||||
set-face global StatusCursor $bg,$green1
|
||||
set-face global Prompt $green2
|
||||
set-face global BufferPadding $bg,$bg
|
||||
|
||||
# Built-in highlighter faces
|
||||
|
||||
set-face global LineNumbers $gray
|
||||
set-face global LineNumberCursor $green3
|
||||
set-face global LineNumbersWrapped $bg,$bg
|
||||
set-face global MatchingChar $red1
|
||||
set-face global Whitespace $gray
|
||||
set-face global WhitespaceIndent $gray
|
||||
set-face global WrapMarker $yellow1
|
||||
|
||||
# PLUGINS
|
||||
|
||||
# kak-lsp
|
||||
|
||||
set-face global InfoDefault default
|
||||
set-face global InfoBlock $green2
|
||||
set-face global InfoBlockQuote $yellow2
|
||||
set-face global InfoBullet $red2
|
||||
set-face global InfoHeader $red3
|
||||
set-face global InfoLink $blue2
|
||||
set-face global InfoLinkMono $blue3
|
||||
|
||||
set-face global InfoMono $blue2
|
||||
set-face global InfoRule $yellow2
|
||||
set-face global InfoDiagnosticError $red2
|
||||
set-face global InfoDiagnosticHint $blue2
|
||||
set-face global InfoDiagnosticInformation $green2
|
||||
set-face global InfoDiagnosticWarning $yellow2
|
||||
|
||||
set-face global LineFlagError $red2
|
||||
set-face global LineFlagHint $blue2
|
||||
set-face global LineFlagInfo $green2
|
||||
set-face global LineFlagWarning $yellow2
|
||||
|
||||
set-face global InlayDiagnosticError $red2
|
||||
set-face global InlayDiagnosticHint $blue2
|
||||
set-face global InlayDiagnosticInfo $green2
|
||||
set-face global InlayDiagnosticWarning $yellow2
|
||||
|
||||
set-face global SnippetsNextPlaceholders $bg,$green2
|
||||
set-face global SnippetsOtherPlaceholders $bg,$yellow2
|
||||
"
|
||||
}
|
||||
121
kakoune/.config/kak/colors/four-colors-dark.kak
Normal file
121
kakoune/.config/kak/colors/four-colors-dark.kak
Normal file
@@ -0,0 +1,121 @@
|
||||
# Four colors dark theme
|
||||
|
||||
evaluate-commands %sh{
|
||||
bg="rgb:272117"
|
||||
bgmenu="rgb:282e38"
|
||||
fg="rgb:a29e98"
|
||||
gray="rgb:58666d"
|
||||
|
||||
yellow1="rgb:dcb46e"
|
||||
yellow2="rgb:af8842"
|
||||
yellow3="rgb:845f10"
|
||||
|
||||
green1="rgb:73d0b1"
|
||||
green2="rgb:44a386"
|
||||
green3="rgb:04785d"
|
||||
|
||||
blue1="rgb:95bcfb"
|
||||
blue2="rgb:6b90cc"
|
||||
blue3="rgb:43669f"
|
||||
|
||||
pink1="rgb:eca0c4"
|
||||
pink2="rgb:bd7598"
|
||||
pink3="rgb:904c6e"
|
||||
|
||||
echo "
|
||||
## CODE
|
||||
|
||||
set-face global value $pink1
|
||||
set-face global type $green2
|
||||
set-face global variable $yellow3
|
||||
set-face global module $pink3
|
||||
set-face global function $blue2
|
||||
set-face global string $yellow2
|
||||
set-face global keyword $blue1
|
||||
set-face global operator $pink2
|
||||
set-face global attribute $green1
|
||||
set-face global comment $green3
|
||||
set-face global documentation $green3
|
||||
set-face global meta $blue3
|
||||
set-face global builtin $green2
|
||||
|
||||
## MARKUP
|
||||
|
||||
set-face global title $pink3
|
||||
set-face global header $pink2
|
||||
set-face global mono $yellow2
|
||||
set-face global block $blue2
|
||||
set-face global link $blue1
|
||||
set-face global bullet $pink1
|
||||
set-face global list $pink1
|
||||
|
||||
## BUILTIN
|
||||
|
||||
set-face global Default $fg,$bg
|
||||
set-face global PrimarySelection $bg,$green3
|
||||
set-face global SecondarySelection $bg,$blue3
|
||||
set-face global PrimaryCursor $bg,$green1
|
||||
set-face global SecondaryCursor $bg,$blue1
|
||||
set-face global PrimaryCursorEol $bg,$pink1
|
||||
set-face global SecondaryCursorEol $bg,$yellow1
|
||||
set-face global MenuForeground $green1,$green3
|
||||
set-face global MenuBackground $fg,$bgmenu
|
||||
set-face global MenuInfo $green2
|
||||
set-face global Information $fg,$bgmenu
|
||||
set-face global InlineInformation $blue2,$bgmenu
|
||||
set-face global Error $pink2
|
||||
set-face global DiagnosticError default,default,$pink2+c
|
||||
set-face global DiagnosticWarning default,default,$yellow2+c
|
||||
set-face global DiagnosticInfo default,default,$green2+c
|
||||
set-face global DiagnosticHint default,default,$blue2+c
|
||||
set-face global StatusLine $fg,$bgmenu
|
||||
set-face global StatusLineMode $green2
|
||||
set-face global StatusLineInfo $yellow2
|
||||
set-face global StatusLineValue $blue2
|
||||
set-face global StatusCursor $bg,$green1
|
||||
set-face global Prompt $green2
|
||||
set-face global BufferPadding $bg,$bg
|
||||
|
||||
# Built-in highlighter faces
|
||||
|
||||
set-face global LineNumbers $blue3
|
||||
set-face global LineNumberCursor $green3
|
||||
set-face global LineNumbersWrapped $bg,$bg
|
||||
set-face global MatchingChar $yellow1
|
||||
set-face global Whitespace $gray
|
||||
set-face global WhitespaceIndent $gray
|
||||
set-face global WrapMarker $yellow1
|
||||
|
||||
# PLUGINS
|
||||
|
||||
# kak-lsp
|
||||
|
||||
set-face global InfoDefault default
|
||||
set-face global InfoBlock $green2
|
||||
set-face global InfoBlockQuote $yellow2
|
||||
set-face global InfoBullet $pink1
|
||||
set-face global InfoHeader $pink3
|
||||
set-face global InfoLink $blue1
|
||||
set-face global InfoLinkMono $blue2
|
||||
|
||||
set-face global InfoMono $blue2
|
||||
set-face global InfoRule $yellow2
|
||||
set-face global InfoDiagnosticError $pink2
|
||||
set-face global InfoDiagnosticHint $blue2
|
||||
set-face global InfoDiagnosticInformation $green2
|
||||
set-face global InfoDiagnosticWarning $yellow2
|
||||
|
||||
set-face global LineFlagError $pink2
|
||||
set-face global LineFlagHint $blue2
|
||||
set-face global LineFlagInfo $green2
|
||||
set-face global LineFlagWarning $yellow2
|
||||
|
||||
set-face global InlayDiagnosticError $pink2
|
||||
set-face global InlayDiagnosticHint $blue2
|
||||
set-face global InlayDiagnosticInfo $green2
|
||||
set-face global InlayDiagnosticWarning $yellow2
|
||||
|
||||
set-face global SnippetsNextPlaceholders $bg,$green2
|
||||
set-face global SnippetsOtherPlaceholders $bg,$yellow2
|
||||
"
|
||||
}
|
||||
121
kakoune/.config/kak/colors/four-colors-light.kak
Normal file
121
kakoune/.config/kak/colors/four-colors-light.kak
Normal file
@@ -0,0 +1,121 @@
|
||||
# Four colors light theme
|
||||
|
||||
evaluate-commands %sh{
|
||||
bg="rgb:faf8f5"
|
||||
bgmenu="rgb:f6ede0"
|
||||
fg="rgb:696257"
|
||||
gray="rgb:58666d"
|
||||
|
||||
yellow1="rgb:dcb46e"
|
||||
yellow2="rgb:af8842"
|
||||
yellow3="rgb:845f10"
|
||||
|
||||
green1="rgb:73d0b1"
|
||||
green2="rgb:44a386"
|
||||
green3="rgb:04785d"
|
||||
|
||||
blue1="rgb:95bcfb"
|
||||
blue2="rgb:6b90cc"
|
||||
blue3="rgb:43669f"
|
||||
|
||||
pink1="rgb:eca0c4"
|
||||
pink2="rgb:bd7598"
|
||||
pink3="rgb:904c6e"
|
||||
|
||||
echo "
|
||||
## CODE
|
||||
|
||||
set-face global value $pink1
|
||||
set-face global type $green2
|
||||
set-face global variable $yellow3
|
||||
set-face global module $pink3
|
||||
set-face global function $blue2
|
||||
set-face global string $yellow2
|
||||
set-face global keyword $blue1
|
||||
set-face global operator $pink2
|
||||
set-face global attribute $green1
|
||||
set-face global comment $green3
|
||||
set-face global documentation $green3
|
||||
set-face global meta $blue3
|
||||
set-face global builtin $green2
|
||||
|
||||
## MARKUP
|
||||
|
||||
set-face global title $pink3
|
||||
set-face global header $pink2
|
||||
set-face global mono $yellow2
|
||||
set-face global block $blue2
|
||||
set-face global link $blue1
|
||||
set-face global bullet $pink1
|
||||
set-face global list $pink1
|
||||
|
||||
## BUILTIN
|
||||
|
||||
set-face global Default $fg,$bg
|
||||
set-face global PrimarySelection $bg,$green3
|
||||
set-face global SecondarySelection $bg,$blue3
|
||||
set-face global PrimaryCursor $bg,$green1
|
||||
set-face global SecondaryCursor $bg,$blue1
|
||||
set-face global PrimaryCursorEol $bg,$pink1
|
||||
set-face global SecondaryCursorEol $bg,$yellow1
|
||||
set-face global MenuForeground $green1,$green3
|
||||
set-face global MenuBackground $fg,$bgmenu
|
||||
set-face global MenuInfo $green2
|
||||
set-face global Information $fg,$bgmenu
|
||||
set-face global InlineInformation $blue2,$bgmenu
|
||||
set-face global Error $pink2
|
||||
set-face global DiagnosticError default,default,$pink2+c
|
||||
set-face global DiagnosticWarning default,default,$yellow2+c
|
||||
set-face global DiagnosticInfo default,default,$green2+c
|
||||
set-face global DiagnosticHint default,default,$blue2+c
|
||||
set-face global StatusLine $fg,$bgmenu
|
||||
set-face global StatusLineMode $green2
|
||||
set-face global StatusLineInfo $yellow2
|
||||
set-face global StatusLineValue $blue2
|
||||
set-face global StatusCursor $bg,$green1
|
||||
set-face global Prompt $green2
|
||||
set-face global BufferPadding $bg,$bg
|
||||
|
||||
# Built-in highlighter faces
|
||||
|
||||
set-face global LineNumbers $blue3
|
||||
set-face global LineNumberCursor $green2
|
||||
set-face global LineNumbersWrapped $bg,$bg
|
||||
set-face global MatchingChar $yellow1
|
||||
set-face global Whitespace $gray
|
||||
set-face global WhitespaceIndent $gray
|
||||
set-face global WrapMarker $yellow1
|
||||
|
||||
# PLUGINS
|
||||
|
||||
# kak-lsp
|
||||
|
||||
set-face global InfoDefault default
|
||||
set-face global InfoBlock $green2
|
||||
set-face global InfoBlockQuote $yellow2
|
||||
set-face global InfoBullet $pink1
|
||||
set-face global InfoHeader $pink3
|
||||
set-face global InfoLink $blue1
|
||||
set-face global InfoLinkMono $blue2
|
||||
|
||||
set-face global InfoMono $blue2
|
||||
set-face global InfoRule $yellow2
|
||||
set-face global InfoDiagnosticError $pink2
|
||||
set-face global InfoDiagnosticHint $blue2
|
||||
set-face global InfoDiagnosticInformation $green2
|
||||
set-face global InfoDiagnosticWarning $yellow2
|
||||
|
||||
set-face global LineFlagError $pink2
|
||||
set-face global LineFlagHint $blue2
|
||||
set-face global LineFlagInfo $green2
|
||||
set-face global LineFlagWarning $yellow2
|
||||
|
||||
set-face global InlayDiagnosticError $pink2
|
||||
set-face global InlayDiagnosticHint $blue2
|
||||
set-face global InlayDiagnosticInfo $green2
|
||||
set-face global InlayDiagnosticWarning $yellow2
|
||||
|
||||
set-face global SnippetsNextPlaceholders $bg,$green2
|
||||
set-face global SnippetsOtherPlaceholders $bg,$yellow2
|
||||
"
|
||||
}
|
||||
@@ -1,49 +1,47 @@
|
||||
# LP Dark
|
||||
|
||||
declare-option str bg "111c22"
|
||||
declare-option str bgmenu "262b40"
|
||||
declare-option str fg "a1a3aa"
|
||||
declare-option str orange "d78c42"
|
||||
declare-option str blue "42a5d7"
|
||||
declare-option str sand "f2d1a6"
|
||||
declare-option str mint "96e9bf"
|
||||
declare-option str brick "b25e34"
|
||||
declare-option str darkmint "53acac"
|
||||
declare-option str pink "cc66cc"
|
||||
declare-option str pink2 "be59c0"
|
||||
declare-option str purple "7461d1"
|
||||
declare-option str yellow "acac53"
|
||||
declare-option str yellow2 "949438"
|
||||
declare-option str comment "70675c"
|
||||
declare-option str red "ae4242"
|
||||
declare-option str gray "8f92a3"
|
||||
declare-option str green "667c50"
|
||||
declare-option str darkgreen "1c4a21"
|
||||
declare-option str bg "272117"
|
||||
declare-option str bgmenu "1c222b"
|
||||
declare-option str fg "a29e98"
|
||||
declare-option str comment "696257"
|
||||
declare-option str gray "58666d"
|
||||
|
||||
declare-option str selectionalpha "80"
|
||||
declare-option str red "d48490"
|
||||
declare-option str orange "d4896e"
|
||||
declare-option str yellow "bf9752"
|
||||
declare-option str yellow_green "96a85e"
|
||||
declare-option str green "62b289"
|
||||
declare-option str cyan "40b1b7"
|
||||
declare-option str blue "54aad1"
|
||||
declare-option str blue_violet "7a9fdd"
|
||||
declare-option str violet "9d94d9"
|
||||
declare-option str pink "ba8ac5"
|
||||
declare-option str pink_red "ce84a7"
|
||||
|
||||
declare-option str selectionalpha "90"
|
||||
|
||||
## CODE
|
||||
|
||||
set-face global value "rgb:%opt{mint}"
|
||||
set-face global type "rgb:%opt{darkmint}"
|
||||
set-face global variable "rgb:%opt{yellow}"
|
||||
set-face global module "rgb:%opt{blue}"
|
||||
set-face global function "rgb:%opt{yellow}"
|
||||
set-face global string "rgb:%opt{brick}"
|
||||
set-face global keyword "rgb:%opt{sand}"
|
||||
set-face global value "rgb:%opt{yellow_green}"
|
||||
set-face global type "rgb:%opt{cyan}"
|
||||
set-face global variable "rgb:%opt{blue_violet}"
|
||||
set-face global module "rgb:%opt{red}"
|
||||
set-face global function "rgb:%opt{blue}"
|
||||
set-face global string "rgb:%opt{green}"
|
||||
set-face global keyword "rgb:%opt{pink}"
|
||||
set-face global operator "rgb:%opt{orange}"
|
||||
set-face global attribute "rgb:%opt{yellow2}"
|
||||
set-face global attribute "rgb:%opt{blue_violet}"
|
||||
set-face global comment "rgb:%opt{comment}"
|
||||
set-face global documentation "rgb:%opt{comment}"
|
||||
set-face global meta "rgb:%opt{pink2}"
|
||||
set-face global bultin "rgb:%opt{green}"
|
||||
set-face global meta "rgb:%opt{violet}"
|
||||
set-face global bultin "rgb:%opt{pink_red}"
|
||||
|
||||
## MARKUP
|
||||
|
||||
set-face global title "rgb:%opt{brick}"
|
||||
set-face global title "rgb:%opt{pink_red}"
|
||||
set-face global header "rgb:%opt{orange}"
|
||||
set-face global mono "rgb:%opt{yellow2}"
|
||||
set-face global block "rgb:%opt{darkmint}"
|
||||
set-face global mono "rgb:%opt{yellow_green}"
|
||||
set-face global block "rgb:%opt{cyan}"
|
||||
set-face global link "rgb:%opt{blue}"
|
||||
set-face global bullet "rgb:%opt{orange}"
|
||||
set-face global list "rgb:%opt{orange}"
|
||||
@@ -51,26 +49,26 @@ set-face global list "rgb:%opt{orange}"
|
||||
## BUILTIN
|
||||
|
||||
set-face global Default "rgb:%opt{fg},rgb:%opt{bg}"
|
||||
set-face global PrimarySelection "rgb:%opt{bg},rgba:%opt{mint}%opt{selectionalpha}"
|
||||
set-face global PrimarySelection "rgb:%opt{bg},rgba:%opt{green}%opt{selectionalpha}"
|
||||
set-face global SecondarySelection "rgb:%opt{bg},rgba:%opt{blue}%opt{selectionalpha}"
|
||||
set-face global PrimaryCursor "rgb:%opt{bg},rgb:%opt{mint}"
|
||||
set-face global PrimaryCursor "rgb:%opt{bg},rgb:%opt{green}"
|
||||
set-face global SecondaryCursor "rgb:%opt{bg},rgb:%opt{blue}"
|
||||
set-face global PrimaryCursorEol "rgb:%opt{bg},rgb:%opt{pink}"
|
||||
set-face global SecondaryCursorEol "rgb:%opt{bg},rgb:%opt{purple}"
|
||||
set-face global MenuForeground "rgb:%opt{fg},rgb:%opt{darkgreen}"
|
||||
set-face global PrimaryCursorEol "rgb:%opt{bg},rgb:%opt{pink_red}"
|
||||
set-face global SecondaryCursorEol "rgb:%opt{bg},rgb:%opt{violet}"
|
||||
set-face global MenuForeground "rgb:%opt{bg},rgb:%opt{fg}"
|
||||
set-face global MenuBackground "rgb:%opt{fg},rgb:%opt{bgmenu}"
|
||||
set-face global MenuInfo "rgb:%opt{comment}"
|
||||
set-face global Information "rgb:%opt{fg},rgb:%opt{bgmenu}"
|
||||
set-face global InlineInformation "rgb:%opt{brick}"
|
||||
set-face global InlineInformation "rgb:%opt{yellow}"
|
||||
set-face global Error "rgb:%opt{orange}"
|
||||
set-face global DiagnosticError "default,default,rgb:%opt{red}+c"
|
||||
set-face global DiagnosticWarning "default,default,rgb:%opt{yellow}+c"
|
||||
set-face global StatusLine "rgb:%opt{fg},rgb:%opt{bgmenu}"
|
||||
set-face global StatusLineMode "rgb:%opt{mint}"
|
||||
set-face global StatusLineInfo "rgb:%opt{sand}"
|
||||
set-face global StatusLineValue "rgb:%opt{mint}"
|
||||
set-face global StatusCursor "rgb:%opt{bg},rgb:%opt{mint}"
|
||||
set-face global Prompt "rgb:%opt{mint}"
|
||||
set-face global StatusLineMode "rgb:%opt{green}"
|
||||
set-face global StatusLineInfo "rgb:%opt{yellow_green}"
|
||||
set-face global StatusLineValue "rgb:%opt{green}"
|
||||
set-face global StatusCursor "rgb:%opt{bg},rgb:%opt{green}"
|
||||
set-face global Prompt "rgb:%opt{green}"
|
||||
set-face global BufferPadding "rgb:%opt{bg},rgb:%opt{bg}"
|
||||
|
||||
# Built-in highlighter faces
|
||||
@@ -78,41 +76,41 @@ set-face global BufferPadding "rgb:%opt{bg},rgb:%opt{bg}"
|
||||
set-face global LineNumbers "rgb:%opt{comment}"
|
||||
set-face global LineNumberCursor "rgb:%opt{comment}"
|
||||
set-face global LineNumbersWrapped "rgb:%opt{bg},rgb:%opt{bg}"
|
||||
set-face global MatchingChar "rgb:%opt{sand}"
|
||||
set-face global MatchingChar "rgb:%opt{yellow_green}"
|
||||
set-face global Whitespace "rgb:%opt{gray}"
|
||||
set-face global WhitespaceIndent "rgb:%opt{gray}"
|
||||
set-face global WrapMarker "rgb:%opt{sand}"
|
||||
set-face global WrapMarker "rgb:%opt{yellow_green}"
|
||||
|
||||
# PLUGINS
|
||||
|
||||
# kak-lsp
|
||||
|
||||
set-face global InfoDefault "default"
|
||||
set-face global InfoBlock "rgb:%opt{darkmint}"
|
||||
set-face global InfoBlock "rgb:%opt{cyan}"
|
||||
set-face global InfoBlockQuote "rgb:%opt{orange}"
|
||||
set-face global InfoBullet "rgb:%opt{orange}"
|
||||
set-face global InfoHeader "rgb:%opt{orange}"
|
||||
set-face global InfoLink "rgb:%opt{blue}"
|
||||
set-face global InfoLinkMono "rgb:%opt{yellow2}"
|
||||
set-face global InfoLinkMono "rgb:%opt{pink}"
|
||||
|
||||
set-face global InfoMono "rgb:%opt{darkmint}"
|
||||
set-face global InfoMono "rgb:%opt{cyan}"
|
||||
set-face global InfoRule "rgb:%opt{orange}"
|
||||
set-face global InfoDiagnosticError "rgb:%opt{red}"
|
||||
set-face global InfoDiagnosticHint "rgb:%opt{blue}"
|
||||
set-face global InfoDiagnosticInformation "rgb:%opt{sand}"
|
||||
set-face global InfoDiagnosticInformation "rgb:%opt{yellow_green}"
|
||||
set-face global InfoDiagnosticWarning "rgb:%opt{yellow}"
|
||||
|
||||
set-face global LineFlagError "rgb:%opt{red}"
|
||||
set-face global LineFlagHint "rgb:%opt{blue}"
|
||||
set-face global LineFlagInfo "rgb:%opt{sand}"
|
||||
set-face global LineFlagInfo "rgb:%opt{yellow_green}"
|
||||
set-face global LineFlagWarning "rgb:%opt{yellow}"
|
||||
|
||||
set-face global InlayDiagnosticError "rgb:%opt{red}"
|
||||
set-face global InlayDiagnosticHint "rgb:%opt{blue}"
|
||||
set-face global InlayDiagnosticInfo "rgb:%opt{sand}"
|
||||
set-face global InlayDiagnosticInfo "rgb:%opt{yellow_green}"
|
||||
set-face global InlayDiagnosticWarning "rgb:%opt{yellow}"
|
||||
|
||||
set-face global LineFlagError "rgb:%opt{red}"
|
||||
set-face global LineFlagHint "rgb:%opt{blue}"
|
||||
set-face global LineFlagInfo "rgb:%opt{sand}"
|
||||
set-face global LineFlagInfo "rgb:%opt{yellow_green}"
|
||||
set-face global LineFlagWarning "rgb:%opt{yellow}"
|
||||
|
||||
@@ -1,48 +1,48 @@
|
||||
# LP light
|
||||
|
||||
declare-option str bg "faf8f5"
|
||||
declare-option str bgmenu "f1e7da"
|
||||
declare-option str fg "482f0f"
|
||||
declare-option str orange "c88c51"
|
||||
declare-option str blue "5196c8"
|
||||
declare-option str sand "c8a051"
|
||||
declare-option str mint "51c896"
|
||||
declare-option str brick "c87851"
|
||||
declare-option str darkmint "51c8c8"
|
||||
declare-option str pink "c851be"
|
||||
declare-option str purple "6e51c8"
|
||||
declare-option str yellow "c8be51"
|
||||
declare-option str comment "a1b2ce"
|
||||
declare-option str red "c85b51"
|
||||
declare-option str gray "d5d6dd"
|
||||
declare-option str magenta "c8518c"
|
||||
declare-option str green "51c864"
|
||||
declare-option str fgmenu "c6ae90"
|
||||
declare-option str bgmenu "f6ede0"
|
||||
declare-option str fg "696257"
|
||||
declare-option str light_yellow "e0b771"
|
||||
declare-option str comment "a59d91"
|
||||
declare-option str gray "58666d"
|
||||
|
||||
declare-option str selectionalpha "80"
|
||||
declare-option str red "d48490"
|
||||
declare-option str orange "d4896e"
|
||||
declare-option str yellow "bf9752"
|
||||
declare-option str yellow_green "96a85e"
|
||||
declare-option str green "62b289"
|
||||
declare-option str cyan "40b1b7"
|
||||
declare-option str blue "54aad1"
|
||||
declare-option str blue_violet "7a9fdd"
|
||||
declare-option str violet "9d94d9"
|
||||
declare-option str pink "ba8ac5"
|
||||
declare-option str pink_red "ce84a7"
|
||||
|
||||
declare-option str selectionalpha "90"
|
||||
|
||||
## CODE
|
||||
|
||||
set-face global value "rgb:%opt{mint}"
|
||||
set-face global type "rgb:%opt{darkmint}"
|
||||
set-face global variable "rgb:%opt{yellow}"
|
||||
set-face global module "rgb:%opt{yellow}"
|
||||
set-face global value "rgb:%opt{yellow_green}"
|
||||
set-face global type "rgb:%opt{cyan}"
|
||||
set-face global variable "rgb:%opt{blue_violet}"
|
||||
set-face global module "rgb:%opt{red}"
|
||||
set-face global function "rgb:%opt{blue}"
|
||||
set-face global string "rgb:%opt{brick}"
|
||||
set-face global keyword "rgb:%opt{sand}"
|
||||
set-face global string "rgb:%opt{green}"
|
||||
set-face global keyword "rgb:%opt{pink}"
|
||||
set-face global operator "rgb:%opt{orange}"
|
||||
set-face global attribute "rgb:%opt{magenta}"
|
||||
set-face global attribute "rgb:%opt{blue_violet}"
|
||||
set-face global comment "rgb:%opt{comment}"
|
||||
set-face global documentation "rgb:%opt{comment}"
|
||||
set-face global meta "rgb:%opt{pink}"
|
||||
set-face global bultin "rgb:%opt{green}"
|
||||
set-face global meta "rgb:%opt{violet}"
|
||||
set-face global bultin "rgb:%opt{pink_red}"
|
||||
|
||||
## MARKUP
|
||||
|
||||
set-face global title "rgb:%opt{brick}"
|
||||
set-face global title "rgb:%opt{pink_red}"
|
||||
set-face global header "rgb:%opt{orange}"
|
||||
set-face global mono "rgb:%opt{magenta}"
|
||||
set-face global block "rgb:%opt{darkmint}"
|
||||
set-face global mono "rgb:%opt{yellow_green}"
|
||||
set-face global block "rgb:%opt{cyan}"
|
||||
set-face global link "rgb:%opt{blue}"
|
||||
set-face global bullet "rgb:%opt{orange}"
|
||||
set-face global list "rgb:%opt{orange}"
|
||||
@@ -50,26 +50,26 @@ set-face global list "rgb:%opt{orange}"
|
||||
## BUILTIN
|
||||
|
||||
set-face global Default "rgb:%opt{fg},rgb:%opt{bg}"
|
||||
set-face global PrimarySelection "rgb:%opt{bg},rgba:%opt{mint}%opt{selectionalpha}"
|
||||
set-face global PrimarySelection "rgb:%opt{bg},rgba:%opt{green}%opt{selectionalpha}"
|
||||
set-face global SecondarySelection "rgb:%opt{bg},rgba:%opt{blue}%opt{selectionalpha}"
|
||||
set-face global PrimaryCursor "rgb:%opt{bg},rgb:%opt{mint}"
|
||||
set-face global PrimaryCursor "rgb:%opt{bg},rgb:%opt{green}"
|
||||
set-face global SecondaryCursor "rgb:%opt{bg},rgb:%opt{blue}"
|
||||
set-face global PrimaryCursorEol "rgb:%opt{bg},rgb:%opt{pink}"
|
||||
set-face global SecondaryCursorEol "rgb:%opt{bg},rgb:%opt{purple}"
|
||||
set-face global MenuForeground "rgb:%opt{fg},rgb:%opt{fgmenu}"
|
||||
set-face global PrimaryCursorEol "rgb:%opt{bg},rgb:%opt{pink_red}"
|
||||
set-face global SecondaryCursorEol "rgb:%opt{bg},rgb:%opt{violet}"
|
||||
set-face global MenuForeground "rgb:%opt{fg},rgb:%opt{light_yellow}"
|
||||
set-face global MenuBackground "rgb:%opt{fg},rgb:%opt{bgmenu}"
|
||||
set-face global MenuInfo "rgb:%opt{comment}"
|
||||
set-face global Information "rgb:%opt{fg},rgb:%opt{bgmenu}"
|
||||
set-face global InlineInformation "rgb:%opt{brick}"
|
||||
set-face global InlineInformation "rgb:%opt{yellow}"
|
||||
set-face global Error "rgb:%opt{orange}"
|
||||
set-face global DiagnosticError "default,default,rgb:%opt{red}+c"
|
||||
set-face global DiagnosticWarning "default,default,rgb:%opt{yellow}+c"
|
||||
set-face global StatusLine "rgb:%opt{fg},rgb:%opt{bgmenu}"
|
||||
set-face global StatusLineMode "rgb:%opt{mint}"
|
||||
set-face global StatusLineInfo "rgb:%opt{sand}"
|
||||
set-face global StatusLineValue "rgb:%opt{mint}"
|
||||
set-face global StatusCursor "rgb:%opt{bg},rgb:%opt{mint}"
|
||||
set-face global Prompt "rgb:%opt{mint}"
|
||||
set-face global StatusLineMode "rgb:%opt{green}"
|
||||
set-face global StatusLineInfo "rgb:%opt{yellow}"
|
||||
set-face global StatusLineValue "rgb:%opt{green}"
|
||||
set-face global StatusCursor "rgb:%opt{bg},rgb:%opt{green}"
|
||||
set-face global Prompt "rgb:%opt{comment}"
|
||||
set-face global BufferPadding "rgb:%opt{bg},rgb:%opt{bg}"
|
||||
|
||||
# Built-in highlighter faces
|
||||
@@ -77,41 +77,41 @@ set-face global BufferPadding "rgb:%opt{bg},rgb:%opt{bg}"
|
||||
set-face global LineNumbers "rgb:%opt{comment}"
|
||||
set-face global LineNumberCursor "rgb:%opt{comment}"
|
||||
set-face global LineNumbersWrapped "rgb:%opt{bg},rgb:%opt{bg}"
|
||||
set-face global MatchingChar "rgb:%opt{sand}"
|
||||
set-face global MatchingChar "rgb:%opt{yellow_green}"
|
||||
set-face global Whitespace "rgb:%opt{gray}"
|
||||
set-face global WhitespaceIndent "rgb:%opt{gray}"
|
||||
set-face global WrapMarker "rgb:%opt{sand}"
|
||||
set-face global WrapMarker "rgb:%opt{yellow_green}"
|
||||
|
||||
# PLUGINS
|
||||
|
||||
# kak-lsp
|
||||
|
||||
set-face global InfoDefault "default"
|
||||
set-face global InfoBlock "rgb:%opt{darkmint}"
|
||||
set-face global InfoBlock "rgb:%opt{cyan}"
|
||||
set-face global InfoBlockQuote "rgb:%opt{orange}"
|
||||
set-face global InfoBullet "rgb:%opt{orange}"
|
||||
set-face global InfoHeader "rgb:%opt{orange}"
|
||||
set-face global InfoLink "rgb:%opt{blue}"
|
||||
set-face global InfoLinkMono "rgb:%opt{magenta}"
|
||||
set-face global InfoLinkMono "rgb:%opt{pink}"
|
||||
|
||||
set-face global InfoMono "rgb:%opt{darkmint}"
|
||||
set-face global InfoMono "rgb:%opt{cyan}"
|
||||
set-face global InfoRule "rgb:%opt{orange}"
|
||||
set-face global InfoDiagnosticError "rgb:%opt{red}"
|
||||
set-face global InfoDiagnosticHint "rgb:%opt{blue}"
|
||||
set-face global InfoDiagnosticInformation "rgb:%opt{sand}"
|
||||
set-face global InfoDiagnosticInformation "rgb:%opt{yellow_green}"
|
||||
set-face global InfoDiagnosticWarning "rgb:%opt{yellow}"
|
||||
|
||||
set-face global LineFlagError "rgb:%opt{red}"
|
||||
set-face global LineFlagHint "rgb:%opt{blue}"
|
||||
set-face global LineFlagInfo "rgb:%opt{sand}"
|
||||
set-face global LineFlagInfo "rgb:%opt{yellow_green}"
|
||||
set-face global LineFlagWarning "rgb:%opt{yellow}"
|
||||
|
||||
set-face global InlayDiagnosticError "rgb:%opt{red}"
|
||||
set-face global InlayDiagnosticHint "rgb:%opt{blue}"
|
||||
set-face global InlayDiagnosticInfo "rgb:%opt{sand}"
|
||||
set-face global InlayDiagnosticInfo "rgb:%opt{yellow_green}"
|
||||
set-face global InlayDiagnosticWarning "rgb:%opt{yellow}"
|
||||
|
||||
set-face global LineFlagError "rgb:%opt{red}"
|
||||
set-face global LineFlagHint "rgb:%opt{blue}"
|
||||
set-face global LineFlagInfo "rgb:%opt{sand}"
|
||||
set-face global LineFlagInfo "rgb:%opt{yellow_green}"
|
||||
set-face global LineFlagWarning "rgb:%opt{yellow}"
|
||||
|
||||
@@ -3,53 +3,102 @@
|
||||
set-option global startup_info_version 20260412
|
||||
set-option global ui_options terminal_assistant=none
|
||||
|
||||
add-highlighter global/ number-lines -relative
|
||||
hook global WinCreate .* %{
|
||||
add-highlighter window/number-lines number-lines -relative -hlcursor
|
||||
}
|
||||
add-highlighter global/ show-matching
|
||||
|
||||
# LOCAL
|
||||
|
||||
nop %sh{
|
||||
mkdir -p "$kak_config/autoload"
|
||||
ln -s "$kak_runtime/autoload" "$kak_config/autoload/stdlib"
|
||||
[ -e "$kak_config/autoload/stdlib" ] || ln -s "$kak_runtime/autoload" "$kak_config/autoload/stdlib"
|
||||
}
|
||||
|
||||
colorscheme %sh{
|
||||
if [ -e ~/.lightmode ]; then
|
||||
echo lp-light
|
||||
else
|
||||
echo lp-dark
|
||||
fi
|
||||
}
|
||||
map global -docstring 'Buffer' user ' ' ': buffer '
|
||||
|
||||
declare-user-mode file-mode
|
||||
map global -docstring 'Search/open' user 's' ': enter-user-mode file-mode<ret>'
|
||||
|
||||
map global -docstring 'Open (fd)' file-mode 'a' ': file-open<ret>'
|
||||
map global -docstring 'Open (fd -H)' file-mode 'h' ': file-open-with-hidden<ret>'
|
||||
map global -docstring 'Open (recent)' file-mode 'r' ': file-open-recent<ret>'
|
||||
map global -docstring 'Open (nnn)' file-mode 'd' ': nnn-open %val{buffile}<ret>'
|
||||
map global -docstring 'Open (nnn)' file-mode 'D' ': nnn-open .<ret>'
|
||||
map global -docstring 'Open/create in dir' file-mode 'c' ': open-create-in-dir<ret>'
|
||||
map global -docstring 'ctags file symbols' file-mode 's' ': ctags-file-symbols<ret>'
|
||||
map global -docstring 'ctags project symbols' file-mode 'w' ': ctags-project-symbols<ret>'
|
||||
map global -docstring 'Grep' file-mode 'g' ':grep '
|
||||
map global -docstring 'Grep next match' file-mode 'n' ': grep-next-match<ret>'
|
||||
map global -docstring 'Grep previous match' file-mode 'p' ': grep-prev-match<ret>'
|
||||
map global -docstring 'Grep current file' file-mode 'l' ':grep-file '
|
||||
map global -docstring 'Grep current file' file-mode 'L' ': grep-file %val{selection}<ret>'
|
||||
map global -docstring 'Delete buffer' file-mode 'x' ': delete-buffer '
|
||||
|
||||
declare-user-mode git-mode
|
||||
map global -docstring 'Git' user 'g' ': enter-user-mode git-mode<ret>'
|
||||
|
||||
map global -docstring 'Open file' git-mode 'a' ': file-open-git<ret>'
|
||||
map global -docstring 'Blame' git-mode 'b' ': git blame<ret>'
|
||||
map global -docstring 'Blame' git-mode 'B' ': git blame-jump<ret>'
|
||||
map global -docstring 'Diff file' git-mode 'd' ': git diff %val{buffile}<ret>'
|
||||
map global -docstring 'Diff' git-mode 'D' ': git diff<ret>'
|
||||
map global -docstring 'Grep' git-mode 'g' ':git grep '
|
||||
map global -docstring 'Grep' git-mode 'G' ': git grep %val{selection}<ret>'
|
||||
map global -docstring 'Log' git-mode 'l' ': git log -- %val{buffile}<ret>'
|
||||
map global -docstring 'Log' git-mode 'L' ': git log<ret>'
|
||||
map global -docstring 'Show branch' git-mode 'c' ': git show-branch<ret>'
|
||||
map global -docstring 'Status' git-mode 't' ': git status<ret>'
|
||||
map global -docstring 'Show diff' git-mode 's' ': git-show-diff<ret>'
|
||||
map global -docstring 'Show' git-mode 'S' ': git show<ret>'
|
||||
map global -docstring 'Hide diff' git-mode 'h' ': git-hide-diff<ret>'
|
||||
map global -docstring 'Next hunk' git-mode 'n' ': git next-hunk<ret>'
|
||||
map global -docstring 'Prev hunk' git-mode 'p' ': git prev-hunk<ret>'
|
||||
|
||||
declare-user-mode options-mode
|
||||
map global -docstring 'Options' user 'o' ': enter-user-mode options-mode<ret>'
|
||||
|
||||
map global -docstring "File" user 'f' ': enter-user-mode file-mode<ret>'
|
||||
map global -docstring "Buffer" user ' ' ': b '
|
||||
map global -docstring 'Five Dark mode' options-mode 'd' ': colorscheme five-colors-dark<ret>'
|
||||
map global -docstring 'Five Light mode' options-mode 'l' ': colorscheme five-colors-light<ret>'
|
||||
map global -docstring 'Light mode' options-mode 'L' ': colorscheme one-light<ret>'
|
||||
map global -docstring 'Dark mode' options-mode 'D' ': colorscheme one-darker<ret>'
|
||||
|
||||
map global -docstring "Open (git)" file-mode 'a' ': file-open-git<ret>'
|
||||
map global -docstring "Git diff file" file-mode 'd' ': git diff %val{buffile}<ret>'
|
||||
map global -docstring "Open (fd)" file-mode 'f' ': file-open<ret>'
|
||||
map global -docstring "Open (recent)" file-mode 'r' ': file-open-recent<ret>'
|
||||
map global -docstring "Git grep" file-mode 'g' ': git grep '
|
||||
map global -docstring "Open (nnn)" file-mode 'n' ': nnn-open %val{buffile}<ret>'
|
||||
map global -docstring "Open (nnn)" file-mode 'N' ': nnn-open .<ret>'
|
||||
map global -docstring "Open/create in dir" file-mode 'c' ': open-create-in-dir<ret>'
|
||||
declare-user-mode make-mode
|
||||
map global -docstring 'Make' user 'k' ': enter-user-mode make-mode<ret>'
|
||||
|
||||
map global -docstring "Options" user 'o' ': enter-user-mode options-mode<ret>'
|
||||
map global -docstring 'Make' make-mode 'a' ':make '
|
||||
map global -docstring 'Next' make-mode 'n' ': make-next-error<ret>'
|
||||
map global -docstring 'Previous' make-mode 'p' ': make-previous-error<ret>'
|
||||
map global -docstring 'General messages' make-mode 'g' ': set window make_error_pattern "^([^:\n]+):(\d+):(?:(\d+):)? ([^\n]+)?"<ret>'
|
||||
|
||||
map global -docstring "LP Dark mode" options-mode 'd' ': colorscheme lp-dark<ret>'
|
||||
map global -docstring "LP Light mode" options-mode 'l' ': colorscheme lp-light<ret>'
|
||||
map global -docstring "Light mode" options-mode 'L' ': colorscheme one-light<ret>'
|
||||
map global -docstring "Dark mode" options-mode 'D' ': colorscheme one-darker<ret>'
|
||||
evaluate-commands %sh{
|
||||
if [ -n "$WAYLAND_DISPLAY" ]; then
|
||||
echo "
|
||||
map global -docstring 'Paste clipboard (append)' user 'p' '<a-!> wl-paste -n<ret>'
|
||||
map global -docstring 'Paste clipboard (insert)' user 'P' '! wl-paste -n<ret>'
|
||||
map global -docstring 'Yank to clipboard' user 'y' '<a-|> wl-copy<ret>'
|
||||
"
|
||||
elif [ -n "$DISPLAY" ]; then
|
||||
echo "
|
||||
map global -docstring 'Paste clipboard (append)' user 'p' '<a-!> xsel -bo<ret>'
|
||||
map global -docstring 'Paste clipboard (insert)' user 'P' '! xsel -bo<ret>'
|
||||
map global -docstring 'Yank to clipboard' user 'y' '<a-|> xsel -bi<ret>'
|
||||
"
|
||||
fi
|
||||
}
|
||||
|
||||
map global -docstring "Paste clipboard (append)" user 'p' '<a-!> xsel -bo<ret>'
|
||||
map global -docstring "Paste clipboard (insert)" user 'P' '! xsel -bo<ret>'
|
||||
map global -docstring "Yank to clipboard" user 'y' '<a-|> xsel -bi<ret>'
|
||||
map global -docstring 'Replace jump mode' user 'j' ': enter_jump_mode_with_replace_select_mode<ret>'
|
||||
map global -docstring 'Extend jump mode' user 'e' ': enter_jump_mode_with_extend_select_mode<ret>'
|
||||
map global -docstring 'Append jump mode' user 'a' ': enter_jump_mode_with_append_select_mode<ret>'
|
||||
|
||||
define-command -override file-open %{
|
||||
prompt -menu -shell-script-candidates %{ fd -t f } 'File: ' %{ edit -- %val{text} }
|
||||
}
|
||||
|
||||
define-command -override file-open-with-hidden %{
|
||||
prompt -menu -shell-script-candidates %{ fd -t f -H } 'File: ' %{ edit -- %val{text} }
|
||||
}
|
||||
|
||||
define-command -override file-open-git %{
|
||||
prompt -menu -shell-script-candidates %{ git ls-files } 'File (git): ' %{ edit -- %val{text} }
|
||||
}
|
||||
@@ -58,6 +107,10 @@ define-command -override file-open-recent %{
|
||||
prompt -menu -shell-script-candidates %{ cat ~/.cache/kak-mru } 'File (recent): ' %{ edit -- %val{text} }
|
||||
}
|
||||
|
||||
define-command -override grep-file -params 1- %{
|
||||
grep %arg{@} -- %val{buffile}
|
||||
}
|
||||
|
||||
define-command -override -params 1 nnn-open %{
|
||||
terminal nnn-kak-edit %arg{1} %val{session} %val{client}
|
||||
}
|
||||
@@ -66,14 +119,49 @@ define-command -override open-create-in-dir %{
|
||||
execute-keys ': edit ' %sh{dirname "$kak_buffile"}/
|
||||
}
|
||||
|
||||
define-command git-log-show-current-commit %{
|
||||
execute-keys ';<a-/>^commit\s[0-9a-f]+<ret>b'
|
||||
git show %val{selection}
|
||||
}
|
||||
|
||||
define-command -override git-show-diff %{
|
||||
hook buffer -group git-show-diff NormalIdle .* %{ git update-diff }
|
||||
git show-diff
|
||||
}
|
||||
|
||||
define-command -override git-hide-diff %{
|
||||
remove-hooks buffer git-show-diff
|
||||
git hide-diff
|
||||
}
|
||||
|
||||
define-command -override ctags-file-symbols %{
|
||||
prompt -menu -shell-script-candidates %{
|
||||
ctags -uo - -x "$kak_buffile" | awk -f "$kak_config/scripts/filesymbols.awk"
|
||||
} 'File symbols: ' %{
|
||||
evaluate-commands %sh{ awk -f "$kak_config/scripts/filesymbolscmd.awk" # "$kak_text" }
|
||||
}
|
||||
}
|
||||
|
||||
define-command -override ctags-project-symbols %{
|
||||
prompt -menu -shell-script-candidates %{
|
||||
git ls-files | xargs wc | awk '$1 > 0 && $3/$1 < 1024 { print $4 }' | xargs ctags -uo - -x | awk -f "$kak_config/scripts/projectsymbols.awk"
|
||||
} 'Project symbols: ' %{
|
||||
evaluate-commands %sh{ awk -f "$kak_config/scripts/projectsymbolscmd.awk" # "$kak_text" }
|
||||
}
|
||||
}
|
||||
|
||||
set-face global JumpLabel 'rgb:faf8f5,rgb:af8842+F'
|
||||
|
||||
# CHANGE STATUS BAR COLOR IN INSERT MODE
|
||||
|
||||
hook global ModeChange push:.*:insert %{
|
||||
set-face window StatusLine "default,rgb:1c4a21"
|
||||
set-face window StatusLine 'default,rgb:04785d'
|
||||
set-option window idle_timeout 500
|
||||
}
|
||||
|
||||
hook global ModeChange pop:insert:.* %{
|
||||
unset-face window StatusLine
|
||||
unset-option window idle_timeout
|
||||
}
|
||||
|
||||
# ODIN
|
||||
@@ -82,6 +170,12 @@ hook global BufSetOption filetype=odin %{
|
||||
set-option buffer formatcmd 'odinfmt -stdin'
|
||||
}
|
||||
|
||||
hook global BufSetOption filetype=go %{
|
||||
hook -group buf-write-pre-fmt buffer BufWritePre .* %{
|
||||
lsp-formatting-sync
|
||||
}
|
||||
}
|
||||
|
||||
# LSP
|
||||
|
||||
eval %sh{kak-lsp}
|
||||
@@ -113,14 +207,16 @@ bundle-noload kak-bundle https://codeberg.org/jdugan6240/kak-bundle
|
||||
|
||||
# COLORSCHEME
|
||||
|
||||
bundle-theme kak-one "https://codeberg.org/raiguard/kak-one"
|
||||
bundle-theme kak-one 'https://codeberg.org/raiguard/kak-one'
|
||||
|
||||
bundle-theme kakoune-themes "https://codeberg.org/anhsirk0/kakoune-themes"
|
||||
bundle-theme kakoune-themes 'https://codeberg.org/anhsirk0/kakoune-themes'
|
||||
|
||||
# FZF
|
||||
|
||||
bundle fzf.kak "https://github.com/andreyorst/fzf.kak" %{
|
||||
map global -docstring 'FZF menu' user s ': fzf-mode<ret>'
|
||||
bundle fzf.kak 'https://github.com/andreyorst/fzf.kak' %{
|
||||
map global -docstring 'FZF menu' user 'f' ': fzf-mode<ret>'
|
||||
require-module fzf
|
||||
set-option global fzf_highlight_command "bat"
|
||||
}
|
||||
|
||||
hook global BufCreate [^*].* %{
|
||||
@@ -129,29 +225,75 @@ hook global BufCreate [^*].* %{
|
||||
echo "$kak_buffile" | awk '!seen[$0]++' - "$mru" | sponge "$mru"
|
||||
}}
|
||||
|
||||
# SURROUND
|
||||
# MATCH
|
||||
|
||||
bundle kakoune-surround "https://github.com/h-youhei/kakoune-surround" %{
|
||||
declare-user-mode surround
|
||||
map global surround s ': surround<ret>' -docstring 'surround'
|
||||
map global surround c ': change-surround<ret>' -docstring 'change'
|
||||
map global surround d ': delete-surround<ret>' -docstring 'delete'
|
||||
map global surround t ': select-surrounding-tag<ret>' -docstring 'select tag'
|
||||
map global -docstring 'Surround' user 'S' ': enter-user-mode surround<ret>'
|
||||
bundle match 'https://github.com/kmafeni04/match.kak' %{
|
||||
declare-user-mode match
|
||||
map global user m ': enter-user-mode match<ret>' -docstring 'Match'
|
||||
map global match m m -docstring 'Match next matching pair'
|
||||
map global match i ': match-inside<ret>' -docstring 'Match inside object'
|
||||
map global match a ': match-around<ret>' -docstring 'Match around object'
|
||||
map global match n ': match-next<ret>' -docstring 'Match next object'
|
||||
map global match p ': match-prev<ret>' -docstring 'Match previous object'
|
||||
map global match s ': match-surround-add<ret>' -docstring 'Surround selection with character'
|
||||
map global match d ': match-surround-delete<ret>' -docstring "Delete selection's surrounding character"
|
||||
map global match r ': match-surround-replace<ret>' -docstring "Replace selection's surrounding character"
|
||||
map global match u ': match-surround-undo<ret>' -docstring "Undo"
|
||||
map global match U ': match-surround-redo<ret>' -docstring "Redo"
|
||||
}
|
||||
|
||||
# HARPOON
|
||||
|
||||
bundle kak-harpoon "https://codeberg.org/raiguard/kak-harpoon" %{
|
||||
bundle kak-harpoon 'https://codeberg.org/raiguard/kak-harpoon' %{
|
||||
harpoon-add-bindings
|
||||
}
|
||||
|
||||
# EASYMOTION
|
||||
# PENEIRA
|
||||
|
||||
bundle easymotion.kak https://git.sr.ht/~voroskoi/easymotion.kak %{
|
||||
require-module easymotion
|
||||
map global -docstring 'easy j' user <j> ': easymotion-j<ret>'
|
||||
map global -docstring 'easy k' user <k> ': easymotion-k<ret>'
|
||||
map global -docstring 'easy w' user <w> ': easymotion-w<ret>'
|
||||
map global -docstring 'easy b'user <b> ': easymotion-b<ret>'
|
||||
bundle 'luar' 'https://github.com/gustavo-hms/luar' %{
|
||||
require-module luar
|
||||
}
|
||||
|
||||
bundle 'peneira' 'https://github.com/gustavo-hms/peneira' %{
|
||||
require-module peneira
|
||||
|
||||
define-command buffers %{
|
||||
peneira 'buffers: ' %{ eval "printf '%s\n' $kak_quoted_buflist" } %{
|
||||
buffer %arg{1}
|
||||
}
|
||||
}
|
||||
define-command peneira-git-files %{
|
||||
peneira 'git files: ' %{ git ls-files } %{ edit -- %arg{1} }
|
||||
}
|
||||
define-command peneira-files-with-hidden %{
|
||||
peneira 'git files: ' %{ fd -t f -H } %{ edit -- %arg{1} }
|
||||
}
|
||||
define-command peneira-recent-files %{
|
||||
peneira 'mru files: ' %{ cat ~/.cache/kak-mru } %{ edit -- %arg{1} }
|
||||
}
|
||||
|
||||
map global -docstring 'Buffer' user ' ' ': buffers<ret>'
|
||||
|
||||
map global -docstring 'Git files' file-mode 'a' ': peneira-git-files<ret>'
|
||||
map global -docstring 'Buffers' file-mode 'b' ': buffers<ret>'
|
||||
map global -docstring 'Files' file-mode 'f' ': peneira-files<ret>'
|
||||
map global -docstring 'Files' file-mode 'F' ': peneira-local-files<ret>'
|
||||
map global -docstring 'Files (with hidden)' file-mode 'h' ': peneira-files-with-hidden<ret>'
|
||||
map global -docstring 'Lines' file-mode 'l' ': peneira-lines<ret>'
|
||||
map global -docstring 'Symbols' file-mode 's' ': peneira-symbols<ret>'
|
||||
map global -docstring 'Recent files' file-mode 'r' ': peneira-recent-files<ret>'
|
||||
}
|
||||
|
||||
# LOCAL
|
||||
|
||||
define-command set-dark-or-light-colorscheme %{
|
||||
colorscheme %sh{
|
||||
if [ -e ~/.lightmode ]; then
|
||||
echo five-colors-light
|
||||
else
|
||||
echo five-colors-dark
|
||||
fi
|
||||
}
|
||||
}
|
||||
|
||||
set-dark-or-light-colorscheme
|
||||
|
||||
9
kakoune/.config/kak/scripts/filesymbols.awk
Normal file
9
kakoune/.config/kak/scripts/filesymbols.awk
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
for (i = 3; i < NF; ++i) {
|
||||
if ($i ~ /^[0-9]+$/) {
|
||||
j = match($0, "[ ]+" $(i-1) "[ ]+" $i " ")
|
||||
print substr($0, 0, j - 1) "\u00a0" $(i-1) "\u00a0" $i
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
10
kakoune/.config/kak/scripts/filesymbolscmd.awk
Normal file
10
kakoune/.config/kak/scripts/filesymbolscmd.awk
Normal file
@@ -0,0 +1,10 @@
|
||||
BEGIN {
|
||||
n = split(ENVIRON["kak_text"], a, "\u00a0")
|
||||
line = a[3]
|
||||
if (n == 3 && line ~ /^[0-9]+/) {
|
||||
pat = a[1]
|
||||
gsub(/'/, "''", pat)
|
||||
gsub(/\\/, "\\\\", pat)
|
||||
print "execute-keys " line " g vv x s '/\\b\\Q" pat "\\E\\b|\\Q" pat "<ret>' <a-)>,"
|
||||
}
|
||||
}
|
||||
9
kakoune/.config/kak/scripts/projectsymbols.awk
Normal file
9
kakoune/.config/kak/scripts/projectsymbols.awk
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
for (i = 3; i < NF; ++i) {
|
||||
if ($i ~ /^[0-9]+$/) {
|
||||
j = match($0, "[ ]+" $(i-1) "[ ]+" $i " ")
|
||||
print substr($0, 0, j - 1) "\u00a0" $(i-1) "\u00a0" $i "\u00a0" $(i+1)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
11
kakoune/.config/kak/scripts/projectsymbolscmd.awk
Normal file
11
kakoune/.config/kak/scripts/projectsymbolscmd.awk
Normal file
@@ -0,0 +1,11 @@
|
||||
BEGIN {
|
||||
n = split(ENVIRON["kak_text"], a, "\u00a0")
|
||||
line = a[3]
|
||||
if (n == 4 && line ~ /^[0-9]+/) {
|
||||
pat = a[1]
|
||||
gsub(/'/, "''", pat)
|
||||
gsub(/\\/, "\\\\", pat)
|
||||
print "edit --", a[4], line
|
||||
print "execute-keys vv x s %{/\\b\\Q" pat "\\E\\b|\\Q" pat "<ret>} <a-)>,"
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
font_family HurmitNerdFont
|
||||
font_size 11
|
||||
font_size 10
|
||||
|
||||
cursor_blink_interval 0
|
||||
enable_audio_bell no
|
||||
@@ -68,6 +68,6 @@ map ctrl+alt+shift+w detach_window
|
||||
map ctrl+alt+shift+x close_session .
|
||||
|
||||
# BEGIN_KITTY_THEME
|
||||
# Lupanbones-Dark
|
||||
# Five-Colors-Dark
|
||||
include current-theme.conf
|
||||
# END_KITTY_THEME
|
||||
|
||||
35
kitty/.config/kitty/themes/five-colors-dark.conf
Normal file
35
kitty/.config/kitty/themes/five-colors-dark.conf
Normal file
@@ -0,0 +1,35 @@
|
||||
# vim:ft=kitty
|
||||
|
||||
foreground #a29e98
|
||||
background #272117
|
||||
selection_foreground #272117
|
||||
selection_background #276c9a
|
||||
|
||||
cursor #73d0b1
|
||||
cursor_text_color #272117
|
||||
|
||||
active_border_color #276c9a
|
||||
inactive_border_color #b0bcc7
|
||||
|
||||
active_tab_foreground #9da0af
|
||||
active_tab_background #4d5580
|
||||
inactive_tab_foreground #1f212e
|
||||
inactive_tab_background #808080
|
||||
|
||||
color0 #85919b
|
||||
color1 #c37583
|
||||
color2 #44a386
|
||||
color3 #af8842
|
||||
color4 #5396c7
|
||||
color5 #a57cba
|
||||
color6 #2da0ad
|
||||
color7 #b0bcc7
|
||||
|
||||
color8 #85919b
|
||||
color9 #f2a0ae
|
||||
color10 #73d0b1
|
||||
color11 #dcb46e
|
||||
color12 #7fc3f5
|
||||
color13 #d2a8e8
|
||||
color14 #62cdda
|
||||
color15 #a29e98
|
||||
35
kitty/.config/kitty/themes/five-colors-light.conf
Normal file
35
kitty/.config/kitty/themes/five-colors-light.conf
Normal file
@@ -0,0 +1,35 @@
|
||||
# vim:ft=kitty
|
||||
|
||||
foreground #696257
|
||||
background #faf8f5
|
||||
selection_foreground #faf8f5
|
||||
selection_background #3a7ead
|
||||
|
||||
cursor #7ad6b7
|
||||
cursor_text_color #faf8f5
|
||||
|
||||
active_border_color #85c9fc
|
||||
inactive_border_color #919da7
|
||||
|
||||
active_tab_foreground #1f212e
|
||||
active_tab_background #a6c7f2
|
||||
inactive_tab_foreground #faf8f5
|
||||
inactive_tab_background #808080
|
||||
|
||||
color0 #272117
|
||||
color1 #d0818f
|
||||
color2 #52af92
|
||||
color3 #bc944f
|
||||
color4 #60a3d4
|
||||
color5 #b289c7
|
||||
color6 #3dadba
|
||||
color7 #b6c3cd
|
||||
|
||||
color8 #919da7
|
||||
color9 #85c9fc
|
||||
color10 #7ad6b7
|
||||
color11 #e3ba74
|
||||
color12 #60a3d4
|
||||
color13 #d9aeee
|
||||
color14 #85c9fc
|
||||
color15 #faf8f5
|
||||
1218
kwm/.config/kwm/config.zon
Normal file
1218
kwm/.config/kwm/config.zon
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,9 @@
|
||||
os:
|
||||
edit: 'nvim {{filename}}'
|
||||
editAtLine: 'nvim +{{line}} {{filename}}'
|
||||
editAtLineAndWait: 'nvim +{{line}} {{filename}}'
|
||||
edit: 'kak {{filename}}'
|
||||
editAtLine: 'kak +{{line}} {{filename}}'
|
||||
editAtLineAndWait: 'kak +{{line}} {{filename}}'
|
||||
editInTerminal: true
|
||||
openDirInEditor: 'nvim {{dir}}'
|
||||
openDirInEditor: 'kak -e "nnn-open {{dir}}"'
|
||||
|
||||
gui:
|
||||
nerdFontsVersion: "3"
|
||||
|
||||
@@ -3,6 +3,9 @@ PREFIX = /usr/local
|
||||
lupan-clock: lupan-clock.c
|
||||
${CC} -o $@ $< -lX11 -Wall
|
||||
|
||||
stdout-clock: stdout-clock.c
|
||||
${CC} -o $@ $< -Wall
|
||||
|
||||
install:
|
||||
mkdir -p ${DESTDIR}${PREFIX}/bin
|
||||
cp -f lupan-clock ${DESTDIR}${PREFIX}/bin
|
||||
|
||||
32
lupan-clock/stdout-clock.c
Normal file
32
lupan-clock/stdout-clock.c
Normal file
@@ -0,0 +1,32 @@
|
||||
#include <X11/Xlib.h>
|
||||
#include <stdio.h>
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
#include <string.h>
|
||||
|
||||
void show(struct tm *tm)
|
||||
{
|
||||
char s[6];
|
||||
strftime(s, sizeof(s), "%H:%M", tm);
|
||||
printf("%s\n", s);
|
||||
fflush(stdout);
|
||||
}
|
||||
|
||||
int main() {
|
||||
int h, m, init = 60;
|
||||
time_t t;
|
||||
struct tm *tm;
|
||||
|
||||
while (1) {
|
||||
t = time(NULL);
|
||||
tm = localtime(&t);
|
||||
if (tm->tm_hour != h || tm->tm_min != m || init > 0) {
|
||||
show(tm);
|
||||
h = tm->tm_hour;
|
||||
m = tm->tm_min;
|
||||
init = (init > 0) ? init - 1 : 0;
|
||||
}
|
||||
sleep(1);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
325
niri/.config/niri/config.kdl
Normal file
325
niri/.config/niri/config.kdl
Normal file
@@ -0,0 +1,325 @@
|
||||
// This config is in the KDL format: https://kdl.dev
|
||||
// https://niri-wm.github.io/niri/Configuration:-Introduction
|
||||
|
||||
spawn-at-startup "waybar"
|
||||
|
||||
input {
|
||||
keyboard {
|
||||
xkb {
|
||||
layout "pl"
|
||||
}
|
||||
numlock
|
||||
}
|
||||
|
||||
touchpad {
|
||||
tap
|
||||
natural-scroll
|
||||
}
|
||||
|
||||
// mouse { }
|
||||
|
||||
// trackpoint { }
|
||||
|
||||
warp-mouse-to-focus
|
||||
}
|
||||
|
||||
output "HDMI-A-1" {
|
||||
scale 2
|
||||
}
|
||||
output "DP-1" {
|
||||
scale 2
|
||||
}
|
||||
|
||||
layout {
|
||||
gaps 16
|
||||
|
||||
center-focused-column "never"
|
||||
|
||||
preset-column-widths {
|
||||
proportion 0.33333
|
||||
proportion 0.5
|
||||
proportion 0.66667
|
||||
}
|
||||
|
||||
// preset-window-heights { }
|
||||
|
||||
default-column-width { proportion 0.5; }
|
||||
|
||||
focus-ring {
|
||||
width 4
|
||||
active-color "#7fc8ff"
|
||||
inactive-color "#505050"
|
||||
}
|
||||
|
||||
border {
|
||||
off
|
||||
|
||||
width 4
|
||||
active-color "#ffc87f"
|
||||
inactive-color "#505050"
|
||||
urgent-color "#9b0000"
|
||||
}
|
||||
|
||||
struts {
|
||||
// left 64
|
||||
// right 64
|
||||
// top 64
|
||||
// bottom 64
|
||||
}
|
||||
}
|
||||
|
||||
overview {
|
||||
zoom 0.25
|
||||
}
|
||||
|
||||
hotkey-overlay {
|
||||
skip-at-startup
|
||||
}
|
||||
|
||||
prefer-no-csd
|
||||
|
||||
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
|
||||
// screenshot-path null
|
||||
|
||||
animations {
|
||||
off
|
||||
}
|
||||
|
||||
// Work around WezTerm's initial configure bug
|
||||
// by setting an empty default-column-width.
|
||||
window-rule {
|
||||
match app-id=r#"^org\.wezfurlong\.wezterm$"#
|
||||
default-column-width {}
|
||||
}
|
||||
|
||||
// Open the Firefox picture-in-picture player as floating by default.
|
||||
window-rule {
|
||||
match app-id=r#"firefox$"# title="^Picture-in-Picture$"
|
||||
open-floating true
|
||||
}
|
||||
|
||||
// Example: block out two password managers from screen capture.
|
||||
// (This example rule is commented out with a "/-" in front.)
|
||||
/-window-rule {
|
||||
match app-id=r#"^org\.keepassxc\.KeePassXC$"#
|
||||
match app-id=r#"^org\.gnome\.World\.Secrets$"#
|
||||
|
||||
block-out-from "screen-capture"
|
||||
|
||||
// Use this instead if you want them visible on third-party screenshot tools.
|
||||
// block-out-from "screencast"
|
||||
}
|
||||
|
||||
window-rule {
|
||||
geometry-corner-radius 4
|
||||
clip-to-geometry true
|
||||
}
|
||||
|
||||
binds {
|
||||
// Mod-Shift-/, which is usually the same as Mod-?,
|
||||
// shows a list of important hotkeys.
|
||||
Mod+Shift+Slash { show-hotkey-overlay; }
|
||||
|
||||
// Suggested binds for running programs: terminal, app launcher, screen locker.
|
||||
Mod+T hotkey-overlay-title="Open a Terminal: alacritty" { spawn "kitty" "--single-instance" "--instance-group" "default"; }
|
||||
Mod+D hotkey-overlay-title="Run an Application: wmenu" { spawn "wmenu-run" "-f" "HurmitNerdFont 10"; }
|
||||
Mod+B hotkey-overlay-title="Toggle waybar" { spawn "killall" "-SIGUSR1" "waybar"; }
|
||||
Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
|
||||
Mod+Shift+T hotkey-overlay-title="Toggle theme" { spawn "lupan-set-theme" "toggle"; }
|
||||
|
||||
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; }
|
||||
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
||||
XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
|
||||
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
||||
|
||||
XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; }
|
||||
XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; }
|
||||
XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; }
|
||||
XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; }
|
||||
|
||||
XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
|
||||
XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
|
||||
|
||||
Mod+O repeat=false { toggle-overview; }
|
||||
|
||||
Mod+Shift+C repeat=false { close-window; }
|
||||
|
||||
Mod+Left { focus-column-left; }
|
||||
Mod+Down { focus-window-down; }
|
||||
Mod+Up { focus-window-up; }
|
||||
Mod+Right { focus-column-right; }
|
||||
Mod+H { focus-column-left; }
|
||||
Mod+J { focus-window-down; }
|
||||
Mod+K { focus-window-up; }
|
||||
Mod+L { focus-column-right; }
|
||||
|
||||
Mod+Ctrl+Left { move-column-left; }
|
||||
Mod+Ctrl+Down { move-window-down; }
|
||||
Mod+Ctrl+Up { move-window-up; }
|
||||
Mod+Ctrl+Right { move-column-right; }
|
||||
Mod+Ctrl+H { move-column-left; }
|
||||
Mod+Ctrl+J { move-window-down; }
|
||||
Mod+Ctrl+K { move-window-up; }
|
||||
Mod+Ctrl+L { move-column-right; }
|
||||
|
||||
// Alternative commands that move across workspaces when reaching
|
||||
// the first or last window in a column.
|
||||
// Mod+J { focus-window-or-workspace-down; }
|
||||
// Mod+K { focus-window-or-workspace-up; }
|
||||
// Mod+Ctrl+J { move-window-down-or-to-workspace-down; }
|
||||
// Mod+Ctrl+K { move-window-up-or-to-workspace-up; }
|
||||
|
||||
Mod+Home { focus-column-first; }
|
||||
Mod+End { focus-column-last; }
|
||||
Mod+Ctrl+Home { move-column-to-first; }
|
||||
Mod+Ctrl+End { move-column-to-last; }
|
||||
|
||||
Mod+Shift+Left { focus-monitor-left; }
|
||||
Mod+Shift+Down { focus-monitor-down; }
|
||||
Mod+Shift+Up { focus-monitor-up; }
|
||||
Mod+Shift+Right { focus-monitor-right; }
|
||||
Mod+Shift+H { focus-monitor-left; }
|
||||
Mod+Shift+J { focus-monitor-down; }
|
||||
Mod+Shift+K { focus-monitor-up; }
|
||||
Mod+Shift+L { focus-monitor-right; }
|
||||
|
||||
Mod+Shift+Ctrl+Left { move-column-to-monitor-left; }
|
||||
Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }
|
||||
Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }
|
||||
Mod+Shift+Ctrl+Right { move-column-to-monitor-right; }
|
||||
Mod+Shift+Ctrl+H { move-column-to-monitor-left; }
|
||||
Mod+Shift+Ctrl+J { move-column-to-monitor-down; }
|
||||
Mod+Shift+Ctrl+K { move-column-to-monitor-up; }
|
||||
Mod+Shift+Ctrl+L { move-column-to-monitor-right; }
|
||||
|
||||
// Alternatively, there are commands to move just a single window:
|
||||
// Mod+Shift+Ctrl+Left { move-window-to-monitor-left; }
|
||||
// ...
|
||||
|
||||
// And you can also move a whole workspace to another monitor:
|
||||
// Mod+Shift+Ctrl+Left { move-workspace-to-monitor-left; }
|
||||
// ...
|
||||
|
||||
Mod+Page_Down { focus-workspace-down; }
|
||||
Mod+Page_Up { focus-workspace-up; }
|
||||
Mod+U { focus-workspace-down; }
|
||||
Mod+I { focus-workspace-up; }
|
||||
Mod+Ctrl+Page_Down { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+Page_Up { move-column-to-workspace-up; }
|
||||
Mod+Ctrl+U { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+I { move-column-to-workspace-up; }
|
||||
|
||||
Mod+Shift+Page_Down { move-workspace-down; }
|
||||
Mod+Shift+Page_Up { move-workspace-up; }
|
||||
Mod+Shift+U { move-workspace-down; }
|
||||
Mod+Shift+I { move-workspace-up; }
|
||||
|
||||
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
|
||||
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
|
||||
Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }
|
||||
|
||||
Mod+WheelScrollRight { focus-column-right; }
|
||||
Mod+WheelScrollLeft { focus-column-left; }
|
||||
Mod+Ctrl+WheelScrollRight { move-column-right; }
|
||||
Mod+Ctrl+WheelScrollLeft { move-column-left; }
|
||||
|
||||
Mod+Shift+WheelScrollDown { focus-column-right; }
|
||||
Mod+Shift+WheelScrollUp { focus-column-left; }
|
||||
Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
|
||||
Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }
|
||||
|
||||
Mod+1 { focus-workspace 1; }
|
||||
Mod+2 { focus-workspace 2; }
|
||||
Mod+3 { focus-workspace 3; }
|
||||
Mod+4 { focus-workspace 4; }
|
||||
Mod+5 { focus-workspace 5; }
|
||||
Mod+6 { focus-workspace 6; }
|
||||
Mod+7 { focus-workspace 7; }
|
||||
Mod+8 { focus-workspace 8; }
|
||||
Mod+9 { focus-workspace 9; }
|
||||
Mod+Ctrl+1 { move-column-to-workspace 1; }
|
||||
Mod+Ctrl+2 { move-column-to-workspace 2; }
|
||||
Mod+Ctrl+3 { move-column-to-workspace 3; }
|
||||
Mod+Ctrl+4 { move-column-to-workspace 4; }
|
||||
Mod+Ctrl+5 { move-column-to-workspace 5; }
|
||||
Mod+Ctrl+6 { move-column-to-workspace 6; }
|
||||
Mod+Ctrl+7 { move-column-to-workspace 7; }
|
||||
Mod+Ctrl+8 { move-column-to-workspace 8; }
|
||||
Mod+Ctrl+9 { move-column-to-workspace 9; }
|
||||
|
||||
Mod+Ctrl+Shift+1 { move-window-to-workspace 1; }
|
||||
Mod+Ctrl+Shift+2 { move-window-to-workspace 2; }
|
||||
Mod+Ctrl+Shift+3 { move-window-to-workspace 3; }
|
||||
Mod+Ctrl+Shift+4 { move-window-to-workspace 4; }
|
||||
Mod+Ctrl+Shift+5 { move-window-to-workspace 5; }
|
||||
Mod+Ctrl+Shift+6 { move-window-to-workspace 6; }
|
||||
Mod+Ctrl+Shift+7 { move-window-to-workspace 7; }
|
||||
Mod+Ctrl+Shift+8 { move-window-to-workspace 8; }
|
||||
Mod+Ctrl+Shift+9 { move-window-to-workspace 9; }
|
||||
|
||||
// Switches focus between the current and the previous workspace.
|
||||
// Mod+Tab { focus-workspace-previous; }
|
||||
|
||||
Mod+BracketLeft { consume-or-expel-window-left; }
|
||||
Mod+BracketRight { consume-or-expel-window-right; }
|
||||
|
||||
Mod+Comma { consume-window-into-column; }
|
||||
Mod+Period { expel-window-from-column; }
|
||||
|
||||
Mod+R { switch-preset-column-width; }
|
||||
Mod+Shift+R { switch-preset-column-width-back; }
|
||||
|
||||
Mod+Ctrl+Shift+R { switch-preset-window-height; }
|
||||
Mod+Ctrl+R { reset-window-height; }
|
||||
|
||||
Mod+F { maximize-column; }
|
||||
Mod+Shift+F { fullscreen-window; }
|
||||
|
||||
Mod+M { maximize-window-to-edges; }
|
||||
|
||||
Mod+Ctrl+F { expand-column-to-available-width; }
|
||||
|
||||
Mod+C { center-column; }
|
||||
Mod+Ctrl+C { center-visible-columns; }
|
||||
|
||||
Mod+Minus { set-column-width "-10%"; }
|
||||
Mod+Equal { set-column-width "+10%"; }
|
||||
|
||||
Mod+Shift+Minus { set-window-height "-10%"; }
|
||||
Mod+Shift+Equal { set-window-height "+10%"; }
|
||||
|
||||
Mod+V { toggle-window-floating; }
|
||||
Mod+Shift+V { switch-focus-between-floating-and-tiling; }
|
||||
|
||||
Mod+W { toggle-column-tabbed-display; }
|
||||
|
||||
// Actions to switch layouts.
|
||||
// Note: if you uncomment these, make sure you do NOT have
|
||||
// a matching layout switch hotkey configured in xkb options above.
|
||||
// Having both at once on the same hotkey will break the switching,
|
||||
// since it will switch twice upon pressing the hotkey (once by xkb, once by niri).
|
||||
// Mod+Space { switch-layout "next"; }
|
||||
// Mod+Shift+Space { switch-layout "prev"; }
|
||||
|
||||
Print { screenshot; }
|
||||
Ctrl+Print { screenshot-screen; }
|
||||
Alt+Print { screenshot-window; }
|
||||
|
||||
// Applications such as remote-desktop clients and software KVM switches may
|
||||
// request that niri stops processing the keyboard shortcuts defined here
|
||||
// so they may, for example, forward the key presses as-is to a remote machine.
|
||||
// It's a good idea to bind an escape hatch to toggle the inhibitor,
|
||||
// so a buggy application can't hold your session hostage.
|
||||
//
|
||||
// The allow-inhibiting=false property can be applied to other binds as well,
|
||||
// which ensures niri always processes them, even when an inhibitor is active.
|
||||
Mod+Escape allow-inhibiting=false { toggle-keyboard-shortcuts-inhibit; }
|
||||
|
||||
Mod+Shift+E { quit; }
|
||||
Ctrl+Alt+Delete { quit; }
|
||||
|
||||
Mod+Shift+P { power-off-monitors; }
|
||||
}
|
||||
|
||||
include "dark.kdl"
|
||||
9
niri/.config/niri/dark.kdl
Normal file
9
niri/.config/niri/dark.kdl
Normal file
@@ -0,0 +1,9 @@
|
||||
layout {
|
||||
background-color "#414853"
|
||||
|
||||
focus-ring {
|
||||
width 4
|
||||
active-color "#5396c7"
|
||||
inactive-color "#505050"
|
||||
}
|
||||
}
|
||||
9
niri/.config/niri/light.kdl
Normal file
9
niri/.config/niri/light.kdl
Normal file
@@ -0,0 +1,9 @@
|
||||
layout {
|
||||
background-color "#c0c1c2"
|
||||
|
||||
focus-ring {
|
||||
width 4
|
||||
active-color "#85c9fc"
|
||||
inactive-color "#505050"
|
||||
}
|
||||
}
|
||||
13
niri/.config/waybar/config
Normal file
13
niri/.config/waybar/config
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"modules-left": [
|
||||
"niri/workspaces",
|
||||
"niri/window"
|
||||
],
|
||||
"modules-right": [
|
||||
"tray",
|
||||
"clock"
|
||||
],
|
||||
"reload_style_on_change": true,
|
||||
}
|
||||
12
niri/.config/waybar/dark.css
Normal file
12
niri/.config/waybar/dark.css
Normal file
@@ -0,0 +1,12 @@
|
||||
* {
|
||||
background-color: #282e38;
|
||||
color: #a29e98;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
border-bottom: 3px solid #04785d;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
border-bottom: 3px solid #c37583;
|
||||
}
|
||||
12
niri/.config/waybar/light.css
Normal file
12
niri/.config/waybar/light.css
Normal file
@@ -0,0 +1,12 @@
|
||||
* {
|
||||
background-color: #f6ede0;
|
||||
color: #696257;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
border-bottom: 3px solid #278a6e;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
border-bottom: 3px solid #d0818f;
|
||||
}
|
||||
25
niri/.config/waybar/style.css
Normal file
25
niri/.config/waybar/style.css
Normal file
@@ -0,0 +1,25 @@
|
||||
@import url("file:///home/lupan/.config/waybar/dark.css");
|
||||
|
||||
* {
|
||||
font-family: HurmitNerdFont;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
padding: 0 0.5rem;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 0 3px;
|
||||
border-radius: 0;
|
||||
border-bottom: 3px solid transparent;
|
||||
}
|
||||
|
||||
#window {
|
||||
border-bottom: 3px solid transparent;
|
||||
}
|
||||
|
||||
#clock {
|
||||
padding: 0 0.5rem;
|
||||
border-bottom: 3px solid transparent;
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
FIFO="$XDG_RUNTIME_DIR/sandbar"
|
||||
|
||||
run() {
|
||||
echo run
|
||||
[ -e "$FIFO" ] && rm -f "$FIFO"
|
||||
mkfifo "$FIFO"
|
||||
|
||||
"$HOME/.config/river/status" &
|
||||
|
||||
while cat "$FIFO"; do :; done | sandbar \
|
||||
-font "FiraCode Nerd Font Ret:size=10" \
|
||||
-active-fg-color "#000000" \
|
||||
-active-bg-color "#e8c47d" \
|
||||
-inactive-fg-color "#e8c47d" \
|
||||
-inactive-bg-color "#000000" \
|
||||
-urgent-fg-color "#000000" \
|
||||
-urgent-bg-color "#cc241d" \
|
||||
-title-fg-color "#000000" \
|
||||
-title-bg-color "#e8c47d"
|
||||
}
|
||||
|
||||
while true; do
|
||||
run
|
||||
CODE=$?
|
||||
if [ $CODE -ne 139 && $CODE -ne 134 ]; then
|
||||
echo exit because $CODE
|
||||
exit
|
||||
fi
|
||||
echo sleep and continue
|
||||
sleep 1
|
||||
done
|
||||
@@ -1,20 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
LOCK_COMMAND='swaylock -f -c 1f7693'
|
||||
RANDR_COMMAND='${HOME}/.config/river/randr --on'
|
||||
RANDR_OFF_COMMAND='${HOME}/.config/river/randr --off'
|
||||
|
||||
riverctl spawn "${RANDR_COMMAND}"
|
||||
|
||||
"${HOME}/.config/river/keymap"
|
||||
|
||||
# Set the default layout generator to be rivertile and start it.
|
||||
# River will send the process group of the init executable SIGTERM on exit.
|
||||
riverctl default-layout rivertile
|
||||
rivertile -view-padding 1 -outer-padding 0 &
|
||||
|
||||
riverctl spawn "${HOME}/.config/river/bar"
|
||||
|
||||
riverctl spawn "swayidle -w timeout 300 '${LOCK_COMMAND}' \
|
||||
timeout 330 '${RANDR_OFF_COMMAND}' resume '${RANDR_COMMAND}' \
|
||||
before-sleep '${LOCK_COMMAND}' after-resume '${RANDR_COMMAND}'"
|
||||
@@ -1,164 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
LOCK_COMMAND='swaylock -f -c 1f7693'
|
||||
|
||||
# Note: the "Super" modifier is also known as Logo, GUI, Windows, Mod4, etc.
|
||||
|
||||
# Super+Shift+Return to start an instance of foot (https://codeberg.org/dnkl/foot)
|
||||
riverctl map normal Super+Shift Return spawn alacritty
|
||||
riverctl map normal Super+Alt Return spawn alacritty
|
||||
|
||||
riverctl map normal Super P spawn "wofi -S run"
|
||||
|
||||
# Super+Q to close the focused view
|
||||
riverctl map normal Super Q close
|
||||
|
||||
# Super+Shift+E to exit river
|
||||
riverctl map normal Super+Shift E exit
|
||||
|
||||
# Super+J and Super+K to focus the next/previous view in the layout stack
|
||||
riverctl map normal Super J focus-view next
|
||||
riverctl map normal Super K focus-view previous
|
||||
|
||||
# Super+Shift+J and Super+Shift+K to swap the focused view with the next/previous
|
||||
# view in the layout stack
|
||||
riverctl map normal Super+Shift J swap next
|
||||
riverctl map normal Super+Shift K swap previous
|
||||
|
||||
# Super+Period and Super+Comma to focus the next/previous output
|
||||
riverctl map normal Super Period focus-output next
|
||||
riverctl map normal Super Comma focus-output previous
|
||||
|
||||
# Super+Shift+{Period,Comma} to send the focused view to the next/previous output
|
||||
riverctl map normal Super+Shift Period send-to-output next
|
||||
riverctl map normal Super+Shift Comma send-to-output previous
|
||||
|
||||
# Super+Return to bump the focused view to the top of the layout stack
|
||||
riverctl map normal Super Return zoom
|
||||
|
||||
# Super+H and Super+L to decrease/increase the main ratio of rivertile(1)
|
||||
riverctl map normal Super H send-layout-cmd rivertile "main-ratio -0.05"
|
||||
riverctl map normal Super L send-layout-cmd rivertile "main-ratio +0.05"
|
||||
|
||||
# Super+Shift+H and Super+Shift+L to increment/decrement the main count of rivertile(1)
|
||||
riverctl map normal Super+Shift H send-layout-cmd rivertile "main-count +1"
|
||||
riverctl map normal Super+Shift L send-layout-cmd rivertile "main-count -1"
|
||||
|
||||
# Super+Alt+{H,J,K,L} to move views
|
||||
riverctl map normal Super+Alt H move left 100
|
||||
riverctl map normal Super+Alt J move down 100
|
||||
riverctl map normal Super+Alt K move up 100
|
||||
riverctl map normal Super+Alt L move right 100
|
||||
|
||||
# Super+Alt+Control+{H,J,K,L} to snap views to screen edges
|
||||
riverctl map normal Super+Alt+Control H snap left
|
||||
riverctl map normal Super+Alt+Control J snap down
|
||||
riverctl map normal Super+Alt+Control K snap up
|
||||
riverctl map normal Super+Alt+Control L snap right
|
||||
|
||||
# Super+Alt+Shift+{H,J,K,L} to resize views
|
||||
riverctl map normal Super+Alt+Shift H resize horizontal -100
|
||||
riverctl map normal Super+Alt+Shift J resize vertical 100
|
||||
riverctl map normal Super+Alt+Shift K resize vertical -100
|
||||
riverctl map normal Super+Alt+Shift L resize horizontal 100
|
||||
|
||||
# Super + Left Mouse Button to move views
|
||||
riverctl map-pointer normal Super BTN_LEFT move-view
|
||||
|
||||
# Super + Right Mouse Button to resize views
|
||||
riverctl map-pointer normal Super BTN_RIGHT resize-view
|
||||
|
||||
# Super + Middle Mouse Button to toggle float
|
||||
riverctl map-pointer normal Super BTN_MIDDLE toggle-float
|
||||
|
||||
for i in $(seq 1 9)
|
||||
do
|
||||
tags=$((1 << ($i - 1)))
|
||||
|
||||
# Super+[1-9] to focus tag [0-8]
|
||||
riverctl map normal Super $i set-focused-tags $tags
|
||||
|
||||
# Super+Shift+[1-9] to tag focused view with tag [0-8]
|
||||
riverctl map normal Super+Shift $i set-view-tags $tags
|
||||
|
||||
# Super+Control+[1-9] to toggle focus of tag [0-8]
|
||||
riverctl map normal Super+Control $i toggle-focused-tags $tags
|
||||
|
||||
# Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view
|
||||
riverctl map normal Super+Shift+Control $i toggle-view-tags $tags
|
||||
done
|
||||
|
||||
# Super+0 to focus all tags
|
||||
# Super+Shift+0 to tag focused view with all tags
|
||||
all_tags=$(((1 << 32) - 1))
|
||||
riverctl map normal Super 0 set-focused-tags $all_tags
|
||||
riverctl map normal Super+Shift 0 set-view-tags $all_tags
|
||||
|
||||
# Super+Space to toggle float
|
||||
riverctl map normal Super Space toggle-float
|
||||
|
||||
# Super+F to toggle fullscreen
|
||||
riverctl map normal Super F toggle-fullscreen
|
||||
|
||||
# Super+{Up,Right,Down,Left} to change layout orientation
|
||||
riverctl map normal Super Up send-layout-cmd rivertile "main-location top"
|
||||
riverctl map normal Super Right send-layout-cmd rivertile "main-location right"
|
||||
riverctl map normal Super Down send-layout-cmd rivertile "main-location bottom"
|
||||
riverctl map normal Super Left send-layout-cmd rivertile "main-location left"
|
||||
|
||||
# Declare a passthrough mode. This mode has only a single mapping to return to
|
||||
# normal mode. This makes it useful for testing a nested wayland compositor
|
||||
riverctl declare-mode passthrough
|
||||
|
||||
# Super+F11 to enter passthrough mode
|
||||
riverctl map normal Super F11 enter-mode passthrough
|
||||
|
||||
# Super+F11 to return to normal mode
|
||||
riverctl map passthrough Super F11 enter-mode normal
|
||||
|
||||
# Various media key mapping examples for both normal and locked mode which do
|
||||
# not have a modifier
|
||||
for mode in normal locked
|
||||
do
|
||||
# Eject the optical drive (well if you still have one that is)
|
||||
riverctl map $mode None XF86Eject spawn 'eject -T'
|
||||
|
||||
# Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer)
|
||||
riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5'
|
||||
riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5'
|
||||
riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute'
|
||||
|
||||
# Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl)
|
||||
riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause'
|
||||
riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause'
|
||||
riverctl map $mode None XF86AudioPrev spawn 'playerctl previous'
|
||||
riverctl map $mode None XF86AudioNext spawn 'playerctl next'
|
||||
|
||||
# Control screen backlight brightness with brightnessctl (https://github.com/Hummer12007/brightnessctl)
|
||||
riverctl map $mode None XF86MonBrightnessUp spawn 'brightnessctl set +5%'
|
||||
riverctl map $mode None XF86MonBrightnessDown spawn 'brightnessctl set 5%-'
|
||||
done
|
||||
|
||||
riverctl map normal Super A focus-previous-tags
|
||||
riverctl map normal Super+Control+Shift L spawn "${LOCK_COMMAND}"
|
||||
riverctl map normal Super+Control+Shift S spawn "systemctl suspend"
|
||||
|
||||
riverctl map normal Super+Alt O spawn "${LOCK_COMMAND}"
|
||||
riverctl map normal Super+Alt S spawn "systemctl suspend"
|
||||
|
||||
riverctl map normal Super+Alt T spawn "${HOME}/bin/lupan-set-theme toggle"
|
||||
|
||||
# Set background and border color
|
||||
riverctl background-color 0x002b36
|
||||
riverctl border-color-focused 0xac7853
|
||||
riverctl border-color-unfocused 0x5387ac
|
||||
|
||||
riverctl keyboard-layout -options ctrl:nocaps pl
|
||||
# Set keyboard repeat rate
|
||||
riverctl set-repeat 50 300
|
||||
|
||||
# Make all views with an app-id that starts with "float" and title "foo" start floating.
|
||||
riverctl rule-add -app-id 'float*' -title 'foo' float
|
||||
|
||||
# Make all views with app-id "bar" and any title use client-side decorations
|
||||
riverctl rule-add -app-id "bar" csd
|
||||
@@ -1,21 +0,0 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
repeat() {
|
||||
for x in {0..10}; do
|
||||
echo "$@"
|
||||
"$@"
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
--on)
|
||||
repeat wlr-randr --output DP-1 --on --scale 2 --pos 0,0 &
|
||||
repeat wlr-randr --output DP-2 --on --scale 2 --pos 1920,0 &
|
||||
sleep 10
|
||||
;;
|
||||
--off)
|
||||
wlr-randr --output DP-1 --off
|
||||
wlr-randr --output DP-2 --off
|
||||
;;
|
||||
esac
|
||||
@@ -1,52 +0,0 @@
|
||||
#!/bin/env sh
|
||||
|
||||
cpu() {
|
||||
cpu="$(grep -o "^[^ ]*" /proc/loadavg)"
|
||||
}
|
||||
|
||||
memory() {
|
||||
memory="$(free -h | sed -n "2s/\([^ ]* *\)\{2\}\([^ ]*\).*/\2/p")"
|
||||
}
|
||||
|
||||
disk() {
|
||||
disk="$(df -h | awk 'NR==2{print $4}')"
|
||||
}
|
||||
|
||||
datetime() {
|
||||
datetime="$(date "+%F %H:%M")"
|
||||
}
|
||||
|
||||
bat() {
|
||||
read -r bat_status </sys/class/power_supply/BAT0/status
|
||||
read -r bat_capacity </sys/class/power_supply/BAT0/capacity
|
||||
bat="$bat_status $bat_capacity%"
|
||||
}
|
||||
|
||||
vol() {
|
||||
vol="$([ "$(pamixer --get-mute)" = "false" ] && printf "%s%%" "$(pamixer --get-volume)" || printf '-')"
|
||||
}
|
||||
|
||||
display() {
|
||||
echo "all status [$memory $cpu $disk] [$bat] [$vol] [$datetime]" >"$FIFO"
|
||||
}
|
||||
|
||||
printf "%s" "$$" > "$XDG_RUNTIME_DIR/status_pid"
|
||||
FIFO="$XDG_RUNTIME_DIR/sandbar"
|
||||
[ -e "$FIFO" ] || mkfifo "$FIFO"
|
||||
sec=0
|
||||
|
||||
while true; do
|
||||
sleep 1 &
|
||||
wait && {
|
||||
[ $((sec % 15)) -eq 0 ] && memory
|
||||
[ $((sec % 15)) -eq 0 ] && cpu
|
||||
[ $((sec % 15)) -eq 0 ] && disk
|
||||
[ $((sec % 60)) -eq 0 ] && bat
|
||||
[ $((sec % 5)) -eq 0 ] && vol
|
||||
[ $((sec % 5)) -eq 0 ] && datetime
|
||||
|
||||
[ $((sec % 5)) -eq 0 ] && display
|
||||
|
||||
sec=$((sec + 1))
|
||||
}
|
||||
done
|
||||
@@ -1,5 +1,6 @@
|
||||
alias v=nvim
|
||||
alias k=kak
|
||||
alias kd='kak -s "$(basename $PWD)"'
|
||||
alias ll='ls -l'
|
||||
alias tl='tmux list-sessions'
|
||||
alias rgh='rg -.'
|
||||
@@ -22,7 +23,7 @@ elif which exa > /dev/null; then
|
||||
alias tree='exa --tree --icons'
|
||||
else
|
||||
eval $(dircolors)
|
||||
alias ls='ls --color'
|
||||
alias ls='ls --color=auto'
|
||||
fi
|
||||
|
||||
alias nocaps='setxkbmap pl -option ctrl:nocaps'
|
||||
@@ -37,6 +38,12 @@ a4i() {
|
||||
fi
|
||||
}
|
||||
|
||||
kc() {
|
||||
local Q="${@:-}"
|
||||
local NAME=$(kak -l | fzy -q "$Q")
|
||||
[ -n "$NAME" ] && kak -c "$NAME"
|
||||
}
|
||||
|
||||
tn() {
|
||||
if [ $# -eq 0 ]; then
|
||||
tmux new
|
||||
|
||||
@@ -13,6 +13,8 @@ export LANG=pl_PL.UTF-8
|
||||
export EDITOR=kak
|
||||
export VISUAL=kak
|
||||
|
||||
export BAT_THEME='Catppuccin Frappe'
|
||||
|
||||
# if running bash
|
||||
if [ -n "$BASH_VERSION" ]; then
|
||||
# include .bashrc if it exists
|
||||
@@ -38,7 +40,12 @@ export GOBIN=~/.local/bin
|
||||
|
||||
# start X or Hyprland at login
|
||||
if [ -z "$DISPLAY" -a -z "$WAYLAND_DISPLAY" -a "$(tty)" = /dev/tty1 ]; then
|
||||
if which /usr/bin/sx > /dev/null; then
|
||||
if which niri > /dev/null; then
|
||||
exec niri
|
||||
elif which river kwm stdout-clock > /dev/null; then
|
||||
export XKB_DEFAULT_LAYOUT=pl
|
||||
exec river -c 'stdout-clock | kwm'
|
||||
elif which /usr/bin/sx > /dev/null; then
|
||||
exec /usr/bin/sx ~/.xsession
|
||||
elif which /usr/bin/startx > /dev/null; then
|
||||
exec /usr/bin/startx ~/.xsession
|
||||
|
||||
@@ -4,8 +4,6 @@
|
||||
export FZF_DEFAULT_OPTS='--color=bg+:#808080'
|
||||
zstyle ':fzf-tab:*' fzf-flags $FZF_DEFAULT_OPTS
|
||||
|
||||
export BAT_THEME=ansi
|
||||
|
||||
[ -f "${XDG_DATA_HOME:-$HOME/.local/share}/zap/zap.zsh" ] && source "${XDG_DATA_HOME:-$HOME/.local/share}/zap/zap.zsh"
|
||||
plug "jeffreytse/zsh-vi-mode"
|
||||
|
||||
|
||||
@@ -44,22 +44,39 @@ if [ -f "$ATOML" ]; then
|
||||
sed -i "s#^import =.*#import = [\"~/.config/alacritty/$THEME.toml\"]#" "$ATOML"
|
||||
fi
|
||||
|
||||
XSET=$(readlink -e ~/.config/xsettingsd/xsettingsd.conf)
|
||||
# Kitty
|
||||
if [ "$THEME" = dark ]; then
|
||||
kitten themes --reload-in=all 'lupanbones-dark'
|
||||
kitten themes --reload-in=all 'five-colors-dark'
|
||||
elif [ "$THEME" = light ]; then
|
||||
kitten themes --reload-in=all 'lupanbones-light'
|
||||
kitten themes --reload-in=all 'five-colors-light'
|
||||
fi
|
||||
|
||||
# Foot
|
||||
FOOT=$(readlink -e ~/.config/foot/foot.ini)
|
||||
if [ -n "$FOOT" ]; then
|
||||
sed -i "s/^initial-color-theme .*/initial-color-theme = $THEME/" "$FOOT"
|
||||
fi
|
||||
|
||||
# GTK
|
||||
XSET=$(readlink -e ~/.config/xsettingsd/xsettingsd.conf)
|
||||
if [ -n "$XSET" ]; then
|
||||
sed -i -E "s#(Net/ThemeName) .*#\\1 \"${GTK_THEME}\"#" "$XSET"
|
||||
pkill -HUP -x xsettingsd
|
||||
gsettings set org.gnome.desktop.interface gtk-theme "${GTK_THEME}"
|
||||
fi
|
||||
|
||||
# niri
|
||||
NIRI=$(readlink -e ~/.config/niri/config.kdl)
|
||||
if [ -n "$NIRI" ]; then
|
||||
sed -i -E "s%^(include) \"(dark|light).kdl\".*%\\1 \"${THEME}.kdl\"%" "$NIRI"
|
||||
fi
|
||||
|
||||
# waybar
|
||||
WCSS=$(readlink -e ~/.config/waybar/style.css)
|
||||
if [ -f "$WCSS" ]; then
|
||||
sed -i -E "s#file:///.*/(light|dark)[.]css#file://$HOME/.config/waybar/$THEME.css#" "$WCSS"
|
||||
fi
|
||||
|
||||
for session in $(kak -l); do
|
||||
echo set-dark-or-light-colorscheme | kak -p $session
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user