Browse Source

Merge remote-tracking branch 'refs/remotes/origin/master'

aws
Kevin Mok 2 years ago
committed by Kevin Mok
parent
commit
7b8685477b
  1. 640
      aliases/key_aliases.tmpl
  2. 196
      aliases/key_dirs.tmpl
  3. 68
      aliases/key_files.tmpl
  4. 10
      dot_Xmodmap
  5. 7
      dot_Xmodmap-old
  6. 9
      dot_Xresources.tmpl
  7. 137
      dot_config/fish/completions/kogito.fish
  8. 1728
      dot_config/fish/completions/kubectl.fish
  9. 178
      dot_config/fish/completions/minikube.fish
  10. 133
      dot_config/fish/config.fish.tmpl
  11. 3
      dot_config/fish/functions/cad-to-us.fish
  12. 7
      dot_config/fish/functions/clip.fish
  13. 15
      dot_config/fish/functions/discord-burner.fish
  14. 3
      dot_config/fish/functions/dump-rarity-check.fish
  15. 0
      dot_config/fish/functions/fish_mode_prompt.fish
  16. 4
      dot_config/fish/functions/fzf-cd.fish
  17. 6
      dot_config/fish/functions/fzf-ranger.fish
  18. 5
      dot_config/fish/functions/fzf-vim.fish
  19. 3
      dot_config/fish/functions/git-log-short.fish
  20. 3
      dot_config/fish/functions/git-submodule-branch.fish
  21. 2
      dot_config/fish/functions/git/git-clone-gitea.fish
  22. 3
      dot_config/fish/functions/git/git-push-diff-name.fish
  23. 4
      dot_config/fish/functions/git/git-push-new-gitea.fish
  24. 6
      dot_config/fish/functions/git/git-replace-origin-gitea.fish
  25. 3
      dot_config/fish/functions/libreoffice-silent.fish
  26. 4
      dot_config/fish/functions/maven-test-method.fish
  27. 3
      dot_config/fish/functions/mkdir-cd.fish
  28. 3
      dot_config/fish/functions/mute-video.fish
  29. 3
      dot_config/fish/functions/pastebin.fish
  30. 3
      dot_config/fish/functions/qalc-history.fish
  31. 3
      dot_config/fish/functions/qalc-update.fish
  32. 3
      dot_config/fish/functions/readlink-cp.fish
  33. 13
      dot_config/fish/functions/refresh-config-task.fish
  34. 3
      dot_config/fish/functions/reminder.fish
  35. 1
      dot_config/fish/functions/scan-history.fish
  36. 7
      dot_config/fish/functions/scp-vid.fish
  37. 8
      dot_config/fish/functions/server-pages.fish
  38. 3
      dot_config/fish/functions/sxiv-silent.fish
  39. 2
      dot_config/fish/functions/task/task-anno.fish
  40. 1
      dot_config/fish/functions/task/task-delete.fish
  41. 1
      dot_config/fish/functions/task/task-done.fish
  42. 4
      dot_config/fish/functions/task/task-due-rm.fish
  43. 4
      dot_config/fish/functions/task/task-due.fish
  44. 2
      dot_config/fish/functions/task/task-mod-pri.fish
  45. 4
      dot_config/fish/functions/task/task-next-rm.fish
  46. 4
      dot_config/fish/functions/task/task-wait.fish
  47. 4
      dot_config/fish/functions/us-to-cad.fish
  48. 10
      dot_config/fish/functions/vpn-red-hat.fish
  49. 11
      dot_config/fish/functions/watson-add-fortnite.fish
  50. 11
      dot_config/fish/functions/watson-add-game.fish
  51. 161
      dot_config/i3/config.tmpl
  52. 62
      dot_config/i3blocks/i3blocks-secondary.conf.tmpl
  53. 81
      dot_config/i3blocks/i3blocks.conf.tmpl
  54. 5
      dot_config/i3blocks/scripts/executable_ticker
  55. 4
      dot_config/i3blocks/scripts/executable_volume
  56. 3
      dot_config/i3blocks/scripts/executable_wifi
  57. 14
      dot_config/kitty/kitty.conf
  58. 33
      dot_config/mimeapps-ffox.list
  59. 34
      dot_config/mimeapps.list
  60. 21
      dot_config/mpv/input.conf
  61. 2
      dot_config/mpv/mpv.conf
  62. 423
      dot_config/picom/picom.conf
  63. 1
      dot_config/ranger/plugins/__init__.py
  64. 11
      dot_config/ranger/rc.conf.tmpl
  65. 9
      dot_config/spotify/Users/polarbier-user/prefs.tmpl
  66. 11
      dot_gitconfig.tmpl
  67. 6
      dot_imwheelrc
  68. 3
      dot_minikube/config/config.json
  69. 33
      dot_taskrc
  70. 8
      dot_tmux.conf
  71. 151
      dot_vimrc.tmpl
  72. 9
      dot_xinitrc.tmpl
  73. 2
      private_dot_calcurse/conf
  74. 9
      scripts/executable_backup
  75. 3
      scripts/executable_dmenu-twitch
  76. 3
      scripts/executable_spotify-clean
  77. 101
      scripts/executable_ticker
  78. 10
      scripts/executable_twem
  79. 8
      scripts/executable_twitchy-game
  80. 1
      txt/exclude-dirs-backup-full.txt
  81. 3
      txt/exclude-dirs-backup.txt.tmpl
  82. 54
      txt/nzxt-all.txt
  83. 31
      txt/nzxt-aur.txt
  84. 33
      txt/nzxt-pkgs.txt

640
aliases/key_aliases.tmpl
File diff suppressed because it is too large
View File

196
aliases/key_dirs.tmpl

@ -6,23 +6,32 @@ bg ~/Pictures/Backgrounds
cf ~/linux-config/dot_config cf ~/linux-config/dot_config
cfd ~/.config cfd ~/.config
cff ~/.config/fish cff ~/.config/fish
ch ~/Documents/chat
da /mnt/ipad
dl ~/Downloads dl ~/Downloads
# dw ~/dwm # dw ~/dwm
D ~/Documents D ~/Documents
k ~/ k ~/
lc ~/linux-config lc ~/linux-config
lf /mnt/linux-files lf /mnt/linux-files
lf2 /mnt/linux-files-2
lfp /mnt/linux-files/Pictures
lfv /mnt/linux-files/Videos lfv /mnt/linux-files/Videos
lfv2 /mnt/linux-files-2/Videos
lfy /mnt/linux-files/Videos/yt
me /run/media/kevin
o / o /
p ~/.password-store
pd ~/.password-store
pfp ~/Pictures/profile-pics
P ~/Pictures P ~/Pictures
ssu ~/Pictures/screenshots/desktop/unsorted
std ~/st std ~/st
# tm /tmp # tm /tmp
tm ~/tmp tm ~/tmp
{{ if and (eq .chezmoi.username "root") (eq .linux_os "debian") }} {{ if and (eq .chezmoi.username "root") (eq .linux_os "debian") }}
ng /etc/nginx/sites-available ng /etc/nginx/sites-available
sv /etc/systemd/system
# sv /etc/systemd/system
{{ end }} {{ end }}
# ]]] sys # # ]]] sys #
@ -30,16 +39,26 @@ sv /etc/systemd/system
# cdn [[[ # # cdn [[[ #
ad ~/.task ad ~/.task
bm ~/Documents/bookmarks
ccd ~/.calcurse ccd ~/.calcurse
cms ~/Documents/codm/site cms ~/Documents/codm/site
cn ~/coding cn ~/coding
drk ~/coding/dark-sky
ffx ~/linux-config/dot_config/fish/functions
hbd ~/.habitctl hbd ~/.habitctl
ib ~/linux-config/dot_config/i3blocks/scripts ib ~/linux-config/dot_config/i3blocks/scripts
ms ~/coding/my-site ms ~/coding/my-site
pr ~/coding/pull-requests
ra ~/linux-config/dot_config/ranger ra ~/linux-config/dot_config/ranger
rd ~/Documents/red-discord-bot
rda ~/Documents/red-discord-bot/repos/gobcog-kevin/adventure
rdt ~/coding/discord-bots
rdp ~/coding/discord-bots/pinky/cogs/CogManager/cogs/adventure
sr ~/linux-config/scripts sr ~/linux-config/scripts
snp ~/.vim/plugged/vim-snippets/UltiSnips snp ~/.vim/plugged/vim-snippets/UltiSnips
sw ~/.local/share/nvim/swap/ sw ~/.local/share/nvim/swap/
ttd ~/.timetrace
ttdr ~/.timetrace/records
tx ~/linux-config/txt tx ~/linux-config/txt
wd ~/.config/watson wd ~/.config/watson
@ -48,25 +67,38 @@ b1 ~/coding/mf-site/themes/base16
2d ~/coding/godot-demos/2d-plat 2d ~/coding/godot-demos/2d-plat
ada ~/coding/ada-mario ada ~/coding/ada-mario
ft ~/coding/face-tracker ft ~/coding/face-tracker
hv ~/Documents/hevin
hvs ~/Documents/hevin/shopping
j ~/Documents/journal j ~/Documents/journal
lh ~/Documents/listening-history lh ~/Documents/listening-history
mmd ~/coding/move-mouse-with-head mmd ~/coding/move-mouse-with-head
mh ~/coding/mf-site/layouts
ms ~/coding/mf-site
msl ~/coding/mf-site/content/letter
# mp ~/coding/mf-site/static/pdf
pk ~/Documents/journal/packing-lists
pn ~/coding/red-discord-bot
rs ~/coding/rarity-surf/backend/rarity_check/project
rsf ~/coding/rarity-surf/frontend
rsc ~/coding/rarity-surf/backend/rarity_check/project/management/commands
rsm ~/coding/rarity-surf/backend/rarity_check/project/migrations
sv ~/coding/spotify-lib-vis/src sv ~/coding/spotify-lib-vis/src
svg ~/coding/spotify-lib-vis/src/graphs/static/graphs/scripts svg ~/coding/spotify-lib-vis/src/graphs/static/graphs/scripts
swd ~/coding/swex swd ~/coding/swex
tb ~/coding/trapbot/src/trapbot tb ~/coding/trapbot/src/trapbot
wo ~/Documents/workout-logs
ur ~/coding/uranium-godot
# wo ~/Documents/workout-logs
# gaming [[[ # # gaming [[[ #
te ~/Documents/twitch-emotes
te ~/Pictures/twitch-emotes
mt ~/.minetest
mta ~/.minetest/clientmods/custom_aliases
mtc ~/.minetest/games/mineclone2/mods
mtm ~/.minetest/minetest
# mt ~/.minetest
# mta ~/.minetest/clientmods/custom_aliases
# mtc ~/.minetest/games/mineclone2/mods
# mtm ~/.minetest/minetest
pk ~/Downloads/gba/mgba/pokemon/emerald/1
# pk ~/Downloads/gba/mgba/pokemon/emerald/1
# ]]] gaming # # ]]] gaming #
@ -80,18 +112,154 @@ ads ~/coding/ada-mario/scripts
adP ~/Pictures/ada-mario adP ~/Pictures/ada-mario
{{ end }} {{ end }}
# ]]] cdn # # ]]] cdn #
# gaming [[[ #
lfo /mnt/linux-files/Videos/obs
lfo2 /mnt/linux-files-2/Videos/obs
pxv /mnt/linux-files/Videos/pixel
# codm [[[ #
cm ~/Documents/codm
cs ~/Documents/codm/site
csi ~/Documents/codm/site/static/images
Css ~/Pictures/screenshots/mobile/codm
# ]]] codm #
# fortnite [[[ #
fn ~/Documents/fortnite
fnc /mnt/linux-files/Videos/yt/fortnite/clips/4
fni /mnt/ipad/DCIM/100APPLE
fnm ~/Documents/fortnite/pics/maps
fnn ~/Documents/fortnite/notes
fns ~/Documents/fortnite/stats/api
fnv /mnt/linux-files/Videos/personal-fortnite-games/review
tcd /mnt/linux-files/Videos/yt/fortnite/clips/twitch-clip-downloader
# ]]] fortnite #
pgv /mnt/linux-files/Videos/pokemon-go
tr ~/.local/share/Terraria
dc ~/Documents/chat/discord
twt ~/Documents/twitter
sdv ~/Documents/stardew-valley-aha
wo ~/Documents/workout-logs/3
# ]]] gaming #
# sch [[[ # # sch [[[ #
sc ~/school sc ~/school
lt ~/school/latex-notes lt ~/school/latex-notes
2 ~/school/324
2a ~/school/324-a2-2
2e ~/school/324/e/8
2l ~/school/324/l/8
8 ~/school/384
# 301 [[[ #
1 ~/school/301
1a ~/school/301/a2
1af ~/school/301/a1/price-calc/src
# 1ab ~/school/301/a1/backend
1ab ~/school/301/todo-app-medium-demo/flask_app
1as ~/school/301/a2/scripts
1apr ~/coding/pull-requests/301/a1
1d ~/school/301/korotu/deliverables/deliverable-2/minter/src
1d3 ~/school/301/korotu/deliverables/deliverable-3
1dc ~/school/301/korotu/deliverables/deliverable-2/nft-contract
1k ~/school/301/korotu
1kd ~/school/301/korotu/deliverables/deliverable-1
1pr ~/coding/pull-requests/301/d3
# ]]] 301 #
# solidity [[[ #
sl ~/coding/solidity
shd ~/coding/solidity/dotenv
shw ~/coding/solidity/hello-world
shws ~/coding/solidity/hello-world-part-four-tutorial/starter-files/src
snf ~/coding/solidity/nft
snm ~/coding/solidity/nft-minter-tutorial/minter-starter-files/src
# ]]] solidity #
# ]]] sch # # ]]] sch #
# pey [[[ #
atx ~/Documents/ataraxy-venture
em ~/Documents/emails
li ~/Documents/linkedin
lic ~/Documents/linkedin/msgs
rh ~/Documents/red-hat
rhc ~/Documents/red-hat/chat
rhe ~/Documents/red-hat/emails
rhl ~/Documents/red-hat/learned
sa ~/coding/rhcsa-notes
wcl ~/.weechat/logs
ep ~/Documents/expenses
# kogito [[[ #
kg ~/coding/kogito
kap ~/coding/kogito/kogito-apps
kdo ~/coding/kogito/kie-docs
kdoa ~/coding/kogito/kie-docs/doc-content/kogito-docs/src/main/asciidoc
kex ~/coding/kogito/kogito-examples
keh ~/coding/kogito/kogito-examples/process-scripts-quarkus/target
kep ~/coding/kogito/kogito-examples/process-postgresql-persistence-quarkus
kfl ~/coding/kogito/kogito-apps
kh ~/coding/kogito/kogito-helm-charts
kho ~/coding/kogito/kogito-helm-chart-old
ki ~/coding/kogito/kogito-images
kj ~/coding/kogito/jenkins-test
kjb ~/coding/kogito/jenkins-test-bot
kjf ~/coding/kogito/jenkins-test/full
kl ~/coding/kogito/shared-libraries
# operator [[[ #
ko ~/go/src/github.com/kiegroup/kogito-operator
kor ~/go/src/github.com/kiegroup/rhpam-kogito-operator
# koc ~/go/src/github.com/kiegroup/kogito-operator/cmd/kogito/command
koc ~/coding/kogito/kogito-operator
kod ~/go/src/github.com/kiegroup/kogito-operator/cmd/kogito/command/deploy
koe ~/go/src/github.com/kiegroup/kogito-operator/examples
kore ~/go/src/github.com/kiegroup/rhpam-kogito-operator/example
kof ~/go/src/github.com/kiegroup/kogito-operator/cmd/kogito/command/flag
# kor ~/go/src/github.com/kiegroup/kogito-operator/pkg/controller/kogitoruntime
kou ~/go/src/github.com/kiegroup/kogito-operator/cmd/kogito/command/util
ko2 ~/coding/kogito/kogito-operator-2
# ]]] operator #
kob ~/coding/kogito-operator-onboarding
kot ~/coding/kogito/optaplanner
kp ~/coding/kogito/kogito-pipelines
kp2 ~/coding/kogito/kogito-pipelines-2
kpr ~/coding/pull-requests/red-hat
kprh ~/coding/pull-requests/red-hat/helm
kr ~/coding/kogito/kogito-runtimes
krj ~/coding/kogito/kogito-runtimes/jenkins-spock-tests
ky ~/coding/kogito/kogito-kmok-yamls
gos ~/go/src
# ]]] kogito #
vb ~/coding/VileBot/vilebot
vbs ~/coding/VileBot/vilebot/src/main/java/com/oldterns/vilebot
dv ~/coding/devops-sre-knowledge
nxo ~/coding/kogito/nexus-operator
# ]]] pey #
mb ~/coding/mint-bot
nft ~/Documents/nft

68
aliases/key_files.tmpl

@ -3,14 +3,16 @@
# sys [[[ # # sys [[[ #
3 ~/linux-config/dot_config/i3/config.tmpl 3 ~/linux-config/dot_config/i3/config.tmpl
3b ~/linux-config/dot_config/i3blocks/i3blocks.conf.tmpl
a ~/linux-config/aliases/key_aliases.tmpl a ~/linux-config/aliases/key_aliases.tmpl
ak ~/linux-config/dot_ssh/authorized_keys-all ak ~/linux-config/dot_ssh/authorized_keys-all
d ~/linux-config/aliases/key_dirs.tmpl d ~/linux-config/aliases/key_dirs.tmpl
dw ~/dwm/config.def.h dw ~/dwm/config.def.h
f ~/linux-config/aliases/key_files.tmpl f ~/linux-config/aliases/key_files.tmpl
h ~/.local/share/fish/fish_history
fh ~/.local/share/fish/fish_history
hc ~/Documents/hevin/cleaning.md
n ~/linux-config/dot_vimrc.tmpl n ~/linux-config/dot_vimrc.tmpl
p ~/linux-config/txt/pacman-pkgs/pacman-pkgs.txt
pkg ~/linux-config/txt/pacman-pkgs/pacman-pkgs.txt
r ~/linux-config/dot_config/ranger/rc.conf.tmpl r ~/linux-config/dot_config/ranger/rc.conf.tmpl
sr ~/linux-config/configs/ranger/shortcuts.conf sr ~/linux-config/configs/ranger/shortcuts.conf
ss ~/.shortcuts ss ~/.shortcuts
@ -31,50 +33,78 @@ ng /etc/nginx/nginx.conf
# cdn [[[ # # cdn [[[ #
ap ~/.task/pending.data ap ~/.task/pending.data
at ~/.task/to-add.md
bid ~/Documents/journal/todo/blog.md bid ~/Documents/journal/todo/blog.md
cc ~/linux-config/private_dot_calcurse/conf cc ~/linux-config/private_dot_calcurse/conf
ci ~/linux-config/txt/ideas.md ci ~/linux-config/txt/ideas.md
cm ./commit-msg.txt cm ./commit-msg.txt
cmt /tmp/commit-msg.txt cmt /tmp/commit-msg.txt
hb ~/.habitctl/log
hbh ~/.habitctl/habits
el ~/Documents/twitch-emotes/links-new.md
h ~/.habitctl/log
hh ~/.habitctl/habits
hlg ~/coding/spotify-lib-vis/src/api/management/commands/update-history.log hlg ~/coding/spotify-lib-vis/src/api/management/commands/update-history.log
id ~/Documents/journal/todo/ideas.md id ~/Documents/journal/todo/ideas.md
ig ./.gitignore ig ./.gitignore
jn ~/Documents/journal/todo/9.md
jt ~/Documents/journal/todo/todo.md
jt ~/Documents/journal/todo/22/2.md
k ~/linux-config/dot_config/kitty/kitty.conf
lh ~/Documents/listening-history/polarbier.csv lh ~/Documents/listening-history/polarbier.csv
mc ~/coding/mf-site/assets/sass/main.scss mc ~/coding/mf-site/assets/sass/main.scss
mi ~/coding/mf-site/ideas.md mi ~/coding/mf-site/ideas.md
ne ~/linux-config/configs/neofetch/config.conf ne ~/linux-config/configs/neofetch/config.conf
re README.md re README.md
rda ~/Documents/red-discord-bot/repos/gobcog-kevin/adventure/adventure.py
rdc ~/Documents/red-discord-bot/commands-freq.md
td todo.md td todo.md
el ~/Documents/twitch-emotes/links-new.md
tg ~/.config/watson/tags_cache tg ~/.config/watson/tags_cache
tt txt/todo.md tt txt/todo.md
tm ~/.vim/plugged/vim-snippets/UltiSnips/texmath.snippets tm ~/.vim/plugged/vim-snippets/UltiSnips/texmath.snippets
tp /tmp/ tp /tmp/
tw ~/linux-config/dot_taskrc tw ~/linux-config/dot_taskrc
w ~/.config/watson/state.tmp
wh ~/Documents/journal/todo/work-habit.md wh ~/Documents/journal/todo/work-habit.md
wt ~/.config/watson/state.md
wt ~/.config/watson/state.tmp
# ]]] cdn # # ]]] cdn #
# sch [[[ # # sch [[[ #
# 309 [[[ #
0c ~/school/309-proj/sass/main.scss
0h ~/school/309-proj/public/js/helpers.js
0i ~/school/309-proj/public/index.html
0m ~/school/309-proj/public/js/main.js
0f ~/school/309-proj/public/js/food.js
0s ~/school/309-proj/server.js
0t ~/school/309-proj/public/js/stores.js
# ]]] 309 #
lb ~/coding/linux-basics/linux-basics.md
# ]]] sch # # ]]] sch #
# gaming [[[ #
bn ~/Documents/discord-burners/burners.md
cmr ~/Documents/codm/discord-recruitment.md
cra ~/Documents/red-discord-bot/repos/gobcog-kevin/adventure/data/default/attribs.json
crm ~/Documents/red-discord-bot/repos/gobcog-kevin/adventure/data/default/monsters.json
fn ~/Documents/fortnite/notes/fortnite-notes.md
fp ~/Documents/fortnite/notes/post.md
fv ~/Documents/fortnite/notes/vods.md
mta ~/.minetest/clientmods/custom_aliases/init.lua mta ~/.minetest/clientmods/custom_aliases/init.lua
cmr ~/Documents/codm/discord-recruitment.md cmr ~/Documents/codm/discord-recruitment.md
nb ~/Documents/chat/discord/pistol.md
pk ~/Downloads/pokecord/pokecord2.md
tc /mnt/linux-files/Videos/yt/fortnite/clips/twitch-clip-downloader/clips.txt
tdb ~/Documents/journal/todo/b.md
# ]]] gaming #
# pey [[[ #
dv ~/coding/devops-sre-knowledge/devops-sre-learned.md
j Jenkinsfile.
jd Jenkinsfile.deploy
klg ~/coding/kogito/shared-libraries/vars/githubscm.groovy
klm ~/coding/kogito/shared-libraries/vars/maven.groovy
kob ~/coding/kogito-operator-onboarding/README.md
kpr ~/coding/kogito/kogito-pipelines/Jenkinsfile.pr-bdd-tests
krt /home/kevin/coding/kogito/kogito-runtimes/jenkins-spock-tests/src/test/vars/JenkinsfilePromote.groovy
rd ~/Documents/red-hat/dates.md
rm ~/Documents/red-hat/meeting.md
rt ~/Documents/red-hat/todo.md
# ]]] pey #
nf ~/Documents/twitter/nft.md
ds ~/Documents/nft/deep-sea-research.md

10
dot_Xmodmap

@ -1,7 +1,9 @@
clear Lock clear Lock
keycode 22 = Caps_Lock
keycode 66 = BackSpace
keycode 78 = End
keycode 9 = Caps_Lock
keycode 22 = BackSpace
keycode 66 = Escape
pointer = 1 10 3 6 7 4 5 2 11 12 8 9
pointer = 1 2 3 6 7 4 5 10 11 12 8 9
! side thumb button as middle click
! pointer = 1 10 3 6 7 4 5 2 11 12 8 9

7
dot_Xmodmap-old

@ -0,0 +1,7 @@
clear Lock
keycode 22 = Caps_Lock
keycode 66 = BackSpace
keycode 78 = End
pointer = 1 10 3 6 7 4 5 2 11 12 8 9

9
dot_Xresources.tmpl

@ -5,7 +5,10 @@
Xft.dpi: 235 Xft.dpi: 235
! Xft.dpi: 240 ! Xft.dpi: 240
{{ else }} {{ else }}
! Xft.dpi: 90
! Xft.dpi: 100
Xft.dpi: 135 Xft.dpi: 135
! Xft.dpi: 170
{{ end }} {{ end }}
Xft.autohint: 0 Xft.autohint: 0
Xft.lcdfilter: lcddefault Xft.lcdfilter: lcddefault
@ -21,6 +24,8 @@ Xft.rgba: rgb
{{ if eq .chezmoi.hostname "x1-carbon" }} {{ if eq .chezmoi.hostname "x1-carbon" }}
URxvt.font: xft:DejaVuSansMono Nerd Font Mono:size=11 URxvt.font: xft:DejaVuSansMono Nerd Font Mono:size=11
! URxvt.font: xft:DejaVuSansMono Nerd Font Mono:size=10 ! URxvt.font: xft:DejaVuSansMono Nerd Font Mono:size=10
URxvt*cursorBlink: 0
URxvt*cursorBlink: False
{{ else }} {{ else }}
! URxvt.font: xft:DejaVuSansMono Nerd Font Mono:size=15 ! URxvt.font: xft:DejaVuSansMono Nerd Font Mono:size=15
! URxvt.font: xft:DejaVuSansMono Nerd Font Mono:size=14 ! URxvt.font: xft:DejaVuSansMono Nerd Font Mono:size=14
@ -49,9 +54,9 @@ URxvt*transparent: true
URxvt*inheritPixmap: true URxvt*inheritPixmap: true
! URxvt*transparent: false ! URxvt*transparent: false
! URxvt*shading: 0 (blackest) to 99 black, 101 to 200 (whitest) white ! URxvt*shading: 0 (blackest) to 99 black, 101 to 200 (whitest) white
URxvt*shading: 50
! URxvt*shading: 50
! URxvt*shading: 40 ! URxvt*shading: 40
! URxvt*shading: 35
URxvt*shading: 35
! urxvt*blurRadius: 10 ! urxvt*blurRadius: 10
/* ]]] transparency */ /* ]]] transparency */

137
dot_config/fish/completions/kogito.fish

@ -0,0 +1,137 @@
# fish completion for kogito -*- shell-script -*-
function __kogito_debug
set file "$BASH_COMP_DEBUG_FILE"
if test -n "$file"
echo "$argv" >> $file
end
end
function __kogito_perform_completion
__kogito_debug "Starting __kogito_perform_completion with: $argv"
set args (string split -- " " "$argv")
set lastArg "$args[-1]"
__kogito_debug "args: $args"
__kogito_debug "last arg: $lastArg"
set emptyArg ""
if test -z "$lastArg"
__kogito_debug "Setting emptyArg"
set emptyArg \"\"
end
__kogito_debug "emptyArg: $emptyArg"
set requestComp "$args[1] __complete $args[2..-1] $emptyArg"
__kogito_debug "Calling $requestComp"
set results (eval $requestComp 2> /dev/null)
set comps $results[1..-2]
set directiveLine $results[-1]
# For Fish, when completing a flag with an = (e.g., <program> -n=<TAB>)
# completions must be prefixed with the flag
set flagPrefix (string match -r -- '-.*=' "$lastArg")
__kogito_debug "Comps: $comps"
__kogito_debug "DirectiveLine: $directiveLine"
__kogito_debug "flagPrefix: $flagPrefix"
for comp in $comps
printf "%s%s\n" "$flagPrefix" "$comp"
end
printf "%s\n" "$directiveLine"
end
# This function does three things:
# 1- Obtain the completions and store them in the global __kogito_comp_results
# 2- Set the __kogito_comp_do_file_comp flag if file completion should be performed
# and unset it otherwise
# 3- Return true if the completion results are not empty
function __kogito_prepare_completions
# Start fresh
set --erase __kogito_comp_do_file_comp
set --erase __kogito_comp_results
# Check if the command-line is already provided. This is useful for testing.
if not set --query __kogito_comp_commandLine
set __kogito_comp_commandLine (commandline)
end
__kogito_debug "commandLine is: $__kogito_comp_commandLine"
set results (__kogito_perform_completion "$__kogito_comp_commandLine")
set --erase __kogito_comp_commandLine
__kogito_debug "Completion results: $results"
if test -z "$results"
__kogito_debug "No completion, probably due to a failure"
# Might as well do file completion, in case it helps
set --global __kogito_comp_do_file_comp 1
return 0
end
set directive (string sub --start 2 $results[-1])
set --global __kogito_comp_results $results[1..-2]
__kogito_debug "Completions are: $__kogito_comp_results"
__kogito_debug "Directive is: $directive"
if test -z "$directive"
set directive 0
end
set compErr (math (math --scale 0 $directive / 1) % 2)
if test $compErr -eq 1
__kogito_debug "Received error directive: aborting."
# Might as well do file completion, in case it helps
set --global __kogito_comp_do_file_comp 1
return 0
end
set nospace (math (math --scale 0 $directive / 2) % 2)
set nofiles (math (math --scale 0 $directive / 4) % 2)
__kogito_debug "nospace: $nospace, nofiles: $nofiles"
# Important not to quote the variable for count to work
set numComps (count $__kogito_comp_results)
__kogito_debug "numComps: $numComps"
if test $numComps -eq 1; and test $nospace -ne 0
# To support the "nospace" directive we trick the shell
# by outputting an extra, longer completion.
__kogito_debug "Adding second completion to perform nospace directive"
set --append __kogito_comp_results $__kogito_comp_results[1].
end
if test $numComps -eq 0; and test $nofiles -eq 0
__kogito_debug "Requesting file completion"
set --global __kogito_comp_do_file_comp 1
end
# If we don't want file completion, we must return true even if there
# are no completions found. This is because fish will perform the last
# completion command, even if its condition is false, if no other
# completion command was triggered
return (not set --query __kogito_comp_do_file_comp)
end
# Remove any pre-existing completions for the program since we will be handling all of them
# TODO this cleanup is not sufficient. Fish completions are only loaded once the user triggers
# them, so the below deletion will not work as it is run too early. What else can we do?
complete -c kogito -e
# The order in which the below two lines are defined is very important so that __kogito_prepare_completions
# is called first. It is __kogito_prepare_completions that sets up the __kogito_comp_do_file_comp variable.
#
# This completion will be run second as complete commands are added FILO.
# It triggers file completion choices when __kogito_comp_do_file_comp is set.
complete -c kogito -n 'set --query __kogito_comp_do_file_comp'
# This completion will be run first as complete commands are added FILO.
# The call to __kogito_prepare_completions will setup both __kogito_comp_results abd __kogito_comp_do_file_comp.
# It provides the program's completion choices.
complete -c kogito -n '__kogito_prepare_completions' -f -a '$__kogito_comp_results'

1728
dot_config/fish/completions/kubectl.fish
File diff suppressed because it is too large
View File

178
dot_config/fish/completions/minikube.fish

@ -0,0 +1,178 @@
# Copyright 2016 The Kubernetes Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# fish completion for minikube -*- shell-script -*-
function __minikube_debug
set file "$BASH_COMP_DEBUG_FILE"
if test -n "$file"
echo "$argv" >> $file
end
end
function __minikube_perform_completion
__minikube_debug "Starting __minikube_perform_completion with: $argv"
set args (string split -- " " "$argv")
set lastArg "$args[-1]"
__minikube_debug "args: $args"
__minikube_debug "last arg: $lastArg"
set emptyArg ""
if test -z "$lastArg"
__minikube_debug "Setting emptyArg"
set emptyArg \"\"
end
__minikube_debug "emptyArg: $emptyArg"
if not type -q "$args[1]"
# This can happen when "complete --do-complete minikube" is called when running this script.
__minikube_debug "Cannot find $args[1]. No completions."
return
end
set requestComp "$args[1] __complete $args[2..-1] $emptyArg"
__minikube_debug "Calling $requestComp"
set results (eval $requestComp 2> /dev/null)
set comps $results[1..-2]
set directiveLine $results[-1]
# For Fish, when completing a flag with an = (e.g., <program> -n=<TAB>)
# completions must be prefixed with the flag
set flagPrefix (string match -r -- '-.*=' "$lastArg")
__minikube_debug "Comps: $comps"
__minikube_debug "DirectiveLine: $directiveLine"
__minikube_debug "flagPrefix: $flagPrefix"
for comp in $comps
printf "%s%s\n" "$flagPrefix" "$comp"
end
printf "%s\n" "$directiveLine"
end
# This function does three things:
# 1- Obtain the completions and store them in the global __minikube_comp_results
# 2- Set the __minikube_comp_do_file_comp flag if file completion should be performed
# and unset it otherwise
# 3- Return true if the completion results are not empty
function __minikube_prepare_completions
# Start fresh
set --erase __minikube_comp_do_file_comp
set --erase __minikube_comp_results
# Check if the command-line is already provided. This is useful for testing.
if not set --query __minikube_comp_commandLine
# Use the -c flag to allow for completion in the middle of the line
set __minikube_comp_commandLine (commandline -c)
end
__minikube_debug "commandLine is: $__minikube_comp_commandLine"
set results (__minikube_perform_completion "$__minikube_comp_commandLine")
set --erase __minikube_comp_commandLine
__minikube_debug "Completion results: $results"
if test -z "$results"
__minikube_debug "No completion, probably due to a failure"
# Might as well do file completion, in case it helps
set --global __minikube_comp_do_file_comp 1
return 1
end
set directive (string sub --start 2 $results[-1])
set --global __minikube_comp_results $results[1..-2]
__minikube_debug "Completions are: $__minikube_comp_results"
__minikube_debug "Directive is: $directive"
set shellCompDirectiveError 1
set shellCompDirectiveNoSpace 2
set shellCompDirectiveNoFileComp 4
set shellCompDirectiveFilterFileExt 8
set shellCompDirectiveFilterDirs 16
if test -z "$directive"
set directive 0
end
set compErr (math (math --scale 0 $directive / $shellCompDirectiveError) % 2)
if test $compErr -eq 1
__minikube_debug "Received error directive: aborting."
# Might as well do file completion, in case it helps
set --global __minikube_comp_do_file_comp 1
return 1
end
set filefilter (math (math --scale 0 $directive / $shellCompDirectiveFilterFileExt) % 2)
set dirfilter (math (math --scale 0 $directive / $shellCompDirectiveFilterDirs) % 2)
if test $filefilter -eq 1; or test $dirfilter -eq 1
__minikube_debug "File extension filtering or directory filtering not supported"
# Do full file completion instead
set --global __minikube_comp_do_file_comp 1
return 1
end
set nospace (math (math --scale 0 $directive / $shellCompDirectiveNoSpace) % 2)
set nofiles (math (math --scale 0 $directive / $shellCompDirectiveNoFileComp) % 2)
__minikube_debug "nospace: $nospace, nofiles: $nofiles"
# Important not to quote the variable for count to work
set numComps (count $__minikube_comp_results)
__minikube_debug "numComps: $numComps"
if test $numComps -eq 1; and test $nospace -ne 0
# To support the "nospace" directive we trick the shell
# by outputting an extra, longer completion.
__minikube_debug "Adding second completion to perform nospace directive"
set --append __minikube_comp_results $__minikube_comp_results[1].
end
if test $numComps -eq 0; and test $nofiles -eq 0
__minikube_debug "Requesting file completion"
set --global __minikube_comp_do_file_comp 1
end
# If we don't want file completion, we must return true even if there
# are no completions found. This is because fish will perform the last
# completion command, even if its condition is false, if no other
# completion command was triggered
return (not set --query __minikube_comp_do_file_comp)
end
# Since Fish completions are only loaded once the user triggers them, we trigger them ourselves
# so we can properly delete any completions provided by another script.
# The space after the the program name is essential to trigger completion for the program
# and not completion of the program name itself.
complete --do-complete "minikube " > /dev/null 2>&1
# Using '> /dev/null 2>&1' since '&>' is not supported in older versions of fish.
# Remove any pre-existing completions for the program since we will be handling all of them.
complete -c minikube -e
# The order in which the below two lines are defined is very important so that __minikube_prepare_completions
# is called first. It is __minikube_prepare_completions that sets up the __minikube_comp_do_file_comp variable.
#
# This completion will be run second as complete commands are added FILO.
# It triggers file completion choices when __minikube_comp_do_file_comp is set.
complete -c minikube -n 'set --query __minikube_comp_do_file_comp'
# This completion will be run first as complete commands are added FILO.
# The call to __minikube_prepare_completions will setup both __minikube_comp_results and __minikube_comp_do_file_comp.
# It provides the program's completion choices.
complete -c minikube -n '__minikube_prepare_completions' -f -a '$__minikube_comp_results'

133
dot_config/fish/config.fish.tmpl

@ -17,41 +17,80 @@ set -x GPG_TTY (tty)
set -U fish_greeting set -U fish_greeting
# spv
{{ if eq .chezmoi.hostname "nzxt" }} {{ if eq .chezmoi.hostname "nzxt" }}
set -U spv_dir "/home/kevin/coding/spotify-lib-vis" set -U spv_dir "/home/kevin/coding/spotify-lib-vis"
set -U mfs_dir "/home/kevin/coding/mf-site" set -U mfs_dir "/home/kevin/coding/mf-site"
source /home/kevin/coding/spotify-lib-vis/src/scripts/api-keys-fish.sh source /home/kevin/coding/spotify-lib-vis/src/scripts/api-keys-fish.sh
abbr hum "cd $mfs_dir && hugo serve -D --disableFastRender" abbr hum "cd $mfs_dir && hugo serve -D --disableFastRender"
{{ end }}
{{ end }}#]]]
set -x PATH $PATH ~/.local/bin ~/scripts ~/scripts/colors ~/go/bin ~/.minetest/minetest/bin ~/.gem/ruby/2.6.0/bin
set -x CLASSPATH $CLASSPATH /home/kevin/java/*.jar
set -x LD_LIBRARY_PATH $LD_LIBRARY_PATH /usr/local/lib /usr/local/lib64
set -x PKG_CONFIG_PATH $PKG_CONFIG_PATH /usr/lib/pkgconfig
# system [[[
set -x HASTE_SERVER https://pste.gq set -x HASTE_SERVER https://pste.gq
{{ if eq .chezmoi.hostname "nzxt" }} {{ if eq .chezmoi.hostname "nzxt" }}
set -x CALCURSE_CALDAV_PASSWORD (pass show technology/linux/baikal | head -n1) set -x CALCURSE_CALDAV_PASSWORD (pass show technology/linux/baikal | head -n1)
{{ end }} {{ end }}
set -x LD_LIBRARY_PATH $LD_LIBRARY_PATH /usr/local/lib /usr/local/lib64
set -x GOPATH ~/go
# set -x PATH $GRAALVM_BIN $PATH ~/.local/bin ~/scripts ~/scripts/colors ~/go/bin ~/.minetest/minetest/bin ~/.gem/ruby/2.6.0/bin
set -x PATH $PATH ~/.local/bin ~/scripts ~/scripts/colors $GOPATH/bin ~/.minetest/minetest/bin ~/.gem/ruby/*/bin ~/.yarn/bin
set -x PKG_CONFIG_PATH $PKG_CONFIG_PATH /usr/lib/pkgconfig
# Java [[[ #
set -x GRAALVM_HOME /usr/lib/jvm/graalvm-ce-java11-21.1.0
set -x GRAALVM_BIN $GRAALVM_HOME/bin
set -x JAVA_HOME $GRAALVM_HOME
{{ if eq .linux_os "termux" }}
# set -x JAVA_HOME /usr/lib/jvm/java-11-openjdk
# set -x JAVA_HOME /usr/lib/jvm/java-8-openjdk # for shared libs
set -x PATH $JAVA_HOME/bin $PATH
# ]]] Java #
# system ]]]
# space prompt[[[
# set SPACEFISH_PROMPT_ORDER time user dir host git package node docker ruby golang php rust haskell julia aws conda pyenv kubecontext exec_time line_sep battery jobs exit_code vi_mode char # set SPACEFISH_PROMPT_ORDER time user dir host git package node docker ruby golang php rust haskell julia aws conda pyenv kubecontext exec_time line_sep battery jobs exit_code vi_mode char
set SPACEFISH_DIR_PREFIX ''
set SPACEFISH_ADD_NEWLINE false
set SPACEFISH_PROMPT_ORDER vi_mode dir git pyenv exec_time jobs exit_code line_sep char set SPACEFISH_PROMPT_ORDER vi_mode dir git pyenv exec_time jobs exit_code line_sep char
set SPACEFISH_DIR_PREFIX ''
set SPACEFISH_DIR_TRUNC 0
set SPACEFISH_DIR_TRUNC_REPO false
set SPACEFISH_VI_MODE_INSERT '' set SPACEFISH_VI_MODE_INSERT ''
set SPACEFISH_VI_MODE_NORMAL '[n] ' set SPACEFISH_VI_MODE_NORMAL '[n] '
set SPACEFISH_VI_MODE_SUFFIX '' set SPACEFISH_VI_MODE_SUFFIX ''
{{ end }}
#]]]
# pass[[[
set -x PASSWORD_STORE_CLIP_TIME 120 set -x PASSWORD_STORE_CLIP_TIME 120
set -xU XSET_RATE 90 set -xU XSET_RATE 90
set -xU XSET_DELAY 200 set -xU XSET_DELAY 200
{{ if and (eq .chezmoi.hostname "x1-carbon") (not (eq .chezmoi.username "root")) }} {{ if and (eq .chezmoi.hostname "x1-carbon") (not (eq .chezmoi.username "root")) }}
xset r rate $XSET_DELAY $XSET_RATE xset r rate $XSET_DELAY $XSET_RATE
{{ end }}
{{ end }}#]]]
# set -U BROWSER "chromium"
set -xU BROWSER "firefox" set -xU BROWSER "firefox"
# set -U BROWSER "chromium"
set -xU FZF_DEFAULT_COMMAND "find ."
set -x PHONE_IP "192.168.0.12"
set -x PIXEL_IP "192.168.0.18"
set -x WORK_LAPTOP_IP "kmok@192.168.0.11"
{{ if eq .chezmoi.hostname "nzxt" }}
# set -x CALCURSE_CALDAV_PASSWORD (pass show technology/linux/baikal | head -n1)
set -x JENKINS_TOKEN 114a1b2e8693b57fa6f4bce88e2deee8cc
status --is-interactive; and source (pyenv init -|psub)
{{ end }}
set -xU MINIKUBE_IP "http://192.168.49.2"
set -xU LOCAL_KOGITO_SERVICE_PORT "32000"
# set -xU LOCAL_KOGITO_SERVICE_URL "$MINIKUBE_IP:$LOCAL_KOGITO_SERVICE_PORT"
set -x FLASK_DEBUG 1
set -x DB_NAME "covid_monitor"
# ]]] universal var's # # ]]] universal var's #
@ -67,11 +106,11 @@ builtin cd $last_dir && ls > /dev/null
bind \ce edit_command_buffer bind \ce edit_command_buffer
bind \cr forward-word bind \cr forward-word
chezmoi apply
# chezmoi apply
{{ if not (eq .linux_os "termux") }} {{ if not (eq .linux_os "termux") }}
~/scripts/sync-shortcuts ~/scripts/sync-shortcuts
{{ end }} {{ end }}
source ~/.config/fish/key_abbr.fish > /dev/null
# source ~/.config/fish/key_abbr.fish > /dev/null
set -U fish_fxn_dir "{{ .chezmoi.homeDir }}/linux-config/dot_config/fish/functions" set -U fish_fxn_dir "{{ .chezmoi.homeDir }}/linux-config/dot_config/fish/functions"
# set -U fish_fxn_dir "~/.config/fish/functions" # set -U fish_fxn_dir "~/.config/fish/functions"
abbr ff "cd $fish_fxn_dir" abbr ff "cd $fish_fxn_dir"
@ -97,33 +136,50 @@ abbr xf "fish_config"
abbr ! "sudo !!" abbr ! "sudo !!"
# task [[[ # # task [[[ #
abbr aan "task-anno"
abbr aan "task-anno ''"
abbr ae "task-edit" abbr ae "task-edit"
abbr adl "task-delete" abbr adl "task-delete"
abbr adn "task-done" abbr adn "task-done"
abbr adu "task-due"
abbr adr "task-due-rm"
abbr an "task-next" abbr an "task-next"
abbr anr "task-next-rm"
abbr ant "task-notes" abbr ant "task-notes"
abbr apr "task-mod-pri" abbr apr "task-mod-pri"
abbr aprl "task-mod-pri L"
abbr aprm "task-mod-pri M"
abbr aprn "task-mod-pri ''"
abbr aprh "task-mod-pri H"
abbr apj "task-mod-proj" abbr apj "task-mod-proj"
abbr at "task-mod-tag"
abbr asr "task-start" abbr asr "task-start"
abbr at "task-mod-tag"
abbr atj "task-mod-tag jira"
abbr aw "task-wait"
abbr ax "task-context" abbr ax "task-context"
# ]]] task # # ]]] task #
abbr ag "grep-aliases" abbr ag "grep-aliases"
abbr b "buku-fzf"
abbr bf "buku-fzf fq"
abbr bk "buku-fzf"
abbr bkf "buku-fzf fq"
abbr bq "benq-brightness" abbr bq "benq-brightness"
abbr bn "discord-burner"
abbr bun "backup nzxt"
abbr bupp "backup-phone-pics" abbr bupp "backup-phone-pics"
abbr ca "cad-to-us"
abbr cccs "sync-alt-cal class"
abbr cl "clip"
abbr cpc "copy cat" abbr cpc "copy cat"
abbr cpe "copy echo" abbr cpe "copy echo"
abbr cpp "copy echo (pwd)" abbr cpp "copy echo (pwd)"
abbr cff "create-fish-function" abbr cff "create-fish-function"
abbr ctr "systemctl-restart" abbr ctr "systemctl-restart"
abbr def "define" abbr def "define"
abbr drs "dump-rarity-check"
abbr ens "enable-site" abbr ens "enable-site"
abbr ev "evince-silent" abbr ev "evince-silent"
abbr ff "fzf-cd"
# abbr fbg "find-bg" # abbr fbg "find-bg"
# abbr fr "fzf-ranger"
abbr fv "fzf-vim" abbr fv "fzf-vim"
abbr fvft "find-vim-filetype" abbr fvft "find-vim-filetype"
# git [[[ # # git [[[ #
@ -131,49 +187,62 @@ abbr fvft "find-vim-filetype"
abbr gcamp "git-amend-push" abbr gcamp "git-amend-push"
abbr gclg "git-clone-gitea" abbr gclg "git-clone-gitea"
abbr gdf "git-diff-files" abbr gdf "git-diff-files"
abbr gpsd "git-push-diff-name"
abbr gpsi "git-push-initial" abbr gpsi "git-push-initial"
abbr gpsmt "git-push-multiple" abbr gpsmt "git-push-multiple"
abbr gpng "git-push-new-gitea gitea"
abbr gpngo "git-push-new-gitea origin"
abbr gpng "git-push-new-gitea"
abbr gpngg "git-push-new-gitea gitea"
abbr gremotes "git-mult-remotes" abbr gremotes "git-mult-remotes"
abbr grmb "git-delete-branch" abbr grmb "git-delete-branch"
abbr gro "git-replace-origin" abbr gro "git-replace-origin"
abbr grog "git-replace-origin-gitea"
abbr gsmb "git-submodule-branch"
# ]]] git # # ]]] git #
abbr i "sxiv-silent"
abbr lo "libreoffice-silent"
abbr ma "man-vim task" abbr ma "man-vim task"
abbr mat "math" abbr mat "math"
abbr mn "man-vim" abbr mn "man-vim"
abbr mdf "mkdir-cd"
abbr mtm "maven-test-method"
abbr pgr "grep-pdf" abbr pgr "grep-pdf"
abbr pgrf "grep-pdf-file" abbr pgrf "grep-pdf-file"
abbr png "git-push-new-gitea"
abbr pst "pastebin" abbr pst "pastebin"
abbr qh "qalc-history"
abbr qu "qalc-update"
abbr re "reminder ''"
abbr rf "refresh-config" abbr rf "refresh-config"
abbr rs "redshift-set"
abbr rl "readlink-cp"
abbr rds "redshift-set"
abbr scf "scp-vid fn"
abbr sma "smol-add" abbr sma "smol-add"
abbr smd "smol-delete" abbr smd "smol-delete"
abbr sml "smol-slist" abbr sml "smol-slist"
abbr smr "smol-replace" abbr smr "smol-replace"
abbr shrm "shred-rm" abbr shrm "shred-rm"
abbr svs "scan-history"
abbr tac "tmux-attach config"
abbr taj "tmux-attach journal"
abbr shs "scan-history"
abbr svp "server-pages"
abbr ta "tmux-attach"
abbr taa "tmux-attach atx"
abbr taf "tmux-attach fn"
abbr tan "tmux-attach nft"
abbr tan2 "tmux-attach nft-2"
abbr tao "tmux-attach obs"
abbr thes "thesaurus" abbr thes "thesaurus"
# abbr usc "us-to-cad"
abbr us "us-to-cad"
abbr ut "unix-timestamp" abbr ut "unix-timestamp"
abbr uzr "unzip-rm" abbr uzr "unzip-rm"
abbr vsnp "vim-snippet" abbr vsnp "vim-snippet"
abbr wga "wget-all" abbr wga "wget-all"
abbr wag "watson-add-game"
abbr waf "watson-add-game fortnite"
abbr wap "watson-add-game pokemon-go"
abbr xya "export-pkgs" abbr xya "export-pkgs"
# school [[[ # # school [[[ #
# 369
abbr grc "grep-c"
abbr grh "grep-headers"
abbr rgh "rg-headers"
abbr jcr "java-compile-run"
abbr jct "java-compile-test"
# ]]] school # # ]]] school #
# ]]] fxn abbr's # # ]]] fxn abbr's #

3
dot_config/fish/functions/cad-to-us.fish

@ -0,0 +1,3 @@
function cad-to-us
qalc "$argv[1]CAD to \$"
end

7
dot_config/fish/functions/clip.fish

@ -0,0 +1,7 @@
function clip
if test (count $argv) -eq 3
ffmpeg -ss $argv[1] -i $argv[2] -codec copy $argv[3]
else
ffmpeg -ss $argv[1] -to $argv[2] -i $argv[3] -codec copy $argv[4]
end
end

15
dot_config/fish/functions/discord-burner.fish

@ -0,0 +1,15 @@
function discord-burner
# echo nordvpn connect ca1$argv[1] && curl ifconfig.me
# nordvpn connect ca1$argv[1] && \
# nordvpn connect ca10$argv[1]
nordvpn connect
curl ifconfig.me
if test (count $argv) -gt 1
firefox -P discord-$argv[2] $argv[1] &
else
firefox -P discord-$argv[1] &
end
# for i in (seq $argv[1] $argv[2])
# firefox -P discord-$i $argv[3] &
# end
end

3
dot_config/fish/functions/dump-rarity-check.fish

@ -0,0 +1,3 @@
function dump-rarity-check
pg_dump -U rarity_check rarity_check > $argv[1].sql
end

0
dot_config/fish/functions/fish_mode_prompt.fish

4
dot_config/fish/functions/fzf-cd.fish

@ -0,0 +1,4 @@
function fzf-cd
set dir (fd -td | fzf)
cd $dir
end

6
dot_config/fish/functions/fzf-ranger.fish

@ -0,0 +1,6 @@
function fzf-ranger
set dir (fd -td | fzf)
if test ! -z "$dir"
ranger $dir
end
end

5
dot_config/fish/functions/fzf-vim.fish

@ -1,3 +1,6 @@
function fzf-vim function fzf-vim
fzf | xargs $EDITOR
set file (fzf)
if test ! -z "$file"
$EDITOR $file
end
end end

3
dot_config/fish/functions/git-log-short.fish

@ -0,0 +1,3 @@
function git-log-short
git log --pretty="%C(Yellow)%h %C(reset)%ad (%C(Green)%cr%C(reset))%x09 %C(Cyan)%an: %C(reset)%s"
end

3
dot_config/fish/functions/git-submodule-branch.fish

@ -0,0 +1,3 @@
function git-submodule-branch
git submodule set-branch --branch $argv[2] -- $argv[1]
end

2
dot_config/fish/functions/git/git-clone-gitea.fish

@ -1,3 +1,3 @@
function git-clone-gitea function git-clone-gitea
git clone ssh://git@ataraxy.tk:399/Kevin-Mok/$argv[1].git
git clone ssh://git@kevin-mok.com:399/Kevin-Mok/$argv[1].git
end end

3
dot_config/fish/functions/git/git-push-diff-name.fish

@ -0,0 +1,3 @@
function git-push-diff-name
git push -f origin HEAD:$argv[1]
end

4
dot_config/fish/functions/git/git-push-new-gitea.fish

@ -1,4 +1,4 @@
function git-push-new-gitea function git-push-new-gitea
git remote add $argv[1] ssh://git@ataraxy.tk:399/Kevin-Mok/$argv[2].git
and git push --set-upstream $argv[1] master
git remote add origin ssh://git@kevin-mok.com:399/Kevin-Mok/$argv[1].git
and git push --set-upstream origin main
end end

6
dot_config/fish/functions/git/git-replace-origin-gitea.fish

@ -0,0 +1,6 @@
function git-replace-origin-gitea
git remote remove origin
and git remote add origin ssh://git@kevin-mok.com:399/Kevin-Mok/$argv[1].git
and git branch --set-upstream-to=origin/master master
and git push
end

3
dot_config/fish/functions/libreoffice-silent.fish

@ -0,0 +1,3 @@
function libreoffice-silent
libreoffice $argv[1] &
end

4
dot_config/fish/functions/maven-test-method.fish

@ -0,0 +1,4 @@
function maven-test-method
mvn "-Dtest=$argv[1]#*$argv[2]*" clean test
# mvn "-Dtest=$argv[1]#*$argv[2]*" test
end

3
dot_config/fish/functions/mkdir-cd.fish

@ -0,0 +1,3 @@
function mkdir-cd
mkdir -p $argv[1] && cd $argv[1]
end

3
dot_config/fish/functions/mute-video.fish

@ -0,0 +1,3 @@
function mute-video
ffmpeg -i $argv[1] -c copy -an $argv[2]
end

3
dot_config/fish/functions/pastebin.fish

@ -1,5 +1,6 @@
function pastebin function pastebin
# cat $argv[1] | curl -F 'sprunge=<-' http://sprunge.us # cat $argv[1] | curl -F 'sprunge=<-' http://sprunge.us
# set -x HASTE_SERVER https://pste.gq # set -x HASTE_SERVER https://pste.gq
cat $argv[1] | haste --raw
# cat $argv[1] | haste --raw
cat $argv[1] | haste
end end

3
dot_config/fish/functions/qalc-history.fish

@ -0,0 +1,3 @@
function qalc-history
qalc $argv[1] | tee -a /home/kevin/Documents/journal/personal/calc-history.md
end

3
dot_config/fish/functions/qalc-update.fish

@ -0,0 +1,3 @@
function qalc-update
qalc -e "$argv[1]USD to CAD"
end

3
dot_config/fish/functions/readlink-cp.fish

@ -0,0 +1,3 @@
function readlink-cp
readlink -f $argv[1] | xclip -selection clipboard
end

13
dot_config/fish/functions/refresh-config-task.fish

@ -0,0 +1,13 @@
function refresh-config
chezmoi apply
and echo 'Applied chezmoi.'
# and tmux source-file ~/.tmux.conf
# and echo 'Sourced tmux config.'
sync-shortcuts
echo 'Synced shortcuts.'
source ~/.config/fish/key_abbr.fish > /dev/null
and echo 'Sourced shortcuts.'
and echo 'Reloading fish.'
and exec fish
end

3
dot_config/fish/functions/reminder.fish

@ -0,0 +1,3 @@
function reminder
termdown $argv[2] && notify-send $argv[1]
end

1
dot_config/fish/functions/scan-history.fish

@ -2,6 +2,7 @@ function scan-history
sudo systemctl start postgresql.service sudo systemctl start postgresql.service
# and systemctl status postgresql.service # and systemctl status postgresql.service
and source $spv_dir/src/scripts/api-keys.sh and source $spv_dir/src/scripts/api-keys.sh
# and $spv_dir/src/scripts/update-history-2.sh
and $spv_dir/src/scripts/update-history.sh and $spv_dir/src/scripts/update-history.sh
and cat $spv_dir/src/api/management/commands/update-history.log | tail -n 1 and cat $spv_dir/src/api/management/commands/update-history.log | tail -n 1
end end

7
dot_config/fish/functions/scp-vid.fish

@ -0,0 +1,7 @@
function scp-vid
set dest_dir "/mnt/linux-files/Videos/personal-fortnite-games/review"
if test $argv[1] = 'pogo'
set dest_dir "/mnt/linux-files/Videos/pokemon-go"
end
scp -P 8022 192.168.0.18:/data/data/com.termux/files/home/storage/dcim/\'Screen\ recordings\'/$argv[2] $dest_dir
end

8
dot_config/fish/functions/server-pages.fish

@ -1,8 +1,8 @@
function server-pages function server-pages
set sites git.ataraxy.tk khkm.tk cal.khkm.tk mnpd.gq/k-bg pste.gq smol.gq twem.tk
set titles "Kevin Mok's Gitea" "Kevin Mok" "Baïkal server" "k-bg" "hastebin" "Kevin's URL Shortener" "Index of /"
# set sites mnpd.gq/k-bg
# set titles "k-bg"
set sites kevin-mok.com git.kevin-mok.com cal.khkm.tk mnpd.gq/kbg pste.gq smol.gq twem.tk
set titles "Kevin Mok" "Kevin Mok's Gitea" "Baïkal server" "kbg" "hastebin" "Kevin's URL Shortener" "Twitch Emote Links"
# set sites twem.tk
# set titles "Twitch Emote Links"
for i in (seq (count $sites)) for i in (seq (count $sites))
set title (wget -qO- "$sites[$i]" | perl -l -0777 -ne 'print $1 if /<title.*?>\s*(.*?)\s*<\/title/si' | recode html) set title (wget -qO- "$sites[$i]" | perl -l -0777 -ne 'print $1 if /<title.*?>\s*(.*?)\s*<\/title/si' | recode html)

3
dot_config/fish/functions/sxiv-silent.fish

@ -0,0 +1,3 @@
function sxiv-silent
sxiv $argv[1] &
end

2
dot_config/fish/functions/task/task-anno.fish

@ -1,4 +1,4 @@
function task-anno function task-anno
task $argv[1] annotate $argv[2]
task $argv[2] annotate $argv[1]
and task and task
end end

1
dot_config/fish/functions/task/task-delete.fish

@ -1,5 +1,4 @@
function task-delete function task-delete
task $argv[1] delete task $argv[1] delete
and task sync
and task and task
end end

1
dot_config/fish/functions/task/task-done.fish

@ -1,5 +1,4 @@
function task-done function task-done
task $argv[1] done task $argv[1] done
and task sync
and task and task
end end

4
dot_config/fish/functions/task/task-due-rm.fish

@ -0,0 +1,4 @@
function task-due-rm
task $argv[1] mod due:
and task
end

4
dot_config/fish/functions/task/task-due.fish

@ -0,0 +1,4 @@
function task-due
task $argv[1] mod due:+$argv[2]
and task
end

2
dot_config/fish/functions/task/task-mod-pri.fish

@ -1,4 +1,4 @@
function task-mod-pri function task-mod-pri
task $argv[1] modify pri:$argv[2]
task $argv[2] modify pri:$argv[1]
and task and task
end end

4
dot_config/fish/functions/task/task-next-rm.fish

@ -0,0 +1,4 @@
function task-next-rm
task $argv[1] modify -next
and task
end

4
dot_config/fish/functions/task/task-wait.fish

@ -0,0 +1,4 @@
function task-wait
task $argv[1] mod wait:+$argv[2]
and task
end

4
dot_config/fish/functions/us-to-cad.fish

@ -0,0 +1,4 @@
function us-to-cad
# qalc -e "$argv[1]\$ to CAD"
qalc "$argv[1]\$ to CAD"
end

10
dot_config/fish/functions/vpn-red-hat.fish

@ -0,0 +1,10 @@
function vpn-red-hat
if test $argv[1] = 'up'
sudo systemctl start NetworkManager.service
and sleep 3
and nmcli con up id "1 - Red Hat Global VPN" --ask
else if test $argv[1] = 'down'
nmcli con down id "1 - Red Hat Global VPN"
and sudo systemctl stop NetworkManager.service
end
end

11
dot_config/fish/functions/watson-add-fortnite.fish

@ -0,0 +1,11 @@
function watson-add-fortnite
set year_month "2020-08"
set start_time "$year_month-$argv[1] $argv[2]"
set end_time "$year_month-$argv[3] $argv[4]"
if test (count $argv) -eq 4
watson add -f $start_time -t $end_time fun +fortnite
else
watson add -f $start_time -t $end_time fun +fortnite +$argv[5]
end
end

11
dot_config/fish/functions/watson-add-game.fish

@ -0,0 +1,11 @@
function watson-add-game
set year_month (date -u +"%Y-%m")
set start_time "$year_month-$argv[2] $argv[3]"
set end_time "$year_month-$argv[4] $argv[5]"
if test (count $argv) -eq 5
watson add -f $start_time -t $end_time fun +$argv[1]
else
watson add -f $start_time -t $end_time fun +$argv[1] +$argv[6]
end
end

161
dot_config/i3/config.tmpl

@ -1,20 +1,29 @@
# startup [[[ # # startup [[[ #
set $term urxvt
set $term_alt st
set $term kitty
# set $term st # set $term st
# set $term_alt urxvt # set $term_alt urxvt
{{ if eq .chezmoi.hostname "x1-carbon" }} {{ if eq .chezmoi.hostname "x1-carbon" }}
# set $term urxvt
# set $term_alt kitty
# set $term_alt st
set $term_alt urxvt
exec dunst exec dunst
exec compton exec compton
exec imwheel exec imwheel
exec numlockx on exec numlockx on
exec xbacklight -set 10 exec xbacklight -set 10
# exec wal -i "$(/home/kevin/scripts/shuffler \"/home/kevin/Pictures/Backgrounds/dim/non-editing\")" # exec wal -i "$(/home/kevin/scripts/shuffler \"/home/kevin/Pictures/Backgrounds/dim/non-editing\")"
exec wal -i $(/home/kevin/scripts/shuffler "$HOME/Pictures/Backgrounds/dim/non-editing")
exec wal -i $(/home/kevin/scripts/shuffler "$HOME/Pictures/Backgrounds/dim/editing")
{{ end }} {{ end }}
# exec --no-startup-id i3-msg 'workspace $ws2; exec $term'
# exec xrdb ~/.Xresources && grep wallpaper ~/.cache/wal/colors.sh | cut -d\' -f2 | xargs wal -i > /dev/null
# exec --no-startup-id i3-msg 'workspace $ws1; exec $term'
# exec --no-startup-id i3-msg 'workspace $ws2; exec $term -e fish -c "tmux-attach fortnite"'
exec --no-startup-id i3-msg 'workspace $ws3; exec $browser' exec --no-startup-id i3-msg 'workspace $ws3; exec $browser'
# exec --no-startup-id i3-msg 'workspace $ws5; exec $term -e twitchy'
exec --no-startup-id i3-msg 'workspace $ws5; exec firefox -P nft'
exec --no-startup-id i3-msg workspace $ws6; exec discord
# exec --no-startup-id i3-msg workspace $ws1; exec $term -e fish -c 'tmux-attach school'
# ]]] startup # # ]]] startup #
@ -22,7 +31,9 @@ exec --no-startup-id i3-msg 'workspace $ws3; exec $browser'
set $mod Mod1 set $mod Mod1
set $browser "firefox" set $browser "firefox"
set $browser_secondary "chromium"
# set $browser "chromium" # set $browser "chromium"
# set $browser_secondary "firefox"
set $scripts_path "/home/kevin/scripts" set $scripts_path "/home/kevin/scripts"
set $sch_dir "$HOME/Documents/School" set $sch_dir "$HOME/Documents/School"
@ -43,47 +54,72 @@ bindsym Mod4+Return exec /home/kevin/scripts/dmenu-history -nb "$fg" -nf "$bg" -
# installed. # installed.
# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
# bindsym Mod4+b layout tabbed; exec zathura # bindsym Mod4+b layout tabbed; exec zathura
bindsym Mod4+c exec $browser
# bindsym Mod4+c exec $browser
# bindsym Mod4+$mod+c exec chatterino
bindsym Mod4+c exec chatterino
bindsym Mod4+$mod+c exec $browser
# bindsym Mod4+e exec notify-send "HPS Word Count" "$(pdftotext /home/kevin/school/latex-notes/hps/essay.pdf - | wc -w)" # bindsym Mod4+e exec notify-send "HPS Word Count" "$(pdftotext /home/kevin/school/latex-notes/hps/essay.pdf - | wc -w)"
# bindsym Mod4+e exec emacs # bindsym Mod4+e exec emacs
bindsym Mod4+e exec ~/scripts/twem
bindsym Mod4+f exec firefox
# bindsym Mod4+e exec ~/scripts/twem
# bindsym Mod4+f exec firefox
# bindsym Mod4+f exec firefox --private-window
# bindsym Mod4+f exec firefox --private-window google.ca
# bindsym Mod4+$mod+f exec printf 'Kevin@fosstodon.org' | xclip -selection clipboard # bindsym Mod4+$mod+f exec printf 'Kevin@fosstodon.org' | xclip -selection clipboard
# bindsym Mod4+h exec sleep .2 && xdotool type '.hint'
# bindsym Mod4+$mod+h exec $type_delay_cmd && xdotool type 'kevin.mok@live.ca'
bindsym Mod4+h exec $type_delay_cmd && xdotool type 'kevin.mok@live.ca' bindsym Mod4+h exec $type_delay_cmd && xdotool type 'kevin.mok@live.ca'
# bindsym Mod4+$mod+h exec sleep .2 && xdotool type '.hint'
bindsym Mod4+$mod+i exec sleep .2 && xdotool type '.info latest'
bindsym Mod4+l exec ~/scripts/dmenu-twitch
# bindsym Mod4+m exec $term -e ~/scripts/vim-man # bindsym Mod4+m exec $term -e ~/scripts/vim-man
bindsym Mod4+m exec $type_delay_cmd && xdotool type 'me@kevin-mok.com'
# bindsym Mod4+$mod+m exec pass -c uoft/markus # bindsym Mod4+$mod+m exec pass -c uoft/markus
bindsym Mod4+n exec $term -e nvim bindsym Mod4+n exec $term -e nvim
# bindsym Mod4+$mod+o exec xset dpms force off
bindsym Mod4+o exec xclip -selection clipboard ~/.password-store/social/gmail && $type_delay_cmd && xdotool key 'Control_L+v' bindsym Mod4+o exec xclip -selection clipboard ~/.password-store/social/gmail && $type_delay_cmd && xdotool key 'Control_L+v'
# bindsym Mod4+o exec $type_delay_cmd && xdotool key 'Control_L+v'
bindsym Mod4+$mod+o exec xset dpms force off
bindsym $mod+Mod4+o workspace $ws11; exec obs
# bindsym Mod4+p workspace $ws4; exec pgadmin3 # bindsym Mod4+p workspace $ws4; exec pgadmin3
# bindsym Mod4+p exec pycharm # bindsym Mod4+p exec pycharm
bindsym Mod4+p exec $type_delay_cmd && xdotool type '.catch '
bindsym Mod4+$mod+p exec passmenu
bindsym Mod4+p exec passmenu
# # bindsym Mod4+p exec sleep .2 && xdotool type '.catch '
# bindsym Mod4+$mod+p exec notify-send "ping" "$(ping -c 3 -W 1 8.8.8.8)" # bindsym Mod4+$mod+p exec notify-send "ping" "$(ping -c 3 -W 1 8.8.8.8)"
bindsym Mod4+q exec qdirstat
bindsym Mod4+r exec $term -e ranger
bindsym Mod4+$mod+r exec notify-send "watson restart" "$(watson restart)"
# bindsym Mod4+q exec qdirstat
bindsym Mod4+q exec printf 'emad1 ' | xclip -selection clipboard && $type_delay_cmd && xdotool key 'Control_L+v'
bindsym Mod4+r exec $type_delay_cmd && xdotool type 'kmok@redhat.com'
bindsym Mod4+$mod+r exec pass show -c career/redhat && $type_delay_cmd && xdotool key 'Control_L+v'
# bindsym Mod4+$mod+r exec $term -e ranger
# bindsym Mod4+$mod+r exec notify-send "watson restart" "$(watson restart)"
bindsym Mod4+$mod+s exec $type_delay_cmd && xdotool type 'https://smol.gq/' bindsym Mod4+$mod+s exec $type_delay_cmd && xdotool type 'https://smol.gq/'
bindsym Mod4+$mod+t exec xclip -selection clipboard ~/.password-store/social/trapbot && $type_delay_cmd && xdotool key 'Control_L+v' bindsym Mod4+$mod+t exec xclip -selection clipboard ~/.password-store/social/trapbot && $type_delay_cmd && xdotool key 'Control_L+v'
# bindsym Mod4+u exec printf 'kevin.mok@mail.utoronto.ca' | xclip -selection clipboard
bindsym Mod4+u exec $type_delay_cmd && xdotool type 'kevin.mok@mail.utoronto.ca' bindsym Mod4+u exec $type_delay_cmd && xdotool type 'kevin.mok@mail.utoronto.ca'
# bindsym Mod4+$mod+u exec pass -c uoft/acorn # bindsym Mod4+$mod+u exec pass -c uoft/acorn
bindsym Mod4+w exec notify-send "watson status" "$(watson status)"
bindsym Mod4+$mod+w exec notify-send "watson stop" "$(watson status && watson stop)"
# bindsym Mod4+w exec notify-send "watson status" "$(watson status)"
# bindsym Mod4+$mod+w exec notify-send "watson stop" "$(watson status && watson stop)"
bindsym Control+Mod4+w exec $term -e nvim /home/kevin/.config/watson/state.tmp bindsym Control+Mod4+w exec $term -e nvim /home/kevin/.config/watson/state.tmp
# bindsym Mod4+x exec $swex # bindsym Mod4+x exec $swex
bindsym Control+$mod+x exec $type_delay_cmd && xdotool type 'http://codm.ataraxy.tk/'
bindsym Mod4+z exec cliqz bindsym Mod4+z exec cliqz
bindsym Pause exec ~/scripts/twem
# screenshot [[[ #
set $screenshot_folder "/home/kevin/Pictures/screenshots/desktop/unsorted"
set $scripts_path "/home/kevin/scripts"
{{ if .ext_kb }} {{ if .ext_kb }}
bindsym Mod4+x exec ~/scripts/xmodmap-custom
bindsym Print --release exec "scrot -s /tmp/screenshot-$(date +%F_%T).png -e 'xclip -selection c -t image/png < $f'"
bindsym Control+Print --release exec "scrot -u /tmp/screenshot-$(date +%F_%T).png -e 'xclip -selection c -t image/png < $f'"
# bindsym Mod4+x exec ~/scripts/xmodmap-custom
bindsym Mod4+x exec notify-send "xmodmap" "$(~/scripts/xmodmap-custom)"
# bindsym Mod4+e exec notify-send "HPS Word Count" "$(pdftotext /home/kevin/school/latex-notes/hps/essay.pdf - | wc -w)"
# bindsym Print --release exec "scrot -s $screenshot_folder/screenshot-$(date +%F_%T).png -e 'xclip -selection c -t image/png < $f'"
bindsym Print --release exec "maim -su | tee ~/Pictures/screenshots/desktop/unsorted/screenshot-$(date +%F_%T).png | xclip -selection clipboard -t image/png"
bindsym Control+Print --release exec "scrot -u ~/Pictures/screenshots/desktop/unsorted/screenshot-$(date +%F_%T).png -e 'xclip -selection c -t image/png < $f'"
{{ else }} {{ else }}
bindsym Mod4+x exec xmodmap ~/.Xmodmap-laptop && xset r rate $XSET_DELAY $XSET_RATE bindsym Mod4+x exec xmodmap ~/.Xmodmap-laptop && xset r rate $XSET_DELAY $XSET_RATE
bindsym Control+p --release exec "scrot -s ~/tmp/screenshot-$(date +%F_%T).png -e 'xclip -selection c -t image/png < $f'" bindsym Control+p --release exec "scrot -s ~/tmp/screenshot-$(date +%F_%T).png -e 'xclip -selection c -t image/png < $f'"
bindsym Control+$mod+p --release exec "scrot -u ~/tmp/screenshot-$(date +%F_%T).png -e 'xclip -selection c -t image/png < $f'" bindsym Control+$mod+p --release exec "scrot -u ~/tmp/screenshot-$(date +%F_%T).png -e 'xclip -selection c -t image/png < $f'"
{{ end }} {{ end }}
# ]]] screenshot #
# ]]] app shortcuts # # ]]] app shortcuts #
# redshift [[[ # # redshift [[[ #
@ -120,6 +156,7 @@ bindsym Control+$mod+q exec sudo systemctl stop netctl-auto@wlp3s0.service
# ]]] backlight # # ]]] backlight #
for_window [class="chatterino"] floating enable
for_window [class="Peek"] floating enable for_window [class="Peek"] floating enable
for_window [title="Qalculate!"] floating enable for_window [title="Qalculate!"] floating enable
@ -168,7 +205,7 @@ for_window [class="^.*"] border pixel 3
gaps inner 0 gaps inner 0
gaps outer 0 gaps outer 0
{{ if eq .chezmoi.hostname "nzxt" }} {{ if eq .chezmoi.hostname "nzxt" }}
border_radius $border_radius
# border_radius $border_radius
{{ end }} {{ end }}
# other gaps [[[ # # other gaps [[[ #
@ -292,38 +329,72 @@ set $secondary "DVI-I-1"
set $main "HDMI-0" set $main "HDMI-0"
{{ end }} {{ end }}
workspace $ws1 output $main
# workspace $ws1 output $main
workspace $ws1 output $secondary
bindsym $mod+F1 workspace $ws1; exec $term bindsym $mod+F1 workspace $ws1; exec $term
bindsym Mod4+$mod+F1 workspace $ws1; exec chatterino
# bindsym Control+Shift+F1 workspace $ws1; exec $term -e fish -c 'tmux-attach school'
bindsym Control+Shift+F1 workspace $ws1; exec $term -e fish -c 'tmux-attach nft'
set $ws2 "2 " set $ws2 "2 "
set $work_laptop_ip "192.168.0.11"
workspace $ws2 output $secondary workspace $ws2 output $secondary
bindsym $mod+F2 workspace $ws2; exec $term bindsym $mod+F2 workspace $ws2; exec $term
# bindsym Control+Shift+F2 workspace $ws2; exec $term -e mosh kmok@$work_laptop_ip -- tmux a -t nzxt
# bindsym Control+Shift+F2 workspace $ws2; exec $term -e fish -c 'tmux-attach fortnite'
bindsym Control+Shift+F2 workspace $ws2; exec $term -e fish -c 'tmux-attach nft-2'
# bindsym Control+Shift+F2 workspace $ws2; exec $term -e fish -c 'tmux-attach school-2'
bindsym $mod+Shift+F2 workspace $ws2; exec $term -e mosh kmok@$work_laptop_ip -- tmux a -t nzxt-2
# ws3 [[[ #
set $ws3 "3 " set $ws3 "3 "
# set $ws3 "3 " # set $ws3 "3 "
workspace $ws3 output $main
bindsym $mod+F3 workspace $ws3; exec $browser
# workspace $ws3 output $main
# bindsym $mod+F3 workspace $ws3; exec $browser
# bindsym $mod+F3 exec $browser; move container to workspace $ws3; workspace $ws3
bindsym $mod+F3 exec $browser
bindsym Control+Shift+F3 workspace $ws3; exec firefox -P work
# bindsym Mod4+$mod+F3 workspace $ws3; exec $browser_secondary
bindsym Mod4+$mod+F3 workspace $ws3; exec firefox -P default
# bindsym Mod4+$mod+F3 workspace $ws3; exec firefox -P work
# bindsym Mod4+b workspace $ws3; layout stacked; exec $term -e fish -c "buku-fzf" # bindsym Mod4+b workspace $ws3; layout stacked; exec $term -e fish -c "buku-fzf"
# bindsym Mod4+$mod+b workspace $ws3; layout stacked; exec $term -e fish -c "buku-fzf fq" # bindsym Mod4+$mod+b workspace $ws3; layout stacked; exec $term -e fish -c "buku-fzf fq"
# bindsym Mod4+b layout stacked; exec $term -e fish -c "buku-fzf" # bindsym Mod4+b layout stacked; exec $term -e fish -c "buku-fzf"
# bindsym Mod4+$mod+b layout stacked; exec $term -e fish -c "buku-fzf fq" # bindsym Mod4+$mod+b layout stacked; exec $term -e fish -c "buku-fzf fq"
bindsym Mod4+b layout tabbed; exec $term -e fish -c "buku-fzf" bindsym Mod4+b layout tabbed; exec $term -e fish -c "buku-fzf"
bindsym Mod4+$mod+b layout tabbed; exec $term -e fish -c "buku-fzf fq" bindsym Mod4+$mod+b layout tabbed; exec $term -e fish -c "buku-fzf fq"
# bindsym Mod4+g workspace $ws3; layout tabbed; exec gimp
# ]]] ws3 #
set $ws4 "4 " set $ws4 "4 "
workspace $ws4 output $secondary workspace $ws4 output $secondary
bindsym $mod+F4 workspace $ws4; exec $term bindsym $mod+F4 workspace $ws4; exec $term
bindsym Mod4+$mod+F4 workspace $ws4; exec urxvt -e ranger $screenshot_folder
bindsym Mod4+e workspace $ws4; exec libreoffice ~/Documents/expenses/investments.ods
bindsym Mod4+g workspace $ws4; layout tabbed; exec gimp
# ws5 [[[ #
set $ws5 "5 " set $ws5 "5 "
workspace $ws5 output $secondary
# workspace $ws5 output $secondary
assign [class="Steam"] $ws5 assign [class="Steam"] $ws5
bindsym $mod+F5 workspace $ws5; exec $browser bindsym $mod+F5 workspace $ws5; exec $browser
# bindsym $mod+Mod4+F5 workspace $ws5; exec firefox -P work
bindsym $mod+Mod4+F5 workspace $ws5; exec firefox -P nft
# bindsym $mod+Mod4+F5 workspace $ws5; exec firefox --private-window
bindsym Control+Shift+F5 workspace $ws5; exec firefox -P work
bindsym Mod4+f workspace $ws5; exec firefox --private-window google.ca
bindsym $mod+Shift+F5 workspace $ws5; exec chromium
# bindsym Mod4+g workspace $ws5; layout stacking; exec $term -e steam # bindsym Mod4+g workspace $ws5; layout stacking; exec $term -e steam
bindsym Mod4+g workspace $ws5; layout tabbed; exec gimp
# bindsym Mod4+g workspace $ws5; layout tabbed; exec gimp
# bindsym Mod4+g workspace $ws5; exec mgba-qt # bindsym Mod4+g workspace $ws5; exec mgba-qt
bindsym Mod4+i workspace $ws5; exec idea
bindsym Mod4+m workspace $ws5; layout tabbed; exec $term -e ~/.minetest/minetest/bin/minetest
bindsym Mod4+t workspace $ws5; exec thunderbird
# bindsym Mod4+i workspace $ws5; exec idea
# bindsym Mod4+m workspace $ws5; layout tabbed; exec $term -e ~/.minetest/minetest/bin/minetest
# bindsym Mod4+$mod+t workspace $ws5; exec thunderbird
# bindsym Mod4+$mod+w workspace $ws5; exec $term -e twitchy
# bindsym Mod4+w workspace $ws5; exec $term -e twitchy
bindsym Mod4+5 workspace $ws5; exec godot bindsym Mod4+5 workspace $ws5; exec godot
bindsym Mod4+F5 workspace $ws5; exec cd ~/coding/ada-mario && godot -e bindsym Mod4+F5 workspace $ws5; exec cd ~/coding/ada-mario && godot -e
# for_window [class="Move_mouse_with_head"] floating enable; move absolute position 0 0 # for_window [class="Move_mouse_with_head"] floating enable; move absolute position 0 0
@ -333,18 +404,31 @@ for_window [class="ada-mario"] floating enable
# for_window [class="ada-mario"] move absolute position 930 480 # for_window [class="ada-mario"] move absolute position 930 480
for_window [class="ada-mario"] move absolute position 640 0 for_window [class="ada-mario"] move absolute position 640 0
# ]]] ws5 #
# ws6 [[[ #
set $ws6 "6 " set $ws6 "6 "
workspace $ws6 output $secondary workspace $ws6 output $secondary
assign [class="Slack"] $ws6 assign [class="Slack"] $ws6
bindsym Mod4+d workspace $ws6; exec discord bindsym Mod4+d workspace $ws6; exec discord
# bindsym Mod4+d workspace $ws6; exec riot-desktop
# bindsym Mod4+i workspace $ws6; exec firefox -new-window https://riot.im/app/#/home
bindsym Mod4+$mod+d workspace $ws6; exec element-desktop
# bindsym Mod4+d workspace $ws6; exec firefox -new-window https://riot.im/app
bindsym Mod4+k workspace $ws6; exec slack bindsym Mod4+k workspace $ws6; exec slack
# bindsym Mod4+i workspace $ws6; exec $term -e fish -c 'mosh kmok@$work_laptop_ip -- tmux a -t weechat'
bindsym Mod4+i workspace $ws6; exec $term -e fish -c 'mosh kmok@$work_laptop_ip -- tmux a -t weechat'
# bindsym Mod4+i workspace $ws6; exec $term -e fish -c 'tmux-attach weechat'
# ]]] ws6 #
set $ws7 "7 " set $ws7 "7 "
workspace $ws7 output $secondary workspace $ws7 output $secondary
# bindsym $mod+F7 workspace $ws7; exec $term # bindsym $mod+F7 workspace $ws7; exec $term
bindsym $mod+F7 workspace $ws7; exec $term -e mosh --ssh='ssh -p 399' kevin@165.22.239.234 tmux a
# bindsym $mod+F7 workspace $ws7; exec $term -e mosh kmok@$work_laptop_ip -- tmux a -t nzxt
bindsym $mod+F7 workspace $ws7; exec $term
bindsym Mod4+$mod+F7 workspace $ws7; exec $term -e mosh --ssh='ssh -p 399' kevin@165.22.239.234 tmux a
bindsym $mod+Shift+F7 workspace $ws7; exec chromium https://txstreet.com/v/eth
bindsym Mod4+a workspace $ws7; exec android-file-transfer
# bindsym Mod4+v workspace $ws7; exec VBoxManage startvm "369-a1" # bindsym Mod4+v workspace $ws7; exec VBoxManage startvm "369-a1"
set $ws8 "8 " set $ws8 "8 "
@ -353,6 +437,8 @@ workspace $ws8 output $secondary
# bindsym $mod+F8 workspace $ws8; exec $term # bindsym $mod+F8 workspace $ws8; exec $term
# bindsym $mod+F8 workspace $ws8; exec $term -e tmux a -t journal # bindsym $mod+F8 workspace $ws8; exec $term -e tmux a -t journal
bindsym $mod+F8 workspace $ws8; exec $term -e fish -c 'tmux-attach journal' bindsym $mod+F8 workspace $ws8; exec $term -e fish -c 'tmux-attach journal'
bindsym Mod4+$mod+F8 workspace $ws8; exec libreoffice ~/Documents/sit-stand/sit-stand.ods
bindsym $mod+Shift+F8 workspace $ws8; exec libreoffice ~/Documents/red-hat/workday.ods
set $ws9 "9 " set $ws9 "9 "
workspace $ws9 output $secondary workspace $ws9 output $secondary
@ -367,17 +453,20 @@ workspace $ws10 output $secondary
set $hp 2 set $hp 2
# bindsym Mod4+v workspace $ws10; exec $term -e alsamixer -c 0 # bindsym Mod4+v workspace $ws10; exec $term -e alsamixer -c 0
bindsym Mod4+v workspace $ws10; exec $term -e alsamixer -c 1 bindsym Mod4+v workspace $ws10; exec $term -e alsamixer -c 1
bindsym Mod4+$mod+c workspace $ws10; exec $term -e cava
# bindsym Mod4+$mod+c workspace $ws10; exec $term -e cava
# bindsym Mod4+h workspace $ws10; exec $term -e alsamixer -c $hp # bindsym Mod4+h workspace $ws10; exec $term -e alsamixer -c $hp
bindsym Mod4+s workspace $ws10; exec spotify
bindsym Mod4+s workspace $ws10; exec ~/scripts/spotify-clean
set $ws11 "11 " set $ws11 "11 "
# set $ws11 "11 📊" # set $ws11 "11 📊"
# assign [class="Summoners War Exporter"] $ws11 # assign [class="Summoners War Exporter"] $ws11
workspace $ws11 output $secondary workspace $ws11 output $secondary
bindsym $mod+F11 workspace $ws11; exec $term -e htop -s PERCENT_CPU
# bindsym $mod+F11 workspace $ws11; exec $term -e htop -s PERCENT_CPU
bindsym $mod+F11 workspace $ws11; exec $term -e htop -s PERCENT_MEM
bindsym Mod4+$mod+F11 workspace $ws11; exec $term -e fish -c 'tmux-attach obs'
bindsym Mod4+t workspace $ws11; exec nordvpn connect && transmission-gtk
# bindsym $mod+F11 workspace $ws11; exec $term -e gotop -m # bindsym $mod+F11 workspace $ws11; exec $term -e gotop -m
bindsym Mod4+a workspace $ws11; exec antimicro
# bindsym Mod4+a workspace $ws11; exec antimicro
set $ws12 "12 " set $ws12 "12 "
bindsym $mod+F12 workspace $ws12; exec $term bindsym $mod+F12 workspace $ws12; exec $term

62
dot_config/i3blocks/i3blocks-secondary.conf.tmpl

@ -11,17 +11,48 @@ markup=pango
color=#cbe4ff color=#cbe4ff
# ]]] Global properties # # ]]] Global properties #
# [ticker]
# label=$
# TICKER=GME
# interval=30
# # interval=10
# sys.monitoring [[[ #
{{ if eq .chezmoi.hostname "nzxt" }}
[temperature]
label=
interval=5
[cpu_usage]
label=
interval=5
[memory]
label=
# color=#3da061
interval=5
{{ end }}
# ]]] sys.monitoring #
# volume/spotify [[[ # # volume/spotify [[[ #
# [spotify]
# # command=python ~/linux-config/configs/i3blocks-scripts/spotify.py
# # label=
# label=
# # label=🎧
# # green
# # color=#198c19
# # aqua
# # color=#2d7272
# interval=5
[spotify] [spotify]
# command=python ~/linux-config/configs/i3blocks-scripts/spotify.py
# label=
label= label=
# label=🎧
# green
# color=#198c19
# aqua
# color=#2d7272
LONG_NAME=
SHORT_NAME=
interval=5 interval=5
[volume] [volume]
@ -36,13 +67,14 @@ interval=60
[calendar] [calendar]
interval=30 interval=30
label= label=
{{ if eq .chezmoi.hostname "nzxt" }}
DATEFMT=+%H:%M.%a-%m-%d
{{ else }}
# {{ if eq .chezmoi.hostname "nzxt" }}
# DATEFMT=+%H:%M.%a-%m-%d
# {{ else }}
# DATEFMT=+%H:%M
# {{ end }}
DATEFMT=+%H:%M DATEFMT=+%H:%M
{{ end }}
# SHORTFMT=+%H:%M:%S # SHORTFMT=+%H:%M:%S
# SHORTFMT=+%H:%M.%a-%m-%d
SHORTFMT=+%H:%M.%a-%m-%d
HEIGHT=180 HEIGHT=180
WIDTH=220 WIDTH=220
@ -53,7 +85,7 @@ WIDTH=220
label= label=
interval=5 interval=5
[name]
label=
interval=30
# [name]
# label=
# interval=30
{{ end }} {{ end }}

81
dot_config/i3blocks/i3blocks.conf.tmpl

@ -13,6 +13,25 @@ color=#cbe4ff
# ]]] global # # ]]] global #
# ticker [[[ #
# [ticker]
# label=BTC 
# TICKER=BTC-USD
# interval=30
[ticker]
label=ETH 
TICKER=ETH-USD
interval=30
# [ticker]
# label=DAQ 
# TICKER=^IXIC
# interval=30
# ]]] ticker #
# volume/spotify [[[ # # volume/spotify [[[ #
{{ if eq .chezmoi.hostname "nzxt" }} {{ if eq .chezmoi.hostname "nzxt" }}
@ -21,10 +40,21 @@ interval=once
signal=1 signal=1
interval=60 interval=60
# [spotify]
# label=
# LONG_NAME=
# SHORT_NAME=
# interval=5
[spotify] [spotify]
# command=python ~/linux-config/configs/i3blocks-scripts/spotify.py
# label=
label= label=
LONG_NAME=
SHORT_NAME=
# label=🎧
# green
# color=#198c19
# aqua
# color=#2d7272
interval=5 interval=5
{{ end }} {{ end }}
@ -47,6 +77,13 @@ label=
interval=5 interval=5
{{ end }} {{ end }}
# {{ if eq .chezmoi.hostname "nzxt" }}
# [wifi]
# label=
# instance=wlp4s0
# interval=10
# {{ end }}
# ]]] laptop # # ]]] laptop #
# time [[[ # # time [[[ #
@ -54,11 +91,12 @@ interval=5
[calendar] [calendar]
interval=30 interval=30
label= label=
{{ if eq .chezmoi.hostname "nzxt" }}
DATEFMT=+%H:%M
{{ else }}
# {{ if eq .chezmoi.hostname "nzxt" }}
# DATEFMT=+%H:%M
# {{ else }}
# DATEFMT=+%H:%M.%a-%m-%d
# {{ end }}
DATEFMT=+%H:%M.%a-%m-%d DATEFMT=+%H:%M.%a-%m-%d
{{ end }}
# SHORTFMT=+%H:%M:%S # SHORTFMT=+%H:%M:%S
HEIGHT=180 HEIGHT=180
WIDTH=220 WIDTH=220
@ -68,31 +106,18 @@ WIDTH=220
# sys.monitoring [[[ # # sys.monitoring [[[ #
{{ if eq .chezmoi.hostname "nzxt" }} {{ if eq .chezmoi.hostname "nzxt" }}
# [wifi]
# label=
# instance=wlp4s0
# interval=10
[temperature]
label=
interval=5
# unbold this?
# [load_average]
# label=
# [temperature]
# label=
# interval=5 # interval=5
# color=#990000
{{ end }}
[cpu_usage]
label=
interval=5
# [cpu_usage]
# label=
# interval=5
{{ if eq .chezmoi.hostname "nzxt" }}
[memory]
label=
# color=#3da061
interval=5
# [memory]
# label=
# # color=#3da061
# interval=5
# ]]] sys.monitoring # # ]]] sys.monitoring #

5
dot_config/i3blocks/scripts/executable_ticker

@ -0,0 +1,5 @@
#!/bin/bash
. "/home/kevin/.cache/wal/colors.sh"
ticker=$(~/scripts/ticker $TICKER)
printf "%s\n\n%s\n" "$ticker" "$color7"

4
dot_config/i3blocks/scripts/executable_volume

@ -32,7 +32,9 @@ SCONTROL=${SCONTROL:-""}
# }}} default vars # # }}} default vars #
AUDIO_DELTA=${AUDIO_DELTA:-5}
AUDIO_DELTA=${AUDIO_DELTA:-3}
# AUDIO_DELTA=${AUDIO_DELTA:-2}
# AUDIO_DELTA=${AUDIO_DELTA:-1}
# LONG_FORMAT=${LONG_FORMAT:-'${SYMB} ${VOL}% [${INDEX}:${NAME}]'} # LONG_FORMAT=${LONG_FORMAT:-'${SYMB} ${VOL}% [${INDEX}:${NAME}]'}
LONG_FORMAT=${SHORT_FORMAT:-'${SINK_SYMB} ${VOL}%'} LONG_FORMAT=${SHORT_FORMAT:-'${SINK_SYMB} ${VOL}%'}

3
dot_config/i3blocks/scripts/executable_wifi

@ -18,7 +18,6 @@
INTERFACE="${BLOCK_INSTANCE:-wlan0}" INTERFACE="${BLOCK_INSTANCE:-wlan0}"
# echo $INTERFACE # echo $INTERFACE
# INTERFACE="${INSTANCE}"
#------------------------------------------------------------------------ #------------------------------------------------------------------------
@ -29,7 +28,7 @@ INTERFACE="${BLOCK_INSTANCE:-wlan0}"
#------------------------------------------------------------------------ #------------------------------------------------------------------------
QUALITY=$(grep $INTERFACE /proc/net/wireless | awk '{ print int($3 * 100 / 70) }')
QUALITY=$(sudo grep $INTERFACE /proc/net/wireless | awk '{ print int($3 * 100 / 70) }')
# echo $QUALITY # echo $QUALITY
W_inter=$(ip link | grep "[1-9]: wlp" | cut -d " " -f2 | tr -d ':') W_inter=$(ip link | grep "[1-9]: wlp" | cut -d " " -f2 | tr -d ':')
W_name=$(nmcli d | grep "$W_inter" | awk '{print $4}') W_name=$(nmcli d | grep "$W_inter" | awk '{print $4}')

14
dot_config/kitty/kitty.conf

@ -0,0 +1,14 @@
include ~/.cache/wal/colors-kitty.conf
# background_opacity .7
# background_opacity .8
# background_opacity .85
background_opacity .9
clipboard_control write-clipboard write-primary
enable_audio_bell no
# font
cursor_blink_interval 0
# font_size 12.5
font_size 12
map ctrl+alt+up change_font_size all +1.0
map ctrl+alt+down change_font_size all -1.0

33
dot_config/mimeapps-ffox.list

@ -0,0 +1,33 @@
[Default Applications]
text/html=firefox.desktop
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/about=chromium.desktop
x-scheme-handler/unknown=chromium.desktop
x-scheme-handler/ftp=firefox.desktop
x-scheme-handler/chrome=firefox.desktop
application/x-extension-htm=firefox.desktop
application/x-extension-html=firefox.desktop
application/x-extension-shtml=firefox.desktop
application/xhtml+xml=firefox.desktop
application/x-extension-xhtml=firefox.desktop
application/x-extension-xht=firefox.desktop
x-scheme-handler/mailto=userapp-Thunderbird-DQE3YZ.desktop
message/rfc822=userapp-Thunderbird-DQE3YZ.desktop
image/jpeg=sxiv.desktop
image/png=sxiv.desktop
x-scheme-handler/discord-409416265891971072=discord-409416265891971072.desktop
[Added Associations]
x-scheme-handler/http=firefox.desktop;
x-scheme-handler/https=firefox.desktop;
text/html=firefox.desktop;
application/pdf=org.gnome.Evince.desktop;org.pwmt.zathura-pdf-mupdf.desktop;
text/plain=nvim.desktop;
x-scheme-handler/mailto=userapp-Thunderbird-DQE3YZ.desktop;
message/rfc822=userapp-Thunderbird-DQE3YZ.desktop;
text/x-python=nvim.desktop;gvim.desktop;
application/json=firefox.desktop;
image/jpeg=gimp.desktop;imv.desktop;
text/markdown=nvim.desktop;
image/png=imv.desktop;

34
dot_config/mimeapps.list

@ -0,0 +1,34 @@
[Default Applications]
text/html=firefox.desktop
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/about=firefox.desktop
x-scheme-handler/unknown=firefox.desktop
x-scheme-handler/ftp=firefox.desktop
x-scheme-handler/chrome=firefox.desktop
application/x-extension-htm=firefox.desktop
application/x-extension-html=firefox.desktop
application/x-extension-shtml=firefox.desktop
application/xhtml+xml=firefox.desktop
application/x-extension-xhtml=firefox.desktop
application/x-extension-xht=firefox.desktop
x-scheme-handler/mailto=userapp-Thunderbird-DQE3YZ.desktop
message/rfc822=userapp-Thunderbird-DQE3YZ.desktop
image/jpeg=sxiv.desktop
image/png=sxiv.desktop
x-scheme-handler/discord-409416265891971072=discord-409416265891971072.desktop
x-scheme-handler/eclipse+command=_usr_lib_dbeaver_.desktop
[Added Associations]
x-scheme-handler/http=firefox.desktop;
x-scheme-handler/https=firefox.desktop;
text/html=firefox.desktop;
application/pdf=org.gnome.Evince.desktop;org.pwmt.zathura-pdf-mupdf.desktop;
text/plain=nvim.desktop;
x-scheme-handler/mailto=userapp-Thunderbird-DQE3YZ.desktop;
message/rfc822=userapp-Thunderbird-DQE3YZ.desktop;
text/x-python=nvim.desktop;gvim.desktop;
application/json=firefox.desktop;
image/jpeg=gimp.desktop;imv.desktop;
text/markdown=nvim.desktop;
image/png=imv.desktop;

21
dot_config/mpv/input.conf

@ -1,17 +1,20 @@
# volume # volume
WHEEL_UP add volume 1
WHEEL_DOWN add volume -1
WHEEL_UP add volume 5
WHEEL_DOWN add volume -5
v cycle mute
# speed # speed
r set speed 1.0 r set speed 1.0
g set speed 1.6 g set speed 1.6
h set speed 2.4 h set speed 2.4
s add speed -.2
d add speed .2
w add speed -.2
e add speed .2
# seek # seek
Shift+RIGHT seek 1
Shift+LEFT seek -1
Ctrl+RIGHT no-osd seek 0.2 exact
Ctrl+LEFT no-osd seek -0.2 exact
Shift+RIGHT no-osd seek 1 exact
Shift+LEFT no-osd seek -1 exact
RIGHT seek 3 RIGHT seek 3
LEFT seek -3 LEFT seek -3
UP seek 10 UP seek 10
@ -24,5 +27,7 @@ m revert-seek mark # mark position for revert-seek
Shift+m revert-seek Shift+m revert-seek
# subtitle delay # subtitle delay
z add sub-delay +0.25
Z add sub-delay -0.25
# z add sub-delay +0.25
# Z add sub-delay -0.25
u add sub-delay -0.25
i add sub-delay +0.25

2
dot_config/mpv/mpv.conf

@ -1,3 +1,5 @@
sub-auto=fuzzy sub-auto=fuzzy
# volume=25
# volume=75
ytdl-format=best ytdl-format=best
ytdl-raw-options=sub-format=en,write-srt= ytdl-raw-options=sub-format=en,write-srt=

423
dot_config/picom/picom.conf

@ -0,0 +1,423 @@
# shadows {{{ #
# Enabled client-side shadows on windows. Note desktop windows
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
# unless explicitly requested using the wintypes option.
#
# shadow = false
shadow = true;
# The blur radius for shadows, in pixels. (defaults to 12)
# shadow-radius = 12
shadow-radius = 7;
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
# shadow-opacity = .75
# The left offset for shadows, in pixels. (defaults to -15)
# shadow-offset-x = -15
shadow-offset-x = -7;
# The top offset for shadows, in pixels. (defaults to -15)
# shadow-offset-y = -15
shadow-offset-y = -7;
# Avoid drawing shadows on dock/panel windows. This option is deprecated,
# you should use the *wintypes* option in your config file instead.
#
# no-dock-shadow = false
# Don't draw shadows on drag-and-drop windows. This option is deprecated,
# you should use the *wintypes* option in your config file instead.
#
# no-dnd-shadow = false
# Red color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-red = 0
# Green color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-green = 0
# Blue color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-blue = 0
# Do not paint shadows on shaped windows. Note shaped windows
# here means windows setting its shape through X Shape extension.
# Those using ARGB background is beyond our control.
# Deprecated, use
# shadow-exclude = 'bounding_shaped'
# or
# shadow-exclude = 'bounding_shaped && !rounded_corners'
# instead.
#
# shadow-ignore-shaped = ''
# Specify a list of conditions of windows that should have no shadow.
#
# examples:
# shadow-exclude = "n:e:Notification";
#
# shadow-exclude = []
shadow-exclude = [
"name = 'Notification'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'",
"_GTK_FRAME_EXTENTS@:c"
];
# Specify a X geometry that describes the region in which shadow should not
# be painted in, such as a dock window region. Use
# shadow-exclude-reg = "x10+0+0"
# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
#
# shadow-exclude-reg = ""
# Crop shadow of a window fully on a particular Xinerama screen to the screen.
# xinerama-shadow-crop = false
# }}} shadows #
# fading {{{ #
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used.
fading = false
# fading = true
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
# fade-in-step = 0.028
fade-in-step = 0.03;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
# fade-out-step = 0.03
fade-out-step = 0.03;
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
# fade-delta = 10
# Specify a list of conditions of windows that should not be faded.
# fade-exclude = []
# Do not fade on window open/close.
# no-fading-openclose = true
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
# no-fading-destroyed-argb = false
# }}} fading #
# transparency/opacity {{{ #
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
inactive-opacity = 1
# inactive-opacity = 0.9;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
# frame-opacity = 1.0
frame-opacity = 0.7;
# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
# menu-opacity = 1.0
# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
# inactive-opacity-override = true
inactive-opacity-override = false;
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
# active-opacity = 1.0
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
# inactive-dim = 0.0
# Specify a list of conditions of windows that should always be considered focused.
# focus-exclude = []
focus-exclude = [ "class_g = 'Cairo-clock'" ];
# Use fixed inactive dim value, instead of adjusting according to window opacity.
# inactive-dim-fixed = 1.0
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
# like `50:name *= "Firefox"`. picom-trans is recommended over this.
# Note we don't make any guarantee about possible conflicts with other
# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
# example:
# opacity-rule = [ "80:class_g = 'URxvt'" ];
#
# opacity-rule = []
# }}} transparency/opacity #
# bg blurring {{{ #
# Parameters for background blurring, see the *BLUR* section for more information.
# blur-method =
# blur-size = 12
#
# blur-deviation = false
# Blur background of semi-transparent / ARGB windows.
# Bad in performance, with driver-dependent behavior.
# The name of the switch may change without prior notifications.
#
# blur-background = false
# Blur background of windows when the window frame is not opaque.
# Implies:
# blur-background
# Bad in performance, with driver-dependent behavior. The name may change.
#
# blur-background-frame = false
# Use fixed blur strength rather than adjusting according to window opacity.
# blur-background-fixed = false
# Specify the blur convolution kernel, with the following format:
# example:
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
#
# blur-kern = ''
blur-kern = "3x3box";
# Exclude conditions for background blur.
# blur-background-exclude = []
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c"
];
# }}} bg blurring #
# general {{{ #
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
# daemon = false
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
# `xrender` is the default one.
#
# backend = 'glx'
backend = "xrender";
# Enable/disable VSync.
# vsync = false
vsync = true
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
# dbus = false
# Try to detect WM windows (a non-override-redirect window with no
# child that has 'WM_STATE') and mark them as active.
#
# mark-wmwin-focused = false
mark-wmwin-focused = true;
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
# mark-ovredir-focused = false
mark-ovredir-focused = true;
# Try to detect windows with rounded corners and don't consider them
# shaped windows. The accuracy is not very high, unfortunately.
#
# detect-rounded-corners = false
detect-rounded-corners = true;
# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
# not passing '_NET_WM_OPACITY' of client windows to frame windows.
#
# detect-client-opacity = false
detect-client-opacity = true;
# Specify refresh rate of the screen. If not specified or 0, picom will
# try detecting this with X RandR extension.
#
# refresh-rate = 60
refresh-rate = 0
# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
# boost performance. This should not be used with
# vsync drm/opengl/opengl-oml
# as they essentially does sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
#
# sw-opti =
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
# provided that the WM supports it.
#
# use-ewmh-active-win = false
# Unredirect all windows if a full-screen opaque window is detected,
# to maximize performance for full-screen windows. Known to cause flickering
# when redirecting/unredirecting windows.
#
# unredir-if-possible = false
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
# unredir-if-possible-delay = 0
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
# unredir-if-possible-exclude = []
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
# in the same group focused at the same time.
#
# detect-transient = false
detect-transient = true
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
# detect-transient is enabled, too.
#
# detect-client-leader = false
detect-client-leader = true
# Resize damaged region by a specific number of pixels.
# A positive value enlarges it while a negative one shrinks it.
# If the value is positive, those additional pixels will not be actually painted
# to screen, only used in blur calculation, and such. (Due to technical limitations,
# with use-damage, those pixels will still be incorrectly painted to screen.)
# Primarily used to fix the line corruption issues of blur,
# in which case you should use the blur radius value here
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
# with a 5x5 one you use `--resize-damage 2`, and so on).
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
#
# resize-damage = 1
# Specify a list of conditions of windows that should be painted with inverted color.
# Resource-hogging, and is not well tested.
#
# invert-color-include = []
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
# Might cause incorrect opacity when rendering transparent content (but never
# practically happened) and may not work with blur-background.
# My tests show a 15% performance boost. Recommended.
#
# glx-no-stencil = false
# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes,
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
# Recommended if it works.
#
# glx-no-rebind-pixmap = false
# Disable the use of damage information.
# This cause the whole screen to be redrawn everytime, instead of the part of the screen
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
# The opposing option is use-damage
#
# no-use-damage = false
use-damage = true
# Use X Sync fence to sync clients' draw calls, to make sure all draw
# calls are finished before picom starts drawing. Needed on nvidia-drivers
# with GLX backend for some users.
#
# xrender-sync-fence = false
# GLX backend: Use specified GLSL fragment shader for rendering window contents.
# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
# in the source tree for examples.
#
# glx-fshader-win = ''
# Force all windows to be painted with blending. Useful if you
# have a glx-fshader-win that could turn opaque pixels transparent.
#
# force-win-blend = false
# Do not use EWMH to detect fullscreen windows.
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
#
# no-ewmh-fullscreen = false
# Dimming bright windows so their brightness doesn't exceed this set value.
# Brightness of a window is estimated by averaging all pixels in the window,
# so this could comes with a performance hit.
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
#
# max-brightness = 1.0
# Make transparent windows clip other windows like non-transparent windows do,
# instead of blending on top of them.
#
# transparent-clipping = false
# Set the log level. Possible values are:
# "trace", "debug", "info", "warn", "error"
# in increasing level of importance. Case doesn't matter.
# If using the "TRACE" log level, it's better to log into a file
# using *--log-file*, since it can generate a huge stream of logs.
#
# log-level = "debug"
log-level = "warn";
# Set the log file.
# If *--log-file* is never specified, logs will be written to stderr.
# Otherwise, logs will to written to the given file, though some of the early
# logs might still be written to the stderr.
# When setting this option from the config file, it is recommended to use an absolute path.
#
# log-file = '/path/to/your/log/file'
# Show all X errors (for debugging)
# show-all-xerrors = false
# Write process ID to a file.
# write-pid-path = '/path/to/your/log/file'
# }}} general #
# window settings {{{ #
# Window type settings
#
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
# "tooltip", "notification", "combo", and "dnd".
#
# Following per window-type options are available: ::
#
# fade, shadow:::
# Controls window-type-specific shadow and fade settings.
#
# opacity:::
# Controls default opacity of the window type.
#
# focus:::
# Controls whether the window of this type is to be always considered focused.
# (By default, all window types except "normal" and "dialog" has this on.)
#
# full-shadow:::
# Controls whether shadow is drawn under the parts of the window that you
# normally won't be able to see. Useful when the window has parts of it
# transparent, and you want shadows in those areas.
#
# redir-ignore:::
# Controls whether this type of windows should cause screen to become
# redirected again after been unredirected. If you have unredir-if-possible
# set, and doesn't want certain window to cause unnecessary screen redirection,
# you can set this to `true`.
#
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
dock = { shadow = false; }
dnd = { shadow = false; }
# popup_menu = { opacity = 1; }
popup_menu = { opacity = .95; }
# dropdown_menu = { opacity = 1; }
dropdown_menu = { opacity = .9; }
};
# }}} window settings #

1
dot_config/ranger/plugins/__init__.py

@ -1 +0,0 @@

11
dot_config/ranger/rc.conf.tmpl

@ -166,8 +166,9 @@ set autoupdate_cumulative_size false
set show_cursor false set show_cursor false
# One of: size, natural, basename, atime, ctime, mtime, type, random # One of: size, natural, basename, atime, ctime, mtime, type, random
set sort natural
# set sort natural
# set sort extension # set sort extension
set sort mtime
# Additional sorting options # Additional sorting options
set sort_reverse false set sort_reverse false
@ -666,9 +667,10 @@ set preview_images true
# * urxvt-full: # * urxvt-full:
# The same as urxvt but utilizing not only the preview pane but the # The same as urxvt but utilizing not only the preview pane but the
# whole terminal window. # whole terminal window.
set preview_images_method w3m
# set preview_images_method w3m
# set preview_images_method ueberzug # set preview_images_method ueberzug
# set preview_images_method urxvt
# set preview_images_method kitty
set preview_images_method urxvt
# set preview_images_method urxvt-full # set preview_images_method urxvt-full
# ]]] image preview # # ]]] image preview #
@ -681,7 +683,8 @@ map rr source ~/.config/ranger/rc.conf
# backgrounds [[[ # # backgrounds [[[ #
map w shell /usr/bin/wal -i %f && sudo ~/st/make-st.sh
# map w shell /usr/bin/wal -i %f && sudo ~/st/make-st.sh
map w shell /usr/bin/wal -i %f
map bde shell mv %f /home/kevin/Pictures/Backgrounds/dim/editing map bde shell mv %f /home/kevin/Pictures/Backgrounds/dim/editing
map bdn shell mv %f /home/kevin/Pictures/Backgrounds/dim/non-editing map bdn shell mv %f /home/kevin/Pictures/Backgrounds/dim/non-editing
map bbe shell mv %f /home/kevin/Pictures/Backgrounds/bright/editing map bbe shell mv %f /home/kevin/Pictures/Backgrounds/bright/editing

9
dot_config/spotify/Users/polarbier-user/prefs.tmpl

@ -1,8 +1,13 @@
audio.crossfade_v2=true
audio.play_bitrate_non_metered_migrated=true
audio.sync_bitrate_enumeration=4 audio.sync_bitrate_enumeration=4
audio.crossfade_v2=true
gaia.attached_device_id="6ca6cdc7bc677d43534460982c3a13959dd1939c"
audio.play_bitrate_enumeration=4
ui.hide_hpto=true
ui.track_notifications_enabled=false ui.track_notifications_enabled=false
audio.play_bitrate_non_metered_enumeration=4
audio.normalize_v2=false
ui.show_friend_feed=false ui.show_friend_feed=false
audio.play_bitrate_enumeration=4
app.player.volume=40000 app.player.volume=40000
{{ if eq .chezmoi.hostname "x1-carbon" }} {{ if eq .chezmoi.hostname "x1-carbon" }}
app.browser.zoom-level=300 app.browser.zoom-level=300

11
dot_gitconfig.tmpl

@ -1,7 +1,7 @@
[user] [user]
email = kevin.mok@live.ca
email = kevin.mok@mail.utoronto.ca
name = Kevin Mok name = Kevin Mok
signingkey = AEA75288DC135CF5
signingkey = C072BD80DB66DE18
[color] [color]
ui = auto ui = auto
[core] [core]
@ -32,3 +32,10 @@
s = status s = status
st = stash st = stash
r = remote r = remote
[init]
defaultBranch = main
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true

6
dot_imwheelrc

@ -1,3 +1,5 @@
".*" ".*"
None, Up, Button4, 3
None, Down, Button5, 3
/* None, Up, Button4, 3 */
/* None, Down, Button5, 3 */
None, Up, Button4, 1
None, Down, Button5, 1

3
dot_minikube/config/config.json

@ -0,0 +1,3 @@
{
"driver": "docker"
}

33
dot_taskrc

@ -15,6 +15,7 @@
# }}} info # # }}} info #
data.location=~/.task data.location=~/.task
# rc.debug=1
# Color theme (uncomment one to use){{{ # Color theme (uncomment one to use){{{
#include /usr/share/doc/task/rc/light-16.theme #include /usr/share/doc/task/rc/light-16.theme
@ -41,34 +42,50 @@ include /usr/share/doc/task/rc/dark-16.theme
taskd.certificate=\/home\/kevin\/.task\/do.cert.pem taskd.certificate=\/home\/kevin\/.task\/do.cert.pem
taskd.key=\/home\/kevin\/.task\/do.key.pem taskd.key=\/home\/kevin\/.task\/do.key.pem
taskd.ca=\/home\/kevin\/.task\/ca.cert.pem taskd.ca=\/home\/kevin\/.task\/ca.cert.pem
taskd.server=taskd.khkm.tk:53589
taskd.server=taskd.khkm.gq:53589
taskd.credentials=Hevin\/Kevin\/eb6225dc-80fb-4721-8b03-9114c6c4423d taskd.credentials=Hevin\/Kevin\/eb6225dc-80fb-4721-8b03-9114c6c4423d
recurrence=no
# }}} server # # }}} server #
# urgency {{{ # # urgency {{{ #
urgency.user.project.codm.coefficient=-2
urgency.due.coefficient=18
urgency.user.project.codm.coefficient=2
urgency.user.project.crim.coefficient=1
urgency.user.project.fn.coefficient=5
urgency.user.project.mny.coefficient=10
urgency.user.project.ms.coefficient=3 urgency.user.project.ms.coefficient=3
urgency.user.project.pey.coefficient=5
urgency.user.project.pey.coefficient=10
urgency.user.project.pogo.coefficient=0
urgency.user.project.sch.coefficient=7 urgency.user.project.sch.coefficient=7
urgency.uda.priority.H.coefficient=10 urgency.uda.priority.H.coefficient=10
urgency.uda.priority.M.coefficient=4
urgency.uda.priority.L.coefficient=-7 urgency.uda.priority.L.coefficient=-7
urgency.uda.priority..coefficient=1 urgency.uda.priority..coefficient=1
urgency.user.tag.nx.coefficient=15
urgency.user.tag.helm.coefficient=5
urgency.user.tag.jira.coefficient=5
# urgency.user.tag.nx.coefficient=15
urgency.user.tag.nexus.coefficient=3
report.ready.sort=urgency-
# }}} urgency # # }}} urgency #
# context {{{ # # context {{{ #
# context.home=project.not:ieas project.not:out project.not:sch tag.not:amn # context.home=project.not:ieas project.not:out project.not:sch tag.not:amn
context.home=project.not:ieas project.not:out tag.not:amn
context.home=project.not:ieas project.not:out
context.ieas=project:ieas
context.not-pey=project.not:pey project.not:sch
context.out=project:out context.out=project:out
context.mny=project:mny
context.pey=project:pey
context.sch=project:sch context.sch=project:sch
context=home
# context=home
# context=out # context=out
# context=sch # context=sch
context=mny
# context=pey
# context=not-pey
# }}} context # # }}} context #

8
dot_tmux.conf

@ -31,12 +31,12 @@ bind-key -n M-h if-shell "$is_vim" "send-keys M-h" "select-pane -L"
bind-key -n M-j if-shell "$is_vim" "send-keys M-j" "select-pane -D" bind-key -n M-j if-shell "$is_vim" "send-keys M-j" "select-pane -D"
bind-key -n M-k if-shell "$is_vim" "send-keys M-k" "select-pane -U" bind-key -n M-k if-shell "$is_vim" "send-keys M-k" "select-pane -U"
bind-key -n M-l if-shell "$is_vim" "send-keys M-l" "select-pane -R" bind-key -n M-l if-shell "$is_vim" "send-keys M-l" "select-pane -R"
bind-key -n M-\ if-shell "$is_vim" "send-keys M-\\" "select-pane -l"
# bind-key -n M-\ if-shell "$is_vim" "send-keys M-\\" "select-pane -l"
bind-key -T copy-mode-vi M-h select-pane -L bind-key -T copy-mode-vi M-h select-pane -L
bind-key -T copy-mode-vi M-j select-pane -D bind-key -T copy-mode-vi M-j select-pane -D
bind-key -T copy-mode-vi M-k select-pane -U bind-key -T copy-mode-vi M-k select-pane -U
bind-key -T copy-mode-vi M-l select-pane -R bind-key -T copy-mode-vi M-l select-pane -R
bind-key -T copy-mode-vi M-\ select-pane -l
# bind-key -T copy-mode-vi M-\ select-pane -l
bind-key -n M-Enter split-window -h bind-key -n M-Enter split-window -h
# bind-key -n M-v split-window -h # bind-key -n M-v split-window -h
@ -57,8 +57,8 @@ bind-key -n M-a command-prompt "rename-window '%%'"
bind-key -n M-p previous-window bind-key -n M-p previous-window
bind-key -n M-n next-window bind-key -n M-n next-window
bind-key -n C-Left swap-window -t -1
bind-key -n C-Right swap-window -t +1
bind-key -n C-Left swap-window -t -1\; previous-window
bind-key -n C-Right swap-window -t +1\; next-window
# }}} windows # # }}} windows #

151
dot_vimrc.tmpl

@ -14,11 +14,12 @@ set expandtab
" set foldmethod=indent " set foldmethod=indent
set foldmethod=marker set foldmethod=marker
set hlsearch set hlsearch
set ignorecase
" set ignorecase
set linebreak set linebreak
set linespace=5 set linespace=5
set mouse=a set mouse=a
" set mouse=c " set mouse=c
set nofixendofline
" set noswapfile " set noswapfile
set relativenumber set relativenumber
set shiftwidth=4 set shiftwidth=4
@ -26,11 +27,11 @@ set smartcase
set tabstop=4 set tabstop=4
" set t_Co=256 " set t_Co=256
" set termguicolors " set termguicolors
" set timeoutlen=350
set timeoutlen=200
" set tw=80
set timeoutlen=350
" set timeoutlen=200
" set tw=75 " set tw=75
set tw=70
" set tw=70
set tw=60
set undodir=~/.vim/undo set undodir=~/.vim/undo
set undofile set undofile
" set updatetime=1000 " set updatetime=1000
@ -58,15 +59,19 @@ autocmd CursorHold * if !bufexists("[Command Line]") | checktime | endif
autocmd BufNewFile,BufRead .* set syntax=sh autocmd BufNewFile,BufRead .* set syntax=sh
autocmd BufRead,BufNewFile /tmp/calcurse*,~/.calcurse/notes/* set filetype=markdown autocmd BufRead,BufNewFile /tmp/calcurse*,~/.calcurse/notes/* set filetype=markdown
autocmd FileType *css,gitcommit,haskell,htmldjango,html,javascript,json,lisp,
\markdown,racket,tex,text,yaml set ts=2 sw=2
autocmd FileType *css,gitcommit,haskell,htmldjango,html,graphql,javascript,javascriptreact,json,lisp,markdown,
\racket,tex,text,yaml set tabstop=2 shiftwidth=2
" autocmd BufNewFile,BufRead *.md set filetype=markdown " autocmd BufNewFile,BufRead *.md set filetype=markdown
" autocmd Filetype markdown set textwidth=0 " autocmd Filetype markdown set textwidth=0
" autocmd Filetype html set foldmarker=0 " autocmd Filetype html set foldmarker=0
autocmd BufNewFile,BufRead *.gd set expandtab! autocmd BufNewFile,BufRead *.gd set expandtab!
autocmd Filetype go set expandtab! sw=4
autocmd FileType javascript,python,lua set fdm=indent
autocmd Filetype markdown set commentstring=<!---\ %s\ -->
autocmd Filetype go set noexpandtab sw=4
" autocmd FileType go,html,java,javascript,python,lua set fdm=indent
" autocmd FileType go,html,java,javascript,javascriptreact,Jenkinsfile,python,lua set fdm=indent
autocmd FileType go,html,java,Jenkinsfile,python,lua set fdm=indent
" autocmd FileType html,javascript,Jenkinsfile,python,lua set fdm=indent
autocmd BufNewFile,BufRead *.gql setfiletype graphql
autocmd Filetype markdown let g:AutoPairs = {'(':')', '[':']', '{':'}','"':'"', "`":"`", '```':'```', '"""':'"""', "'''":"'''", "*":"*"}
" autocmd Filetype markdown map <F8> :LivedownToggle<CR> " autocmd Filetype markdown map <F8> :LivedownToggle<CR>
autocmd Filetype markdown let g:AutoPairs={'(':')', '[':']', '{':'}','"':'"', "`":"`", '```':'```', '"""':'"""', "'''":"'''","*":"*"} autocmd Filetype markdown let g:AutoPairs={'(':')', '[':']', '{':'}','"':'"', "`":"`", '```':'```', '"""':'"""', "'''":"'''","*":"*"}
autocmd Filetype markdown map <F8> :InstantMarkdownPreview<CR> autocmd Filetype markdown map <F8> :InstantMarkdownPreview<CR>
@ -77,6 +82,7 @@ autocmd Filetype markdown inoremap < <Esc><<A
autocmd Filetype markdown inoremap << < autocmd Filetype markdown inoremap << <
autocmd Filetype markdown inoremap > <Esc>>>A autocmd Filetype markdown inoremap > <Esc>>>A
autocmd Filetype markdown inoremap >> > autocmd Filetype markdown inoremap >> >
" autocmd Filetype markdown set commentstring=<!---\ %s\ -->
" format options [[[ " " format options [[[ "
" a = auto-format paragraphs " a = auto-format paragraphs
@ -88,16 +94,15 @@ autocmd Filetype markdown inoremap >> >
" v = break lines in insert " v = break lines in insert
" w = whitespace continues paragraph " w = whitespace continues paragraph
" ]]] format options " " ]]] format options "
" autocmd FileType markdown,tex,text set spell spelllang=en_us formatoptions=cjMqtvw
autocmd FileType markdown,tex,text set spell spelllang=en_us formatoptions=acjMqtvw
" autocmd FileType tex,text set spell spelllang=en_us formatoptions=acjMqtvw
" autocmd FileType markdown,tex,text set spell spelllang=en_us formatoptions=acjMqtvw
autocmd FileType markdown,tex,text set spell spelllang=en_us formatoptions=cjMqtvw
autocmd Filetype groovy,Jenkinsfile,taskdata set tw=0
autocmd Filetype json nnoremap <leader>j :%!python -m json.tool<CR> autocmd Filetype json nnoremap <leader>j :%!python -m json.tool<CR>
autocmd Filetype json set foldmethod=marker autocmd Filetype json set foldmethod=marker
autocmd Filetype racket set commentstring=;%s; autocmd Filetype racket set commentstring=;%s;
autocmd Filetype racket let g:AutoPairs = {'(':')', '[':']', '{':'}','"':'"', "`":"`", '```':'```', '"""':'"""', "'''":"'''"} autocmd Filetype racket let g:AutoPairs = {'(':')', '[':']', '{':'}','"':'"', "`":"`", '```':'```', '"""':'"""', "'''":"'''"}
autocmd FileType sh map <F8> :!clear && shellcheck %<CR> autocmd FileType sh map <F8> :!clear && shellcheck %<CR>
autocmd Filetype taskdata set tw=0
autocmd FileType tex set updatetime=1000 timeoutlen=300 tw=65
autocmd FileType tex set updatetime=1000 timeoutlen=300
autocmd FileType tex map <F8> :VimtexCompile<CR> autocmd FileType tex map <F8> :VimtexCompile<CR>
autocmd VimEnter *.tex VimtexCompile autocmd VimEnter *.tex VimtexCompile
autocmd VimLeave *.tex !tex-clean %:p autocmd VimLeave *.tex !tex-clean %:p
@ -172,18 +177,27 @@ Plug 'lervag/vimtex'
" au BufWritePost *.tex silent call Tex_RunLaTeX() " au BufWritePost *.tex silent call Tex_RunLaTeX()
au BufWritePost *.tex silent !pkill -USR1 xdvi.bin au BufWritePost *.tex silent !pkill -USR1 xdvi.bin
let g:Tex_MultipleCompileFormats = 'dvi,pdf' let g:Tex_MultipleCompileFormats = 'dvi,pdf'
" let g:vimtex_view_general_viewer = 'evince'
let g:vimtex_view_general_viewer = 'zathura' let g:vimtex_view_general_viewer = 'zathura'
let g:vimtex_quickfix_latexlog = {
\ 'overfull' : 0,
\ 'underfull' : 0,
\ 'global' : 0,
\ 'references' : 0,
\ 'unused' : 0,
\}
" let g:vimtex_quickfix_latexlog = {
" \ 'overfull' : 0,
" \ 'underfull' : 0,
" \ 'global' : 0,
" \ 'packages' : {
" \ 'biblatex' : 0,
" \ 'gensymb' : 0,
" \ },
" \ 'references' : 0,
" \ 'unused' : 0,
" \}
let g:vimtex_quickfix_ignore_filters = [
\'Overfull',
\]
let g:vimtex_quickfix_autoclose_after_keystrokes = 5 let g:vimtex_quickfix_autoclose_after_keystrokes = 5
" let g:vimtex_compiler_latexmk = {
let g:vimtex_compiler_latexmk = {
\ 'continuous' : 1,
\}
" \ 'continuous' : 0, " \ 'continuous' : 0,
" \}
{{ if not (eq .chezmoi.username "root") }} {{ if not (eq .chezmoi.username "root") }}
" auto-completion for various languages " auto-completion for various languages
@ -261,16 +275,19 @@ Plug 'jiangmiao/auto-pairs'
Plug 'henrik/vim-indexed-search' Plug 'henrik/vim-indexed-search'
Plug 'PotatoesMaster/i3-vim-syntax' Plug 'PotatoesMaster/i3-vim-syntax'
" vim file explorer " vim file explorer
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
Plug 'terryma/vim-multiple-cursors' Plug 'terryma/vim-multiple-cursors'
" let g:multi_cursor_select_all_word_key='<C-a>' " let g:multi_cursor_select_all_word_key='<C-a>'
let g:multi_cursor_exit_from_visual_mode=0 let g:multi_cursor_exit_from_visual_mode=0
let g:multi_cursor_exit_from_insert_mode=0 let g:multi_cursor_exit_from_insert_mode=0
Plug 'dag/vim-fish' Plug 'dag/vim-fish'
" live preview Markdown" " live preview Markdown"
" Plug 'shime/vim-livedown'
Plug 'suan/vim-instant-markdown', {'for': 'markdown'} Plug 'suan/vim-instant-markdown', {'for': 'markdown'}
let g:instant_markdown_autostart = 0 let g:instant_markdown_autostart = 0
let g:instant_markdown_port = 8888
" Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app & yarn install' }
" let g:mkdp_auto_start = 1
" let g:mkdp_browser = 'firefox'
" let g:mkdp_echo_preview_url = 1
" git helper " git helper
Plug 'tpope/vim-fugitive' Plug 'tpope/vim-fugitive'
" auto reload file " auto reload file
@ -292,11 +309,11 @@ Plug 'kana/vim-textobj-user'
Plug 'rbonvall/vim-textobj-latex' Plug 'rbonvall/vim-textobj-latex'
" swap words " swap words
Plug 'tommcdo/vim-exchange' Plug 'tommcdo/vim-exchange'
Plug 'scrooloose/nerdtree'
let NERDTreeQuitOnOpen=1
let NERDTreeShowHidden=1
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'junegunn/fzf.vim'
" Plug 'scrooloose/nerdtree'
" let NERDTreeQuitOnOpen=1
" let NERDTreeShowHidden=1
" Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
" Plug 'junegunn/fzf.vim'
Plug 'christoomey/vim-tmux-navigator' Plug 'christoomey/vim-tmux-navigator'
" mappings [[[ " " mappings [[[ "
@ -322,7 +339,23 @@ Plug 'junegunn/vim-easy-align'
" Start interactive EasyAlign for a motion/text object (e.g. gaip) " Start interactive EasyAlign for a motion/text object (e.g. gaip)
nmap ga <Plug>(EasyAlign) nmap ga <Plug>(EasyAlign)
Plug 'wlangstroth/vim-racket' Plug 'wlangstroth/vim-racket'
Plug 'neovimhaskell/haskell-vim'
Plug 'masukomi/vim-markdown-folding' Plug 'masukomi/vim-markdown-folding'
autocmd FileType markdown set foldexpr=NestedMarkdownFolds()
Plug 'cespare/vim-toml'
Plug 'dpelle/vim-LanguageTool'
" increment dates with C-a
Plug 'tpope/vim-speeddating'
Plug 'martinda/Jenkinsfile-vim-syntax'
Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' }
let g:go_fmt_command = ""
Plug 'buoto/gotests-vim'
Plug 'tomlion/vim-solidity'
Plug 'jparise/vim-graphql'
Plug 'maxmellon/vim-jsx-pretty'
Plug 'mlaursen/vim-react-snippets', { 'branch': 'main' }
Plug 'cristianoliveira/vim-react-html-snippets'
Plug 'jidn/vim-dbml'
" ]]] vim-plug " " ]]] vim-plug "
" Mappings [[[ " " Mappings [[[ "
@ -372,7 +405,8 @@ nnoremap <leader>dg ggdG
" delete entire line " delete entire line
nnoremap <leader>dl 0d$ nnoremap <leader>dl 0d$
" delete lines matching pattern " delete lines matching pattern
nnoremap <leader>dls :g//d<left><left>
" nnoremap <leader>dls :g//d<left><left>
nnoremap <leader>dls q:ig//d<left><left>
" show docstring for cur word " show docstring for cur word
nnoremap <leader>do :YcmCompleter GetDoc<CR> nnoremap <leader>do :YcmCompleter GetDoc<CR>
" delete line into system clipboard " delete line into system clipboard
@ -392,11 +426,15 @@ nnoremap <leader>fi :YcmCompleter FixIt<CR>
nnoremap <leader>ft :se ft?<CR> nnoremap <leader>ft :se ft?<CR>
" check todo's " check todo's
nnoremap <leader>ftd /TODO<CR> nnoremap <leader>ftd /TODO<CR>
nnoremap <leader>g :YcmCompleter GoTo<CR>
" nnoremap <leader>g :YcmCompleter GoTo<CR>
nnoremap <leader>g :vs \| YcmCompleter GoTo<CR>
" nnoremap <leader>gb <C-O>
nnoremap <leader>gb :Git blame<CR>
" vimdiff split " vimdiff split
nnoremap <leader>gd :Gvdiff nnoremap <leader>gd :Gvdiff
nnoremap <leader>gdh :Gvdiff HEAD~
nnoremap <leader>gdh :Gvdiff HEAD^
nnoremap <leader>gdm :Gvdiff master<CR> nnoremap <leader>gdm :Gvdiff master<CR>
nnoremap <leader>gdo :Gvdiff orig/master<CR>
" toggle search highlighting " toggle search highlighting
nnoremap <leader>h :set hlsearch! hlsearch?<CR> nnoremap <leader>h :set hlsearch! hlsearch?<CR>
" help " help
@ -404,9 +442,13 @@ nnoremap <leader>he :vert help
nnoremap <leader>ht :set tabstop=2 shiftwidth=2 expandtab<CR> nnoremap <leader>ht :set tabstop=2 shiftwidth=2 expandtab<CR>
nnoremap <leader>vhe :vert help nnoremap <leader>vhe :vert help
" don't add space when joining lines " " don't add space when joining lines "
nnoremap <leader>j gJ
" nnoremap <leader>j gJ
" jump forward
nnoremap <leader>j <C-I>
" join all paragraphs into single line " " join all paragraphs into single line "
nnoremap <leader>jl :set tw=9999999<CR>gggqG nnoremap <leader>jl :set tw=9999999<CR>gggqG
" jump back
nnoremap <leader>k <C-O>
" format current line " format current line
nnoremap <leader>l Vgq nnoremap <leader>l Vgq
" format this and next line " format this and next line
@ -416,6 +458,8 @@ nnoremap <leader>ll Vjgq
nnoremap <leader>m :vert Man nnoremap <leader>m :vert Man
" apply normal command to selection " apply normal command to selection
vnoremap <leader>n q:anorm vnoremap <leader>n q:anorm
" turn off autoformat"
nnoremap <leader>na :set spell spelllang=en_us formatoptions=cjMqtvw<CR>
nnoremap <leader>nt :NERDTree<CR> nnoremap <leader>nt :NERDTree<CR>
" check if in neovim " check if in neovim
nnoremap <leader>nv :echo has('nvim')<CR> nnoremap <leader>nv :echo has('nvim')<CR>
@ -434,17 +478,19 @@ nnoremap <leader>plu :PlugUpdate<CR>
" don't break lines " don't break lines
nnoremap <leader>py :set tw=0<CR> nnoremap <leader>py :set tw=0<CR>
" replace in next x lines " replace in next x lines
nnoremap <leader>r q:i.,.+s///g<ESC>Fsi
" nnoremap <leader>r q:i.,.+s///g<ESC>Fsi
" replace in line " replace in line
nnoremap <leader>rl q:i.s///g<left><left><left>
nnoremap <leader>r q:i.s///g<left><left><left>
" replace in visual selection " replace in visual selection
vnoremap <leader>r q:is///g<ESC>3ha
" replace in entire file
" nnoremap <leader>R q:i%s///g<ESC>2F/i
nnoremap <leader>ra q:i%s///g<ESC>2F/i
" remove italics tags " remove italics tags
nnoremap <leader>rmi :%s/<\/\?i>//g<CR> nnoremap <leader>rmi :%s/<\/\?i>//g<CR>
nnoremap <leader>rs :res
" reload vim config " reload vim config
nnoremap <leader>rv :source $MYVIMRC<CR> nnoremap <leader>rv :source $MYVIMRC<CR>
vnoremap <leader>r q:is///g<ESC>3ha
" replace in entire file
nnoremap <leader>R q:i%s///g<ESC>2F/i
vnoremap <leader>s :sort<CR> vnoremap <leader>s :sort<CR>
nnoremap <leader>sc :set spell spelllang=en_us<CR> nnoremap <leader>sc :set spell spelllang=en_us<CR>
" run current file in shell " run current file in shell
@ -460,6 +506,10 @@ nnoremap <leader>sys :set syn=sh<CR>
vnoremap <leader>t :!tac<CR> vnoremap <leader>t :!tac<CR>
" capitalize letter " capitalize letter
nnoremap <leader>u vU nnoremap <leader>u vU
" comment visual block
" nnoremap <leader>vcc V<leader>cc
" uncomment visual block
" nnoremap <leader>vcu V<leader>cu
" horizontal split " " horizontal split "
nnoremap <leader>vs :vs nnoremap <leader>vs :vs
" open vimrc in vertical split " open vimrc in vertical split
@ -560,21 +610,38 @@ autocmd Filetype c inoremap <localleader>uc unsigned char
autocmd BufNewFile,BufRead *.h nnoremap <localleader>x 0iextern <Esc>f{hc$;<Esc> autocmd BufNewFile,BufRead *.h nnoremap <localleader>x 0iextern <Esc>f{hc$;<Esc>
autocmd BufNewFile,BufRead ~/.habitctl/log nnoremap <localleader>d Gy3kGp5e<C-V>3j<C-a>$rnj.j.j$.
autocmd BufNewFile,BufRead ~/.habitctl/log nnoremap <localleader>n $rn
autocmd BufNewFile,BufRead ~/.habitctl/log nnoremap <localleader>y $ry
autocmd Filetype fish inoremap <localleader>1 $argv[1] autocmd Filetype fish inoremap <localleader>1 $argv[1]
autocmd Filetype fish inoremap <localleader>2 $argv[2] autocmd Filetype fish inoremap <localleader>2 $argv[2]
autocmd Filetype javascript inoremap <localleader>x process.exit() autocmd Filetype javascript inoremap <localleader>x process.exit()
" autocmd Filetype markdown inoremap bc because
autocmd Filetype markdown inoremap <localleader>cb - [ ]
autocmd Filetype markdown inoremap <localleader>c - [ ]
autocmd Filetype markdown nnoremap <localleader>e 0f[lr<Space>
autocmd Filetype markdown inoremap <localleader>t TODO:
autocmd Filetype markdown vnoremap <localleader>r q:is/\[x/[ /g<Esc><CR>:set nohlsearch<CR>
autocmd Filetype markdown vnoremap <localleader>x q:is/\[ /[x/g<Esc><CR>:set nohlsearch<CR>
autocmd Filetype markdown nnoremap <localleader>x 0f[lrx autocmd Filetype markdown nnoremap <localleader>x 0f[lrx
" nnoremap <localleader>x 0f[lrx " nnoremap <localleader>x 0f[lrx
autocmd Filetype go nnoremap <localleader>f :GoTestFunc<CR>
autocmd Filetype go nnoremap <localleader>l :GoLint<CR>
autocmd Filetype go nnoremap <localleader>m :GoTests<CR>
autocmd Filetype go nnoremap <localleader>r yawq:iGoRename <Esc>p
autocmd Filetype go nnoremap <localleader>t :GoTest<CR>
autocmd Filetype go-template inoremap <localleader>e {{"{{ else }}"}} autocmd Filetype go-template inoremap <localleader>e {{"{{ else }}"}}
autocmd Filetype go-template inoremap <localleader>hd {{"{{ .chezmoi.homeDir }}"}} autocmd Filetype go-template inoremap <localleader>hd {{"{{ .chezmoi.homeDir }}"}}
autocmd Filetype go-template nnoremap <localleader>fp :%s/{{"{{{"}}/[[[/g<CR>:%s/}}}/]]]/g<CR> autocmd Filetype go-template nnoremap <localleader>fp :%s/{{"{{{"}}/[[[/g<CR>:%s/}}}/]]]/g<CR>
autocmd Filetype Jenkinsfile nnoremap <localleader>q :.s/"/'/g<CR>
autocmd Filetype Jenkinsfile vnoremap <localleader>q :s/"/'/g<CR>
autocmd Filetype python inoremap <localleader>bp breakpoint() autocmd Filetype python inoremap <localleader>bp breakpoint()
autocmd Filetype python inoremap <localleader>ip from pprint import pprint
autocmd Filetype python inoremap <localleader>s self. autocmd Filetype python inoremap <localleader>s self.
" ]]] Local Mappings " " ]]] Local Mappings "

9
dot_xinitrc.tmpl

@ -1,5 +1,6 @@
xrandr --setprovideroutputsource modesetting NVIDIA-0 xrandr --setprovideroutputsource modesetting NVIDIA-0
[[ -f ~/.Xresources ]] && xrdb -merge ~/.Xresources
# [[ -f ~/.Xresources ]] && xrdb -merge ~/.Xresources
[[ -f ~/.Xresources ]] && xrdb ~/.Xresources
# xrandr --auto # xrandr --auto
{{ if .ext_kb }} {{ if .ext_kb }}
xmodmap ~/.Xmodmap xmodmap ~/.Xmodmap
@ -7,7 +8,8 @@ xmodmap ~/.Xmodmap
# xmodmap ~/.Xmodmap-laptop # xmodmap ~/.Xmodmap-laptop
xmodmap ~/tmp/.Xmodmap-laptop xmodmap ~/tmp/.Xmodmap-laptop
{{ end }} {{ end }}
redshift -O 2000
# redshift -O 2000
redshift -O 3000
xset r rate $XSET_DELAY $XSET_RATE xset r rate $XSET_DELAY $XSET_RATE
# exec /home/kevin/Downloads/dwm/reload-dwm.sh # exec /home/kevin/Downloads/dwm/reload-dwm.sh
@ -19,7 +21,8 @@ numlockx on &
start-pulseaudio-x11 & start-pulseaudio-x11 &
# wal -i "$(/home/kevin/scripts/shuffler \"$HOME/Pictures/Backgrounds/dim/non-editing\")" && /home/kevin/st/make-st.sh & # wal -i "$(/home/kevin/scripts/shuffler \"$HOME/Pictures/Backgrounds/dim/non-editing\")" && /home/kevin/st/make-st.sh &
wal -i $(/home/kevin/scripts/shuffler "$HOME/Pictures/Backgrounds/dim/non-editing") &
# wal -i $(/home/kevin/scripts/shuffler "$HOME/Pictures/Backgrounds/dim/non-editing") &
wal -i $(/home/kevin/scripts/shuffler "$HOME/Pictures/Backgrounds/dim/editing") &
{{ end }} {{ end }}
exec i3 exec i3

2
private_dot_calcurse/conf

@ -1,4 +1,4 @@
appearance.calendarview=weekly
appearance.calendarview=monthly
appearance.compactpanels=yes appearance.compactpanels=yes
appearance.defaultpanel=calendar appearance.defaultpanel=calendar
appearance.layout=3 appearance.layout=3

9
scripts/executable_backup

@ -1,6 +1,7 @@
#!/bin/bash #!/bin/bash
mount_dir="/run/media/kevin/backup-hd"
# mount_dir="/run/media/kevin/backup-hd"
mount_dir="/mnt/linux-files-2"
# Backup destination # Backup destination
case $1 in case $1 in
nzxt ) nzxt )
@ -23,9 +24,9 @@ case $2 in
sudo tar -czpvf "$backup_file" --exclude-from="$exclude_dirs_list" --exclude=/home / sudo tar -czpvf "$backup_file" --exclude-from="$exclude_dirs_list" --exclude=/home /
;; ;;
full )
sudo rsync -PraAX --exclude-from="$exclude_dirs_list_full" / "$backup_dest/full"
;;
# full )
# sudo rsync -PraAX --exclude-from="$exclude_dirs_list_full" / "$backup_dest/full"
# ;;
home ) home )
sudo rsync -PraAX --exclude-from="$exclude_dirs_list_full" /home "$backup_dest/full" sudo rsync -PraAX --exclude-from="$exclude_dirs_list_full" /home "$backup_dest/full"
esac esac

3
scripts/executable_dmenu-twitch

@ -0,0 +1,3 @@
#!/bin/bash
cat ~/Documents/twitch-emotes.md | dmenu -i | sed -z 's/\n/ /' | xclip -selection clipboard

3
scripts/executable_spotify-clean

@ -0,0 +1,3 @@
#!/bin/dash
sqlite3 ~/.cache/spotify/mercury.db 'VACUUM;' && spotify

101
scripts/executable_ticker

@ -0,0 +1,101 @@
#!/usr/bin/env bash
set -e
LANG=C
LC_NUMERIC=C
SYMBOLS=("$@")
if ! $(type jq > /dev/null 2>&1); then
echo "'jq' is not in the PATH. (See: https://stedolan.github.io/jq/)"
exit 1
fi
if [ -z "$SYMBOLS" ]; then
echo "Usage: ./ticker.sh AAPL MSFT GOOG BTC-USD"
exit
fi
FIELDS=(symbol marketState regularMarketPrice regularMarketChange regularMarketChangePercent \
preMarketPrice preMarketChange preMarketChangePercent postMarketPrice postMarketChange postMarketChangePercent)
API_ENDPOINT="https://query1.finance.yahoo.com/v7/finance/quote?lang=en-US&region=US&corsDomain=finance.yahoo.com"
if [ -z "$NO_COLOR" ]; then
: "${COLOR_BOLD:=\e[1;37m}"
: "${COLOR_GREEN:=\e[32m}"
: "${COLOR_RED:=\e[31m}"
: "${COLOR_RESET:=\e[00m}"
fi
symbols=$(IFS=,; echo "${SYMBOLS[*]}")
fields=$(IFS=,; echo "${FIELDS[*]}")
results=$(curl --silent "$API_ENDPOINT&fields=$fields&symbols=$symbols" \
| jq '.quoteResponse .result')
query () {
echo $results | jq -r ".[] | select(.symbol == \"$1\") | .$2"
}
for symbol in $(IFS=' '; echo "${SYMBOLS[*]}" | tr '[:lower:]' '[:upper:]'); do
marketState="$(query $symbol 'marketState')"
if [ -z $marketState ]; then
printf 'No results for symbol "%s"\n' $symbol
continue
fi
preMarketChange="$(query $symbol 'preMarketChange')"
postMarketChange="$(query $symbol 'postMarketChange')"
if [ $marketState == "PRE" ] \
&& [ $preMarketChange != "0" ] \
&& [ $preMarketChange != "null" ]; then
nonRegularMarketSign='*'
price=$(query $symbol 'preMarketPrice')
diff=$preMarketChange
percent=$(query $symbol 'preMarketChangePercent')
elif [ $marketState != "REGULAR" ] \
&& [ $postMarketChange != "0" ] \
&& [ $postMarketChange != "null" ]; then
nonRegularMarketSign='*'
price=$(query $symbol 'postMarketPrice')
diff=$postMarketChange
percent=$(query $symbol 'postMarketChangePercent')
else
nonRegularMarketSign=''
price=$(query $symbol 'regularMarketPrice')
diff=$(query $symbol 'regularMarketChange')
percent=$(query $symbol 'regularMarketChangePercent')
fi
if [ "$diff" == "0" ]; then
color=
elif ( echo "$diff" | grep -q ^- ); then
color=$COLOR_RED
else
color=$COLOR_GREEN
fi
if [ "$price" != "null" ]; then
# printf "%-10s$COLOR_BOLD%8.2f$COLOR_RESET" $symbol $price
# printf "$color%10.2f%12s$COLOR_RESET" $diff $(printf "(%.2f%%)" $percent)
# printf " %s\n" "$nonRegularMarketSign"
# echo \$$price
# echo $price
hour=$(date +"%H")
if [[ "$symbol" == "USDCAD=X" ]]; then
printf "%0.4f\n" "$price"
elif [[ "$symbol" == "BTC-USD" || "$symbol" == "ETH-USD" ]]; then
# echo "$price" | cut -c 2-3
echo "$price" | cut -c -3
elif (( $(echo "$price > 10000" | bc -l) )); then
printf "%'0.0f\n" "$price" | cut -c 2-4
# elif (( $(echo "$price < 1" | bc -l) )); then
# printf "%0.3f\n" "$price"
else
printf "%0.2f\n" "$price" | cut -c 3-
# printf "%0.2f\n" "$price"
fi
fi
done

10
scripts/executable_twem

@ -1,7 +1,13 @@
#!/bin/bash
#!/bin/dash
# for i in {1..4} ; do
# xdotool key Left
# done
sleep .3 sleep .3
xdotool type 'https://twem.gq/.png' xdotool type 'https://twem.gq/.png'
for i in {1..4} ; do
i=0
while [ "$i" -ne 4 ]
do
xdotool key Left xdotool key Left
i=$((i + 1))
done done

8
scripts/executable_twitchy-game

@ -0,0 +1,8 @@
#!/usr/bin/fish
set TEMP_CSV /tmp/twitchy-fortnite.csv
set HEADER "Game,Channel,Viewers,Uptime,Title"
echo $HEADER > $TEMP_CSV
twitchy --non-interactive >> $TEMP_CSV
xsv search -is1 $argv[1] $TEMP_CSV | xsv sort -NRs3 | xsv table

1
txt/exclude-dirs-backup-full.txt

@ -1,4 +1,5 @@
/dev/* /dev/*
/home/kevin/.cache/*
/lost+found /lost+found
/media/* /media/*
/mnt/* /mnt/*

3
txt/exclude-dirs-backup.txt.tmpl

@ -19,3 +19,6 @@
/tmp /tmp
/var/cache/pacman /var/cache/pacman
/var/lib/systemd/coredump /var/lib/systemd/coredump
/var/lib/dhcpcd/proc
/var/lib/docker/overlay2
/var/log/journal

54
txt/nzxt-all.txt

@ -2,14 +2,18 @@ acestream-engine
acestream-player acestream-player
alsa-utils alsa-utils
android-file-transfer android-file-transfer
angular-cli
antimicro antimicro
apache apache
arch-install-scripts arch-install-scripts
arno-iptables-firewall arno-iptables-firewall
asciinema
asp asp
audacity
aurvote aurvote
autoconf autoconf
automake automake
baka-mplayer
bash bash
bat bat
bc bc
@ -19,7 +23,7 @@ bison
bookworm bookworm
broadcom-wl broadcom-wl
browserpass browserpass
bukuserver
buku-git
bzip2 bzip2
calcurse calcurse
certbot certbot
@ -30,6 +34,7 @@ cliqz-bin
cloc cloc
cmake cmake
cmatrix cmatrix
code
colordiff colordiff
compton-tryone-git compton-tryone-git
coreutils coreutils
@ -37,6 +42,7 @@ cowsay
cronie cronie
cryptsetup cryptsetup
curseradio-git curseradio-git
dash
dateutils dateutils
device-mapper device-mapper
dhcpcd dhcpcd
@ -44,10 +50,12 @@ dialog
diffutils diffutils
discord discord
dmenu dmenu
docker
doxygen doxygen
dragon-drag-and-drop-git dragon-drag-and-drop-git
dunst dunst
e2fsprogs e2fsprogs
eclipse-java
ecryptfs-simple ecryptfs-simple
ecryptfs-utils ecryptfs-utils
electrum electrum
@ -55,6 +63,7 @@ emacs
encfs encfs
evince evince
fakeroot fakeroot
fbreader
fd fd
feh feh
ffcast ffcast
@ -66,6 +75,7 @@ fish
flashplugin flashplugin
flashplugin-focusfix flashplugin-focusfix
flex flex
flowblade
fortune-mod fortune-mod
fzf fzf
gawk gawk
@ -75,14 +85,13 @@ gdb
gettext gettext
gimp gimp
git git
git-lfs
glibc glibc
godot-bin
gotop-bin gotop-bin
gradle gradle
grep grep
grub grub
gzip gzip
habitctl-git
handbrake handbrake
hdf5 hdf5
heroku-cli heroku-cli
@ -103,9 +112,12 @@ intellij-idea-community-edition
iproute2 iproute2
iputils iputils
irrlicht irrlicht
itch
jdk-openjdk
jfsutils jfsutils
jmtpfs jmtpfs
jp2a jp2a
jre-openjdk-headless
junit junit
kitty kitty
less less
@ -116,10 +128,11 @@ licenses
linux linux
linux-firmware linux-firmware
linux-headers linux-headers
linux-kevin
linux-kevin-headers
linux-lts
linux-lts-headers
linux-nzxt linux-nzxt
linux-nzxt-headers linux-nzxt-headers
lmms
logrotate logrotate
lolcat lolcat
lsd lsd
@ -127,6 +140,7 @@ lsof
lua-cjson lua-cjson
lvm2 lvm2
lxappearance lxappearance
maim
make make
man-db man-db
man-pages man-pages
@ -155,9 +169,12 @@ numlockx
nvidia-dkms nvidia-dkms
nvidia-settings nvidia-settings
nx3-all nx3-all
obs-studio
openshot openshot
openssh openssh
openvpn
os-prober os-prober
otf-ipafont
p7zip p7zip
pacman pacman
pacman-contrib pacman-contrib
@ -170,19 +187,27 @@ pdfgrep
peaclock peaclock
peek peek
perl perl
perl-file-mimeinfo
perl-image-exiftool perl-image-exiftool
pfetch-git
pgadmin4 pgadmin4
pipes.sh pipes.sh
pkgconf pkgconf
podman
postgresql postgresql
procps-ng procps-ng
psmisc psmisc
pulseaudio pulseaudio
pycp pycp
pyenv
pyside2 pyside2
python-dbus python-dbus
python-discord
python-numpy python-numpy
python-pip python-pip
python-praw
python-prettytable
python-pynvim
python-pywal python-pywal
python-setuptools python-setuptools
python-tinydb python-tinydb
@ -210,6 +235,7 @@ qt5-scxml
qt5-serialbus qt5-serialbus
qt5-serialport qt5-serialport
qt5-speech qt5-speech
qt5-styleplugins
qt5-tools qt5-tools
qt5-translations qt5-translations
qt5-virtualkeyboard qt5-virtualkeyboard
@ -219,25 +245,31 @@ qt5-webglplugin
qt5-websockets qt5-websockets
qt5-webview qt5-webview
qt5-xmlpatterns qt5-xmlpatterns
racket
ranger ranger
redshift redshift
reiserfsprogs reiserfsprogs
riot-desktop riot-desktop
ripgrep ripgrep
robo3t-bin robo3t-bin
rot13
rsync rsync
rxvt-unicode-patched
runelite
rxvt-unicode-pixbuf-patched
s-nail s-nail
sc-im sc-im
scrcpy
scrot scrot
sdcv sdcv
sed sed
shadow shadow
shadowfox-updater
shellcheck shellcheck
simple-mtpfs simple-mtpfs
sl sl
slack-desktop-dark slack-desktop-dark
smartmontools smartmontools
soundcloud-dl-git
spatialindex spatialindex
spotify spotify
spotify-now-git spotify-now-git
@ -263,12 +295,11 @@ tasksh
tcpdump tcpdump
termdown termdown
texinfo texinfo
texlive-bibtexextra
texlive-core texlive-core
texlive-local-adjustbox texlive-local-adjustbox
texlive-local-algorithmicx texlive-local-algorithmicx
texlive-local-algorithms texlive-local-algorithms
texlive-local-biblatex
texlive-local-biblatex-apa
texlive-local-capt-of texlive-local-capt-of
texlive-local-collectbox texlive-local-collectbox
texlive-local-csquotes texlive-local-csquotes
@ -281,11 +312,11 @@ texlive-local-forest
texlive-local-gfsdidot texlive-local-gfsdidot
texlive-local-ifmtarg texlive-local-ifmtarg
texlive-local-inlinedef texlive-local-inlinedef
texlive-local-logreq
texlive-local-multirow texlive-local-multirow
texlive-local-numprint texlive-local-numprint
texlive-local-pgfopts texlive-local-pgfopts
texlive-local-pgfplots texlive-local-pgfplots
texlive-local-preprint
texlive-local-siunitx texlive-local-siunitx
texlive-local-sourcesanspro texlive-local-sourcesanspro
texlive-local-tcolorbox texlive-local-tcolorbox
@ -296,11 +327,11 @@ texlive-local-tkz-euclide
texlive-local-trimspaces texlive-local-trimspaces
texlive-local-was texlive-local-was
texlive-local-xifthen texlive-local-xifthen
texlive-localmanager-git
the_silver_searcher the_silver_searcher
thunderbird thunderbird
tidy tidy
time time
tk
tmux tmux
tor tor
traceroute traceroute
@ -309,6 +340,7 @@ transmission-gtk
trizen trizen
ttf-dejavu ttf-dejavu
ttf-font-awesome ttf-font-awesome
ttf-hack
ttf-joypixels ttf-joypixels
ttf-ubuntu-font-family ttf-ubuntu-font-family
udisks2 udisks2
@ -386,6 +418,7 @@ xorg-xvinfo
xorg-xwd xorg-xwd
xorg-xwininfo xorg-xwininfo
xorg-xwud xorg-xwud
xsv
xvkbd xvkbd
yad yad
yay yay
@ -396,3 +429,4 @@ zathura-pdf-mupdf
zbar zbar
zip zip
zsh zsh
zulip-desktop-git

31
txt/nzxt-aur.txt

@ -1,30 +1,30 @@
acestream-engine acestream-engine
acestream-player acestream-player
angular-cli
antimicro antimicro
arno-iptables-firewall arno-iptables-firewall
aurvote aurvote
bear bear
bukuserver
buku-git
chromium-widevine chromium-widevine
cliqz-bin cliqz-bin
compton-tryone-git compton-tryone-git
curseradio-git curseradio-git
dragon-drag-and-drop-git dragon-drag-and-drop-git
eclipse-java
ecryptfs-simple ecryptfs-simple
ffcast ffcast
flashplugin-focusfix flashplugin-focusfix
godot-bin
flowblade
gotop-bin gotop-bin
habitctl-git
heroku-cli heroku-cli
htop-vim-git htop-vim-git
i3-gaps-rounded i3-gaps-rounded
i3blocks-git i3blocks-git
insomnia insomnia
itch
jmtpfs jmtpfs
libavutil-52 libavutil-52
linux-kevin
linux-kevin-headers
linux-nzxt linux-nzxt
linux-nzxt-headers linux-nzxt-headers
lua-cjson lua-cjson
@ -35,26 +35,32 @@ nerd-fonts-dejavu-complete
nerd-fonts-hack nerd-fonts-hack
nx3-all nx3-all
peaclock peaclock
pfetch-git
pipes.sh pipes.sh
pycp pycp
python-discord
python-tinydb python-tinydb
qdirstat qdirstat
robo3t-bin robo3t-bin
rxvt-unicode-patched
rot13
runelite
rxvt-unicode-pixbuf-patched
sc-im sc-im
scrcpy
shadowfox-updater
simple-mtpfs simple-mtpfs
slack-desktop-dark slack-desktop-dark
soundcloud-dl-git
spotify spotify
spotify-now-git spotify-now-git
steamos-xpad-dkms steamos-xpad-dkms
surf
systemd-numlockontty systemd-numlockontty
taskopen taskopen
tasksh tasksh
texlive-local-adjustbox texlive-local-adjustbox
texlive-local-algorithmicx texlive-local-algorithmicx
texlive-local-algorithms texlive-local-algorithms
texlive-local-biblatex
texlive-local-biblatex-apa
texlive-local-capt-of texlive-local-capt-of
texlive-local-collectbox texlive-local-collectbox
texlive-local-csquotes texlive-local-csquotes
@ -67,11 +73,11 @@ texlive-local-forest
texlive-local-gfsdidot texlive-local-gfsdidot
texlive-local-ifmtarg texlive-local-ifmtarg
texlive-local-inlinedef texlive-local-inlinedef
texlive-local-logreq
texlive-local-multirow texlive-local-multirow
texlive-local-numprint texlive-local-numprint
texlive-local-pgfopts texlive-local-pgfopts
texlive-local-pgfplots texlive-local-pgfplots
texlive-local-preprint
texlive-local-siunitx texlive-local-siunitx
texlive-local-sourcesanspro texlive-local-sourcesanspro
texlive-local-tcolorbox texlive-local-tcolorbox
@ -82,13 +88,16 @@ texlive-local-tkz-euclide
texlive-local-trimspaces texlive-local-trimspaces
texlive-local-was texlive-local-was
texlive-local-xifthen texlive-local-xifthen
texlive-localmanager-git
trizen trizen
urxvt-resize-font-git urxvt-resize-font-git
vidir vidir
weechat-vimode-git weechat-vimode-git
wego wego
wpa_actiond wpa_actiond
xbindkeys
xf86-input-keyboard
xf86-input-mouse
xsv
xvkbd xvkbd
yad
yay yay
zulip-desktop-git

33
txt/nzxt-pkgs.txt

@ -2,9 +2,12 @@ alsa-utils
android-file-transfer android-file-transfer
apache apache
arch-install-scripts arch-install-scripts
asciinema
asp asp
audacity
autoconf autoconf
automake automake
baka-mplayer
bash bash
bat bat
bc bc
@ -21,11 +24,13 @@ chromium
cloc cloc
cmake cmake
cmatrix cmatrix
code
colordiff colordiff
coreutils coreutils
cowsay cowsay
cronie cronie
cryptsetup cryptsetup
dash
dateutils dateutils
device-mapper device-mapper
dhcpcd dhcpcd
@ -33,6 +38,7 @@ dialog
diffutils diffutils
discord discord
dmenu dmenu
docker
doxygen doxygen
dunst dunst
e2fsprogs e2fsprogs
@ -42,6 +48,7 @@ emacs
encfs encfs
evince evince
fakeroot fakeroot
fbreader
fd fd
feh feh
file file
@ -60,6 +67,7 @@ gdb
gettext gettext
gimp gimp
git git
git-lfs
glibc glibc
gradle gradle
grep grep
@ -80,8 +88,10 @@ intellij-idea-community-edition
iproute2 iproute2
iputils iputils
irrlicht irrlicht
jdk-openjdk
jfsutils jfsutils
jp2a jp2a
jre-openjdk-headless
junit junit
kitty kitty
less less
@ -91,12 +101,16 @@ licenses
linux linux
linux-firmware linux-firmware
linux-headers linux-headers
linux-lts
linux-lts-headers
lmms
logrotate logrotate
lolcat lolcat
lsd lsd
lsof lsof
lvm2 lvm2
lxappearance lxappearance
maim
make make
man-db man-db
man-pages man-pages
@ -119,9 +133,12 @@ ntp
numlockx numlockx
nvidia-dkms nvidia-dkms
nvidia-settings nvidia-settings
obs-studio
openshot openshot
openssh openssh
openvpn
os-prober os-prober
otf-ipafont
p7zip p7zip
pacman pacman
pacman-contrib pacman-contrib
@ -133,17 +150,23 @@ pcmanfm
pdfgrep pdfgrep
peek peek
perl perl
perl-file-mimeinfo
perl-image-exiftool perl-image-exiftool
pgadmin4 pgadmin4
pkgconf pkgconf
podman
postgresql postgresql
procps-ng procps-ng
psmisc psmisc
pulseaudio pulseaudio
pyenv
pyside2 pyside2
python-dbus python-dbus
python-numpy python-numpy
python-pip python-pip
python-praw
python-prettytable
python-pynvim
python-pywal python-pywal
python-setuptools python-setuptools
qalculate-gtk qalculate-gtk
@ -169,6 +192,7 @@ qt5-scxml
qt5-serialbus qt5-serialbus
qt5-serialport qt5-serialport
qt5-speech qt5-speech
qt5-styleplugins
qt5-tools qt5-tools
qt5-translations qt5-translations
qt5-virtualkeyboard qt5-virtualkeyboard
@ -178,6 +202,7 @@ qt5-webglplugin
qt5-websockets qt5-websockets
qt5-webview qt5-webview
qt5-xmlpatterns qt5-xmlpatterns
racket
ranger ranger
redshift redshift
reiserfsprogs reiserfsprogs
@ -201,7 +226,6 @@ steam-native-runtime
stow stow
subtitleeditor subtitleeditor
sudo sudo
surf
sxiv sxiv
sysfsutils sysfsutils
sysstat sysstat
@ -211,11 +235,13 @@ task
tcpdump tcpdump
termdown termdown
texinfo texinfo
texlive-bibtexextra
texlive-core texlive-core
the_silver_searcher the_silver_searcher
thunderbird thunderbird
tidy tidy
time time
tk
tmux tmux
tor tor
traceroute traceroute
@ -223,6 +249,7 @@ transmission-cli
transmission-gtk transmission-gtk
ttf-dejavu ttf-dejavu
ttf-font-awesome ttf-font-awesome
ttf-hack
ttf-joypixels ttf-joypixels
ttf-ubuntu-font-family ttf-ubuntu-font-family
udisks2 udisks2
@ -242,12 +269,9 @@ wireless_tools
wkhtmltopdf wkhtmltopdf
wpa_supplicant wpa_supplicant
xautomation xautomation
xbindkeys
xclip xclip
xdotool xdotool
xf86-input-evdev xf86-input-evdev
xf86-input-keyboard
xf86-input-mouse
xf86-input-synaptics xf86-input-synaptics
xf86-input-vmmouse xf86-input-vmmouse
xf86-input-void xf86-input-void
@ -295,6 +319,7 @@ xorg-xvinfo
xorg-xwd xorg-xwd
xorg-xwininfo xorg-xwininfo
xorg-xwud xorg-xwud
yad
youtube-dl youtube-dl
youtube-viewer youtube-viewer
zathura zathura

Loading…
Cancel
Save