185 Commits

Author SHA1 Message Date
Michael Chalupiak
b681202482 Merge branch 'master' into arch-laptop 2026-01-30 19:27:45 -05:00
Michael Chalupiak
a2c7b5033a Add way more to the 'macs 2026-01-30 19:24:25 -05:00
Michael Chalupiak
cc5246f38b Updated doom emacs 2026-01-26 01:05:03 -05:00
Michael Chalupiak
1e8ce88613 Merge remote-tracking branch 'origin' into arch-laptop 2026-01-24 21:34:58 -05:00
Michael Chalupiak
f2fa6c1267 updates 2026-01-24 21:32:30 -05:00
Michael Chalupiak
42fe89b22b Merge branch 'master' into arch-laptop 2026-01-19 15:46:48 -05:00
Michael Chalupiak
ce01877872 Merge remote-tracking branch 'origin/master' 2026-01-18 00:54:38 -05:00
Michael Chalupiak
a3412c9fdf more emacs tweaks 2026-01-18 00:51:56 -05:00
Michael Chalupiak
352e5e81fc Merge branch 'master' into arch-laptop 2026-01-17 02:13:36 -05:00
Michael Chalupiak
66ab2ea83e updated doom config 2026-01-17 02:13:20 -05:00
Michael Chalupiak
2d1a11ea40 new emacs config! 2026-01-17 02:09:04 -05:00
Michael Chalupiak
bfd76704c1 Merge branch 'master' into arch-laptop 2026-01-10 21:42:21 -05:00
Michael Chalupiak
e6a0d0892f fixed doom indenting 2026-01-10 01:51:08 -05:00
Michael Chalupiak
a6c2f0332c Merge branch 'master' into arch-laptop 2026-01-09 00:49:56 -05:00
Michael Chalupiak
d9d0c8fe3e emacs config 2026-01-09 00:47:51 -05:00
Michael Chalupiak
23146bf866 Merge branch 'master' into arch-laptop 2026-01-07 15:17:10 -05:00
Michael Chalupiak
ef1981d06b multicursor (good this time) 2025-12-26 11:40:48 -05:00
Michael Chalupiak
87a948d516 merge master 2025-12-19 14:26:13 -05:00
Michael Chalupiak
f60dd72912 Small vim config changes 2025-12-19 14:25:00 -05:00
Michael Chalupiak
70ff268d4a Merge branch 'master' into arch-laptop 2025-11-14 12:57:33 -05:00
Michael Chalupiak
458a2dd1d6 auto colorscheme for kakoune 2025-11-14 12:54:18 -05:00
Michael Chalupiak
2b86bb9142 merge 2025-11-14 00:14:06 -05:00
Michael Chalupiak
16169fbab4 merge 2025-11-14 00:11:07 -05:00
Michael Chalupiak
792c4d50ce Merge branch 'master' into arch-laptop 2025-09-24 18:23:18 -04:00
Michael Chalupiak
367244a53d Update to neovim and ghostty theme 2025-09-24 18:22:28 -04:00
Michael Chalupiak
30efa5fd97 Merge branch 'master' into arch-laptop
merging
2025-09-18 11:29:27 -04:00
Michael Chalupiak
93361624d7 neovim hex editor 2025-09-18 11:28:54 -04:00
Michael Chalupiak
f62beda403 gitignore laptop 2025-09-18 11:28:03 -04:00
Michael Chalupiak
1f48c690a5 new nvim 2025-08-30 17:47:45 -04:00
Michael Chalupiak
6dcd713273 Actually removing telescope (snacks.picker for the win) 2025-08-29 12:18:16 -04:00
Michael Chalupiak
a177955e85 Small additions to snacks.picker 2025-08-29 11:58:09 -04:00
Michael Chalupiak
c8a110b9ba Changed from telescope to snacks.picker, also now using nord 2025-08-29 11:50:23 -04:00
Michael Chalupiak
449f2dc890 Added diagnostic toggle 2025-08-24 23:01:59 -04:00
Michael Chalupiak
005f77cdbf Added leap.nvim 2025-08-24 22:51:17 -04:00
Michael Chalupiak
cf051a191f Optimized neovim config 2025-08-24 02:58:30 -04:00
Michael Chalupiak
1114797040 removed tmux plugins 2025-08-23 15:27:51 -04:00
Michael Chalupiak
d3ee528e2b fix opening config 2025-08-23 14:41:02 -04:00
Michael Chalupiak
1f5f04cef1 Add neogit to neovim config and change theme to xcode 2025-08-18 19:29:30 -04:00
Michael Chalupiak
88b5ef02f5 .bashrc 2025-08-17 14:35:56 -04:00
Michael Chalupiak
04da38c6a2 Merge remote-tracking branch 'refs/remotes/github/master' 2025-08-17 14:18:27 -04:00
Michael Chalupiak
bce85fa1a7 move nvim config 2025-08-17 14:17:37 -04:00
Michael Chalupiak
34f693c045 merge 2025-08-17 11:35:14 -04:00
Michael Chalupiak
4f9f7e548e Merge branch 'macmini'
Merging neovim config
2025-08-17 11:32:58 -04:00
Michael Chalupiak
a62d036c10 bash_profile change 2025-08-17 11:31:29 -04:00
Michael Chalupiak
59dd7303af Merge branch 'macmini'
New neovim config
2025-08-17 11:28:03 -04:00
Michael Chalupiak
3ebc1b414c New neovim config 2025-08-17 11:14:52 -04:00
Michael Chalupiak
ec8260daaf back to vim as editor 2025-08-15 22:00:27 -04:00
Michael Chalupiak
3f2d0991c2 tmux for konsole config 2025-07-12 14:10:21 -04:00
Michael Chalupiak
0e68d3dca3 merge' 2025-07-09 23:41:36 -04:00
Michael Chalupiak
43061705ce more settings 2025-07-09 23:17:25 -04:00
Michael Chalupiak
14031539d8 kde settings 2025-07-09 20:31:24 -04:00
Michael Chalupiak
5adca4c8e2 Merge branch 'master' into arch-laptop 2025-07-02 22:56:20 -04:00
Michael Chalupiak
8f23c730a6 changed default editor 2025-06-03 18:11:23 -04:00
Michael Chalupiak
72a49d5e1c helix config 2025-06-03 17:43:31 -04:00
Michael Chalupiak
3493a2287b Merge branch 'master' into arch-laptop 2025-05-25 15:15:19 -04:00
Michael Chalupiak
eb8fe65fa9 kakoune updates 2025-05-25 15:15:04 -04:00
Michael Chalupiak
3dd9b60f5f merge error in bashrc 2025-04-04 11:46:29 -04:00
Michael Chalupiak
2a40065939 Merge branch 'master' into arch-laptop 2025-04-04 11:42:26 -04:00
Michael Chalupiak
0ca4a99af1 back to kakoune, with new and improved colors 2025-04-04 11:42:16 -04:00
Michael Chalupiak
ec424125e1 merge 2025-04-03 15:20:49 -04:00
Michael Chalupiak
f142308811 nvim multicursor 2025-04-03 15:19:02 -04:00
Michael Chalupiak
7a9f0f6f47 more nvim 2025-04-03 15:17:40 -04:00
Michael Chalupiak
6a57e95895 back to vim 2025-04-03 11:51:50 -04:00
Michael Chalupiak
723895373e merge 2025-04-03 11:33:46 -04:00
Michael Chalupiak
f30c20d354 change back to vim for now 2025-04-03 11:33:14 -04:00
Michael Chalupiak
f111effce5 merge 2025-03-29 21:45:21 -04:00
Michael Chalupiak
69b6174817 rose-pine 2025-03-29 21:44:02 -04:00
Michael Chalupiak
e9da1721d7 Merge branch 'master' into arch-laptop 2025-03-29 21:41:55 -04:00
Michael Chalupiak
2fd20bd541 new blog 2025-03-29 21:41:07 -04:00
Michael Chalupiak
8e838e1601 projects 2025-03-25 11:00:43 -04:00
Michael Chalupiak
119cb07749 rose-pine 2025-03-25 10:58:54 -04:00
Michael Chalupiak
bc3bb4ed16 rosepine 2025-03-24 16:17:40 -04:00
Michael Chalupiak
3d1ff7934a alacritty + nord 2025-03-23 16:03:59 -04:00
Michael Chalupiak
e31ff128fa Merge branch 'master' into arch-laptop 2025-03-23 14:50:07 -04:00
Michael Chalupiak
b910a496a2 small fix 2025-03-23 14:49:58 -04:00
Michael Chalupiak
b723ebb5b5 Merge branch 'master' into arch-laptop 2025-03-23 14:48:59 -04:00
Michael Chalupiak
30883aaa78 new kakoune buffer select 2025-03-23 14:30:41 -04:00
Michael Chalupiak
9e62854ba9 Merge branch 'master' into arch-laptop 2025-03-22 20:11:23 -04:00
Michael Chalupiak
957701fce9 temp typst filetype 2025-03-22 20:10:45 -04:00
Michael Chalupiak
e161127590 typst ts 2025-03-22 20:10:25 -04:00
Michael Chalupiak
b1a2d98e0a Merge branch 'master' into arch-laptop 2025-03-22 18:28:21 -04:00
Michael Chalupiak
08b61f677b waybar conf 2025-03-22 18:26:09 -04:00
Michael Chalupiak
6406bd637b treesitter updates 2025-03-22 18:24:24 -04:00
Michael Chalupiak
6c5cae2b9a new rss feed 2025-03-22 16:48:46 -04:00
Michael Chalupiak
2b8d21d824 Merge branch 'master' into arch-laptop 2025-03-20 21:46:48 -04:00
Michael Chalupiak
3fd319c2e2 swayidle 2025-03-20 21:46:33 -04:00
Michael Chalupiak
5fdb8166cb nested tmux 2025-03-20 19:37:53 -04:00
Michael Chalupiak
862619b1cc river scrolling 2025-03-20 11:10:00 -04:00
Michael Chalupiak
ba422a0648 kak updates 2025-03-20 10:06:56 -04:00
Michael Chalupiak
00b1735bed Merge branch 'master' into arch-laptop 2025-03-20 10:06:34 -04:00
Michael Chalupiak
f44ce08f75 waybar config 2025-03-20 10:05:32 -04:00
Michael Chalupiak
c25d84ad56 prolog 2025-03-20 00:05:33 -04:00
Michael Chalupiak
5a261f9805 prolog kakoune 2025-03-20 00:03:05 -04:00
Michael Chalupiak
2574165d59 kakoune merge fiz 2025-03-19 23:51:08 -04:00
Michael Chalupiak
673c819a72 Merge branch 'master' into arch-laptop 2025-03-19 23:46:36 -04:00
Michael Chalupiak
e894b99c2a updated kakoune, added flirt 2025-03-19 23:35:59 -04:00
Michael Chalupiak
95f7180b5f fixed kakoune, font update 2025-03-19 22:41:31 -04:00
Michael Chalupiak
3ea525b653 font/terminal update 2025-03-18 16:25:28 -04:00
Michael Chalupiak
bc435f0f38 Merge branch 'master' into arch-laptop 2025-03-13 11:23:09 -04:00
Michael Chalupiak
7c6da42aa4 swayidle 2025-03-13 11:16:15 -04:00
Michael Chalupiak
ff3daf700c font change 2025-03-07 03:10:09 -05:00
Michael Chalupiak
fd50ca3299 Merge branch 'master' into arch-laptop 2025-02-10 08:02:44 -05:00
Michael Chalupiak
f1a0fb37dd remove border 2025-02-07 16:12:58 -05:00
Michael Chalupiak
6878875278 ambiance 2025-02-07 15:53:25 -05:00
Michael Chalupiak
d9e58990e3 ambiance 2025-02-07 15:52:41 -05:00
Michael Chalupiak
65b0516562 remove falkon profiles 2025-02-07 15:50:46 -05:00
Michael Chalupiak
043e2708e8 ambiance 2025-02-07 15:45:50 -05:00
Michael Chalupiak
5a4a9b6acf ghostty 2025-02-03 08:01:47 -05:00
Michael Chalupiak
c7439f61f5 mail 2025-02-02 23:43:15 -05:00
Michael Chalupiak
3c9b31f283 swaybar 2025-02-02 00:18:32 -05:00
Michael Chalupiak
56fbe76cf7 swaybar 2025-02-02 00:17:05 -05:00
Michael Chalupiak
8bc96b4337 falkon 2025-02-02 00:16:05 -05:00
Michael Chalupiak
5db50b1e7f terminus 2025-02-01 16:37:53 -05:00
Michael Chalupiak
8c554fcdef merge 2025-02-01 16:33:44 -05:00
Michael Chalupiak
749d5e12d9 terminus" 2025-02-01 16:32:33 -05:00
Michael Chalupiak
c8259bc433 Merge branch 'master' into arch-laptop 2025-02-01 16:08:47 -05:00
Michael Chalupiak
380f9245bf inter 2025-02-01 16:08:09 -05:00
Michael Chalupiak
3d677fedb7 Merge branch 'master' into arch-laptop 2025-02-01 15:52:51 -05:00
Michael Chalupiak
12eea29508 diff 2025-02-01 15:52:33 -05:00
Michael Chalupiak
f404871c42 Merge branch 'master' into arch-laptop 2025-02-01 15:51:11 -05:00
Michael Chalupiak
c38b45e957 diff 2025-02-01 15:50:42 -05:00
Michael Chalupiak
24283c765b Merge branch 'master' into arch-laptop 2025-02-01 15:43:36 -05:00
Michael Chalupiak
24d4801414 themes 2025-02-01 15:42:37 -05:00
Michael Chalupiak
95292ac3b6 95 2025-02-01 15:08:40 -05:00
Michael Chalupiak
8b6ef51156 95 2025-02-01 15:05:23 -05:00
Michael Chalupiak
bc6ccb338b sway touchpad 2025-01-22 01:01:50 -05:00
Michael Chalupiak
68e1f978ca laptop sway 2025-01-22 00:58:36 -05:00
Michael Chalupiak
0771ce0401 Merge branch 'master' into arch-laptop 2025-01-22 00:55:22 -05:00
Michael Chalupiak
b893d4df72 actual sway config 2025-01-22 00:55:02 -05:00
Michael Chalupiak
e0c325b5d8 merge 2025-01-22 00:53:01 -05:00
Michael Chalupiak
b4fcb164f3 river config 2025-01-22 00:49:53 -05:00
Michael Chalupiak
b825615a42 sway laptop config 2025-01-22 00:35:09 -05:00
Michael Chalupiak
ee6da6e10d switched back to sway 2025-01-22 00:26:32 -05:00
Michael Chalupiak
50f45725af Merge branch 'master' into arch-laptop 2025-01-05 21:46:18 -05:00
Michael Chalupiak
7b959b08ad dconf: 2025-01-05 21:45:45 -05:00
Michael Chalupiak
377c7aec81 Merge branch 'master' into arch-laptop 2024-12-24 13:10:40 -05:00
Michael Chalupiak
bd5012e3e8 lock 2024-12-24 13:10:12 -05:00
Michael Chalupiak
96e2a10a0a Merge branch 'master' into arch-laptop 2024-12-24 12:48:38 -05:00
Michael Chalupiak
f1ff685e13 dconf' 2024-12-24 12:46:42 -05:00
Michael Chalupiak
aaba0d04ae gnome 2024-12-24 01:00:41 -05:00
Michael Chalupiak
4455388a7c Merge branch 'master' into arch-laptop 2024-12-15 13:24:52 -05:00
Michael Chalupiak
bf4f428732 st 2024-12-15 13:24:39 -05:00
Michael Chalupiak
992788786d Merge branch 'master' into arch-laptop 2024-12-15 13:18:37 -05:00
Michael Chalupiak
342a863ed6 stuff 2024-12-15 13:18:05 -05:00
Michael Chalupiak
b048c4fdfa Merge branch 'master' into arch-laptop 2024-12-15 13:17:39 -05:00
Michael Chalupiak
34eb7ee038 neovide 2024-12-15 13:17:00 -05:00
Michael Chalupiak
86d8fa773c codelens 2024-12-03 23:12:06 -05:00
Michael Chalupiak
c42b27a81a Merge branch 'master' into arch-laptop 2024-12-03 15:41:06 -05:00
Michael Chalupiak
731d8dac06 nvim 2024-12-03 15:40:30 -05:00
Michael Chalupiak
6c59d1c35c merge 2024-12-03 15:25:04 -05:00
Michael Chalupiak
285124c5c5 sxhkd 2024-12-03 15:23:25 -05:00
Michael Chalupiak
b41c49cda1 many changes 2024-12-03 15:21:21 -05:00
Michael Chalupiak
838809f377 doom rose-pine 2024-11-20 15:26:21 -05:00
Michael Chalupiak
9cc5ae5c86 Merge branch 'master' into arch-laptop 2024-11-12 19:28:57 -05:00
Michael Chalupiak
d0c2f9551f commit 2024-11-12 19:26:18 -05:00
Michael Chalupiak
855ee6fe93 hls 2024-11-12 19:24:28 -05:00
Michael Chalupiak
9374265ad8 Merge branch 'master' into arch-laptop 2024-11-07 14:00:10 -05:00
Michael Chalupiak
b7e16d813a rm round corners 2024-11-07 13:58:35 -05:00
Michael Chalupiak
77fd49992e rm theme 2024-11-07 13:56:19 -05:00
Michael Chalupiak
1103a1ca1b Merge branch 'master' into arch-laptop 2024-11-07 13:49:08 -05:00
Michael Chalupiak
a5a1f9a42c blur 2024-11-07 13:43:15 -05:00
Michael Chalupiak
4eccdd9275 picom 2024-11-07 10:25:08 -05:00
Michael Chalupiak
e6d9652fd4 polybar: 2024-11-06 21:19:27 -05:00
Michael Chalupiak
b3b41ada13 nvim 2024-11-06 21:18:40 -05:00
Michael Chalupiak
da611595f6 polybar 2024-11-06 21:16:41 -05:00
Michael Chalupiak
e632050dfe Merge branch 'master' into arch-laptop 2024-11-06 21:14:43 -05:00
Michael Chalupiak
e93e688c40 polybar 2024-11-06 21:14:15 -05:00
Michael Chalupiak
967c00aebf polybar 2024-11-06 21:07:46 -05:00
Michael Chalupiak
ac7bf94094 discard 2024-11-06 21:05:58 -05:00
Michael Chalupiak
0117e4085f Merge branch 'master' into arch-laptop 2024-11-06 21:04:19 -05:00
Michael Chalupiak
57c76fc044 bspwm swallow 2024-11-06 21:04:03 -05:00
Michael Chalupiak
6f02789d3f scripts 2024-11-06 21:02:19 -05:00
Michael Chalupiak
e64b64d3f6 picom 2024-11-06 20:59:37 -05:00
Michael Chalupiak
f9d5ac03b8 small tweaks 2024-11-05 17:53:05 -05:00
Michael Chalupiak
d0c67416d6 Merge branch 'master' into arch-laptop 2024-11-05 16:36:24 -05:00
Michael Chalupiak
450b695fa8 fixed keybinds 2024-11-05 16:35:40 -05:00
Michael Chalupiak
0cf0407018 Merge branch 'master' into arch-laptop 2024-11-05 14:44:47 -05:00
Michael Chalupiak
f70a043ca9 picom 2024-11-05 14:44:18 -05:00
Michael Chalupiak
d6742c2d16 Merge branch 'master' into arch-laptop 2024-11-05 14:32:12 -05:00
Michael Chalupiak
1e40e8aa1c zathura recolor 2024-11-05 14:31:01 -05:00
Michael Chalupiak
b4b5b63030 bspwm + awesome 2024-11-05 14:28:07 -05:00
Michael Chalupiak
add9970e3e Merge branch 'master' into arch-laptop 2024-11-01 16:21:44 -04:00
Michael Chalupiak
1dc809a6f8 switch back to vim 2024-11-01 16:12:16 -04:00
Michael Chalupiak
0dbf800f93 Merge branch 'master' into arch-laptop
merging vim binds
2024-10-08 10:39:03 -04:00
Michael Chalupiak
f9603880e0 revert to vim binds 2024-10-08 10:38:52 -04:00
437 changed files with 10491 additions and 2836 deletions

44
.gitignore vendored Normal file
View File

@@ -0,0 +1,44 @@
config/.config/kak/al/rc/org.kak
config/.config/kak/mru_files.txt
config/.scripts/baraction.sh
config/.scripts/brave.sh
config/.scripts/tmux-change-dir.sh
config/.config/dconf/
config/.themes/
config/**/*.uuid
config/.icons/
config/.config/KDE/
config/.config/falkon/
config/.config/ghostty/iTerm2-Color-Schemes/
config/.config/ghostty/themes/
config/.config/helix/runtime/
config/.config/kak/colors/
config/.config/kak/plugins/
config/.config/mutt/chalupmc@rose-hulman
config/.config/mutt/mikecchalupiak@outlook
config/.config/mutt/spamreciver1@outlook
config/.config/qt5ct/colors/
config/.config/qutebrowser/autoconfig.yml
config/.config/qutebrowser/rosepine/
config/.config/zathura/colors
config/.doom.d/flycheck_config.el
config/.scripts/kkse
config/.scripts/mlvwm-alert
config/.scripts/mlvwm-confirm
config/.scripts/mlvwm-message
config/.scripts/mlvwm-powerdown
config/.scripts/mlvwm-restart
config/.scripts/mlvwm-screenshot
config/.scripts/pipewire-launch
/config/.emacs.d/undo-fu-session/
/config/.emacs.d/tree-sitter/
/config/.emacs.d/tramp
/config/.emacs.d/straight/
/config/.emacs.d/recentf
/config/.emacs.d/places
/config/.emacs.d/parinfer-rust/
/config/.emacs.d/history
/config/.emacs.d/eshell/
/config/.emacs.d/elpa/
/config/.emacs.d/eln-cache/
/config/.emacs.d/auto-save-list/

View File

@@ -1,9 +1,12 @@
! High DPI Settings for Window Managers
Xft.dpi: 192
! #define background_opacity 80
#include ".theme.xresources"
! .alpha: 0.2
font: monospace:12
//*font: "Cascadia Code"
Sxiv.font: "Cascadia Code"
! Sxiv.font: "Olympe Mono Hacked"
!! Dracula Xresources palette
!/* *.foreground: #F8F8F2 */
!/* *.background: #282A36 */

View File

@@ -5,12 +5,21 @@ export PATH="$PATH:/home/mikec/.local/share/JetBrains/Toolbox/scripts"
export PATH="${PATH}:$HOME/.scripts:$HOME/maple2022/bin:$HOME/intelFPGA_lite/18.1/quartus/bin:$HOME/intelFPGA_lite/18.1/modelsim_ase/bin"
export _JAVA_AWT_WM_NONREPARENTING=1
export XDG_CURRENT_DESKTOP=sway
# export XDG_CURRENT_DESKTOP=sway
source ~/.bashrc
export QSYS_ROOTDIR="/home/mikec/intelFPGA_lite/18.1/quartus/sopc_builder/bin"
export VERSION_CONTROL="never"
# opam configuration
test -r /home/mikec/.opam/opam-init/init.sh && . /home/mikec/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true
# exec hilbish -S -l
# BEGIN opam configuration
# This is useful if you're using opam as it adds:
# - the correct directories to the PATH
# - auto-completion for the opam binary
# This section can be safely removed at any time if needed.
test -r '/home/mikec/.opam/opam-init/init.sh' && . '/home/mikec/.opam/opam-init/init.sh' > /dev/null 2> /dev/null || true
# END opam configuration
# if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ]; then
# exec river
# fi

View File

@@ -1,4 +1,4 @@
# ~/.bashrc: executed by bash(1) for non-login shells.
# ~/.bashrc
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
@@ -10,13 +10,26 @@ esac
export PATH=~/.local/bin:/snap/bin:/usr/sandbox/:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/share/games:/usr/local/sbin:/usr/sbin:/sbin:$PATH
PATH=$PATH:~/.local/share/gem/ruby/3.0.0/bin/:~/.scripts
PATH=$PATH:~/.local/share/gem/ruby/3.4.0/bin/
PATH=$PATH:~/.cargo/bin
PATH=$PATH:~/go/bin/
PATH=$PATH:~/.nimble/bin/
PATH=$PATH:~/Documents/suckless/dylan/opendylan-2024.1/bin
PATH=$PATH:~/.config/emacs/bin/
PATH=$PATH:~/.mint/bin/
PATH=$PATH:~/glamoroustoolkit/bin/
PATH=$PATH:~/Documents/Projects/Cuis-Smalltalk-Dev/
PATH=$PATH:~/opt/homebrew/bin/
export CFLAGS="$CFLAGS -I/opt/homebrew/include"
LDPATH=$LDPATH:/opt/homebrew/lib/
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
export OPEN_DYLAN_USER_REGISTRIES=/tmp/dime-test/registry
# append to the history file, don't overwrite it
shopt -s histappend
@@ -115,17 +128,21 @@ alias _='sudo'
alias _i='sudo -i'
alias please='sudo'
alias fucking='sudo'
alias hx='helix'
# alias hx='helix'
alias bat='bat --theme="base16-256"'
if [ -n "$(command -v 'eza')" ]; then
alias ls='eza'
fi
alias zf='z $(flirt)'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
export EDITOR='kak'
if [ -z "$EDITOR" ]; then
# export EDITOR=kak
export EDITOR='nvim'
fi
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
@@ -137,9 +154,11 @@ if [ "$XDG_SESSION_DESKTOP" = "sway" ] ; then
export STUDIO_JDK=/usr/lib/jvm/java-11-openjdk/
fi
eval "$(zoxide init bash)"
eval "$(fzf --bash)"
export TMUX_TMPDIR=/tmp
export TINTED_SHELL_ENABLE_BASE16_VARS=1
export PKG_CONFIG_PATH=/usr/local/share/pkgconfig/:$PKG_CONFIG_PATH
tinty_source_shell_theme() {
tinty $@
@@ -158,17 +177,53 @@ tinty_source_shell_theme() {
unset subcommand
}
if [ -n "$(command -v 'tinty')" ]; then
tinty_source_shell_theme "init"
alias theme='tinty_source_shell_theme apply "$(tinty list | fzf --cycle)" && xrdb ~/.Xresources'
# if [ -n "$(command -v 'tinty')" ]; then
# tinty_source_shell_theme "init"
# alias theme='tinty_source_shell_theme apply "$(tinty list | fzf --cycle)" && xrdb ~/.Xresources'
# fi
run_kak() {
/usr/bin/kak -c $SESH 2>/dev/null "$@" || /usr/bin/kak -s $SESH "$@"
}
if [ -n "$(command -v tmux)" ] && [ -n "$(command -v kak)" ] && [ -z "$TMUX" ]; then
SESH="$( (tmux list-sessions 2>/dev/null || echo '-1') | cut -d' ' -f1 | tr -d ':-' | sort -r | head -n1 | xargs -I{} echo '{} + 1' | bc)"
alias kak='tmux new-session -e "EDITOR=\"/usr/bin/kak -c $SESH\"" -s $SESH /usr/bin/kak -s $SESH > /dev/null'
elif [ -n "$(command -v tmux)" ] && [ -n "$(command -v kak)" ]; then
SESH="$(tmux display-message -p '#S')"
# alias kak='kak -c $SESH 2>/dev/null || kak -s $SESH'
alias kak=run_kak
alias vidir='EDITOR="/usr/bin/kak -c $SESH 2>/dev/null || /usr/bin/kak -s $SESH" vidir'
alias vipe='EDITOR="/usr/bin/kak -c $SESH 2>/dev/null || /usr/bin/kak -s $SESH" vipe'
fi
if [ -n "$(command -v tmux)" ] && [ -z "$TMUX" ]; then
alias kak='tmux new-session kak > /dev/null'
if [ -n "$(command -v tmux)" ] && [ -n "$(command -v helix)" ] && [ -z "$TMUX" ]; then
alias helix='tmux new-session -e "EDITOR=helix" helix > /dev/null'
# alias hx='tmux new-session -e "EDITOR=helix" helix > /dev/null'
fi
# if [ -n "$(command -v tmux)" ] && [ -z "$TMUX" ]; then
# SESH="$( (tmux list-sessions 2>/dev/null || echo '-1') | cut -d' ' -f1 | tr -d ':-' | sort -r | head -n1 | xargs -I{} echo '{} + 1' | bc)"
# alias tmux="tmux new-session -s $SESH"
# fi
alias enter-dev='. enter-dev.sh'
alias ssh='TERM="xterm-256color" ssh'
export DISABLE_TELEMETRY=YES
[ -f "/home/mikec/.ghcup/env" ] && . "/home/mikec/.ghcup/env" # ghcup-env
alias guile='rlwrap guile'
alias sbcl='rlwrap sbcl'
alias csi='rlwrap csi'
alias chicken-csi='rlwrap chicken-csi'
alias icyc='rlwrap icyc'
export DCONF_PROFILE
# export FZF_DEFAULT_OPTS="
# --color=fg:#908caa,bg:#191724,hl:#ebbcba
# --color=fg+:#e0def4,bg+:#26233a,hl+:#ebbcba
# --color=border:#403d52,header:#31748f,gutter:#191724
# --color=spinner:#f6c177,info:#9ccfd8
# --color=pointer:#c4a7e7,marker:#eb6f92,prompt:#908caa"
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && \
source "$EAT_SHELL_INTEGRATION_DIR/bash"

View File

@@ -0,0 +1,2 @@
[UserFeedback]
LastEncouragement=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x87}\x4\n\x84\xab\0)

View File

@@ -0,0 +1,2 @@
[UserFeedback]
ApplicationStartCount=2

View File

@@ -0,0 +1,12 @@
[general]
import = ["rose-pine.toml"]
[window]
opacity = 1
[font]
size = 14
[font.normal]
family = "Iosevka Term SS12"
style = "Regular"

View File

@@ -0,0 +1,191 @@
font:
normal:
family: Cascadia Code
style: Regular
bold:
family: Cascadia Code
style: Bold
italic:
family: Cascadia Code
style: Italic
bold_italic:
family: Cascadia Code
style: Bold Italic
size: 12
# draw_bold_text_with_bright_colors: true
# shell:
# program: /bin/zsh
# args:
# - --login
# - -c
# - 'tmux attach -t TMUX || tmux new -s TMUX'
# ...
# Colors (One Half Dark)
# colors:
# primary:
# background: '0x282c34'
# foreground: '0xdcdfe4'
# normal:
# black: '0x282c34'
# red: '0xe06c75'
# green: '0x98c379'
# yellow: '0xe5c07b'
# blue: '0x61afef'
# magenta: '0xc678dd'
# cyan: '0x56b6c2'
# white: '0xdcdfe4'
# bright:
# black: '0x282c34'
# red: '0xe06c75'
# green: '0x98c379'
# yellow: '0xe5c07b'
# blue: '0x61afef'
# magenta: '0xc678dd'
# cyan: '0x56b6c2'
# white: '0xdcdfe4'
# Colors (One Half Light)
#colors:
# primary:
# background: '0xfafafa'
# foreground: '0x383a42'
#
# normal:
# black: '0x383a42'
# red: '0xe45649'
# green: '0x50a14f'
# yellow: '0xc18401'
# blue: '0x0184bc'
# magenta: '0xa626a4'
# cyan: '0x0997b3'
# white: '0xfafafa'
#
# bright:
# black: '0x383a42'
# red: '0xe45649'
# green: '0x50a14f'
# yellow: '0xc18401'
# blue: '0x0184bc'
# magenta: '0xa626a4'
# cyan: '0x0997b3'
# white: '0xfafafa'
# Colors (Dracula)
# colors:
# primary:
# background: '0x282a36'
# foreground: '0xf8f8f2'
# cursor:
# text: CellBackground
# cursor: CellForeground
# vi_mode_cursor:
# text: CellBackground
# cursor: CellForeground
# search:
# matches:
# foreground: '0x44475a'
# background: '0x50fa7b'
# focused_match:
# foreground: '0x44475a'
# background: '0xffb86c'
# bar:
# background: '0x282a36'
# foreground: '0xf8f8f2'
# line_indicator:
# foreground: None
# background: None
# selection:
# text: CellForeground
# background: '0x44475a'
# normal:
# black: '0x000000'
# red: '0xff5555'
# green: '0x50fa7b'
# yellow: '0xf1fa8c'
# blue: '0xbd93f9'
# magenta: '0xff79c6'
# cyan: '0x8be9fd'
# white: '0xbfbfbf'
# bright:
# black: '0x4d4d4d'
# red: '0xff6e67'
# green: '0x5af78e'
# yellow: '0xf4f99d'
# blue: '0xcaa9fa'
# magenta: '0xff92d0'
# cyan: '0x9aedfe'
# white: '0xe6e6e6'
# dim:
# black: '0x14151b'
# red: '0xff2222'
# green: '0x1ef956'
# yellow: '0xebf85b'
# blue: '0x4d5b86'
# magenta: '0xff46b0'
# cyan: '0x59dffc'
# white: '0xe6e6d1'
# Colors (Nord)
#colors:
# primary:
# background: '#2e3440'
# foreground: '#d8dee9'
# dim_foreground: '#a5abb6'
# cursor:
# text: '#2e3440'
# cursor: '#d8dee9'
# vi_mode_cursor:
# text: '#2e3440'
# cursor: '#d8dee9'
# selection:
# text: CellForeground
# background: '#4c566a'
# search:
# matches:
# foreground: CellBackground
# background: '#88c0d0'
# bar:
# background: '#434c5e'
# foreground: '#d8dee9'
# normal:
# black: '#3b4252'
# red: '#bf616a'
# green: '#a3be8c'
# yellow: '#ebcb8b'
# blue: '#81a1c1'
# magenta: '#b48ead'
# cyan: '#88c0d0'
# white: '#e5e9f0'
# bright:
# black: '#4c566a'
# red: '#bf616a'
# green: '#a3be8c'
# yellow: '#ebcb8b'
# blue: '#81a1c1'
# magenta: '#b48ead'
# cyan: '#8fbcbb'
# white: '#eceff4'
# dim:
# black: '#373e4d'
# red: '#94545d'
# green: '#809575'
# yellow: '#b29e75'
# blue: '#68809a'
# magenta: '#8c738c'
# cyan: '#6d96a5'
# white: '#aeb3bb'
# Visual Bell
# ...
# background_opacity: 0.90

View File

@@ -0,0 +1,37 @@
# Base16 Monokai - alacritty color config
# Wimer Hazenberg (http://www.monokai.nl)
[colors]
draw_bold_text_with_bright_colors = false
# Default colors
[colors.primary]
background = '0x272822'
foreground = '0xf8f8f2'
# Colors the cursor will use if `custom_cursor_colors` is true
[colors.cursor]
text = '0x272822'
cursor = '0xf8f8f2'
# Normal colors
[colors.normal]
black = '0x272822'
red = '0xf92672'
green = '0xa6e22e'
yellow = '0xf4bf75'
blue = '0x66d9ef'
magenta = '0xae81ff'
cyan = '0xa1efe4'
white = '0xf8f8f2'
# Bright colors
[colors.bright]
black = '0x75715e'
red = '0xfd971f'
green = '0x383830'
yellow = '0x49483e'
blue = '0xa59f85'
magenta = '0xf5f4f1'
cyan = '0xcc6633'
white = '0xf9f8f5'

View File

@@ -0,0 +1,58 @@
# TOML interpretation of the https://github.com/nordtheme/alacritty
# See also: https://github.com/nordtheme/alacritty/issues/40
# (if the above is resolved, you may not need this Gist)
[colors.primary]
background = "#2e3440"
foreground = "#d8dee9"
dim_foreground = "#a5abb6"
[colors.cursor]
text = "#2e3440"
cursor = "#d8dee9"
[colors.vi_mode_cursor]
text = "#2e3440"
cursor = "#d8dee9"
[colors.selection]
text = "CellForeground"
background = "#4c566a"
[colors.search.matches]
foreground = "CellBackground"
background = "#88c0d0"
[colors.footer_bar]
background = "#434c5e"
foreground = "#d8dee9"
[colors.normal]
black = "#3b4252"
red = "#bf616a"
green = "#a3be8c"
yellow = "#ebcb8b"
blue = "#81a1c1"
magenta = "#b48ead"
cyan = "#88c0d0"
white = "#e5e9f0"
[colors.bright]
black = "#4c566a"
red = "#bf616a"
green = "#a3be8c"
yellow = "#ebcb8b"
blue = "#81a1c1"
magenta = "#b48ead"
cyan = "#8fbcbb"
white = "#eceff4"
[colors.dim]
black = "#373e4d"
red = "#94545d"
green = "#809575"
yellow = "#b29e75"
blue = "#68809a"
magenta = "#8c738c"
cyan = "#6d96a5"
white = "#aeb3bb"

View File

@@ -0,0 +1,51 @@
# Copyright (c) 2016-present Sven Greb <development@svengreb.de>
# This source code is licensed under the MIT license found in the license file.
colors:
primary:
background: "#2e3440"
foreground: "#d8dee9"
dim_foreground: "#a5abb6"
cursor:
text: "#2e3440"
cursor: "#d8dee9"
vi_mode_cursor:
text: "#2e3440"
cursor: "#d8dee9"
selection:
text: CellForeground
background: "#4c566a"
search:
matches:
foreground: CellBackground
background: "#88c0d0"
bar:
background: "#434c5e"
foreground: "#d8dee9"
normal:
black: "#3b4252"
red: "#bf616a"
green: "#a3be8c"
yellow: "#ebcb8b"
blue: "#81a1c1"
magenta: "#b48ead"
cyan: "#88c0d0"
white: "#e5e9f0"
bright:
black: "#4c566a"
red: "#bf616a"
green: "#a3be8c"
yellow: "#ebcb8b"
blue: "#81a1c1"
magenta: "#b48ead"
cyan: "#8fbcbb"
white: "#eceff4"
dim:
black: "#373e4d"
red: "#94545d"
green: "#809575"
yellow: "#b29e75"
blue: "#68809a"
magenta: "#8c738c"
cyan: "#6d96a5"
white: "#aeb3bb"

View File

@@ -0,0 +1,75 @@
# Colors section of "Alacritty - TOML configuration file format"
# https://github.com/alacritty/alacritty/blob/master/extra/man/alacritty.5.scd#colors
[colors.primary]
foreground = "#575279"
background = "#faf4ed"
dim_foreground = "#797593"
bright_foreground = "#575279"
[colors.cursor]
text = "#575279"
cursor = "#cecacd"
[colors.vi_mode_cursor]
text = "#575279"
cursor = "#cecacd"
[colors.search.matches]
foreground = "#797593"
background = "#f2e9e1"
[colors.search.focused_match]
foreground = "#faf4ed"
background = "#d7827e"
[colors.hints.start]
foreground = "#797593"
background = "#fffaf3"
[colors.hints.end]
foreground = "#9893a5"
background = "#fffaf3"
[colors.line_indicator]
foreground = "None"
background = "None"
[colors.footer_bar]
foreground = "#575279"
background = "#fffaf3"
[colors.selection]
text = "#575279"
background = "#dfdad9"
[colors.normal]
black = "#f2e9e1"
red = "#b4637a"
green = "#286983"
yellow = "#ea9d34"
blue = "#56949f"
magenta = "#907aa9"
cyan = "#d7827e"
white = "#575279"
[colors.bright]
black = "#9893a5"
red = "#b4637a"
green = "#286983"
yellow = "#ea9d34"
blue = "#56949f"
magenta = "#907aa9"
cyan = "#d7827e"
white = "#575279"
[colors.dim]
black = "#9893a5"
red = "#b4637a"
green = "#286983"
yellow = "#ea9d34"
blue = "#56949f"
magenta = "#907aa9"
cyan = "#d7827e"
white = "#575279"

View File

@@ -0,0 +1,75 @@
# Colors section of "Alacritty - TOML configuration file format"
# https://github.com/alacritty/alacritty/blob/master/extra/man/alacritty.5.scd#colors
[colors.primary]
foreground = "#e0def4"
background = "#232136"
dim_foreground = "#908caa"
bright_foreground = "#e0def4"
[colors.cursor]
text = "#e0def4"
cursor = "#56526e"
[colors.vi_mode_cursor]
text = "#e0def4"
cursor = "#56526e"
[colors.search.matches]
foreground = "#908caa"
background = "#393552"
[colors.search.focused_match]
foreground = "#232136"
background = "#ea9a97"
[colors.hints.start]
foreground = "#908caa"
background = "#2a273f"
[colors.hints.end]
foreground = "#6e6a86"
background = "#2a273f"
[colors.line_indicator]
foreground = "None"
background = "None"
[colors.footer_bar]
foreground = "#e0def4"
background = "#2a273f"
[colors.selection]
text = "#e0def4"
background = "#44415a"
[colors.normal]
black = "#393552"
red = "#eb6f92"
green = "#3e8fb0"
yellow = "#f6c177"
blue = "#9ccfd8"
magenta = "#c4a7e7"
cyan = "#ea9a97"
white = "#e0def4"
[colors.bright]
black = "#6e6a86"
red = "#eb6f92"
green = "#3e8fb0"
yellow = "#f6c177"
blue = "#9ccfd8"
magenta = "#c4a7e7"
cyan = "#ea9a97"
white = "#e0def4"
[colors.dim]
black = "#6e6a86"
red = "#eb6f92"
green = "#3e8fb0"
yellow = "#f6c177"
blue = "#9ccfd8"
magenta = "#c4a7e7"
cyan = "#ea9a97"
white = "#e0def4"

View File

@@ -0,0 +1,75 @@
# Colors section of "Alacritty - TOML configuration file format"
# https://github.com/alacritty/alacritty/blob/master/extra/man/alacritty.5.scd#colors
[colors.primary]
foreground = "#e0def4"
background = "#191724"
dim_foreground = "#908caa"
bright_foreground = "#e0def4"
[colors.cursor]
text = "#e0def4"
cursor = "#524f67"
[colors.vi_mode_cursor]
text = "#e0def4"
cursor = "#524f67"
[colors.search.matches]
foreground = "#908caa"
background = "#26233a"
[colors.search.focused_match]
foreground = "#191724"
background = "#ebbcba"
[colors.hints.start]
foreground = "#908caa"
background = "#1f1d2e"
[colors.hints.end]
foreground = "#6e6a86"
background = "#1f1d2e"
[colors.line_indicator]
foreground = "None"
background = "None"
[colors.footer_bar]
foreground = "#e0def4"
background = "#1f1d2e"
[colors.selection]
text = "#e0def4"
background = "#403d52"
[colors.normal]
black = "#26233a"
red = "#eb6f92"
green = "#31748f"
yellow = "#f6c177"
blue = "#9ccfd8"
magenta = "#c4a7e7"
cyan = "#ebbcba"
white = "#e0def4"
[colors.bright]
black = "#6e6a86"
red = "#eb6f92"
green = "#31748f"
yellow = "#f6c177"
blue = "#9ccfd8"
magenta = "#c4a7e7"
cyan = "#ebbcba"
white = "#e0def4"
[colors.dim]
black = "#6e6a86"
red = "#eb6f92"
green = "#31748f"
yellow = "#f6c177"
blue = "#9ccfd8"
magenta = "#c4a7e7"
cyan = "#ebbcba"
white = "#e0def4"

View File

@@ -0,0 +1,617 @@
-- If LuaRocks is installed, make sure that packages installed through it are
-- found (e.g. lgi). If LuaRocks is not installed, do nothing.
pcall(require, "luarocks.loader")
-- Standard awesome library
local gears = require("gears")
local awful = require("awful")
require("awful.autofocus")
-- Widget and layout library
local wibox = require("wibox")
-- Theme handling library
local beautiful = require("beautiful")
-- Notification library
local naughty = require("naughty")
local menubar = require("menubar")
local hotkeys_popup = require("awful.hotkeys_popup")
-- Enable hotkeys help widget for VIM and other apps
-- when client with a matching name is opened:
require("awful.hotkeys_popup.keys")
-- {{{ Error handling
-- Check if awesome encountered an error during startup and fell back to
-- another config (This code will only ever execute for the fallback config)
if awesome.startup_errors then
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, there were errors during startup!",
text = awesome.startup_errors })
end
-- Handle runtime errors after startup
do
local in_error = false
awesome.connect_signal("debug::error", function (err)
-- Make sure we don't go into an endless error loop
if in_error then return end
in_error = true
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, an error happened!",
text = tostring(err) })
in_error = false
end)
end
-- }}}
-- {{{ Variable definitions
-- Themes define colours, icons, font and wallpapers.
beautiful.init("/home/mikec/" .. ".config/awesome/theme.lua")
function border_adjust(c)
if #c.screen.clients == 1 then
c.border_width = 0
elseif #c.screen.clients > 1 then
c.border_width = beautiful.border_width
c.border_color = beautiful.border_focus
end
end
-- No gaps if only one window on screen
-- function gap_adjust(c)
-- if #c.screen.clients == 1 then
-- beautiful.useless_gap = 0
-- elseif #c.screen.clients > 1 then
-- beautiful.useless_gap = 3
-- end
-- end
client.connect_signal("focus", border_adjust)
-- client.connect_signal("focus", gap_adjust)
-- This is used later as the default terminal and editor to run.
terminal = "st"
editor = os.getenv("EDITOR") or "nvim"
editor_cmd = terminal .. " -e " .. editor
-- Default modkey.
-- Usually, Mod4 is the key with a logo between Control and Alt.
-- If you do not like this or do not have such a key,
-- I suggest you to remap Mod4 to another key using xmodmap or other tools.
-- However, you can use another modifier like Mod1, but it may interact with others.
modkey = "Mod4"
-- Table of layouts to cover with awful.layout.inc, order matters.
awful.layout.layouts = {
awful.layout.suit.tile,
awful.layout.suit.floating,
awful.layout.suit.tile.left,
awful.layout.suit.tile.bottom,
awful.layout.suit.tile.top,
awful.layout.suit.fair,
awful.layout.suit.fair.horizontal,
awful.layout.suit.spiral,
awful.layout.suit.spiral.dwindle,
awful.layout.suit.max,
awful.layout.suit.max.fullscreen,
awful.layout.suit.magnifier,
awful.layout.suit.corner.nw,
-- awful.layout.suit.corner.ne,
-- awful.layout.suit.corner.sw,
-- awful.layout.suit.corner.se,
}
-- }}}
-- {{{ Menu
-- Create a launcher widget and a main menu
myawesomemenu = {
{ "hotkeys", function() hotkeys_popup.show_help(nil, awful.screen.focused()) end },
{ "manual", terminal .. " -e man awesome" },
{ "edit config", editor_cmd .. " " .. awesome.conffile },
{ "restart", awesome.restart },
{ "quit", function() awesome.quit() end },
}
mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
{ "open terminal", terminal }
}
})
mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon,
menu = mymainmenu })
-- Menubar configuration
menubar.utils.terminal = terminal -- Set the terminal for applications that require it
-- }}}
-- Keyboard map indicator and switcher
mykeyboardlayout = awful.widget.keyboardlayout()
-- {{{ Wibar
-- Create a textclock widget
mytextclock = wibox.widget.textclock("%a %b %d %I:%M:%S ", 1)
-- Create a wibox for each screen and add it
local taglist_buttons = gears.table.join(
awful.button({ }, 1, function(t) t:view_only() end),
awful.button({ modkey }, 1, function(t)
if client.focus then
client.focus:move_to_tag(t)
end
end),
awful.button({ }, 3, awful.tag.viewtoggle),
awful.button({ modkey }, 3, function(t)
if client.focus then
client.focus:toggle_tag(t)
end
end),
awful.button({ }, 4, function(t) awful.tag.viewnext(t.screen) end),
awful.button({ }, 5, function(t) awful.tag.viewprev(t.screen) end)
)
local tasklist_buttons = gears.table.join(
awful.button({ }, 1, function (c)
if c == client.focus then
c.minimized = true
else
c:emit_signal(
"request::activate",
"tasklist",
{raise = true}
)
end
end),
awful.button({ }, 3, function()
awful.menu.client_list({ theme = { width = 250 } })
end),
awful.button({ }, 4, function ()
awful.client.focus.byidx(1)
end),
awful.button({ }, 5, function ()
awful.client.focus.byidx(-1)
end))
local function set_wallpaper(s)
-- Wallpaper
if beautiful.wallpaper then
local wallpaper = beautiful.wallpaper
-- If wallpaper is a function, call it with the screen
if type(wallpaper) == "function" then
wallpaper = wallpaper(s)
end
gears.wallpaper.maximized(wallpaper, s, true)
end
end
-- Re-set wallpaper when a screen's geometry changes (e.g. different resolution)
screen.connect_signal("property::geometry", set_wallpaper)
awful.screen.connect_for_each_screen(function(s)
-- Wallpaper
set_wallpaper(s)
-- Each screen has its own tag table.
awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[1])
-- Create a promptbox for each screen
s.mypromptbox = awful.widget.prompt()
-- Create an imagebox widget which will contain an icon indicating which layout we're using.
-- We need one layoutbox per screen.
s.mylayoutbox = awful.widget.layoutbox(s)
s.mylayoutbox:buttons(gears.table.join(
awful.button({ }, 1, function () awful.layout.inc( 1) end),
awful.button({ }, 3, function () awful.layout.inc(-1) end),
awful.button({ }, 4, function () awful.layout.inc( 1) end),
awful.button({ }, 5, function () awful.layout.inc(-1) end)))
-- Create a taglist widget
s.mytaglist = awful.widget.taglist {
screen = s,
filter = awful.widget.taglist.filter.all,
buttons = taglist_buttons,
widget_template = {
{
{
{
{
id = 'text_role',
widget = wibox.widget.textbox,
},
layout = wibox.layout.fixed.horizontal,
},
widget = wibox.container.place,
},
forced_width = 18,
widget = wibox.container.margin
},
id = 'background_role',
widget = wibox.container.background,
},
}
-- Create a tasklist widget
s.mytasklist = awful.widget.tasklist {
screen = s,
filter = awful.widget.tasklist.filter.currenttags,
buttons = tasklist_buttons,
}
-- Create the wibox
s.mywibox = awful.wibar({ position = "top", screen = s, height = 18})
num = 0
s.mytextbox = wibox.widget({widget=wibox.widget.textbox, text='testbox' .. num})
gears.timer {
timeout = 1,
call_now = true,
autostart = true,
callback = function()
num = num + 1
s.mytextbox.text = "testbox" .. num
end
}
-- Add widgets to the wibox
s.mywibox:setup {
layout = wibox.layout.align.horizontal,
{ -- Left widgets
layout = wibox.layout.fixed.horizontal,
-- mylauncher,
s.mytaglist,
s.mylayoutbox,
s.mypromptbox,
},
s.mytasklist, -- Middle widget
{ -- Right widgets
layout = wibox.layout.fixed.horizontal,
mykeyboardlayout,
wibox.widget.systray(),
mytextclock,
s.mytextbox,
},
}
end)
-- }}}
-- {{{ Mouse bindings
root.buttons(gears.table.join(
awful.button({ }, 3, function () mymainmenu:toggle() end),
awful.button({ }, 4, awful.tag.viewnext),
awful.button({ }, 5, awful.tag.viewprev)
))
-- }}}
-- {{{ Key bindings
globalkeys = gears.table.join(
awful.key({ modkey, }, "b", function() for s in screen do s.mywibox.visible = not s.mywibox.visible end end,
{description="toggle bar", group="awesome"}),
awful.key({ modkey, }, "s", hotkeys_popup.show_help,
{description="show help", group="awesome"}),
awful.key({ modkey, }, "Left", awful.tag.viewprev,
{description = "view previous", group = "tag"}),
awful.key({ modkey, }, "Right", awful.tag.viewnext,
{description = "view next", group = "tag"}),
awful.key({ modkey, }, "Escape", awful.tag.history.restore,
{description = "go back", group = "tag"}),
awful.key({ modkey, }, "j",
function ()
awful.client.focus.byidx( 1)
end,
{description = "focus next by index", group = "client"}
),
awful.key({ modkey, }, "k",
function ()
awful.client.focus.byidx(-1)
end,
{description = "focus previous by index", group = "client"}
),
awful.key({ modkey, }, "w", function () mymainmenu:show() end,
{description = "show main menu", group = "awesome"}),
-- Layout manipulation
awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end,
{description = "swap with next client by index", group = "client"}),
awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end,
{description = "swap with previous client by index", group = "client"}),
awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end,
{description = "focus the next screen", group = "screen"}),
awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end,
{description = "focus the previous screen", group = "screen"}),
awful.key({ modkey, }, "u", awful.client.urgent.jumpto,
{description = "jump to urgent client", group = "client"}),
awful.key({ modkey, }, "Tab",
function ()
awful.client.focus.history.previous()
if client.focus then
client.focus:raise()
end
end,
{description = "go back", group = "client"}),
-- Standard program
awful.key({ modkey, }, "Return", function () awful.spawn(terminal) end,
{description = "open a terminal", group = "launcher"}),
awful.key({ modkey, "Shift" }, "r", awesome.restart,
{description = "reload awesome", group = "awesome"}),
awful.key({ modkey, "Shift" }, "q", awesome.quit,
{description = "quit awesome", group = "awesome"}),
awful.key({ modkey, }, "l", function () awful.tag.incmwfact( 0.05) end,
{description = "increase master width factor", group = "layout"}),
awful.key({ modkey, }, "h", function () awful.tag.incmwfact(-0.05) end,
{description = "decrease master width factor", group = "layout"}),
awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster( 1, nil, true) end,
{description = "increase the number of master clients", group = "layout"}),
awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster(-1, nil, true) end,
{description = "decrease the number of master clients", group = "layout"}),
awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol( 1, nil, true) end,
{description = "increase the number of columns", group = "layout"}),
awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol(-1, nil, true) end,
{description = "decrease the number of columns", group = "layout"}),
awful.key({ modkey, }, "space", function () awful.layout.inc( 1) end,
{description = "select next", group = "layout"}),
awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(-1) end,
{description = "select previous", group = "layout"}),
awful.key({ modkey, "Control" }, "n",
function ()
local c = awful.client.restore()
-- Focus restored client
if c then
c:emit_signal(
"request::activate", "key.unminimize", {raise = true}
)
end
end,
{description = "restore minimized", group = "client"}),
-- Prompt
awful.key({ modkey }, "r", function () awful.screen.focused().mypromptbox:run() end,
{description = "run prompt", group = "launcher"}),
awful.key({ modkey }, "x",
function ()
awful.prompt.run {
prompt = "Run Lua code: ",
textbox = awful.screen.focused().mypromptbox.widget,
exe_callback = awful.util.eval,
history_path = awful.util.get_cache_dir() .. "/history_eval"
}
end,
{description = "lua execute prompt", group = "awesome"}),
-- Menubar
awful.key({ modkey }, "p", function() awful.spawn('dmenu_run') end,
{description = "show the menubar", group = "launcher"})
)
clientkeys = gears.table.join(
awful.key({ modkey, }, "f",
function (c)
c.fullscreen = not c.fullscreen
c:raise()
end,
{description = "toggle fullscreen", group = "client"}),
awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end,
{description = "close", group = "client"}),
awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ,
{description = "toggle floating", group = "client"}),
awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end,
{description = "move to master", group = "client"}),
awful.key({ modkey, }, "o", function (c) c:move_to_screen() end,
{description = "move to screen", group = "client"}),
awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end,
{description = "toggle keep on top", group = "client"}),
awful.key({ modkey, }, "n",
function (c)
-- The client currently has the input focus, so it cannot be
-- minimized, since minimized clients can't have the focus.
c.minimized = true
end ,
{description = "minimize", group = "client"}),
awful.key({ modkey, }, "m",
function (c)
c.maximized = not c.maximized
c:raise()
end ,
{description = "(un)maximize", group = "client"}),
awful.key({ modkey, "Control" }, "m",
function (c)
c.maximized_vertical = not c.maximized_vertical
c:raise()
end ,
{description = "(un)maximize vertically", group = "client"}),
awful.key({ modkey, "Shift" }, "m",
function (c)
c.maximized_horizontal = not c.maximized_horizontal
c:raise()
end ,
{description = "(un)maximize horizontally", group = "client"})
)
-- Bind all key numbers to tags.
-- Be careful: we use keycodes to make it work on any keyboard layout.
-- This should map on the top row of your keyboard, usually 1 to 9.
for i = 1, 9 do
globalkeys = gears.table.join(globalkeys,
-- View tag only.
awful.key({ modkey }, "#" .. i + 9,
function ()
local screen = awful.screen.focused()
local tag = screen.tags[i]
if tag then
tag:view_only()
end
end,
{description = "view tag #"..i, group = "tag"}),
-- Toggle tag display.
awful.key({ modkey, "Control" }, "#" .. i + 9,
function ()
local screen = awful.screen.focused()
local tag = screen.tags[i]
if tag then
awful.tag.viewtoggle(tag)
end
end,
{description = "toggle tag #" .. i, group = "tag"}),
-- Move client to tag.
awful.key({ modkey, "Shift" }, "#" .. i + 9,
function ()
if client.focus then
local tag = client.focus.screen.tags[i]
if tag then
client.focus:move_to_tag(tag)
end
end
end,
{description = "move focused client to tag #"..i, group = "tag"}),
-- Toggle tag on focused client.
awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9,
function ()
if client.focus then
local tag = client.focus.screen.tags[i]
if tag then
client.focus:toggle_tag(tag)
end
end
end,
{description = "toggle focused client on tag #" .. i, group = "tag"})
)
end
clientbuttons = gears.table.join(
awful.button({ }, 1, function (c)
c:emit_signal("request::activate", "mouse_click", {raise = true})
end),
awful.button({ modkey }, 1, function (c)
c:emit_signal("request::activate", "mouse_click", {raise = true})
awful.mouse.client.move(c)
end),
awful.button({ modkey }, 3, function (c)
c:emit_signal("request::activate", "mouse_click", {raise = true})
awful.mouse.client.resize(c)
end)
)
-- Set keys
root.keys(globalkeys)
-- }}}
-- {{{ Rules
-- Rules to apply to new clients (through the "manage" signal).
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { border_width = beautiful.border_width,
border_color = beautiful.border_normal,
focus = awful.client.focus.filter,
raise = true,
keys = clientkeys,
buttons = clientbuttons,
screen = awful.screen.preferred,
placement = awful.placement.no_overlap+awful.placement.no_offscreen
}
},
-- Floating clients.
{ rule_any = {
instance = {
"DTA", -- Firefox addon DownThemAll.
"copyq", -- Includes session name in class.
"pinentry",
},
class = {
"Arandr",
"Blueman-manager",
"Gpick",
"Kruler",
"MessageWin", -- kalarm.
"Sxiv",
"Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size.
"Wpa_gui",
"veromix",
"xtightvncviewer"},
-- Note that the name property shown in xprop might be set slightly after creation of the client
-- and the name shown there might not match defined rules here.
name = {
"Event Tester", -- xev.
},
role = {
"AlarmWindow", -- Thunderbird's calendar.
"ConfigManager", -- Thunderbird's about:config.
"pop-up", -- e.g. Google Chrome's (detached) Developer Tools.
}
}, properties = { floating = true }},
-- Add titlebars to normal clients and dialogs
{ rule_any = {type = { "normal", "dialog" }
}, properties = { titlebars_enabled = false }
},
-- Set Firefox to always map on the tag named "2" on screen 1.
-- { rule = { class = "Firefox" },
-- properties = { screen = 1, tag = "2" } },
}
-- }}}
-- {{{ Signals
-- Signal function to execute when a new client appears.
client.connect_signal("manage", function (c)
-- Set the windows at the slave,
-- i.e. put it at the end of others instead of setting it master.
-- if not awesome.startup then awful.client.setslave(c) end
if awesome.startup
and not c.size_hints.user_position
and not c.size_hints.program_position then
-- Prevent clients from being unreachable after screen count changes.
awful.placement.no_offscreen(c)
end
end)
-- Add a titlebar if titlebars_enabled is set to true in the rules.
client.connect_signal("request::titlebars", function(c)
-- buttons for the titlebar
local buttons = gears.table.join(
awful.button({ }, 1, function()
c:emit_signal("request::activate", "titlebar", {raise = true})
awful.mouse.client.move(c)
end),
awful.button({ }, 3, function()
c:emit_signal("request::activate", "titlebar", {raise = true})
awful.mouse.client.resize(c)
end)
)
awful.titlebar(c) : setup {
{ -- Left
awful.titlebar.widget.iconwidget(c),
buttons = buttons,
layout = wibox.layout.fixed.horizontal
},
{ -- Middle
{ -- Title
align = "center",
widget = awful.titlebar.widget.titlewidget(c)
},
buttons = buttons,
layout = wibox.layout.flex.horizontal
},
{ -- Right
awful.titlebar.widget.floatingbutton (c),
awful.titlebar.widget.maximizedbutton(c),
awful.titlebar.widget.stickybutton (c),
awful.titlebar.widget.ontopbutton (c),
awful.titlebar.widget.closebutton (c),
layout = wibox.layout.fixed.horizontal()
},
layout = wibox.layout.align.horizontal
}
end)
-- Enable sloppy focus, so that focus follows mouse.
client.connect_signal("mouse::enter", function(c)
c:emit_signal("request::activate", "mouse_enter", {raise = false})
end)
client.connect_signal("focus", function(c) c.border_color = beautiful.border_focus end)
client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)
-- }}}

View File

@@ -0,0 +1,132 @@
---------------------------
-- Default awesome theme --
---------------------------
local theme_assets = require("beautiful.theme_assets")
local xresources = require("beautiful.xresources")
local dpi = xresources.apply_dpi
local gfs = require("gears.filesystem")
local themes_path = gfs.get_themes_dir()
local theme = {}
local xtheme = xresources.get_current_theme()
theme.font = "Olympe Mono Hacked 10"
theme.bg_normal = xtheme.color0
theme.bg_focus = xtheme.color4
theme.bg_urgent = xtheme.color13
theme.bg_minimize = xtheme.color1
theme.bg_systray = theme.bg_normal
theme.fg_normal = xtheme.color4
theme.fg_focus = xtheme.color0
theme.fg_urgent = xtheme.color15
theme.fg_minimize = xtheme.color1
theme.useless_gap = dpi(0)
theme.border_width = dpi(1)
theme.border_normal = xtheme.color0
theme.border_focus = xtheme.color8
theme.border_marked = xtheme.color15
theme.gap_single_client = false
-- There are other variable sets
-- overriding the default one when
-- defined, the sets are:
-- taglist_[bg|fg]_[focus|urgent|occupied|empty|volatile]
-- tasklist_[bg|fg]_[focus|urgent]
-- titlebar_[bg|fg]_[normal|focus]
-- tooltip_[font|opacity|fg_color|bg_color|border_width|border_color]
-- mouse_finder_[color|timeout|animate_timeout|radius|factor]
-- prompt_[fg|bg|fg_cursor|bg_cursor|font]
-- hotkeys_[bg|fg|border_width|border_color|shape|opacity|modifiers_fg|label_bg|label_fg|group_margin|font|description_font]
-- Example:
--theme.taglist_bg_focus = "#ff0000"
-- Generate taglist squares:
local taglist_square_size = dpi(4)
theme.taglist_squares_sel = theme_assets.taglist_squares_sel(
taglist_square_size, xtheme.color0
)
theme.taglist_squares_unsel = theme_assets.taglist_squares_unsel(
taglist_square_size, theme.fg_normal
)
-- Variables set for theming notifications:
-- notification_font
-- notification_[bg|fg]
-- notification_[width|height|margin]
-- notification_[border_color|border_width|shape|opacity]
-- Variables set for theming the menu:
-- menu_[bg|fg]_[normal|focus]
-- menu_[border_color|border_width]
theme.menu_submenu_icon = themes_path.."default/submenu.png"
theme.menu_height = dpi(15)
theme.menu_width = dpi(100)
-- You can add as many variables as
-- you wish and access them by using
-- beautiful.variable in your rc.lua
--theme.bg_widget = "#cc0000"
-- Define the image to load
theme.titlebar_close_button_normal = themes_path.."default/titlebar/close_normal.png"
theme.titlebar_close_button_focus = themes_path.."default/titlebar/close_focus.png"
theme.titlebar_minimize_button_normal = themes_path.."default/titlebar/minimize_normal.png"
theme.titlebar_minimize_button_focus = themes_path.."default/titlebar/minimize_focus.png"
theme.titlebar_ontop_button_normal_inactive = themes_path.."default/titlebar/ontop_normal_inactive.png"
theme.titlebar_ontop_button_focus_inactive = themes_path.."default/titlebar/ontop_focus_inactive.png"
theme.titlebar_ontop_button_normal_active = themes_path.."default/titlebar/ontop_normal_active.png"
theme.titlebar_ontop_button_focus_active = themes_path.."default/titlebar/ontop_focus_active.png"
theme.titlebar_sticky_button_normal_inactive = themes_path.."default/titlebar/sticky_normal_inactive.png"
theme.titlebar_sticky_button_focus_inactive = themes_path.."default/titlebar/sticky_focus_inactive.png"
theme.titlebar_sticky_button_normal_active = themes_path.."default/titlebar/sticky_normal_active.png"
theme.titlebar_sticky_button_focus_active = themes_path.."default/titlebar/sticky_focus_active.png"
theme.titlebar_floating_button_normal_inactive = themes_path.."default/titlebar/floating_normal_inactive.png"
theme.titlebar_floating_button_focus_inactive = themes_path.."default/titlebar/floating_focus_inactive.png"
theme.titlebar_floating_button_normal_active = themes_path.."default/titlebar/floating_normal_active.png"
theme.titlebar_floating_button_focus_active = themes_path.."default/titlebar/floating_focus_active.png"
theme.titlebar_maximized_button_normal_inactive = themes_path.."default/titlebar/maximized_normal_inactive.png"
theme.titlebar_maximized_button_focus_inactive = themes_path.."default/titlebar/maximized_focus_inactive.png"
theme.titlebar_maximized_button_normal_active = themes_path.."default/titlebar/maximized_normal_active.png"
theme.titlebar_maximized_button_focus_active = themes_path.."default/titlebar/maximized_focus_active.png"
-- theme.wallpaper = themes_path.."default/background.png"
theme.wallpaper = os.getenv("HOME") .. "Pictures/wallpapers/wallpaper"
-- You can use your own layout icons like this:
theme.layout_fairh = themes_path.."default/layouts/fairhw.png"
theme.layout_fairv = themes_path.."default/layouts/fairvw.png"
theme.layout_floating = themes_path.."default/layouts/floatingw.png"
theme.layout_magnifier = themes_path.."default/layouts/magnifierw.png"
theme.layout_max = themes_path.."default/layouts/maxw.png"
theme.layout_fullscreen = themes_path.."default/layouts/fullscreenw.png"
theme.layout_tilebottom = themes_path.."default/layouts/tilebottomw.png"
theme.layout_tileleft = themes_path.."default/layouts/tileleftw.png"
theme.layout_tile = themes_path.."default/layouts/tilew.png"
theme.layout_tiletop = themes_path.."default/layouts/tiletopw.png"
theme.layout_spiral = themes_path.."default/layouts/spiralw.png"
theme.layout_dwindle = themes_path.."default/layouts/dwindlew.png"
theme.layout_cornernw = themes_path.."default/layouts/cornernww.png"
theme.layout_cornerne = themes_path.."default/layouts/cornernew.png"
theme.layout_cornersw = themes_path.."default/layouts/cornersww.png"
theme.layout_cornerse = themes_path.."default/layouts/cornersew.png"
-- Generate Awesome icon:
theme.awesome_icon = theme_assets.awesome_icon(
theme.menu_height, theme.bg_focus, theme.fg_focus
)
-- Define the icon theme for application icons. If not set then the icons
-- from /usr/share/icons and /usr/share/icons/hicolor will be used.
theme.icon_theme = nil
return theme
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80

55
config/.config/bspwm/bspwmrc Executable file
View File

@@ -0,0 +1,55 @@
#! /bin/sh
## Autostart Programs
sxhkd &
# xsetroot -cursor_name left_ptr
pgrep bspswallow || bspswallow &
pgrep statnot || statnot &
# polybar example &
#~/.scripts/panel.sh
if [ $(pgrep polybar) ]; then
killall -q polybar && sleep .5 && polybar mainbar &
else
sleep .5 && polybar mainbar &
fi
pipewire-launch || pipewire-launch restart &
#MONITOR=DP-5 polybar example &
~/.fehbg
picom &
#lxsession &
#blueman-applet &
#nm-applet &
## Configure Monitors/Workspaces
bspc monitor eDP-1 -d 1 2 3 4 5 6 7 8 9
## Theming
bspc config border_width 1
bspc config window_gap 10
bspc config top_padding 36
bspc config left_padding 0
bspc config right_padding 0
bspc config bottom_padding 0
bspc config split_ratio 0.52
bspc config borderless_monocle true
bspc config gapless_monocle false
# bspc config ignore_ewmh_fullscreen all
bspc config single_monocle true
# Colors
bspc config normal_border_color "$(xrdb -query | grep background | cut -f2)"
bspc config focused_border_color "$(xrdb -query | grep foreground | cut -f2)"
bspc rule -a Gimp desktop='^8' state=floating follow=on
bspc rule -a Chromium desktop='^2'
bspc rule -a mplayer2 state=floating
bspc rule -a Kupfer.py focus=on
bspc rule -a Screenkey manage=off
bspc rule -a Emacs state=tiled
# Polybar Hidden When Fullscreen for Vlc, Youtube, Mpv ...
# xdo below -t $(xdo id -n root) $(xdo id -a polybar-mainbar_DisplayPort-1)
#xdo below -t $(xdo id -n root) $(xdo id -a polybar-main)
## Make Focus Follow Cursor
bspc config focus_follows_pointer true

View File

@@ -0,0 +1 @@
xev

View File

@@ -0,0 +1,2 @@
St
st

1
config/.config/cmus/rc Normal file
View File

@@ -0,0 +1 @@

View File

@@ -0,0 +1,51 @@
# Rosé Pine colorscheme
# by: Boris Petrov (https://github.com/Iorvethe)
# colors from: https://rosepinetheme.com/
#
# Blue: 67
# Red: 166
# Yellow: 227
# Pink: 217
# White: 254
# Black: 233
# Window
set color_cmdline_bg=default
set color_cmdline_fg=default
set color_win_title_bg=67
set color_win_title_fg=254
set color_win_bg=default
set color_win_fg=default
set color_separator=67
# Bottom status
set color_titleline_bg=67
set color_titleline_fg=254
set color_statusline_bg=default
set color_statusline_fg=default
# Text
set color_win_cur=227
set color_win_dir=default
# Menu
set color_win_sel_bg=67
set color_win_sel_fg=254
set color_win_inactive_sel_bg=default
set color_win_inactive_sel_fg=67
set color_win_cur_sel_bg=67
set color_win_cur_sel_fg=227
set color_win_inactive_cur_sel_bg=default
set color_win_inactive_cur_sel_fg=227
# Messages
set color_error=166
set color_info=227

View File

@@ -0,0 +1,51 @@
# Rosé Pine colorscheme
# by: Boris Petrov (https://github.com/Iorvethe)
# colors from: https://rosepinetheme.com/
#
# Blue: 67
# Red: 166
# Yellow: 227
# Pink: 181
# White: 254
# Black: 233
# Window
set color_cmdline_bg=default
set color_cmdline_fg=default
set color_win_title_bg=181
set color_win_title_fg=233
set color_win_bg=default
set color_win_fg=default
set color_separator=181
# Bottom status
set color_titleline_bg=181
set color_titleline_fg=233
set color_statusline_bg=default
set color_statusline_fg=default
# Text
set color_win_cur=227
set color_win_dir=default
# Menu
set color_win_sel_bg=181
set color_win_sel_fg=233
set color_win_inactive_sel_bg=default
set color_win_inactive_sel_fg=181
set color_win_cur_sel_bg=181
set color_win_cur_sel_fg=227
set color_win_inactive_cur_sel_bg=default
set color_win_inactive_cur_sel_fg=227
# Messages
set color_error=166
set color_info=227

View File

@@ -0,0 +1,127 @@
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
;; Place your private configuration here! Remember, you do not need to run 'doom
;; sync' after modifying this file!
;; Some functionality uses this to identify you, e.g. GPG configuration, email
;; clients, file templates and snippets. It is optional.
;; (setq user-full-name "John Doe"
;; user-mail-address "john@doe.com")
;; Doom exposes five (optional) variables for controlling fonts in Doom:
;;
;; - `doom-font' -- the primary font to use
;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable)
;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for
;; presentations or streaming.
;; - `doom-symbol-font' -- for symbols
;; - `doom-serif-font' -- for the `fixed-pitch-serif' face
;;
;; See 'C-h v doom-font' for documentation and more examples of what they
;; accept. For example:
;;
;; (setq doom-font (font-spec :family "Fira Code" :size 12 :weight 'semi-light)
;; doom-variable-pitch-font (font-spec :family "Fira Sans" :size 13))
(setq doom-font (font-spec :family "Iosevka Term SS12" :size 18))
;;
;; If you or Emacs can't find your font, use 'M-x describe-font' to look them
;; up, `M-x eval-region' to execute elisp code, and 'M-x doom/reload-font' to
;; refresh your font settings. If Emacs still can't find your font, it likely
;; wasn't installed correctly. Font issues are rarely Doom issues!
;; There are two ways to load a theme. Both assume the theme is installed and
;; available. You can either set `doom-theme' or manually load a theme with the
;; `load-theme' function. This is the default:
;; (setq doom-theme 'doom-one)
;; This determines the style of line numbers in effect. If set to `nil', line
;; numbers are disabled. For relative line numbers, set this to `relative'.
(setq display-line-numbers-type 'relative)
;; If you use `org' and don't want your org files in the default location below,
;; change `org-directory'. It must be set before org loads!
(setq org-directory "~/org/")
;; Whenever you reconfigure a package, make sure to wrap your config in an
;; `after!' block, otherwise Doom's defaults may override your settings. E.g.
;;
;; (after! PACKAGE
;; (setq x y))
;;
;; The exceptions to this rule:
;;
;; - Setting file/directory variables (like `org-directory')
;; - Setting variables which explicitly tell you to set them before their
;; package is loaded (see 'C-h v VARIABLE' to look up their documentation).
;; - Setting doom variables (which start with 'doom-' or '+').
;;
;; Here are some additional functions/macros that will help you configure Doom.
;;
;; - `load!' for loading external *.el files relative to this one
;; - `use-package!' for configuring packages
;; - `after!' for running code after a package has loaded
;; - `add-load-path!' for adding directories to the `load-path', relative to
;; this file. Emacs searches the `load-path' when you load packages with
;; `require' or `use-package'.
;; - `map!' for binding new keys
;;
;; To get information about any of these functions/macros, move the cursor over
;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k').
;; This will open documentation for it, including demos of how they are used.
;; Alternatively, use `C-h o' to look up a symbol (functions, variables, faces,
;; etc).
;;
;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
;; they are implemented.
;; (setq! tab-always-indent nil)
(after! corfu
(setq! tab-always-indent nil))
;; (map! :map corfu-map :i "TAB" nil)
;; (map! :map corfu-map "TAB" nil)
;; (map! :map corfu-map :i "S-TAB" nil)
;; (map! :map corfu-map "S-TAB" nil)
;; (map! :map corfu-map :i "C-n" #'corfu-next)
;; (map! :map corfu-map :i "C-p" #'corfu-previous)
;; (map! :map corfu-map "C-n" #'corfu-next)
;; (map! :map corfu-map "C-p" #'corfu-previous)
;; (map! :map corfu-map "ESC" #'corfu-reset)
;; (map! :map corfu-map :i "ESC" #'corfu-reset)
;; (map! :map corfu-map "C-g" #'corfu-reset)
;; (map! :map corfu-map :i "C-g" #'corfu-reset)
;; (setq +corfu-want-ret-to-confirm nil)
(use-package! auto-dark
:defer t
:init
;; Configure themes
(setq! auto-dark-themes '((doom-gruvbox) (doom-gruvbox-light)))
;; Disable doom's theme loading mechanism (just to make sure)
(setq! doom-theme nil)
;; Declare that all themes are safe to load.
;; Be aware that setting this variable may have security implications if you
;; get tricked into loading untrusted themes (via auto-dark-mode or manually).
;; See the documentation of custom-safe-themes for details.
(setq! custom-safe-themes t)
;; Enable auto-dark-mode at the right point in time.
;; This is inspired by doom-ui.el. Using server-after-make-frame-hook avoids
;; issues with an early start of the emacs daemon using systemd, which causes
;; problems with the DBus connection that auto-dark mode relies upon.
(defun my-auto-dark-init-h ()
(auto-dark-mode)
(remove-hook 'server-after-make-frame-hook #'my-auto-dark-init-h)
(remove-hook 'after-init-hook #'my-auto-dark-init-h))
(let ((hook (if (daemonp)
'server-after-make-frame-hook
'after-init-hook)))
;; Depth -95 puts this before doom-init-theme-h, which sounds like a good
;; idea, if only for performance reasons.
(add-hook hook #'my-auto-dark-init-h -95)))
(add-to-list 'auto-mode-alist '("\\.odin\\'" . odin-ts-mode))
(defvar treesit-language-source-alist '((odin "https://github.com/tree-sitter-grammars/tree-sitter-odin")))
;; (add-to-list treesit-language-source-alist '(odin "https://github.com/tree-sitter-grammars/tree-sitter-odin"))
(setq lsp-inlay-hint-enable 't)

198
config/.config/doom/init.el Normal file
View File

@@ -0,0 +1,198 @@
;;; init.el -*- lexical-binding: t; -*-
;; This file controls what Doom modules are enabled and what order they load
;; in. Remember to run 'doom sync' after modifying it!
;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's
;; documentation. There you'll find a link to Doom's Module Index where all
;; of our modules are listed, including what flags they support.
;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or
;; 'C-c c k' for non-vim users) to view its documentation. This works on
;; flags as well (those symbols that start with a plus).
;;
;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its
;; directory (for easy access to its source code).
(doom! :input
;;bidi ; (tfel ot) thgir etirw uoy gnipleh
;;chinese
;;japanese
;;layout ; auie,ctsrnm is the superior home row
:completion
;;company ; the ultimate code completion backend
(corfu +orderless) ; complete with cap(f), cape and a flying feather!
;;helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine...
;; ivy ; a search engine for love and life
vertico ; the search engine of the future
:ui
;;deft ; notational velocity for Emacs
doom ; what makes DOOM look the way it does
doom-dashboard ; a nifty splash screen for Emacs
;;doom-quit ; DOOM quit-message prompts when you quit Emacs
;;(emoji +unicode) ; 🙂
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
indent-guides ; highlighted indent columns
;;ligatures ; ligatures and symbols to make your code pretty again
;;minimap ; show a map of the code on the side
;; modeline ; snazzy, Atom-inspired modeline, plus API
;;nav-flash ; blink cursor line after big motions
;;neotree ; a project drawer, like NERDTree for vim
ophints ; highlight the region an operation acts on
(popup +defaults) ; tame sudden yet inevitable temporary windows
smooth-scroll ; So smooth you won't believe it's not butter
;;tabs ; a tab bar for Emacs
;;treemacs ; a project drawer, like neotree but cooler
unicode ; extended unicode support for various languages
(vc-gutter +pretty) ; vcs diff in the fringe
vi-tilde-fringe ; fringe tildes to mark beyond EOB
;;window-select ; visually switch windows
;; workspaces ; tab emulation, persistence & separate workspaces
zen ; distraction-free coding or writing
:editor
(evil +everywhere); come to the dark side, we have cookies
file-templates ; auto-snippets for empty files
fold ; (nigh) universal code folding
(format +onsave) ; automated prettiness
;;god ; run Emacs commands without modifier keys
;;lispy ; vim for lisp, for people who don't like vim
multiple-cursors ; editing in many places at once
;;objed ; text object editing for the innocent
parinfer ; turn lisp into python, sort of
;;rotate-text ; cycle region at point between text candidates
snippets ; my elves. They type so I don't have to
;; (whitespace +guess +trim) ; a butler for your whitespace
word-wrap ; soft wrapping with language-aware indent
:emacs
dired ; making dired pretty [functional]
electric ; smarter, keyword-based electric-indent
;;eww ; the internet is gross
ibuffer ; interactive buffer management
tramp ; remote files at your arthritic fingertips
undo ; persistent, smarter undo for your inevitable mistakes
vc ; version-control and Emacs, sitting in a tree
:term
eshell ; the elisp shell that works everywhere
;;shell ; simple shell REPL for Emacs
;;term ; basic terminal emulator for Emacs
;; vterm ; the best terminal emulation in Emacs
:checkers
syntax ; tasing you for every semicolon you forget
(spell +flyspell) ; tasing you for misspelling mispelling
;;grammar ; tasing grammar mistake every you make
:tools
;;ansible
;;biblio ; Writes a PhD for you (citation needed)
;;collab ; buffers with friends
;;debugger ; FIXME stepping through code, to help you add bugs
;;direnv
;;docker
;;editorconfig ; let someone else argue about tabs vs spaces
;;ein ; tame Jupyter notebooks with emacs
(eval +overlay) ; run code, run (also, repls)
(lookup +dictionary +offline) ; navigate your code and its documentation
;;llm ; when I said you needed friends, I didn't mean...
(lsp +eglot) ; M-x vscode
(magit +forge) ; a git porcelain for Emacs
;;make ; run make tasks from Emacs
;;pass ; password manager for nerds
;;pdf ; pdf enhancements
;;terraform ; infrastructure as code
;;tmux ; an API for interacting with tmux
tree-sitter ; syntax and parsing, sitting in a tree...
;;upload ; map local to remote projects via ssh/ftp
:os
(:if (featurep :system 'macos) macos) ; improve compatibility with macOS
tty ; improve the terminal Emacs experience
:lang
;;ada ; In strong typing we (blindly) trust
;;agda ; types of types of types of types...
;;beancount ; mind the GAAP
(cc +lsp +tree-sitter) ; C > C++ == 1
;;clojure ; java with a lisp
common-lisp ; if you've seen one lisp, you've seen them all
;;coq ; proofs-as-programs
;;crystal ; ruby at the speed of c
;;csharp ; unity, .NET, and mono shenanigans
;;data ; config/data formats
;;(dart +flutter) ; paint ui and not much else
;;dhall
;;elixir ; erlang done right
;;elm ; care for a cup of TEA?
emacs-lisp ; drown in parentheses
;;erlang ; an elegant language for a more civilized age
;;ess ; emacs speaks statistics
;;factor
;;faust ; dsp, but you get to keep your soul
;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER)
;;fsharp ; ML stands for Microsoft's Language
;;fstar ; (dependent) types and (monadic) effects and Z3
;;gdscript ; the language you waited for
;;(go +lsp) ; the hipster dialect
;;(graphql +lsp) ; Give queries a REST
;;(haskell +lsp) ; a language that's lazier than I am
;;hy ; readability of scheme w/ speed of python
;;idris ; a language you can depend on
;;json ; At least it ain't XML
;;janet ; Fun fact: Janet is me!
;;(java +lsp) ; the poster child for carpal tunnel syndrome
;;javascript ; all(hope(abandon(ye(who(enter(here))))))
;;julia ; a better, faster MATLAB
;;kotlin ; a better, slicker Java(Script)
;;latex ; writing papers in Emacs has never been so fun
;;lean ; for folks with too much to prove
;;ledger ; be audit you can be
;;lua ; one-based indices? one-based indices
(markdown +grip +tree-sitter) ; writing docs for people to ignore
;;nim ; python + lisp at the speed of c
;;nix ; I hereby declare "nix geht mehr!"
;;ocaml ; an objective camel
org ; organize your plain life in plain text
;;php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more
;;graphviz ; diagrams for confusing yourself even more
;;purescript ; javascript, but functional
;;python ; beautiful is better than ugly
;;qt ; the 'cutest' gui framework ever
;;racket ; a DSL for DSLs
;;raku ; the artist formerly known as perl6
;;rest ; Emacs as a REST client
;;rst ; ReST in peace
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
(rust +lsp +tree-sitter) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
;;scala ; java, but good
;;(scheme +guile) ; a fully conniving family of lisps
sh ; she sells {ba,z,fi}sh shells on the C xor
;;sml
;;solidity ; do you need a blockchain? No.
(swift +lsp +tree-sitter); who asked for emoji variables?
;;terra ; Earth and Moon in alignment for performance.
(web +lsp +tree-sitter) ; the tubes
;;yaml ; JSON, but readable
(zig +lsp +tree-sitter) ; C, but simpler
:email
;;(mu4e +org +gmail)
;;notmuch
;;(wanderlust +gmail)
:app
;;calendar
;;emms
;;everywhere ; *leave* Emacs!? You must be joking
;;irc ; how neckbeards socialize
;;(rss +org) ; emacs as an RSS reader
:config
;;literate
(default +bindings +smartparens))

View File

@@ -0,0 +1,57 @@
;; -*- no-byte-compile: t; -*-
;;; $DOOMDIR/packages.el
;; To install a package:
;;
;; 1. Declare them here in a `package!' statement,
;; 2. Run 'doom sync' in the shell,
;; 3. Restart Emacs.
;;
;; Use 'C-h f package\!' to look up documentation for the `package!' macro.
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
;; (package! some-package)
;; To install a package directly from a remote git repo, you must specify a
;; `:recipe'. You'll find documentation on what `:recipe' accepts here:
;; https://github.com/radian-software/straight.el#the-recipe-format
;; (package! another-package
;; :recipe (:host github :repo "username/repo"))
;; If the package you are trying to install does not contain a PACKAGENAME.el
;; file, or is located in a subdirectory of the repo, you'll need to specify
;; `:files' in the `:recipe':
;; (package! this-package
;; :recipe (:host github :repo "username/repo"
;; :files ("some-file.el" "src/lisp/*.el")))
;; If you'd like to disable a package included with Doom, you can do so here
;; with the `:disable' property:
;; (package! builtin-package :disable t)
;; You can override the recipe of a built in package without having to specify
;; all the properties for `:recipe'. These will inherit the rest of its recipe
;; from Doom or MELPA/ELPA/Emacsmirror:
;; (package! builtin-package :recipe (:nonrecursive t))
;; (package! builtin-package-2 :recipe (:repo "myfork/package"))
;; Specify a `:branch' to install a package from a particular branch or tag.
;; This is required for some packages whose default branch isn't 'master' (which
;; our package manager can't deal with; see radian-software/straight.el#279)
;; (package! builtin-package :recipe (:branch "develop"))
;; Use `:pin' to specify a particular commit to install.
;; (package! builtin-package :pin "1a2b3c4d5e")
;; Doom's packages are pinned to a specific commit and updated from release to
;; release. The `unpin!' macro allows you to unpin single packages...
;; (unpin! pinned-package)
;; ...or multiple packages
;; (unpin! pinned-package another-pinned-package)
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
;; (unpin! t)
(package! auto-dark)
(package! odin-ts-mode
:recipe (:host github :repo "Sampie159/odin-ts-mode"))

View File

@@ -0,0 +1,237 @@
;;; doom-rose-pine-dawn-theme.el --- A light port of Rose Piné Dawn theme -*- lexical-binding: t; no-byte-compile: t; -*-
;;
;; Author: mvllow
;; Ported by: donniebreve
;; Keywords: custom themes, faces
;; Homepage: https://github.com/donniebreve/rose-pine-doom-emacs
;; Package-Requires: ((emacs "25.1") (cl-lib "0.5") (doom-themes "2.2.1"))
;;
;;; Commentary:
;;
;; Thanks to mvllow (https://github.com/rose-pine)
;; Thanks to hlissner (https://github.com/doomemacs/themes)
;;
;;; Code:
(require 'doom-themes)
;;; Variables
(defgroup doom-rose-pine-dawn-theme nil
"Options for the `doom-rose-pine-dawn' theme."
:group 'doom-themes)
(defcustom doom-rose-pine-dawn-brighter-modeline nil
"If non-nil, more vivid colors will be used to style the mode-line."
:group 'doom-rose-pine-dawn-theme
:type 'boolean)
(defcustom doom-rose-pine-dawn-brighter-comments nil
"If non-nil, comments will be highlighted in more vivid colors."
:group 'doom-rose-pine-dawn-theme
:type 'boolean)
(defcustom doom-rose-pine-dawn-padded-modeline doom-themes-padded-modeline
"If non-nil, adds a 4px padding to the mode-line. Can be an integer to determine the exact padding."
:group 'doom-rose-pine-dawn-theme
:type '(choice integer boolean))
;;; Theme definition
(def-doom-theme doom-rose-pine-dawn
"A light port of Rosé Pine Dawn theme"
;; Main theme colors
(
;; name default 256 16
(base '("#faf4ed" "#faf4ed" "black" ))
(surface '("#fffaf3" "#fffaf3" "brightblack" ))
(overlay '("#f2e9de" "#f2e9de" "brightblack" ))
(muted '("#9893a5" "#9893a5" "brightblack" ))
(subtle '("#797593" "#797593" "brightblack" ))
(text '("#575279" "#575279" "brightblack" ))
(love '("#b4637a" "#b4637a" "red" ))
(gold '("#ea9d34" "#ea9d34" "white" ))
(rose '("#d7827e" "#d7827e" "white" ))
(pine '("#286983" "#286983" "white" ))
(foam '("#56949f" "#56949f" "white" ))
(iris '("#907aa9" "#907aa9" "white" ))
(highlightL '("#f4ede8" "#f4ede8" "grey" ))
(highlightM '("#dfdad9" "#dfdad9" "grey" ))
(highlightH '("#cecacd" "#cecacd" "grey" ))
;; Variables required by doom theme
(bg base)
(fg text)
;; These are off-color variants of bg/fg, used primarily for `solaire-mode',
;; but can also be useful as a basis for subtle highlights (e.g. for hl-line
;; or region), especially when paired with the `doom-darken', `doom-lighten',
;; and `doom-blend' helper functions.
(bg-alt surface)
(fg-alt text)
;; These should represent a spectrum from bg to fg, where base0 is a starker
;; bg and base8 is a starker fg. For example, if bg is light grey and fg is
;; dark grey, base0 should be white and base8 should be black.
(base0 surface)
(base1 base)
(base2 highlightL)
(base3 overlay)
(base4 highlightM)
(base5 highlightH)
(base6 muted)
(base7 subtle)
(base8 text)
(grey muted)
(red love)
(orange gold)
(green pine)
(teal pine)
(yellow rose)
(blue pine)
(dark-blue pine)
(magenta iris)
(violet iris)
(cyan foam)
(dark-cyan foam)
;; Variables required by doom theme ends here
;; Required face categories for syntax highlighting
(highlight subtle) ; cursor
(selection base) ; can't figure out where this is used
(region overlay) ; visual selection
(vertical-bar surface) ; window split
(comments (if doom-rose-pine-dawn-brighter-comments subtle muted))
(doc-comments (if doom-rose-pine-dawn-brighter-comments subtle muted))
(builtin pine)
(constants iris)
(functions pine)
(keywords pine)
(methods foam)
(numbers rose)
(operators gold)
(strings gold)
(type rose)
(variables iris)
(error love)
(success foam)
(warning gold)
(vc-added foam)
(vc-deleted love)
(vc-modified gold)
;; Other categories
;; Modeline
(modeline-bg (if doom-rose-pine-dawn-brighter-modeline overlay surface))
(modeline-fg text)
(modeline-bg-alt (if doom-rose-pine-dawn-brighter-modeline muted overlay))
(modeline-fg-alt text) ; should this be darker or lighter?
(modeline-bg-inactive base)
(modeline-fg-inactive subtle)
(modeline-bg-inactive-alt base)
(modeline-fg-inactive-alt subtle)
(modeline-pad
(when doom-rose-pine-dawn-padded-modeline
if (integerp doom-rose-pine-dawn-padded-modeline) doom-rose-pine-padded-modeline 4)))
;; Base theme face overrides
(
;; Font
((font-lock-comment-face &override)
:slant 'italic
:background (if doom-rose-pine-dawn-brighter-comments (doom-blend teal base 0.07)))
((font-lock-type-face &override) :slant 'italic)
((font-lock-builtin-face &override) :slant 'italic)
((font-lock-function-name-face &override) :foreground type)
((font-lock-keyword-face &override) :weight 'bold)
((font-lock-constant-face &override) :weight 'bold)
;; Highlight line
(hl-line
:background highlightL)
;; Line numbers
((line-number &override) :foreground muted)
((line-number-current-line &override) :foreground text)
;; Mode line
(mode-line
:background modeline-bg
:foreground modeline-fg
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg)))
(mode-line-inactive
:background modeline-bg-inactive
:foreground modeline-fg-inactive
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-inactive)))
(mode-line-emphasis
:foreground (if doom-rose-pine-dawn-brighter-modeline text subtle))
;; Company
(company-tooltip-selection :background blue :foreground muted)
;; CSS mode <built-in> / scss-mode
(css-proprietary-property :foreground orange)
(css-property :foreground green)
(css-selector :foreground green)
;; Doom mode line
(doom-modeline-bar :background green) ; The line to the left
(doom-modeline-evil-emacs-state :foreground magenta) ; The dot color when in emacs mode
(doom-modeline-evil-normal-state :foreground green) ; The dot color when in normal mode
(doom-modeline-evil-visual-state :foreground magenta) ; The dot color when in visual mode
(doom-modeline-evil-insert-state :foreground orange) ; The dot color when in insert mode
;; Helm
(helm-selection :foreground base :weight 'bold :background blue)
;; Ivy
(ivy-current-match :background highlightL :distant-foreground fg)
(ivy-minibuffer-match-face-1 :foreground pine :background nil :weight 'bold)
(ivy-minibuffer-match-face-2 :foreground iris :background nil :weight 'bold)
(ivy-minibuffer-match-face-3 :foreground gold :background nil :weight 'bold)
(ivy-minibuffer-match-face-4 :foreground rose :background nil :weight 'bold)
(ivy-minibuffer-match-highlight :foreground magenta :weight 'bold)
(ivy-posframe :background modeline-bg-alt)
;; Markdown mode
(markdown-markup-face :foreground text)
(markdown-header-face :inherit 'bold :foreground red)
((markdown-code-face &override) :background surface)
;; org <built-in>
(org-block :background (doom-blend yellow bg 0.04) :extend t)
(org-block-background :background (doom-blend yellow bg 0.04))
(org-block-begin-line :background (doom-blend yellow bg 0.08) :foreground comments :extend t)
(org-block-end-line :background (doom-blend yellow bg 0.08) :foreground comments :extend t)
(org-level-1 :foreground gold)
(org-level-2 :foreground rose)
(org-level-3 :foreground pine)
(org-level-4 :foreground iris)
(org-level-5 :foreground gold)
(org-level-6 :foreground rose)
(org-level-7 :foreground pine)
(org-level-8 :foreground iris)
;; Solaire mode line
(solaire-mode-line-face
:inherit 'mode-line
:background modeline-bg-alt
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-alt)))
(solaire-mode-line-inactive-face
:inherit 'mode-line-inactive
:background modeline-bg-inactive-alt
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-inactive-alt)))
;; Widget
(widget-field :foreground fg :background muted)
(widget-single-line-field :foreground fg :background muted)
;; Swiper
(swiper-line-face :background highlightM)
(swiper-match-face-1 :inherit 'ivy-minibuffer-match-face-1)
(swiper-match-face-2 :inherit 'ivy-minibuffer-match-face-2)
(swiper-match-face-3 :inherit 'ivy-minibuffer-match-face-3)
(swiper-match-face-4 :inherit 'ivy-minibuffer-match-face-4)))
;;; doom-rose-pine-dawn-theme.el ends here

View File

@@ -0,0 +1,244 @@
;;; doom-rose-pine-moon-theme.el --- A medium port of Rosé Pine Moon theme -*- lexical-binding: t; no-byte-compile: t; -*-
;;
;; Author: mvllow
;; Ported by: donniebreve
;; Keywords: custom themes, faces
;; Homepage: https://github.com/donniebreve/rose-pine-doom-emacs
;; Package-Requires: ((emacs "25.1") (cl-lib "0.5") (doom-themes "2.2.1"))
;;
;;; Commentary:
;;
;; Thanks to mvllow (https://github.com/rose-pine)
;; Thanks to hlissner (https://github.com/doomemacs/themes)
;;
;;; Code:
(require 'doom-themes)
;;; Variables
(defgroup doom-rose-pine-moon-theme nil
"Options for the `doom-rose-pine-moon' theme."
:group 'doom-themes)
(defcustom doom-rose-pine-moon-brighter-modeline nil
"If non-nil, more vivid colors will be used to style the mode-line."
:group 'doom-rose-pine-moon-theme
:type 'boolean)
(defcustom doom-rose-pine-moon-brighter-comments nil
"If non-nil, comments will be highlighted in more vivid colors."
:group 'doom-rose-pine-moon-theme
:type 'boolean)
(defcustom doom-rose-pine-moon-brighter-text nil
"If non-nil, default text will be brighter."
:group 'doom-rose-pine-moon-theme
:type 'boolean)
(defcustom doom-rose-pine-moon-padded-modeline doom-themes-padded-modeline
"If non-nil, adds a 4px padding to the mode-line. Can be an integer to determine the exact padding."
:group 'doom-rose-pine-moon-theme
:type '(choice integer boolean))
;;; Theme definition
(def-doom-theme doom-rose-pine-moon
"A medium port of Rosé Pine Moon theme"
;; Main theme colors
(
;; name default 256 16
(base '("#232136" "#232136" "black" ))
(surface '("#2a273f" "#2a273f" "brightblack" ))
(overlay '("#393552" "#393552" "brightblack" ))
(muted '("#6e6a86" "#6e6a86" "brightblack" ))
(subtle '("#908caa" "#908caa" "brightblack" ))
(text '("#e0def4" "#e0def4" "brightblack" ))
(love '("#eb6f92" "#eb6f92" "red" ))
(gold '("#f6c177" "#f6c177" "white" ))
(rose '("#ea9a97" "#ea9a97" "white" ))
(pine '("#3e8fb0" "#3e8fb0" "white" ))
(foam '("#9ccfd8" "#9ccfd8" "white" ))
(iris '("#c4a7e7" "#c4a7e7" "white" ))
(highlightL '("#2a283e" "#2a283e" "white" ))
(highlightM '("#44415a" "#44415a" "white" ))
(highlightH '("#56526e" "#56526e" "white" ))
;; Variables required by doom theme
;; These are required by doom theme and used in various places
(bg base)
(fg text)
;; These are off-color variants of bg/fg, used primarily for `solaire-mode',
;; but can also be useful as a basis for subtle highlights (e.g. for hl-line
;; or region), especially when paired with the `doom-darken', `doom-lighten',
;; and `doom-blend' helper functions.
(bg-alt surface)
(fg-alt text)
;; These should represent a spectrum from bg to fg, where base0 is a starker
;; bg and base8 is a starker fg. For example, if bg is light grey and fg is
;; dark grey, base0 should be white and base8 should be black.
(base0 base)
(base1 surface)
(base2 highlightL)
(base3 overlay)
(base4 highlightM)
(base5 highlightH)
(base6 muted)
(base7 subtle)
(base8 text)
(grey muted)
(red love)
(orange gold)
(green pine)
(teal foam)
(yellow rose)
(pink rose)
(blue pine)
(dark-blue pine)
(magenta iris)
(violet iris)
(cyan foam)
(dark-cyan pine)
;; Variables required by doom theme ends here
;; Required face categories for syntax highlighting
(highlight subtle) ; cursor
(selection base) ; can't figure out where this is used
(region overlay) ; visual selection
(vertical-bar surface) ; window split
(comments (if doom-rose-pine-moon-brighter-comments subtle muted))
(doc-comments (if doom-rose-pine-moon-brighter-comments subtle muted))
(builtin pine)
(constants iris)
(functions pine)
(keywords pine)
(methods foam)
(numbers rose)
(operators gold)
(strings gold)
(type rose)
(variables iris)
(error love)
(success foam)
(warning gold)
(vc-added foam)
(vc-deleted love)
(vc-modified gold)
;; Other categories
;; Modeline
(modeline-bg (if doom-rose-pine-moon-brighter-modeline overlay surface))
(modeline-fg text)
(modeline-bg-alt (if doom-rose-pine-moon-brighter-modeline muted overlay))
(modeline-fg-alt text) ; should this be darker or lighter?
(modeline-bg-inactive base)
(modeline-fg-inactive subtle)
(modeline-bg-inactive-alt base)
(modeline-fg-inactive-alt subtle)
(modeline-pad
(when doom-rose-pine-moon-padded-modeline
if (integerp doom-rose-pine-moon-padded-modeline) doom-rose-pine-padded-modeline 4)))
;; Base theme face overrides
(
;; Font
((font-lock-comment-face &override)
:slant 'italic
:background (if doom-rose-pine-moon-brighter-comments (doom-blend teal base 0.07)))
((font-lock-type-face &override) :slant 'italic)
((font-lock-builtin-face &override) :slant 'italic)
((font-lock-function-name-face &override) :foreground type)
((font-lock-keyword-face &override) :weight 'bold)
((font-lock-constant-face &override) :weight 'bold)
;; Highlight line
(hl-line
:background surface)
;; Line numbers
((line-number &override) :foreground muted)
((line-number-current-line &override) :foreground text)
;; Mode line
(mode-line
:background modeline-bg
:foreground modeline-fg
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg)))
(mode-line-inactive
:background modeline-bg-inactive
:foreground modeline-fg-inactive
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-inactive)))
(mode-line-emphasis
:foreground (if doom-rose-pine-moon-brighter-modeline text subtle))
;; Company
(company-tooltip-selection :background blue :foreground muted)
;; CSS mode <built-in> / scss-mode
(css-proprietary-property :foreground orange)
(css-property :foreground green)
(css-selector :foreground green)
;; Doom mode line
(doom-modeline-bar :background green) ; The line to the left
(doom-modeline-evil-emacs-state :foreground magenta) ; The dot color when in emacs mode
(doom-modeline-evil-normal-state :foreground green) ; The dot color when in normal mode
(doom-modeline-evil-visual-state :foreground magenta) ; The dot color when in visual mode
(doom-modeline-evil-insert-state :foreground orange) ; The dot color when in insert mode
;; Helm
(helm-selection :foreground base :weight 'bold :background blue)
;; Ivy
(ivy-current-match :background overlay :distant-foreground fg)
(ivy-minibuffer-match-face-1 :foreground pine :background nil :weight 'bold)
(ivy-minibuffer-match-face-2 :foreground iris :background nil :weight 'bold)
(ivy-minibuffer-match-face-3 :foreground gold :background nil :weight 'bold)
(ivy-minibuffer-match-face-4 :foreground rose :background nil :weight 'bold)
(ivy-minibuffer-match-highlight :foreground magenta :weight 'bold)
(ivy-posframe :background modeline-bg-alt)
;; Markdown mode
(markdown-markup-face :foreground text)
(markdown-header-face :inherit 'bold :foreground red)
((markdown-code-face &override) :background surface)
;; org <built-in>
(org-block :background (doom-blend yellow bg 0.04) :extend t)
(org-block-background :background (doom-blend yellow bg 0.04))
(org-block-begin-line :background (doom-blend yellow bg 0.08) :foreground comments :extend t)
(org-block-end-line :background (doom-blend yellow bg 0.08) :foreground comments :extend t)
(org-level-1 :foreground gold)
(org-level-2 :foreground rose)
(org-level-3 :foreground pine)
(org-level-4 :foreground iris)
(org-level-5 :foreground gold)
(org-level-6 :foreground rose)
(org-level-7 :foreground pine)
(org-level-8 :foreground iris)
;; Solaire mode line
(solaire-mode-line-face
:inherit 'mode-line
:background modeline-bg-alt
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-alt)))
(solaire-mode-line-inactive-face
:inherit 'mode-line-inactive
:background modeline-bg-inactive-alt
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-inactive-alt)))
;; Widget
(widget-field :foreground fg :background muted)
(widget-single-line-field :foreground fg :background muted)
;; Swiper
(swiper-line-face :background highlightM)
(swiper-match-face-1 :inherit 'ivy-minibuffer-match-face-1)
(swiper-match-face-2 :inherit 'ivy-minibuffer-match-face-2)
(swiper-match-face-3 :inherit 'ivy-minibuffer-match-face-3)
(swiper-match-face-4 :inherit 'ivy-minibuffer-match-face-4)))
;;; doom-rose-pine-moon-theme.el ends here

View File

@@ -0,0 +1,242 @@
;;; doom-rose-pine-theme.el --- A dark port of Rosé Pine theme -*- lexical-binding: t; no-byte-compile: t; -*-
;;
;; Author: mvllow
;; Ported by: donniebreve
;; Keywords: custom themes, faces
;; Homepage: https://github.com/donniebreve/rose-pine-doom-emacs
;; Package-Requires: ((emacs "25.1") (cl-lib "0.5") (doom-themes "2.2.1"))
;;
;;; Commentary:
;;
;; Thanks to mvllow (https://github.com/rose-pine)
;; Thanks to hlissner (https://github.com/doomemacs/themes)
;;
;;; Code:
(require 'doom-themes)
;;; Variables
(defgroup doom-rose-pine-theme nil
"Options for the `doom-rose-pine' theme."
:group 'doom-themes)
(defcustom doom-rose-pine-brighter-modeline nil
"If non-nil, more vivid colors will be used to style the mode-line."
:group 'doom-rose-pine-theme
:type 'boolean)
(defcustom doom-rose-pine-brighter-comments nil
"If non-nil, comments will be highlighted in more vivid colors."
:group 'doom-rose-pine-theme
:type 'boolean)
(defcustom doom-rose-pine-brighter-text nil
"If non-nil, default text will be brighter."
:group 'doom-rose-pine-theme
:type 'boolean)
(defcustom doom-rose-pine-padded-modeline doom-themes-padded-modeline
"If non-nil, adds a 4px padding to the mode-line. Can be an integer to determine the exact padding."
:group 'doom-rose-pine-theme
:type '(choice integer boolean))
;;; Theme definition
(def-doom-theme doom-rose-pine
"A dark port of Rosé Pine theme"
;; Main theme colors
(
;; name default 256 16
(base '("#191724" "#191724" "black" ))
(surface '("#1f1d2e" "#1f1d2e" "brightblack" ))
(overlay '("#26233a" "#26233a" "brightblack" ))
(muted '("#6e6a86" "#6e6a86" "brightblack" ))
(subtle '("#908caa" "#908caa" "brightblack" ))
(text '("#e0def4" "#e0def4" "brightblack" ))
(love '("#eb6f92" "#eb6f92" "red" ))
(gold '("#f6c177" "#f6c177" "white" ))
(rose '("#ebbcba" "#ebbcba" "white" ))
(pine '("#31748f" "#31748f" "white" ))
(foam '("#9ccfd8" "#9ccfd8" "white" ))
(iris '("#c4a7e7" "#c4a7e7" "white" ))
(highlightL '("#21202e" "#21202e" "grey" ))
(highlightM '("#403d52" "#403d52" "grey" ))
(highlightH '("#524f67" "#524f67" "grey" ))
;; Variables required by doom theme
;; These are required by doom theme and used in various places
(bg base)
(fg text)
;; These are off-color variants of bg/fg, used primarily for `solaire-mode',
;; but can also be useful as a basis for subtle highlights (e.g. for hl-line
;; or region), especially when paired with the `doom-darken', `doom-lighten',
;; and `doom-blend' helper functions.
(bg-alt surface)
(fg-alt text)
;; These should represent a spectrum from bg to fg, where base0 is a starker
;; bg and base8 is a starker fg. For example, if bg is light grey and fg is
;; dark grey, base0 should be white and base8 should be black.
(base0 base)
(base1 surface)
(base2 highlightL)
(base3 overlay)
(base4 highlightM)
(base5 highlightH)
(base6 muted)
(base7 subtle)
(base8 text)
(grey muted)
(red love)
(orange gold)
(green pine)
(teal pine)
(yellow rose)
(blue pine)
(dark-blue pine)
(magenta iris)
(violet iris)
(cyan foam)
(dark-cyan foam)
;; Variables required by doom theme ends here
;; Required face categories for syntax highlighting
(highlight subtle) ; cursor
(selection base) ; can't figure out where this is used
(region overlay) ; visual selection
(vertical-bar surface) ; window split
(comments (if doom-rose-pine-brighter-comments subtle muted))
(doc-comments (if doom-rose-pine-brighter-comments subtle muted))
(builtin pine)
(constants iris)
(functions pine)
(keywords pine)
(methods foam)
(numbers rose)
(operators gold)
(strings gold)
(type rose)
(variables iris)
(error love)
(success foam)
(warning gold)
(vc-added foam)
(vc-deleted love)
(vc-modified gold)
;; Other categories
;; Modeline
(modeline-bg (if doom-rose-pine-brighter-modeline overlay surface))
(modeline-fg text)
(modeline-bg-alt (if doom-rose-pine-brighter-modeline muted overlay))
(modeline-fg-alt text) ; should this be darker or lighter?
(modeline-bg-inactive base)
(modeline-fg-inactive subtle)
(modeline-bg-inactive-alt base)
(modeline-fg-inactive-alt subtle)
(modeline-pad
(when doom-rose-pine-padded-modeline
if (integerp doom-rose-pine-padded-modeline) doom-rose-pine-padded-modeline 4)))
;; Base theme face overrides
(
;; Font
((font-lock-comment-face &override)
:slant 'italic
:background (if doom-rose-pine-brighter-comments (doom-blend teal base 0.07)))
((font-lock-type-face &override) :slant 'italic)
((font-lock-builtin-face &override) :slant 'italic)
((font-lock-function-name-face &override) :foreground type)
((font-lock-keyword-face &override) :weight 'bold)
((font-lock-constant-face &override) :weight 'bold)
;; Highlight line
(hl-line
:background surface)
;; Line numbers
((line-number &override) :foreground muted)
((line-number-current-line &override) :foreground text)
;; Mode line
(mode-line
:background modeline-bg
:foreground modeline-fg
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg)))
(mode-line-inactive
:background modeline-bg-inactive
:foreground modeline-fg-inactive
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-inactive)))
(mode-line-emphasis
:foreground (if doom-rose-pine-brighter-modeline text subtle))
;; Company
(company-tooltip-selection :background blue :foreground muted)
;; CSS mode <built-in> / scss-mode
(css-proprietary-property :foreground orange)
(css-property :foreground green)
(css-selector :foreground green)
;; Doom mode line
(doom-modeline-bar :background green) ; The line to the left
(doom-modeline-evil-emacs-state :foreground magenta) ; The dot color when in emacs mode
(doom-modeline-evil-normal-state :foreground green) ; The dot color when in normal mode
(doom-modeline-evil-visual-state :foreground magenta) ; The dot color when in visual mode
(doom-modeline-evil-insert-state :foreground orange) ; The dot color when in insert mode
;; Helm
(helm-selection :foreground base :weight 'bold :background blue)
;; Ivy
(ivy-current-match :background overlay :distant-foreground fg)
(ivy-minibuffer-match-face-1 :foreground pine :background nil :weight 'bold)
(ivy-minibuffer-match-face-2 :foreground iris :background nil :weight 'bold)
(ivy-minibuffer-match-face-3 :foreground gold :background nil :weight 'bold)
(ivy-minibuffer-match-face-4 :foreground rose :background nil :weight 'bold)
(ivy-minibuffer-match-highlight :foreground magenta :weight 'bold)
(ivy-posframe :background modeline-bg-alt)
;; Markdown mode
(markdown-markup-face :foreground text)
(markdown-header-face :inherit 'bold :foreground red)
((markdown-code-face &override) :background surface)
;; org <built-in>
(org-block :background (doom-blend yellow bg 0.04) :extend t)
(org-block-background :background (doom-blend yellow bg 0.04))
(org-block-begin-line :background (doom-blend yellow bg 0.08) :foreground comments :extend t)
(org-block-end-line :background (doom-blend yellow bg 0.08) :foreground comments :extend t)
(org-level-1 :foreground gold)
(org-level-2 :foreground rose)
(org-level-3 :foreground pine)
(org-level-4 :foreground iris)
(org-level-5 :foreground gold)
(org-level-6 :foreground rose)
(org-level-7 :foreground pine)
(org-level-8 :foreground iris)
;; Solaire mode line
(solaire-mode-line-face
:inherit 'mode-line
:background modeline-bg-alt
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-alt)))
(solaire-mode-line-inactive-face
:inherit 'mode-line-inactive
:background modeline-bg-inactive-alt
:box (if modeline-pad `(:line-width ,modeline-pad :color ,modeline-bg-inactive-alt)))
;; Widget
(widget-field :foreground fg :background muted)
(widget-single-line-field :foreground fg :background muted)
;; Swiper
(swiper-match-face-1 :inherit 'ivy-minibuffer-match-face-1)
(swiper-match-face-2 :inherit 'ivy-minibuffer-match-face-2)
(swiper-match-face-3 :inherit 'ivy-minibuffer-match-face-3)
(swiper-match-face-4 :inherit 'ivy-minibuffer-match-face-4)))
;;; doom-rose-pine-theme.el ends here

View File

@@ -0,0 +1,3 @@
* {
font-family: sans-serif;
}

View File

@@ -0,0 +1,23 @@
font-family = ""
# font-family = "FairfaxHaxHD"
# font-family = "PragmataPro Liga"
# font-family = "BigBlueTermPlus Nerd Font"
# font-family = "Olympe Mono Hacked"
font-family = "Iosevka Term SS12"
font-family = "Cascadia Code"
font-family = "CaskaydiaCove Nerd Font"
# font-family = "Terminess Nerd Font Mono"
# font-family = "Ubuntu Mono Nerd Font"
# font-family = "Victor Mono Nerd Font"
# font-family = "Sudo"
# theme = light:rose-pine-dawn,dark:rose-pine
font-size = 14
font-thicken = true
# font-variation = wdth=100
# theme = light:xcodelight,dark:xcodedark
theme = light:Dawnfox,dark:Carbonfox
# theme = Monokai Classic
# window-decoration = false
# gtk-adwaita = true
window-decoration = true
shell-integration-features = true

View File

@@ -0,0 +1,39 @@
theme = "rose_pine"
[editor]
line-number = "relative"
rulers = [80]
color-modes = true
completion-trigger-len = 1
idle-timeout = 50
[editor.statusline]
left = []
center = []
right = ["spinner", "diagnostics", "version-control", "file-modification-indicator", "file-name", "file-encoding", "read-only-indicator", "position", "mode", "selections", "spacer"]
mode.normal = "normal"
mode.insert = "insert"
mode.select = "select"
[editor.lsp]
display-inlay-hints = true
display-messages = true
display-progress-messages = true
[editor.cursor-shape]
normal = "block"
insert = "bar"
select = "underline"
[editor.indent-guides]
render = true
[keys.normal."space".e] # config mode
c = ":config-open"
l = ":e ~/.config/helix/languages.toml"
r = ":config-reload"
[keys.normal.g]
j = "goto_last_line"
k = "goto_file_start"
e = "goto_file_end"

View File

@@ -0,0 +1,6 @@
[[languages]]
indent = { tab-width = 2, unit = " " }
[language-server.harper-ls]
command = "harper-ls"
args = ["--stdio"]

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,191 @@
# Carbonfox theme for Kakoune
#
# Taken and adapted from
# <https://github.com/EdenEast/nightfox.nvim/blob/main/lua/nightfox/palette/carbonfox.lua>
# Color palette
declare-option str black_base "rgb:282828"
declare-option str black_dim "rgb:222222"
declare-option str black_bright "rgb:484848"
declare-option str red_base "rgb:ee5396"
declare-option str red_dim "rgb:ca4780"
declare-option str red_bright "rgb:f16da6"
declare-option str green_base "rgb:25be6a"
declare-option str green_dim "rgb:1fa25a"
declare-option str green_bright "rgb:46c880"
declare-option str yellow_base "rgb:08bdba"
declare-option str yellow_dim "rgb:07a19e"
declare-option str yellow_bright "rgb:2dc7c4"
declare-option str blue_base "rgb:78a9ff"
declare-option str blue_dim "rgb:6690d9"
declare-option str blue_bright "rgb:8cb6ff"
declare-option str magenta_base "rgb:be95ff"
declare-option str magenta_dim "rgb:a27fd9"
declare-option str magenta_bright "rgb:c8a5ff"
declare-option str cyan_base "rgb:33b1ff"
declare-option str cyan_dim "rgb:2b96d9"
declare-option str cyan_bright "rgb:52bdff"
declare-option str white_base "rgb:dfdfe0"
declare-option str white_dim "rgb:bebebe"
declare-option str white_bright "rgb:e4e4e5"
declare-option str orange_base "rgb:3ddbd9"
declare-option str orange_dim "rgb:34bab8"
declare-option str orange_bright "rgb:5ae0df"
declare-option str pink_base "rgb:ff7eb6"
declare-option str pink_dim "rgb:d96b9b"
declare-option str pink_bright "rgb:ff91c1"
declare-option str bg0 "rgb:0c0c0c"
declare-option str bg1 "rgb:161616"
declare-option str bg2 "rgb:252525"
declare-option str bg3 "rgb:353535"
declare-option str bg4 "rgb:535353"
declare-option str fg0 "rgb:f9fbff"
declare-option str fg1 "rgb:f2f4f8"
declare-option str fg2 "rgb:b6b8bb"
declare-option str fg3 "rgb:7b7c7e"
declare-option str comment "rgb:6e6f70"
declare-option str sel1 "rgb:525253"
declare-option str sel0 "rgb:2a2a2a"
# Markup
set-face global title "%opt{yellow_base}"
set-face global header "%opt{red_bright}"
set-face global bold "%opt{fg1}+b"
set-face global italic "%opt{fg1}+i"
# Builtins
set-face global Default "%opt{fg1},%opt{bg1}"
set-face global PrimarySelection "%opt{fg2},%opt{sel0}"
set-face global SecondarySelection "%opt{fg3},%opt{sel1}"
set-face global PrimaryCursor "%opt{bg1},%opt{fg1}"
set-face global SecondaryCursor "%opt{bg1},%opt{fg2}"
set-face global PrimaryCursorEol "%opt{fg2},%opt{blue_bright}"
set-face global SecondaryCursorEol "%opt{fg3},%opt{blue_dim}"
set-face global LineNumbers "%opt{fg3},%opt{bg1}"
set-face global LineNumberCursor "%opt{fg2},%opt{bg1}"
set-face global LineNumbersWrapped "%opt{fg3},%opt{bg1}+i"
set-face global MenuForeground "%opt{fg1},%opt{sel1}"
set-face global MenuBackground "%opt{fg1},%opt{sel0}"
set-face global MenuInfo "%opt{fg1},%opt{bg0}"
set-face global Information "%opt{fg1},%opt{bg0}"
set-face global Error "%opt{red_base},%opt{bg0}"
set-face global StatusLine "%opt{fg2},%opt{bg0}"
set-face global StatusLineMode "%opt{green_bright},%opt{bg0}"
set-face global StatusLineInfo "%opt{blue_bright},%opt{bg0}"
set-face global StatusLineValue "%opt{orange_base},%opt{bg0}"
set-face global StatusCursor "%opt{bg0},%opt{fg2}"
set-face global Prompt "%opt{blue_bright},%opt{bg0}"
set-face global MatchingChar "%opt{fg1},%opt{sel1}"
set-face global Whitespace "%opt{fg3},%opt{bg1}"
set-face global WrapMarker Whitespace
set-face global BufferPadding "%opt{blue_dim},%opt{bg1}"
# Code
set-face global value "%opt{orange_bright}"
set-face global type "%opt{yellow_base}"
set-face global variable "%opt{white_base}"
set-face global module "%opt{blue_base}"
set-face global function "%opt{blue_bright}"
set-face global string "%opt{green_base}"
set-face global keyword "%opt{magenta_base}"
set-face global operator "%opt{fg2}"
set-face global attribute "%opt{blue_base}"
set-face global comment "%opt{comment}"
set-face global documentation comment
set-face global meta "%opt{pink_bright}"
set-face global builtin "%opt{red_base}"
# Tree-sitter (<https://github.com/hadronized/kak-tree-sitter>)
set-face global ts_attribute "%opt{yellow_base}"
set-face global ts_comment "%opt{comment}"
set-face global ts_comment_unused "%opt{comment}"
set-face global ts_conceal "%opt{magenta_dim}"
set-face global ts_constant "%opt{orange_bright}"
set-face global ts_constant_builtin_boolean "%opt{orange_bright}"
set-face global ts_constant_character "%opt{green_base}"
set-face global ts_constant_macro "%opt{orange_bright}"
set-face global ts_constructor "%opt{cyan_base}"
set-face global ts_diff_plus "%opt{green_base}"
set-face global ts_diff_minus "%opt{red_base}"
set-face global ts_diff_delta "%opt{yellow_base}"
set-face global ts_diff_delta_moved "%opt{blue_base}"
set-face global ts_error "%opt{red_base}"
set-face global ts_function "%opt{blue_bright}"
set-face global ts_function_builtin "%opt{pink_base}"
set-face global ts_function_macro "%opt{pink_bright}"
set-face global ts_function_method_private "%opt{blue_dim}"
set-face global ts_hint "%opt{orange_base}"
set-face global ts_info "%opt{blue_base}"
set-face global ts_keyword "%opt{magenta_base}"
set-face global ts_keyword_conditional "%opt{magenta_bright}"
set-face global ts_keyword_control_conditional "%opt{magenta_bright}"
set-face global ts_keyword_control_directive "%opt{pink_bright}"
set-face global ts_keyword_control_import "%opt{orange_bright}"
set-face global ts_keyword_directive "%opt{pink_bright}"
set-face global ts_keyword_storage "%opt{blue_base}"
set-face global ts_keyword_storage_modifier "%opt{magenta_base}"
set-face global ts_keyword_storage_modifier_mut "%opt{blue_bright}"
set-face global ts_keyword_storage_modifier_ref "%opt{blue_bright}"
set-face global ts_label "%opt{pink_base}+i"
set-face global ts_markup_bold "%opt{red_base}+b"
set-face global ts_markup_heading "%opt{blue_base}"
set-face global ts_markup_heading_1 "%opt{blue_base}"
set-face global ts_markup_heading_2 "%opt{blue_base}"
set-face global ts_markup_heading_3 "%opt{blue_base}"
set-face global ts_markup_heading_4 "%opt{blue_base}"
set-face global ts_markup_heading_5 "%opt{blue_base}"
set-face global ts_markup_heading_6 "%opt{blue_base}"
set-face global ts_markup_heading_marker "%opt{orange_base}+b"
set-face global ts_markup_italic "%opt{pink_base}+i"
set-face global ts_markup_list_checked "%opt{green_base}"
set-face global ts_markup_list_numbered "%opt{fg2}"
set-face global ts_markup_list_unchecked "%opt{cyan_base}"
set-face global ts_markup_list_unnumbered "%opt{fg2}"
set-face global ts_markup_link_label "%opt{blue_base}"
set-face global ts_markup_link_url "%opt{cyan_base}+u"
set-face global ts_markup_link_uri "%opt{cyan_base}+u"
set-face global ts_markup_link_text "%opt{blue_base}"
set-face global ts_markup_quote "%opt{fg2},%opt{bg2}"
set-face global ts_markup_raw "%opt{green_base}"
set-face global ts_markup_strikethrough "%opt{fg1}+s"
set-face global ts_namespace "%opt{cyan_base}"
set-face global ts_operator "%opt{fg2}"
set-face global ts_property "%opt{blue_base}"
set-face global ts_punctuation "%opt{fg2}"
set-face global ts_punctuation_special "%opt{blue_bright}"
set-face global ts_special "%opt{blue_base}"
set-face global ts_spell "%opt{fg1},%opt{bg1},%opt{red_base}+c"
set-face global ts_string "%opt{green_base}"
set-face global ts_string_regex "%opt{yellow_bright}"
set-face global ts_string_regexp "%opt{yellow_bright}"
set-face global ts_string_escape "%opt{cyan_base}"
set-face global ts_string_special "%opt{green_base}"
set-face global ts_string_special_path "%opt{green_base}"
set-face global ts_string_special_symbol "%opt{green_base}"
set-face global ts_string_symbol "%opt{green_base}"
set-face global ts_tag "%opt{blue_base}"
set-face global ts_tag_error "%opt{red_base}"
set-face global ts_text "%opt{white_base}"
set-face global ts_text_title "%opt{orange_base}"
set-face global ts_type "%opt{yellow_base}"
set-face global ts_type_enum_variant "%opt{yellow_base}"
set-face global ts_type_enum_variant_builtin "%opt{orange_bright}"
set-face global ts_variable "%opt{white_base}"
set-face global ts_variable_builtin "%opt{red_base}"
set-face global ts_variable_other_member "%opt{cyan_base}"
set-face global ts_variable_other_member_private "%opt{cyan_dim}"
set-face global ts_variable_parameter "%opt{blue_base}"
set-face global ts_warning "%opt{magenta_base}"

View File

@@ -1,163 +0,0 @@
# Catppuccin Macchiato theme for Kakoune
#
# Taken and adapted from
# <https://github.com/catppuccin/kakoune/blob/e52fb5c95f70c297fea1fd58613284817b5a50bd/colors/catppuccin_macchiato.kak>
# Color palette
declare-option str rosewater "rgb:f4dbd6"
declare-option str red "rgb:ed8796"
declare-option str mauve "rgb:c6a0f6"
declare-option str maroon "rgb:ee99a0"
declare-option str pink "rgb:f5bde6"
declare-option str cyan "rgb:7dc4e4"
declare-option str yellow "rgb:eed49f"
declare-option str green "rgb:a6da95"
declare-option str white "rgb:cad3f5"
declare-option str blue "rgb:8aadf4"
declare-option str sky "rgb:91d7e3"
declare-option str lavender "rgb:b7bdf8"
declare-option str black1 "rgb:1e2030"
declare-option str black2 "rgb:24273a"
declare-option str black3 "rgb:363a4f"
declare-option str orange "rgb:f5a97f"
declare-option str teal "rgb:8bd5ca"
declare-option str flamingo "rgb:f0c6c6"
declare-option str gray0 "rgb:5b6078"
declare-option str gray1 "rgb:6e738d"
declare-option str bright_red "%opt{red}+b"
declare-option str bright_green "%opt{green}+b"
declare-option str bright_yellow "%opt{yellow}+b"
declare-option str bright_blue "%opt{blue}+b"
declare-option str bright_cyan "%opt{cyan}+b"
declare-option str bright_white "%opt{white}+b"
declare-option str foreground %opt{white}
declare-option str background %opt{black2}
declare-option str overlay0 "rgb:8087a2"
declare-option str overlay1 "rgb:939ab7"
# Markup
set-face global title "%opt{rosewater}"
set-face global header "%opt{bright_red}"
set-face global bold "%opt{mauve}"
set-face global italic "%opt{lavender}"
set-face global mono "%opt{green}"
set-face global block "%opt{cyan}"
set-face global link "%opt{green}"
set-face global bullet "%opt{green}"
set-face global list "%opt{white}"
# Builtins
set-face global Default "%opt{white},%opt{background}"
set-face global PrimarySelection "%opt{gray0},%opt{lavender}"
set-face global SecondarySelection "%opt{lavender},%opt{gray0}"
set-face global PrimaryCursor "%opt{background},%opt{rosewater}"
set-face global SecondaryCursor "%opt{black1},%opt{teal}"
set-face global PrimaryCursorEol "%opt{gray0},%opt{mauve}"
set-face global SecondaryCursorEol "%opt{gray0},%opt{maroon}"
set-face global LineNumbers "%opt{gray1},%opt{background}"
set-face global LineNumberCursor "%opt{lavender},%opt{gray0}+b"
set-face global LineNumbersWrapped "%opt{teal},%opt{black1}+i"
set-face global MenuForeground "%opt{white},%opt{gray0}+b"
set-face global MenuBackground "%opt{white},%opt{black3}"
set-face global MenuInfo "%opt{black1},%opt{blue}"
set-face global Information "%opt{black1},%opt{lavender}"
set-face global Error "%opt{red},%opt{black2}"
set-face global StatusLine "%opt{white},%opt{black1}"
set-face global StatusLineMode "%opt{black2},%opt{yellow}"
set-face global StatusLineInfo "%opt{background},%opt{green}"
set-face global StatusLineValue "%opt{orange},%opt{gray0}"
set-face global StatusCursor "%opt{black1},%opt{lavender}"
set-face global Prompt "%opt{green},%opt{black2}"
set-face global MatchingChar "%opt{maroon},%opt{black2}"
set-face global Whitespace "%opt{gray1},%opt{background}+f"
set-face global WrapMarker Whitespace
set-face global BufferPadding "%opt{background},%opt{background}"
# Code
set-face global value "%opt{orange}"
set-face global type "%opt{rosewater}"
set-face global variable "%opt{white}"
set-face global module "%opt{maroon}"
set-face global function "%opt{sky}"
set-face global string "%opt{green}"
set-face global keyword "%opt{blue}"
set-face global operator "%opt{blue}"
set-face global attribute "%opt{green}"
set-face global comment "%opt{gray1}+i"
set-face global documentation comment
set-face global meta "%opt{pink}"
set-face global builtin "%opt{lavender}+b"
# Tree-sitter (<https://git.sr.ht/~hadronized/kak-tree-sitter>)
set-face global ts_attribute "%opt{blue}"
set-face global ts_comment "%opt{overlay0}+i"
set-face global ts_conceal "%opt{mauve}+i"
set-face global ts_constant "%opt{orange}"
set-face global ts_constant_builtin_boolean "%opt{sky}"
set-face global ts_constant_character "%opt{yellow}"
set-face global ts_constant_macro "%opt{mauve}"
set-face global ts_constructor "%opt{cyan}"
set-face global ts_diff_plus "%opt{green}"
set-face global ts_diff_minus "%opt{red}"
set-face global ts_diff_delta "%opt{blue}"
set-face global ts_diff_delta_moved "%opt{mauve}"
set-face global ts_error "%opt{red}+b"
set-face global ts_function "%opt{blue}"
set-face global ts_function_builtin "%opt{blue}+i"
set-face global ts_function_macro "%opt{mauve}"
set-face global ts_hint "%opt{blue}+b"
set-face global ts_info "%opt{green}+b"
set-face global ts_keyword "%opt{mauve}"
set-face global ts_keyword_conditional "%opt{mauve}+i"
set-face global ts_keyword_control_conditional "%opt{mauve}+i"
set-face global ts_keyword_control_directive "%opt{mauve}+i"
set-face global ts_keyword_control_import "%opt{mauve}+i"
set-face global ts_keyword_directive "%opt{mauve}+i"
set-face global ts_label "%opt{cyan}+i"
set-face global ts_markup_bold "%opt{orange}+b"
set-face global ts_markup_heading "%opt{red}"
set-face global ts_markup_heading_1 "%opt{red}"
set-face global ts_markup_heading_2 "%opt{mauve}"
set-face global ts_markup_heading_3 "%opt{green}"
set-face global ts_markup_heading_4 "%opt{yellow}"
set-face global ts_markup_heading_5 "%opt{pink}"
set-face global ts_markup_heading_6 "%opt{teal}"
set-face global ts_markup_heading_marker "%opt{orange}+b"
set-face global ts_markup_italic "%opt{pink}+i"
set-face global ts_markup_list_checked "%opt{green}"
set-face global ts_markup_list_numbered "%opt{blue}+i"
set-face global ts_markup_list_unchecked "%opt{teal}"
set-face global ts_markup_list_unnumbered "%opt{mauve}"
set-face global ts_markup_link_label "%opt{blue}"
set-face global ts_markup_link_url "%opt{teal}+u"
set-face global ts_markup_link_uri "%opt{teal}+u"
set-face global ts_markup_link_text "%opt{blue}"
set-face global ts_markup_quote "%opt{gray1}"
set-face global ts_markup_raw "%opt{green}"
set-face global ts_markup_strikethrough "%opt{gray1}+s"
set-face global ts_namespace "%opt{blue}+i"
set-face global ts_operator "%opt{sky}"
set-face global ts_property "%opt{sky}"
set-face global ts_punctuation "%opt{overlay1}"
set-face global ts_punctuation_special "%opt{sky}"
set-face global ts_special "%opt{blue}"
set-face global ts_spell "%opt{mauve}"
set-face global ts_string "%opt{green}"
set-face global ts_string_regex "%opt{orange}"
set-face global ts_string_regexp "%opt{orange}"
set-face global ts_string_escape "%opt{mauve}"
set-face global ts_string_special "%opt{blue}"
set-face global ts_string_special_path "%opt{green}"
set-face global ts_string_special_symbol "%opt{mauve}"
set-face global ts_string_symbol "%opt{red}"
set-face global ts_tag "%opt{mauve}"
set-face global ts_tag_error "%opt{red}"
set-face global ts_text "%opt{white}"
set-face global ts_text_title "%opt{mauve}"
set-face global ts_type "%opt{yellow}"
set-face global ts_type_enum_variant "%opt{flamingo}"
set-face global ts_variable "%opt{white}"
set-face global ts_variable_builtin "%opt{red}"
set-face global ts_variable_other_member "%opt{teal}"
set-face global ts_variable_parameter "%opt{maroon}+i"
set-face global ts_warning "%opt{orange}+b"

View File

@@ -1,166 +0,0 @@
# Catppuccint Mocha theme for Kakoune
#
# Taken and adapted from
# <https://github.com/catppuccin/kakoune/blob/7f187d9da2867a7fda568b2135d29b9c00cfbb94/colors/catppuccin_mocha.kak>
# Catppuccin theme for Kakoune
# Color palette (see https://catppuccin.com/palette)
declare-option str rosewater "rgb:f5e0dc"
declare-option str flamingo "rgb:f2cdcd"
declare-option str pink "rgb:f5c2e7"
declare-option str mauve "rgb:cba6f7"
declare-option str red "rgb:f38ba8"
declare-option str maroon "rgb:eba0ac"
declare-option str peach "rgb:fab387"
declare-option str yellow "rgb:f9e2af"
declare-option str green "rgb:a6e3a1"
declare-option str teal "rgb:94e2d5"
declare-option str sky "rgb:89dceb"
declare-option str sapphire "rgb:74c7ec"
declare-option str blue "rgb:89b4fa"
declare-option str lavender "rgb:b4befe"
declare-option str text "rgb:cdd6f4"
declare-option str subtext1 "rgb:bac2de"
declare-option str subtext0 "rgb:a6adc8"
declare-option str overlay2 "rgb:9399b2"
declare-option str overlay1 "rgb:7f849c"
declare-option str overlay0 "rgb:6c7086"
declare-option str surface2 "rgb:585b70"
declare-option str surface1 "rgb:45475a"
declare-option str surface0 "rgb:313244"
declare-option str base "rgb:1e1e2e"
declare-option str mantle "rgb:181825"
declare-option str crust "rgb:11111b"
# Markup
set-face global title "%opt{text}+b"
set-face global header "%opt{subtext0}+b"
set-face global bold "%opt{maroon}+b"
set-face global italic "%opt{maroon}+i"
set-face global mono "%opt{green}"
set-face global block "%opt{sapphire}"
set-face global link "%opt{blue}"
set-face global bullet "%opt{peach}"
set-face global list "%opt{peach}"
# Builtins
set-face global Default "%opt{text},%opt{base}"
set-face global PrimarySelection "%opt{text},%opt{surface2}"
set-face global SecondarySelection "%opt{text},%opt{surface2}"
set-face global PrimaryCursor "%opt{crust},%opt{rosewater}"
set-face global SecondaryCursor "%opt{text},%opt{overlay0}"
set-face global PrimaryCursorEol "%opt{surface2},%opt{lavender}"
set-face global SecondaryCursorEol "%opt{surface2},%opt{overlay1}"
set-face global LineNumbers "%opt{overlay1},%opt{base}"
set-face global LineNumberCursor "%opt{rosewater},%opt{surface2}+b"
set-face global LineNumbersWrapped "%opt{rosewater},%opt{surface2}"
set-face global MenuForeground "%opt{text},%opt{surface1}+b"
set-face global MenuBackground "%opt{text},%opt{surface0}"
set-face global MenuInfo "%opt{crust},%opt{teal}"
set-face global Information "%opt{crust},%opt{teal}"
set-face global Error "%opt{crust},%opt{red}"
set-face global DiagnosticError Error
set-face global DiagnosticWarning "%opt{yellow}"
set-face global StatusLine "%opt{text},%opt{mantle}"
set-face global StatusLineMode "%opt{crust},%opt{yellow}"
set-face global StatusLineInfo "%opt{crust},%opt{teal}"
set-face global StatusLineValue "%opt{crust},%opt{yellow}"
set-face global StatusCursor "%opt{crust},%opt{rosewater}"
set-face global Prompt "%opt{teal},%opt{base}+b"
set-face global MatchingChar "%opt{maroon},%opt{base}"
set-face global Whitespace "%opt{overlay1},%opt{base}+f"
set-face global WrapMarker Whitespace
set-face global BufferPadding "%opt{base},%opt{base}"
# Code
set-face global value "%opt{peach}"
set-face global type "%opt{yellow}"
set-face global variable "%opt{text}"
set-face global module "%opt{maroon}"
set-face global function "%opt{blue}"
set-face global string "%opt{green}"
set-face global keyword "%opt{mauve}"
set-face global operator "%opt{sky}"
set-face global attribute "%opt{yellow}"
set-face global comment "%opt{overlay1}+i"
set-face global documentation comment
set-face global meta "%opt{yellow}"
set-face global builtin "%opt{red}"
# Tree-sitter (<https://git.sr.ht/~hadronized/kak-tree-sitter>)
# Copied from catppuccin_macchiato.kak
# Adjusted with https://github.com/catppuccin/catppuccin/blob/main/docs/style-guide.md
set-face global ts_attribute attribute
set-face global ts_comment comment
set-face global ts_conceal "%opt{mauve}+i"
set-face global ts_constant "%opt{peach}"
set-face global ts_constant_builtin_boolean "%opt{sky}"
set-face global ts_constant_character "%opt{yellow}"
set-face global ts_constant_macro "%opt{mauve}"
set-face global ts_constructor "%opt{sky}"
set-face global ts_diff_plus "%opt{green}"
set-face global ts_diff_minus "%opt{red}"
set-face global ts_diff_delta "%opt{blue}"
set-face global ts_diff_delta_moved "%opt{mauve}"
set-face global ts_error "%opt{red}+b"
set-face global ts_function "%opt{blue}"
set-face global ts_function_builtin "%opt{blue}+i"
set-face global ts_function_macro "%opt{mauve}"
set-face global ts_hint "%opt{blue}+b"
set-face global ts_info "%opt{teal}+b"
set-face global ts_keyword "%opt{mauve}"
set-face global ts_keyword_conditional "%opt{mauve}+i"
set-face global ts_keyword_control_conditional "%opt{mauve}+i"
set-face global ts_keyword_control_directive "%opt{mauve}+i"
set-face global ts_keyword_control_import "%opt{mauve}+i"
set-face global ts_keyword_directive "%opt{mauve}+i"
set-face global ts_label "%opt{sky}+i"
set-face global ts_markup_bold "%opt{peach}+b"
set-face global ts_markup_heading "%opt{red}"
set-face global ts_markup_heading_1 "%opt{red}"
set-face global ts_markup_heading_2 "%opt{mauve}"
set-face global ts_markup_heading_3 "%opt{green}"
set-face global ts_markup_heading_4 "%opt{yellow}"
set-face global ts_markup_heading_5 "%opt{pink}"
set-face global ts_markup_heading_6 "%opt{teal}"
set-face global ts_markup_heading_marker "%opt{peach}+b"
set-face global ts_markup_italic "%opt{pink}+i"
set-face global ts_markup_list_checked "%opt{green}"
set-face global ts_markup_list_numbered "%opt{blue}+i"
set-face global ts_markup_list_unchecked "%opt{teal}"
set-face global ts_markup_list_unnumbered "%opt{mauve}"
set-face global ts_markup_link_label "%opt{blue}"
set-face global ts_markup_link_url "%opt{teal}+u"
set-face global ts_markup_link_uri "%opt{teal}+u"
set-face global ts_markup_link_text "%opt{blue}"
set-face global ts_markup_quote "%opt{overlay1}"
set-face global ts_markup_raw "%opt{green}"
set-face global ts_markup_strikethrough "%opt{overlay1}+s"
set-face global ts_namespace "%opt{blue}+i"
set-face global ts_operator "%opt{sky}"
set-face global ts_property "%opt{sky}"
set-face global ts_punctuation "%opt{overlay1}"
set-face global ts_punctuation_special "%opt{sky}"
set-face global ts_special "%opt{blue}"
set-face global ts_spell "%opt{mauve}"
set-face global ts_string string
set-face global ts_string_regex "%opt{pink}"
set-face global ts_string_regexp "%opt{pink}"
set-face global ts_string_escape "%opt{flamingo}"
set-face global ts_string_special "%opt{blue}"
set-face global ts_string_special_path "%opt{green}"
set-face global ts_string_special_symbol "%opt{mauve}"
set-face global ts_string_symbol "%opt{red}"
set-face global ts_tag "%opt{mauve}"
set-face global ts_tag_error "%opt{red}"
set-face global ts_text "%opt{text}"
set-face global ts_text_title "%opt{mauve}"
set-face global ts_type type
set-face global ts_type_enum_variant "%opt{teal}"
set-face global ts_variable variable
set-face global ts_variable_builtin builtin
set-face global ts_variable_other_member "%opt{teal}"
set-face global ts_variable_parameter "%opt{maroon}+i"
set-face global ts_warning "%opt{yellow}+b"

View File

@@ -0,0 +1,178 @@
# Carbonfox theme for Kakoune
#
# Taken and adapted from
# <https://github.com/EdenEast/nightfox.nvim/blob/main/lua/nightfox/palette/dawnfox.lua>
# Color palette
declare-option str pink_dim "rgb:c9709e"
declare-option str pink_base "rgb:d685af"
declare-option str pink_bright "rgb:de8db7"
declare-option str bg2 "rgb:ebe0df"
declare-option str fg1 "rgb:575279"
declare-option str bg3 "rgb:ebdfe4"
declare-option str orange_dim "rgb:ca6e69"
declare-option str orange_base "rgb:d7827e"
declare-option str orange_bright "rgb:de8c88"
declare-option str red_dim "rgb:a5576d"
declare-option str red_base "rgb:b4637a"
declare-option str red_bright "rgb:c26d85"
declare-option str green_dim "rgb:597668"
declare-option str green_base "rgb:618774"
declare-option str green_bright "rgb:629f81"
declare-option str cyan_dim "rgb:50848c"
declare-option str cyan_base "rgb:56949f"
declare-option str cyan_bright "rgb:5ca7b4"
declare-option str black_dim "rgb:504c6b"
declare-option str black_base "rgb:575279"
declare-option str black_bright "rgb:5f5695"
declare-option str yellow_dim "rgb:dd9024"
declare-option str yellow_base "rgb:ea9d34"
declare-option str yellow_bright "rgb:eea846"
declare-option str fg3 "rgb:a8a3b3"
declare-option str sel1 "rgb:b8cece"
declare-option str comment "rgb:9893a5"
declare-option str blue_dim "rgb:295e73"
declare-option str blue_base "rgb:286983"
declare-option str blue_bright "rgb:2d81a3"
declare-option str sel0 "rgb:d0d8d8"
declare-option str fg2 "rgb:625c87"
declare-option str bg1 "rgb:faf4ed"
declare-option str fg0 "rgb:4c4769"
declare-option str bg4 "rgb:bdbfc9"
declare-option str bg0 "rgb:ebe5df"
declare-option str white_dim "rgb:c8cfde"
declare-option str white_base "rgb:e5e9f0"
declare-option str white_bright "rgb:e6ebf3"
declare-option str magenta_dim "rgb:816b9a"
declare-option str magenta_base "rgb:907aa9"
declare-option str magenta_bright "rgb:9a80b9"
# Markup
set-face global title "%opt{yellow_base}"
set-face global header "%opt{red_dim}+b"
set-face global bold "%opt{fg1}+b"
set-face global italic "%opt{fg1}+i"
# Builtins
set-face global Default "%opt{fg1},%opt{bg1}"
set-face global PrimarySelection "%opt{fg2},%opt{sel0}"
set-face global SecondarySelection "%opt{fg3},%opt{sel1}"
set-face global PrimaryCursor "%opt{bg1},%opt{fg1}"
set-face global SecondaryCursor "%opt{bg1},%opt{fg2}"
set-face global PrimaryCursorEol "%opt{bg2},%opt{blue_bright}"
set-face global SecondaryCursorEol "%opt{bg3},%opt{blue_dim}"
set-face global LineNumbers "%opt{fg3},%opt{bg1}"
set-face global LineNumberCursor "%opt{fg2},%opt{bg1}"
set-face global LineNumbersWrapped "%opt{fg3},%opt{bg1}+i"
set-face global MenuForeground "%opt{fg1},%opt{sel1}"
set-face global MenuBackground "%opt{fg1},%opt{sel0}"
set-face global MenuInfo "%opt{fg1},%opt{bg0}"
set-face global Information "%opt{fg1},%opt{bg0}"
set-face global Error "%opt{red_base},%opt{bg0}"
set-face global StatusLine "%opt{fg2},%opt{bg0}"
set-face global StatusLineMode "%opt{green_bright},%opt{bg0}"
set-face global StatusLineInfo "%opt{blue_bright},%opt{bg0}"
set-face global StatusLineValue "%opt{orange_base},%opt{bg0}"
set-face global StatusCursor "%opt{bg0},%opt{fg2}"
set-face global Prompt "%opt{blue_bright},%opt{bg0}"
set-face global MatchingChar "%opt{fg1},%opt{sel1}"
set-face global Whitespace "%opt{fg3},%opt{bg1}"
set-face global WrapMarker Whitespace
set-face global BufferPadding "%opt{blue_dim},%opt{bg1}"
# Code
set-face global value "%opt{orange_dim}"
set-face global type "%opt{yellow_base}"
set-face global variable "%opt{black_base}"
set-face global module "%opt{blue_base}"
set-face global function "%opt{blue_dim}"
set-face global string "%opt{green_base}"
set-face global keyword "%opt{magenta_base}"
set-face global operator "%opt{fg2}"
set-face global attribute "%opt{blue_base}"
set-face global comment "%opt{comment}"
set-face global documentation comment
set-face global meta "%opt{pink_dim}"
set-face global builtin "%opt{red_base}"
# Tree-sitter (<https://github.com/hadronized/kak-tree-sitter>)
set-face global ts_attribute "%opt{yellow_base}"
set-face global ts_comment "%opt{comment}"
set-face global ts_comment_unused "%opt{comment}"
set-face global ts_conceal "%opt{magenta_dim}"
set-face global ts_constant "%opt{orange_dim}"
set-face global ts_constant_builtin_boolean "%opt{orange_dim}"
set-face global ts_constant_character "%opt{green_base}"
set-face global ts_constant_macro "%opt{orange_dim}"
set-face global ts_constructor "%opt{cyan_base}"
set-face global ts_diff_plus "%opt{green_base}"
set-face global ts_diff_minus "%opt{red_base}"
set-face global ts_diff_delta "%opt{yellow_base}"
set-face global ts_diff_delta_moved "%opt{blue_base}"
set-face global ts_error "%opt{red_base}"
set-face global ts_function "%opt{blue_dim}"
set-face global ts_function_builtin "%opt{pink_base}"
set-face global ts_function_macro "%opt{pink_dim}"
set-face global ts_function_method_private "%opt{blue_dim}"
set-face global ts_hint "%opt{green_base}"
set-face global ts_info "%opt{blue_base}"
set-face global ts_keyword "%opt{magenta_base}"
set-face global ts_keyword_conditional "%opt{magenta_dim}"
set-face global ts_keyword_control_conditional "%opt{magenta_dim}"
set-face global ts_keyword_control_directive "%opt{pink_dim}"
set-face global ts_keyword_control_import "%opt{orange_dim}"
set-face global ts_keyword_directive "%opt{pink_dim}"
set-face global ts_keyword_storage "%opt{blue_base}"
set-face global ts_keyword_storage_modifier "%opt{magenta_base}"
set-face global ts_keyword_storage_modifier_mut "%opt{blue_dim}"
set-face global ts_keyword_storage_modifier_ref "%opt{blue_dim}"
set-face global ts_label "%opt{pink_base}+i"
set-face global ts_markup_bold "%opt{red_base}+b"
set-face global ts_markup_heading "%opt{blue_base}"
set-face global ts_markup_heading_1 "%opt{blue_base}+b"
set-face global ts_markup_heading_2 "%opt{blue_base}+b"
set-face global ts_markup_heading_3 "%opt{blue_base}+b"
set-face global ts_markup_heading_4 "%opt{blue_base}+b"
set-face global ts_markup_heading_5 "%opt{blue_base}+b"
set-face global ts_markup_heading_6 "%opt{blue_base}+b"
set-face global ts_markup_heading_marker "%opt{orange_base}+b"
set-face global ts_markup_italic "%opt{pink_base}+i"
set-face global ts_markup_list_checked "%opt{green_base}"
set-face global ts_markup_list_numbered "%opt{fg2}"
set-face global ts_markup_list_unchecked "%opt{cyan_base}"
set-face global ts_markup_list_unnumbered "%opt{fg2}"
set-face global ts_markup_link_label "%opt{blue_base}"
set-face global ts_markup_link_url "%opt{cyan_base}+u"
set-face global ts_markup_link_uri "%opt{cyan_base}+u"
set-face global ts_markup_link_text "%opt{blue_base}"
set-face global ts_markup_quote "%opt{fg2},%opt{bg2}"
set-face global ts_markup_raw "%opt{green_base}"
set-face global ts_markup_strikethrough "%opt{fg1}+s"
set-face global ts_namespace "%opt{cyan_base}"
set-face global ts_operator "%opt{fg2}"
set-face global ts_property "%opt{blue_base}"
set-face global ts_punctuation "%opt{fg2}"
set-face global ts_punctuation_special "%opt{blue_dim}"
set-face global ts_special "%opt{blue_base}"
set-face global ts_spell "%opt{fg1},%opt{bg1},%opt{red_base}+c"
set-face global ts_string "%opt{green_base}"
set-face global ts_string_regex "%opt{yellow_dim}"
set-face global ts_string_regexp "%opt{yellow_dim}"
set-face global ts_string_escape "%opt{cyan_base}"
set-face global ts_string_special "%opt{green_base}"
set-face global ts_string_special_path "%opt{green_base}"
set-face global ts_string_special_symbol "%opt{green_base}"
set-face global ts_string_symbol "%opt{green_base}"
set-face global ts_tag "%opt{blue_base}"
set-face global ts_tag_error "%opt{red_base}"
set-face global ts_text "%opt{black_base}"
set-face global ts_text_title "%opt{orange_base}"
set-face global ts_type "%opt{yellow_base}"
set-face global ts_type_enum_variant "%opt{yellow_base}"
set-face global ts_type_enum_variant_builtin "%opt{orange_dim}"
set-face global ts_variable "%opt{black_base}"
set-face global ts_variable_builtin "%opt{red_base}"
set-face global ts_variable_other_member "%opt{cyan_base}"
set-face global ts_variable_other_member_private "%opt{cyan_dim}"
set-face global ts_variable_parameter "%opt{blue_base}"
set-face global ts_warning "%opt{yellow_base}"

View File

@@ -1 +0,0 @@
../plugins/base16-kakoune/colors/

View File

@@ -19,109 +19,130 @@ plug "kak-lsp/kak-lsp" do %{
cargo install --locked --force --path .
}
# plug "gustavo-hms/luar" %{
# plug "gustavo-hms/peneira" %{
# require-module peneira
# }
# }
plug "gustavo-hms/luar" %{
plug "gustavo-hms/peneira" %{
require-module peneira
}
}
plug "h-youhei/kakoune-surround"
plug "your-tools/kak-subvert" do %{
cargo install --locked --force --path .
}
plug "https://git.sr.ht/~nasmevka/repl.kak"
plug "https://gitlab.com/kstr0k/mru-files.kak" demand mru-files %{ # %{} needed even if empty
# suggested mappings: *after* plugin loads
# think "go alt[ernate]-f[iles]"
# map global goto <a-f> '<esc>: mru-files ' -docstring 'mru-files'
# map global goto <a-F> '<esc>: mru-files-related<ret>' -docstring 'mru-files-related'
}
plug "custom-filetypes" load-path "~/.config/kak/al"
# # Color Themes
plug "tinted-theming/base16-kakoune"
plug "tinted-theming/base16-kakoune" theme
plug "https://git.sr.ht/~hadronized/kakoune-tree-sitter-themes" theme
### End Of Plugins ###
# set-option global luar_interpreter luajit
set-option global luar_interpreter luajit
## Treesitter ##
eval %sh{ kak-tree-sitter -dks --with-highlighting --with-text-objects --init $kak_session }
eval %sh{ kak-tree-sitter -dksvvv --with-highlighting --with-text-objects --init $kak_session }
#eval %sh{ kak-tree-sitter -dks --with-text-objects --session $kak_session }
#eval %sh{ kak-tree-sitter -dks --with-highlighting --session $kak_session }
#eval %sh{ kak-tree-sitter -dksvvv --init $kak_session }
#
# evaluate-commands %sh{
# echo "colorscheme base16-$BASE16_THEME"
# }
evaluate-commands %sh{
echo "colorscheme base16-$BASE16_THEME"
}
## Popup ##
evaluate-commands %sh{kak-popup init}
## Highlighting ##
hook global WinCreate .* %{ add-highlighter window/number-lines number-lines -relative -hlcursor}
add-highlighter global/ show-matching
add-highlighter global/ column 80 MenuForeground
add-highlighter global/ show-whitespaces
add-highlighter global/ column 80 MenuBackground
add-highlighter global/ show-whitespaces -spc " " -nbsp ""
#add-highlighter global/ show-whitespaces -nbsp "" -lf "" -indent "|"
## Wrapping ##
add-highlighter global/ wrap -word -indent
## Formatting ##
define-command enable-autofmt -docstring 'enable autoformatting of buffer' %{
hook global -group autofmt BufSetOption filetype=(zig) %{
set-option buffer formatcmd 'zig fmt --stdin'
hook -group autofmt buffer BufOpenFile .* %{
format
}
hook -group autofmt buffer BufWritePre .* %{
format
}
}
hook global -group autofmt BufSetOption filetype=(html) %{
set-option buffer formatcmd 'prettier --tab-width 4 --parser html'
hook -group autofmt buffer BufOpenFile .* %{
format
}
hook -group autofmt buffer BufWritePre .* %{
format
}
}
hook global -group autofmt BufSetOption filetype=(css) %{
set-option buffer formatcmd 'prettier --tab-width 4 --parser css'
hook -group autofmt buffer BufOpenFile .* %{
format
}
hook -group autofmt buffer BufWritePre .* %{
format
}
}
hook global -group autofmt BufSetOption filetype=(javascript) %{
set-option buffer formatcmd 'prettier --tab-width 4 --parser typescript'
hook -group autofmt buffer BufOpenFile .* %{
format
}
hook -group autofmt buffer BufWritePre .* %{
format
}
}
hook global -group autofmt BufSetOption filetype=(go) %{
set-option buffer formatcmd 'gofmt'
hook -group autofmt buffer BufOpenFile .* %{
format
}
hook -group autofmt buffer BufWritePre .* %{
format
}
}
}
define-command disable-autofmt -docstring 'disable autoformatting of buffer' %{
remove-hooks global autofmt
}
enable-autofmt
# define-command enable-autofmt -docstring 'enable autoformatting of buffer' %{
#
#
# hook global -group autofmt BufSetOption filetype=(zig) %{
# set-option buffer formatcmd 'zig fmt --stdin'
#
# hook -group autofmt buffer BufOpenFile .* %{
# format
# }
#
# hook -group autofmt buffer BufWritePre .* %{
# format
# }
# }
#
# hook global -group autofmt BufSetOption filetype=(html) %{
# set-option buffer formatcmd 'prettier --tab-width 4 --parser html'
#
# hook -group autofmt buffer BufOpenFile .* %{
# format
# }
#
# hook -group autofmt buffer BufWritePre .* %{
# format
# }
# }
#
# hook global -group autofmt BufSetOption filetype=(css) %{
# set-option buffer formatcmd 'prettier --tab-width 4 --parser css'
#
# hook -group autofmt buffer BufOpenFile .* %{
# format
# }
#
# hook -group autofmt buffer BufWritePre .* %{
# format
# }
# }
# hook global -group autofmt BufSetOption filetype=(javascript) %{
# set-option buffer formatcmd 'prettier --tab-width 4 --parser typescript'
#
# hook -group autofmt buffer BufOpenFile .* %{
# format
# }
#
# hook -group autofmt buffer BufWritePre .* %{
# format
# }
# }
#
# hook global -group autofmt BufSetOption filetype=(go) %{
# set-option buffer formatcmd 'gofmt'
#
# hook -group autofmt buffer BufOpenFile .* %{
# format
# }
#
# hook -group autofmt buffer BufWritePre .* %{
# format
# }
# }
# }
#
# define-command disable-autofmt -docstring 'disable autoformatting of buffer' %{
# remove-hooks global autofmt
# }
#
# enable-autofmt
#
#
## Indentation ##
set global tabstop 4
@@ -133,6 +154,26 @@ hook global BufCreate .* %{
autoconfigtab
}
define-command set-spell -docstring 'Enable spellcheck' %{
# hook -group spellcheck global BufOpenFile .* %{
hook -group spellcheck buffer InsertChar .* %{
evaluate-commands %{
spell
}
}
hook -group spellcheck buffer InsertDelete .* %{
evaluate-commands %{
spell
}
}
# }
}
define-command set-nospell -docstring 'Disable spellcheck' %{
remove-hooks buffer spellcheck
}
define-command sleuth -docstring 'Heuristically set buffer options' %{
try %{
evaluate-commands -draft %{
@@ -184,10 +225,15 @@ define-command sleuth-disable -docstring 'Disable sleuth' %{
## LSP ##
lsp-enable
lsp-auto-hover-enable
lsp-inlay-diagnostics-enable global
hook global WinSetOption filetype=(c|zig|rust|python|ruby|lua|java|html|css) %{
set-option global lsp_auto_highlight_references true
set-option global lsp_hover_anchor true
lsp-auto-signature-help-enable
lsp-inlay-hints-enable global
map global user k ':lsp-hover'
hook global WinSetOption filetype=(c|cpp|zig|rust|python|ruby|lua|java|html|css) %{
hook window -group semantic-tokens BufReload .* lsp-semantic-tokens
hook window -group semantic-tokens NormalIdle .* lsp-semantic-tokens
hook window -group semantic-tokens InsertIdle .* lsp-semantic-tokens
@@ -210,10 +256,36 @@ face global InfoDiagnosticHint Information
face global InfoDiagnosticInformation Information
face global InfoDiagnosticWarning Information
hook -group lsp-filetype-swift global BufSetOption filetype=swift %{
set-option buffer lsp_servers %{
[sourcekit-lsp]
root_globs = [".git", ".hg"]
}
}
hook -group lsp-filetype-typst global BufSetOption filetype=typst %{
set-option buffer lsp_servers %{
[tinymist]
root_globs = [".git", ".hg"]
args = ["lsp"]
settings_section = "_"
[tinymist.settings._]
# See https://myriad-dreamin.github.io/tinymist/configurations.html
exportPdf = "onType"
# formatterMode = "typstyle"
# previewFeature = "disable"
}
}
set-option global lsp_config %{
}
define-command -docstring 'Invoke fzf to select a buffer' fzf-buffer %{
define-command fzf-buffer -docstring 'Invoke fzf to select a buffer' %{
evaluate-commands %sh{
tmux split-window -l 30% "(printf \"%s\n\" $kak_quoted_buflist | fzf --bind 'focus:execute-silent(echo \"eval -client $kak_client %{ e {} }\" | kak -p $kak_session)' || echo \"$kak_buffile\") | xargs -I{} echo \"eval -client $kak_client %{ e '{}' }\" | /usr/bin/kak -p $kak_session"
}
}
define-command -docstring 'Invoke fzf to select a buffer' prev-fzf-buff %{
evaluate-commands %sh{
BUFFER=$(
(
@@ -225,7 +297,6 @@ define-command -docstring 'Invoke fzf to select a buffer' fzf-buffer %{
) |
fzf-tmux --cycle -p 80%,90% --read0 --preview='bat --theme=base16-256 --color=always {} 2>/dev/null'
)
BUFFER=${BUFFER/\'/\'\'}
if [ -n "$BUFFER" ]; then
printf "buffer %s" "${BUFFER}"
fi
@@ -357,20 +428,31 @@ define-command -docstring 'Print Working Directory' -params 0 pwd %{
evaluate-commands echo %sh{ echo "$(pwd)"}
}
# define-command -docstring 'copy to clipboard' xcopy %{
# execute-keys '<a-|>xclip -selection clipboard -i<ret>'
# }
# define-command -docstring 'paste from clipboard' xpaste %{
# evaluate-commands -save-regs '"' %{
# set-register dquote %sh{ xclip -selection clipboard -o }
# execute-keys 'p'
# }
# }
define-command -docstring 'copy to clipboard' xcopy %{
execute-keys '<a-|>xclip -selection clipboard -i<ret>'
execute-keys '<a-|>wl-copy<ret>'
}
define-command -docstring 'paste from clipboard' xpaste %{
evaluate-commands -save-regs '"' %{
set-register dquote %sh{ xclip -selection clipboard -o }
execute-keys 'p'
set-register dquote %sh{ wl-paste }
execute-keys 'P'
}
}
declare-user-mode config
map -docstring 'enter config mode' global user e ':enter-user-mode config<ret>'
map -docstring 'edit kakoune config' global config k ':cd ~/.config/kak/<ret>:e ./kakrc<ret>'
map -docstring 'edit kakoune config' global config k ':e ~/.config/kak/kakrc<ret>'
map -docstring 'edit tmux config' global config t ':e ~/.tmux.conf<ret>'
map -docstring 'edit bash config' global config b ':e ~/.bashrc<ret>'
map -docstring 'edit scripts folder' global config s ':cd ~/.scripts<ret>:fzf-edit<ret>'
@@ -412,15 +494,32 @@ map -docstring 'new terminal tab' global tmux T ':tmux-repl-window<ret>'
map -docstring 'new git window' global tmux g ':tmux-terminal-window lazygit<ret>'
declare-user-mode project
map -docstring 'enter project mode' global user P ':enter-user-mode project<ret>'
map -docstring 'enter project mode' global user p ':enter-user-mode project<ret>'
map -docstring 'open project' global project o ':switch-project<ret>'
map -docstring 'enter man mode' global user m ':enter-user-mode man<ret>'
declare-user-mode general
map -docstring 'enter general keybinds mode' global user g ':enter-user-mode general<ret>'
#map -docstring 'clipboard yank' global user y '<a-|>clip.exe<ret>'
map -docstring 'clipboard yank' global user y ':xcopy<ret>'
map -docstring 'clipboard yank' global general y ':xcopy<ret>'
#map -docstring 'clipboard paste' global user p '|powershell.exe -C Get-Clipboard | tr -d "\r"<ret>'
map -docstring 'clipboard paste' global user p ':xpaste<ret>'
map -docstring 'clipboard paste' global general p ':xpaste<ret>'
map -docstring 'quit kakoune' global general q ':q<ret>'
map -docstring 'toggle comments' global general c ':comment-line<ret>'
map -docstring 'quit kakoune' global user q ':q<ret>'
map -docstring 'toggle comments' global user c ':comment-line<ret>'
declare-user-mode spell
map -docstring 'enter spell mode' global general s ':enter-user-mode spell<ret>'
map -docstring 'enable spell check' global spell s ':spell<ret>'
map -docstring 'clear spell check' global spell c ':spell-clear<ret>'
map -docstring 'next spell check' global spell n ':spell-next<ret>'
map -docstring 'spell check replacements' global spell r ':spell-replace<ret>'
map -docstring 'quit kakoune' global user q ':q!<ret>'
try %{
colorscheme %sh{
ruby -e "time = Time.new; if time.hour < 20 and time.hour > 6 then puts 'dawnfox' else puts 'carbonfox' end"
}
} catch %{
colorscheme carbonfox
}

View File

@@ -1,4 +0,0 @@
set -e
cargo install --locked --force --path .

View File

@@ -1,19 +0,0 @@
try %{
discord-presence-enable
} catch %{
echo -debug "Error while evaluating 'kakoune-discord' configuration: %val{error}"
set-option -add current plug_conf_errors "Error while evaluating 'kakoune-discord' configuration:"
set-option -add current plug_conf_errors %sh{ printf "\n " }
set-option -add current plug_conf_errors %val{error}
set-option -add current plug_conf_errors %sh{ printf "\n\n" }
hook -once -group plug-conf-err global WinDisplay .* %{
info -style modal -title "plug.kak error" "%opt{plug_conf_errors}"
on-key %{
info -style modal
execute-keys -with-maps -with-hooks %val{key}
}
}
}

View File

@@ -1,2 +0,0 @@
cargo install --path . --force

View File

@@ -1,23 +0,0 @@
try %{
require-module rainbow
# suggested mapping
# # map global user r ": rainbow<ret>" -docstring "rainbow brackets"
# # map global user R ": rmhl window/ranges_rainbow_specs<ret>" \
# # -docstring "remove rainbow highlighter"
} catch %{
echo -debug "Error while evaluating 'kakoune-rainbow' configuration: %val{error}"
set-option -add current plug_conf_errors "Error while evaluating 'kakoune-rainbow' configuration:"
set-option -add current plug_conf_errors %sh{ printf "\n " }
set-option -add current plug_conf_errors %val{error}
set-option -add current plug_conf_errors %sh{ printf "\n\n" }
hook -once -group plug-conf-err global WinDisplay .* %{
info -style modal -title "plug.kak error" "%opt{plug_conf_errors}"
on-key %{
info -style modal
execute-keys -with-maps -with-hooks %val{key}
}
}
}

View File

@@ -1 +0,0 @@
gitlab.com

View File

@@ -1,19 +0,0 @@
try %{
# configuration here
} catch %{
echo -debug "Error while evaluating 'kakoune-smooth-scroll' configuration: %val{error}"
set-option -add current plug_conf_errors "Error while evaluating 'kakoune-smooth-scroll' configuration:"
set-option -add current plug_conf_errors %sh{ printf "\n " }
set-option -add current plug_conf_errors %val{error}
set-option -add current plug_conf_errors %sh{ printf "\n\n" }
hook -once -group plug-conf-err global WinDisplay .* %{
info -style modal -title "plug.kak error" "%opt{plug_conf_errors}"
on-key %{
info -style modal
execute-keys -with-maps -with-hooks %val{key}
}
}
}

View File

@@ -1,21 +0,0 @@
try %{
plug "gustavo-hms/peneira" %{
require-module peneira
}
} catch %{
echo -debug "Error while evaluating 'luar' configuration: %val{error}"
set-option -add current plug_conf_errors "Error while evaluating 'luar' configuration:"
set-option -add current plug_conf_errors %sh{ printf "\n " }
set-option -add current plug_conf_errors %val{error}
set-option -add current plug_conf_errors %sh{ printf "\n\n" }
hook -once -group plug-conf-err global WinDisplay .* %{
info -style modal -title "plug.kak error" "%opt{plug_conf_errors}"
on-key %{
info -style modal
execute-keys -with-maps -with-hooks %val{key}
}
}
}

View File

@@ -1,19 +0,0 @@
try %{
# your config
} catch %{
echo -debug "Error while evaluating 'pandoc.kak' configuration: %val{error}"
set-option -add current plug_conf_errors "Error while evaluating 'pandoc.kak' configuration:"
set-option -add current plug_conf_errors %sh{ printf "\n " }
set-option -add current plug_conf_errors %val{error}
set-option -add current plug_conf_errors %sh{ printf "\n\n" }
hook -once -group plug-conf-err global WinDisplay .* %{
info -style modal -title "plug.kak error" "%opt{plug_conf_errors}"
on-key %{
info -style modal
execute-keys -with-maps -with-hooks %val{key}
}
}
}

View File

@@ -1,19 +0,0 @@
try %{
require-module peneira
} catch %{
echo -debug "Error while evaluating 'peneira' configuration: %val{error}"
set-option -add current plug_conf_errors "Error while evaluating 'peneira' configuration:"
set-option -add current plug_conf_errors %sh{ printf "\n " }
set-option -add current plug_conf_errors %val{error}
set-option -add current plug_conf_errors %sh{ printf "\n\n" }
hook -once -group plug-conf-err global WinDisplay .* %{
info -style modal -title "plug.kak error" "%opt{plug_conf_errors}"
on-key %{
info -style modal
execute-keys -with-maps -with-hooks %val{key}
}
}
}

View File

@@ -1,25 +0,0 @@
try %{
# if you have wrap highlighter enamled in you configuration
# files it's better to turn it off for tagbar, using this hook:
hook global WinSetOption filetype=tagbar %{
remove-highlighter window/wrap
# you can also disable rendering whitespaces here, line numbers, and
# matching characters
}
} catch %{
echo -debug "Error while evaluating 'tagbar.kak' configuration: %val{error}"
set-option -add current plug_conf_errors "Error while evaluating 'tagbar.kak' configuration:"
set-option -add current plug_conf_errors %sh{ printf "\n " }
set-option -add current plug_conf_errors %val{error}
set-option -add current plug_conf_errors %sh{ printf "\n\n" }
hook -once -group plug-conf-err global WinDisplay .* %{
info -style modal -title "plug.kak error" "%opt{plug_conf_errors}"
on-key %{
info -style modal
execute-keys -with-maps -with-hooks %val{key}
}
}
}

View File

@@ -0,0 +1,30 @@
[Source-applicationSourceName]
dataSourceCommonSettings\activeState=true
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-locale]
dataSourceCommonSettings\activeState=true
[Source-opengl]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-startCount]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=137
ApplicationTime=622

View File

@@ -0,0 +1,30 @@
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-locale]
dataSourceCommonSettings\activeState=true
[Source-places]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-settings]
dataSourceCommonSettings\activeState=true
[Source-startCount]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=3
ApplicationTime=35142

View File

@@ -0,0 +1,21 @@
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-startCount]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=10
ApplicationTime=3242

View File

@@ -0,0 +1,27 @@
[Source-accounts]
dataSourceCommonSettings\activeState=true
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-locale]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-startCount]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=1
ApplicationTime=14

View File

@@ -0,0 +1,2 @@
[UserFeedback]
ApplicationStartCount=1

View File

@@ -0,0 +1,31 @@
[Source-applicationVersion]
dataSourceCommonSettings\activeState=true
[Source-compiler]
dataSourceCommonSettings\activeState=true
[Source-opengl]
dataSourceCommonSettings\activeState=true
[Source-panelCount]
dataSourceCommonSettings\activeState=true
[Source-platform]
dataSourceCommonSettings\activeState=true
[Source-qpa]
dataSourceCommonSettings\activeState=true
[Source-qtVersion]
dataSourceCommonSettings\activeState=true
[Source-screens]
dataSourceCommonSettings\activeState=true
[Source-usageTime]
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=210
ApplicationTime=2008695
LastEncouragement=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x87}\x4\n\x84\xab\0)

View File

@@ -0,0 +1,2 @@
[UserFeedback]
ApplicationStartCount=254

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,5 @@
[Favorites]
Atlas=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8c\xc2\x3\xd4\x8b\xdf\0)
OpenStreetMap=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8c\xc2\x3\xd4\x8b\xdf\0)
Satellite%20View=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x8c\xc2\x3\xd4\x8b\xdf\0)
initialized=true

View File

@@ -0,0 +1,7 @@
[QQControlsFileDialog]
favoriteFolders=@Invalid()
height=0
sidebarSplit=125.55000000000001
sidebarVisible=true
sidebarWidth=80
width=0

View File

@@ -0,0 +1,2 @@
[KImageAnnotator]
AnnotatorDockWidgetsState=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x3\0\0\0\0\0\0\0W\0\0\x1\x8a\xfc\x2\0\0\0\x1\xfb\0\0\0\x1c\0T\0o\0o\0l\0 \0S\0\x65\0l\0\x65\0\x63\0t\0i\0o\0n\x1\0\0\0%\0\0\x1\x8a\0\0\0\x64\x1\0\0\x3\0\0\0\x2\0\0\x2t\0\0\0$\xfc\x1\0\0\0\x1\xfb\0\0\0\x1a\0I\0t\0\x65\0m\0 \0S\0\x65\0t\0t\0i\0n\0g\0s\x1\0\0\0\0\0\0\x2t\0\0\0\xe5\x1\0\0\x3\0\0\0\x3\0\0\x2t\0\0\0$\xfc\x1\0\0\0\x2\xfb\0\0\0 \0G\0\x65\0n\0\x65\0r\0\x61\0l\0 \0S\0\x65\0t\0t\0i\0n\0g\0s\x1\0\0\0\0\0\0\x1x\0\0\0x\x1\0\0\x3\xfb\0\0\0\x1c\0I\0m\0\x61\0g\0\x65\0 \0S\0\x65\0t\0t\0i\0n\0g\0s\x1\0\0\x1y\0\0\0\xfb\0\0\0P\x1\0\0\x3\0\0\x2\x1c\0\0\x1\x8a\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\0)

View File

@@ -0,0 +1,7 @@
[QQControlsFileDialog]
favoriteFolders=@Invalid()
height=0
sidebarSplit=125.55000000000001
sidebarVisible=true
sidebarWidth=80
width=0

View File

@@ -0,0 +1,2 @@
[Mouse]
cursorTheme=breeze_cursors

View File

@@ -0,0 +1,8 @@
[General]
ColorScheme=BreezeDark
[Icons]
Theme=breeze-dark
[KDE]
widgetStyle=Breeze

View File

@@ -0,0 +1,2 @@
[Greeter]
Theme=org.kde.breeze.desktop

View File

@@ -0,0 +1,3 @@
[KSplash]
Engine=KSplashQML
Theme=org.kde.breezedark.desktop

View File

@@ -0,0 +1,7 @@
[Windows]
Placement=Centered
[org.kde.kdecoration2]
NoPlugin=false
library=org.kde.breeze
theme=Breeze

View File

@@ -0,0 +1 @@
org.kde.breezedark.desktop

View File

@@ -0,0 +1,2 @@
[Theme]
name=default

View File

@@ -0,0 +1,22 @@
# vim: filetype=neomuttrc
# muttrc file for account spamreciver1@outlook.com
set realname = "spamreciver1"
set from = "spamreciver1@outlook.com"
set sendmail = "msmtp -a spamreciver1@outlook.com"
alias me spamreciver1 <spamreciver1@outlook.com>
set folder = "/home/mikec/.local/share/mail/spamreciver1@outlook.com"
set header_cache = /home/mikec/.cache/mutt-wizard/spamreciver1@outlook.com/headers
set message_cachedir = /home/mikec/.cache/mutt-wizard/spamreciver1@outlook.com/bodies
set mbox_type = Maildir
set hostname = "outlook.com"
source /usr/share/mutt-wizard/switch.muttrc
set spoolfile = +INBOX
set postponed = +Drafts
set trash = +Trash
set record = +Sent
macro index o "<shell-escape>mw -y spamreciver1@outlook.com<enter>" "run mbsync to sync spamreciver1@outlook.com"
macro index \eg "<enter-command>unset wait_key<enter><shell-escape>gpg --list-secret-keys; printf 'Enter email ID of user to publish: '; read eID; printf 'Enter fingerprint of GPG key to publish: '; read eFGPT; /usr/libexec/gpg-wks-client --create \$eFGPT \$eID | msmtp --read-envelope-from --read-recipients -a spamreciver1@outlook.com<enter>" "publish GPG key to WKS provider"
macro index \eh "<pipe-message>/usr/libexec/gpg-wks-client --receive | msmtp --read-envelope-from --read-recipients -a spamreciver1@outlook.com<enter>" "confirm GPG publication"
mailboxes "=INBOX" "=Drafts" "=Junk" "=Trash" "=Sent" "=Archive"

View File

@@ -5,3 +5,4 @@ macro index,pager i1 '<sync-mailbox><enter-command>source /home/mikec/.config/mu
macro index,pager i2 '<sync-mailbox><enter-command>source /home/mikec/.config/mutt/accounts/chalupmc@rose-hulman.edu.muttrc<enter><change-folder>!<enter>;<check-stats>' "switch to chalupmc@rose-hulman.edu"
macro index,pager i3 '<sync-mailbox><enter-command>source /home/mikec/.config/mutt/accounts/mikec@mchalupiak.com.muttrc<enter><change-folder>!<enter>;<check-stats>' "switch to mikec@mchalupiak.com"
set use_threads=reverse sort=last-date
macro index,pager i4 '<sync-mailbox><enter-command>source /home/mikec/.config/mutt/accounts/spamreciver1@outlook.com.muttrc<enter><change-folder>!<enter>;<check-stats>' "switch to spamreciver1@outlook.com"

View File

@@ -1,7 +1,11 @@
https://phaazon.net/blog/feed
https://danielde.dev/rss.xml
https://sizeof.cat/index.xml
https://pkolaczk.github.io/feed.xml
https://karl-voit.at/feeds/lazyblorg-all.atom_1.0.links-and-content.xml
https://lukesmith.xyz/index.xml
https://joeyh.name/blog/index.rss
https://kagifeedback.org/atom/t/release-notes
https://api.substack.com/feed/podcast/462466.rss
https://www.dailywire.com/feeds/rss.xml
https://feeds.simplecast.com/6c2VScgo

View File

@@ -1,14 +0,0 @@
function colors(color)
color = color or 'vscode'
-- Available values: `'hard'`, `'medium'`, `'soft'`
vim.g.gruvbox_material_background = 'medium'
-- Available values: `'material'`, `'mix'`, `'original'`
vim.g.gruvbox_material_foreground = 'mix'
-- Available values: `'hard'`, `'medium'`, `'soft'`
vim.g.everforest_background = 'hard'
vim.g.gruvbox_material_better_performance = 1
vim.g.everforest_better_performance = 1
vim.cmd.colorscheme(color)
end
colors()

View File

@@ -1,90 +0,0 @@
local lsp = require('lsp-zero')
local lsp_config = require("lspconfig")
lsp.preset('recommended')
lsp.ensure_installed({
'lua_ls',
})
--Enable (broadcasting) snippet capability for completion
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true
lsp_config.html.setup {
capabilities = capabilities,
filetypes = { "html", "etlua" },
}
lsp_config.nim_langserver.setup{
settings = {
nim = {
projectMapping = {
projectFile = "main.nim",
fileRegex = ".*\\.nim"
}
}
}
}
local cmp = require("cmp")
local cmp_select = {behavior = cmp.SelectBehavior.Select}
local cmp_mappings = lsp.defaults.cmp_mappings({
['<C-p>'] = cmp.mapping.select_prev_item(cmp_select),
['<C-n>'] = cmp.mapping.select_next_item(cmp_select),
['<C-y>'] = cmp.mapping.confirm({select = true}),
['<C-Space>'] = cmp.mapping.complete(),
})
cmp.setup {
sources = {
-- { name = 'conjure' },
{ name = 'nvim_lsp_signature_help' },
{ name = 'nvim_lsp' },
{ name = 'luasnip' },
}
}
lsp.set_preferences({
sign_icons = { }
})
lsp.setup_nvim_cmp({
mapping = cmp_mappings
})
lsp.on_attach(function(client, bufnr)
local opts = {buffer = bufnr, remap = false}
if client.name == "eslint" then
vim.cmd.LspStop('eslint')
return
end
if client.name == "html" or client.name == "cssls" then
capabilities = capabilities
end
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
vim.keymap.set("n", "<leader>vws", vim.lsp.buf.workspace_symbol, opts)
vim.keymap.set("n", "<leader>vd", vim.diagnostic.open_float, opts)
vim.keymap.set("n", "[d", vim.diagnostic.goto_next, opts)
vim.keymap.set("n", "]d", vim.diagnostic.goto_prev, opts)
vim.keymap.set("n", "<leader>vca", vim.lsp.buf.code_action, opts)
vim.keymap.set("n", "<leader>vrr", vim.lsp.buf.references, opts)
vim.keymap.set("n", "<leader>vrn", vim.lsp.buf.rename, opts)
vim.keymap.set("i", "<C-h>", vim.lsp.buf.signature_help, opts)
end)
lsp_config.lua_ls.setup {
-- ... other configs
settings = {
Lua = {
diagnostics = {
globals = { 'vim' }
}
}
}
}
lsp_config.racket_langserver.setup{}
lsp.setup()

View File

@@ -1,15 +0,0 @@
local builtin = require('telescope.builtin')
local telescope = require('telescope')
telescope.load_extension("workspaces")
telescope.load_extension("recent_files")
telescope.load_extension("telescope-tabs")
vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
vim.keymap.set('n', '<leader>fF', builtin.git_files, {})
vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
vim.keymap.set('n', '<leader>bb', builtin.buffers, {})
vim.keymap.set('n', '<leader>hh', builtin.help_tags, {})
vim.keymap.set('n', '<leader>cc', builtin.colorscheme, {})
vim.keymap.set('n', '<leader>wo', ":Telescope workspaces<CR>", {})
vim.api.nvim_set_keymap("n", "<leader>fr",
[[<cmd>lua require('telescope').extensions.recent_files.pick()<CR>]],
{noremap = true, silent = true})

View File

@@ -1,22 +0,0 @@
require'nvim-treesitter.configs'.setup {
-- A list of parser names, or "all"
ensure_installed = { "help", "java", "c", "lua" },
-- Install parsers synchronously (only applied to `ensure_installed`)
sync_install = false,
-- Automatically install missing parsers when entering buffer
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
auto_install = true,
highlight = {
-- `false` will disable the whole extension
enable = true,
-- Setting this to true will run `:h syntax` and tree-sitter at the same time.
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
-- Using this option may slow down your editor, and you may see some duplicate highlights.
-- Instead of true it can also be a list of languages
additional_vim_regex_highlighting = false,
},
}

View File

@@ -1,2 +0,0 @@
vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle)

View File

@@ -1 +0,0 @@
[{"url": "sqlserver://chalupmc:MikeC00l@golem.csse.rose-hulman.edu/SodaBasechalupmc", "name": "SodaBasechalupmc"}, {"url": "sqlserver://chalupmc:MikeC00l@golem.csse.rose-hulman.edu/NWindchalupmc", "name": "NWindchalupmc"}]

View File

@@ -1,97 +0,0 @@
-- See `:help vim.lsp.start_client` for an overview of the supported `config` options.
--local project_name = vim.fn.fnamemodify(vim.fn.getcwd(), ':p:h:t')
--local workspace_dir = '/path/to/workspace-root/' .. project_name
local workspace_dir = vim.fn.getcwd()
local config = {
-- The command that starts the language server
-- See: https://github.com/eclipse/eclipse.jdt.ls#running-from-the-command-line
cmd = {
-- 💀
'jdtls', -- or '/path/to/java17_or_newer/bin/java'
-- depends on if `java` is in your $PATH env variable and if it points to the right version.
-- '-Declipse.application=org.eclipse.jdt.ls.core.id1',
-- '-Dosgi.bundles.defaultStartLevel=4',
-- '-Declipse.product=org.eclipse.jdt.ls.core.product',
-- '-Dlog.protocol=true',
-- '-Dlog.level=ALL',
-- '-Xms1g',
-- '--add-modules=ALL-SYSTEM',
-- '--add-opens', 'java.base/java.util=ALL-UNNAMED',
-- '--add-opens', 'java.base/java.lang=ALL-UNNAMED',
--
-- -- 💀
-- '-jar', '/usr/share/java/jdtls/plugins/org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar',
-- -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^
-- -- Must point to the Change this to
-- -- eclipse.jdt.ls installation the actual version
--
--
-- -- 💀
-- '-configuration', '/usr/share/java/jdtls/config_linux',
-- -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^
-- -- Must point to the Change to one of `linux`, `win` or `mac`
-- -- eclipse.jdt.ls installation Depending on your system.
--
--
-- -- 💀
-- -- See `data directory configuration` section in the README
-- '-data', "/home/mikec/Documents/workspace"
},
-- 💀
-- This is the default if not provided, you can remove it. Or adjust as needed.
-- One dedicated LSP server & client will be started per unique root_dir
root_dir = require('jdtls.setup').find_root({'.git', 'mvnw', 'gradlew'}),
-- Here you can configure eclipse.jdt.ls specific settings
-- See https://github.com/eclipse/eclipse.jdt.ls/wiki/Running-the-JAVA-LS-server-from-the-command-line#initialize-request
-- for a list of options
settings = {
java = {
}
},
-- Language server `initializationOptions`
-- You need to extend the `bundles` with paths to jar files
-- if you want to use additional eclipse.jdt.ls plugins.
--
-- See https://github.com/mfussenegger/nvim-jdtls#java-debug-installation
--
-- If you don't plan on using the debugger or other eclipse.jdt.ls plugins you can remove this
--init_options = {
-- bundles = {
-- vim.fn.glob("/home/mikec/.local/share/nvim/mason/packages/java-debug-adapter/extension/server/com.microsoft.java.debug.plugin/target/com.microsoft.java.debug.plugin-*.jar", 1)
-- }
--},
}
-- This bundles definition is the same as in the previous section (java-debug installation)
local bundles = {
vim.fn.glob("/home/mikec/.local/share/nvim/mason/packages/java-debug-adapter/extension/server/com.microsoft.java.debug.plugin/target/com.microsoft.java.debug.plugin-*.jar", 1)
};
-- This is the new part
vim.list_extend(bundles, vim.split(vim.fn.glob("/path/to/microsoft/vscode-java-test/server/*.jar", 1), "\n"))
config['init_options'] = {
bundles = bundles;
}
-- This starts a new client & server,
-- or attaches to an existing client & server depending on the `root_dir`.
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
vim.keymap.set("n", "<leader>vws", vim.lsp.buf.workspace_symbol, opts)
vim.keymap.set("n", "<leader>vd", vim.diagnostic.open_float, opts)
vim.keymap.set("n", "[d", vim.diagnostic.goto_next, opts)
vim.keymap.set("n", "]d", vim.diagnostic.goto_prev, opts)
vim.keymap.set("n", "<leader>vca", vim.lsp.buf.code_action, opts)
vim.keymap.set("n", "<leader>vrr", vim.lsp.buf.references, opts)
vim.keymap.set("n", "<leader>vrn", vim.lsp.buf.rename, opts)
vim.keymap.set("i", "<C-h>", vim.lsp.buf.signature_help, opts)
vim.keymap.set("n", "<leader>i", function() require('jdtls').organize_imports() end, opts)
require('jdtls').start_or_attach(config)

2
config/.config/nvim/init.lua Executable file → Normal file
View File

@@ -1 +1 @@
require("config")
require 'config'

View File

@@ -0,0 +1,69 @@
{
"auto-dark-mode.nvim": { "branch": "master", "commit": "e300259ec777a40b4b9e3c8e6ade203e78d15881" },
"blink.cmp": { "branch": "main", "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" },
"catppuccin": { "branch": "main", "commit": "8c4125e3c746976ba025dc5d908fa22c6aa09486" },
"cellular-automaton.nvim": { "branch": "main", "commit": "1606e9d5d04ff254023c3f3c62842d065708d6d3" },
"compiler-explorer.nvim": { "branch": "master", "commit": "ee8e7a2808bdad67cd2acb61b5c9ffa7735c7ec9" },
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"dim.lua": { "branch": "main", "commit": "a3a0dce75f7212ab61130e77a8157530bd23db15" },
"dracula.nvim": { "branch": "main", "commit": "041d923368d540a1e438989ce8f915628081a56a" },
"dropbar.nvim": { "branch": "master", "commit": "ce202248134e3949aac375fd66c28e5207785b10" },
"everblush": { "branch": "main", "commit": "678f808d81801b983b6fb8296fb17ba1b2785d7c" },
"everforest": { "branch": "master", "commit": "0909c23a2b8cbc337cffe91fda36381747e88506" },
"fennel.vim": { "branch": "main", "commit": "c6a9c035ca108cbb24273d96cd6277fb8fbc60b4" },
"github-colors": { "branch": "main", "commit": "7292749e49e6f870e63879a528bb05c8c8d1a59a" },
"github-nvim-theme": { "branch": "main", "commit": "c106c9472154d6b2c74b74565616b877ae8ed31d" },
"gitsigns.nvim": { "branch": "main", "commit": "20ad4419564d6e22b189f6738116b38871082332" },
"gruvbox-material": { "branch": "master", "commit": "834dbf21836862300ced7444db4262b796330ab7" },
"gruvbox.nvim": { "branch": "main", "commit": "5e0a460d8e0f7f669c158dedd5f9ae2bcac31437" },
"hex.nvim": { "branch": "master", "commit": "b46e63356a69e8d6f046c38a9708d55d17f15038" },
"lazy.nvim": { "branch": "main", "commit": "f0f5bbb9e5bfae5e6468f9359ffea3d151418176" },
"leap.nvim": { "branch": "main", "commit": "44e3a60a7a62069e5c9445b7a8104612d4f060cb" },
"love2d.nvim": { "branch": "main", "commit": "25715394680590f56aab90390d430cab0dc46808" },
"lua-utils.nvim": { "branch": "main", "commit": "e565749421f4bbb5d2e85e37c3cef9d56553d8bd" },
"lualine.nvim": { "branch": "master", "commit": "3946f0122255bc377d14a59b27b609fb3ab25768" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "35ec9e1425c2f9a36f556893336af4f302c63214" },
"mason.nvim": { "branch": "main", "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" },
"melange-nvim": { "branch": "master", "commit": "ce42f6b629beeaa00591ba73a77d3eeac4cf28ce" },
"mellow.nvim": { "branch": "main", "commit": "5cd188489bcc7eb512f0a30581ad972070f8e5cd" },
"mini.nvim": { "branch": "main", "commit": "ee4a4a4abed25e3d108d985b0553c5271f2f71aa" },
"monochrome.nvim": { "branch": "main", "commit": "2de78d9688ea4a177bcd9be554ab9192337d35ff" },
"monokai.nvim": { "branch": "master", "commit": "b8bd44d5796503173627d7a1fc51f77ec3a08a63" },
"moonlight.nvim": { "branch": "pure-lua", "commit": "e24e4218ec680b6396532808abf57ca0ada82e66" },
"moonscript-vim": { "branch": "master", "commit": "715c96c7c3b02adc507f84bf5754985460afc426" },
"nabla.nvim": { "branch": "master", "commit": "9b69b709063ccf40ac36fabb4fff7d90b3736475" },
"nelua.vim": { "branch": "main", "commit": "5bc2ce7cc1ae952940bb3419ad106c02820f4baf" },
"neogit": { "branch": "master", "commit": "c6d00913f802acedfb93c01267e89185f25800ca" },
"neorg": { "branch": "main", "commit": "e206c9642f4a115cd836e76c98ef785623d335bc" },
"nightfox.nvim": { "branch": "main", "commit": "ba47d4b4c5ec308718641ba7402c143836f35aa9" },
"nord.nvim": { "branch": "master", "commit": "80c1e5321505aeb22b7a9f23eb82f1e193c12470" },
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"nvim-autopairs": { "branch": "master", "commit": "7a2c97cccd60abc559344042fefb1d5a85b3e33b" },
"nvim-highlight-colors": { "branch": "main", "commit": "e0c4a58ec8c3ca7c92d3ee4eb3bc1dd0f7be317e" },
"nvim-lspconfig": { "branch": "master", "commit": "cbd1e91296189a765094810de1b71a04e2597579" },
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-surround": { "branch": "main", "commit": "fcfa7e02323d57bfacc3a141f8a74498e1522064" },
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "a9742cbc1f95db9eaf3293bf8cd0622ca36542bb" },
"nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
"nvim-unception": { "branch": "main", "commit": "df0e505f0f1371c49c2bcf993985962edb5a279d" },
"nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
"oceanic-next": { "branch": "master", "commit": "09833f72d5ba23de2e8bcae18f479f326f5f677a" },
"oil.nvim": { "branch": "master", "commit": "7e1cd7703ff2924d7038476dcbc04b950203b902" },
"one-nvim": { "branch": "main", "commit": "faf6fb3f98fccbe009c3466f657a8fff84a5f956" },
"onedark.nvim": { "branch": "master", "commit": "6c10964f91321c6a0f09bcc41dd64e7a6602bc4f" },
"plantuml-syntax": { "branch": "master", "commit": "9d4900aa16674bf5bb8296a72b975317d573b547" },
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"range-highlight.nvim": { "branch": "master", "commit": "f54aec737f138e52c187a8bea77b41347fd86f12" },
"rose-pine": { "branch": "main", "commit": "eb3ff49a4f2b4e8b06d27de529e44fa52a60ab8a" },
"sherbet.nvim": { "branch": "master", "commit": "5c4166eff70ec551ae0023edfb89141b25cc18c6" },
"snacks.nvim": { "branch": "main", "commit": "59c5545e91878c1f6218b032a881832bc98a46f3" },
"telescope-tabs": { "branch": "vim_ui_select", "commit": "f01bc722582fdcaa58ea37492b382ff109893d95" },
"tokyonight.nvim": { "branch": "main", "commit": "2642dbb83333e0575d1c3436e1d837926871c5fb" },
"v-vim": { "branch": "master", "commit": "1dc1388bafb89072f8349dbd96f9462ae22237cb" },
"vim-colors-xcode": { "branch": "master", "commit": "6d449229bf29176448bd06377689d7a8db0d1bee" },
"vim-etlua": { "branch": "master", "commit": "bb2974d0134ce6da60c3be0d82d809976b859c1c" },
"vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" },
"vim-teal": { "branch": "master", "commit": "a416397cf7aad7b03ef53fd3d9847fd764bcbfee" },
"vscode.nvim": { "branch": "main", "commit": "cb9df0873c10a21d05362455ae3bb355eadcef6b" }
}

View File

@@ -1,29 +0,0 @@
local M = {}
local function db_completion()
require("cmp").setup.buffer { sources = { { name = "vim-dadbod-completion" } } }
end
function M.setup()
vim.g.db_ui_save_location = vim.fn.stdpath "config" .. require("plenary.path").path.sep .. "db_ui"
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"sql",
},
command = [[setlocal omnifunc=vim_dadbod_completion#omni]],
})
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"sql",
"mysql",
"plsql",
},
callback = function()
vim.schedule(db_completion)
end,
})
end
return M

7
config/.config/nvim/lua/config/init.lua Executable file → Normal file
View File

@@ -1,3 +1,4 @@
require("config.remap")
require("config.packer")
require("config.set")
require 'config.lazy'
require 'config.set'
require 'config.keymap'
require 'config.lsp'

View File

@@ -0,0 +1,75 @@
local set = vim.keymap.set
local setnx = function(key, command, desc)
set({'n', 'x'}, key, command, { desc = desc })
end
setnx('<leader>ff', Snacks.picker.files, 'Find files')
setnx('<leader>f/', Snacks.picker.grep_word, 'Search current word')
setnx('<leader>fg', Snacks.picker.grep, 'Search in files')
setnx('<leader>fr', Snacks.picker.recent, 'Find recent files')
setnx('<leader>b', Snacks.picker.buffers, 'List buffers')
setnx('<leader>h', Snacks.picker.help, 'Search help')
setnx('<leader>X', require'hex'.toggle, 'Toggle hex editor')
setnx('<leader>m', Snacks.picker.marks, 'Search marks')
setnx('<leader>q', Snacks.picker.qflist, 'Search quickfix list')
setnx('<leader>l', Snacks.picker.loclist, 'Search location list')
setnx('<leader>j', Snacks.picker.jumps, 'Search jumplist')
setnx('<leader>r', Snacks.picker.registers, 'Search registers')
setnx('<leader>s', Snacks.picker.spelling, 'List spelling suggestions')
setnx('<leader>M', Snacks.picker.man, 'Search man pages')
setnx('<leader>t', require'telescope-tabs'.list_tabs, 'List tabs')
setnx('<leader>c', Snacks.picker.colorschemes, 'Select colorscheme')
setnx('<leader>N', Snacks.picker.notifications, 'List notifications')
local neogit = require('neogit')
setnx('<leader>op', '<CMD>Oil<CR>', 'Open file manager')
setnx('<leader>oP', '<CMD>Oil --float<CR>', 'Open file manager in floating window')
setnx('<leader>ot', '<CMD>term<CR>', 'Open terminal')
setnx('<leader>oT', '<CMD>tabnew<CR>', 'Open new tab')
setnx('<leader>of', '<CMD>enew<CR>', 'Open new file')
-- setnx('<leader>ow', '<CMD>Telescope workspaces', 'Open workspace')
setnx('<leader>ol', '<CMD>Lazy<CR>', 'Open Lazy')
setnx('<leader>om', '<CMD>Mason<CR>', 'Open Mason')
setnx('<leader>oc', '<CMD>cd ' .. vim.fn.stdpath('config') .. '<CR><CMD>Oil .<CR>', 'Open neovim configuration')
setnx('<leader>og', neogit.open, 'Open (neo)git')
-- Exit terminal mode with ESC
set('t', '<Esc>', '<C-\\><C-n>')
-- Swap ' and `
setnx('\'', '`', 'Goto mark with column')
setnx('`', '\'', 'Goto mark without column')
setnx('<leader>x', '<CMD>bd!<CR>', 'Close Current Buffer')
setnx('grr', Snacks.picker.lsp_references, 'Search lsp references')
-- setnx('grI', tele.lsp_incoming_calls, 'Find incoming function calls')
-- setnx('grO', tele.lsp_outgoing_calls, 'Find outgoing function calls')
setnx('grd', Snacks.picker.diagnostics, 'Show LSP diagnostics')
setnx('grD', (function()
local diag = true
return function()
diag = not diag
vim.diagnostic.config({ update_in_insert = true, float = true, virtual_lines = diag})
end
end)(), 'Toggle LSP diagnostics')
setnx('grs', Snacks.picker.lsp_workspace_symbols, 'Show workspace symbols')
setnx('grS', Snacks.picker.lsp_symbols, 'Show document symbols')
setnx('gri', Snacks.picker.lsp_implementations, 'Goto implementation')
setnx('gd', Snacks.picker.lsp_definitions, 'Goto definition')
setnx('gD', Snacks.picker.lsp_type_definitions, 'Goto type definition')
setnx('<leader>gc', Snacks.picker.git_log, 'List git commits')
setnx('<leader>gb', Snacks.picker.git_branches, 'List git branches')
setnx('<leader>gs', Snacks.picker.git_status, 'Show git status')
setnx('<leader>gS', Snacks.picker.git_stash, 'Show git stash')
setnx('<leader>gB', Snacks.picker.git_log_file, 'List buffers git commits')
setnx('<leader>gr', Snacks.picker.git_log_line, 'List buffers git commits over visual range')
setnx('<leader>n', require('nabla').popup, 'Show popup for nabla preview')
setnx('<leader>p', '"+p', 'Paste from system clipboard')
setnx('<leader>y', '"+y', 'Yank to system clipboard')
setnx('gs', '<Plug>(leap)', 'Activate leap')
setnx('g<C-s>', '<Plug>(leap-anywhere)', 'Activate leap anywhere')
setnx('gS', require('leap.remote').action, 'Activate remote leap')

View File

@@ -0,0 +1,35 @@
-- Bootstrap lazy.nvim
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end
vim.opt.rtp:prepend(lazypath)
-- Make sure to setup `mapleader` and `maplocalleader` before
-- loading lazy.nvim so that mappings are correct.
-- This is also a good place to setup other settings (vim.opt)
vim.g.mapleader = " "
vim.g.maplocalleader = "\\"
-- Setup lazy.nvim
require("lazy").setup({
spec = {
-- import your plugins
{ import = "plugins" },
},
-- Configure any other settings here. See the documentation for more details.
-- colorscheme that will be used when installing plugins.
-- install = { colorscheme = { "nord" } },
-- automatically check for plugin updates
checker = { enabled = false, notify = false },
})

View File

@@ -0,0 +1,48 @@
vim.api.nvim_create_autocmd('LspAttach', {
group = vim.api.nvim_create_augroup('UserLspConfig', {}),
callback = function(args)
local client = vim.lsp.get_client_by_id(args.data.client_id)
if client:supports_method('textDocument/inlayHint') or client.server_capabilities.inlayHintProvider then
vim.lsp.inlay_hint.enable(true, { bufnr = args.buf })
end
end
})
-- vim.lsp.config('rust-analyzer', {
-- settings = {
-- ["rust-analyzer"] = {
-- inlayHints = {
-- bindingModeHints = {
-- enable = false,
-- },
-- chainingHints = {
-- enable = true,
-- },
-- closingBraceHints = {
-- enable = true,
-- minLines = 25,
-- },
-- closureReturnTypeHints = {
-- enable = "never",
-- },
-- lifetimeElisionHints = {
-- enable = "never",
-- useParameterNames = false,
-- },
-- maxLength = 25,
-- parameterHints = {
-- enable = true,
-- },
-- reborrowHints = {
-- enable = "never",
-- },
-- renderColons = true,
-- typeHints = {
-- enable = true,
-- hideClosureInitialization = false,
-- hideNamedConstructor = false,
-- },
-- },
-- }
-- }
-- })

View File

@@ -1,328 +0,0 @@
-- This file can be loaded by calling `lua require('plugins')` from your init.vim
-- Only required if you have packer configured as `opt`
vim.cmd [[packadd packer.nvim]]
return require('packer').startup(function(use)
-- Packer can manage itself
use 'wbthomason/packer.nvim'
use {
'nvim-telescope/telescope.nvim',
branch = '0.1.x',
requires = { { 'nvim-lua/plenary.nvim' } }
}
use {
'LukasPietzschmann/telescope-tabs',
requires = { 'nvim-telescope/telescope.nvim' },
config = function()
require'telescope-tabs'.setup{
-- Your custom config :^)
}
end
}
use({
'rose-pine/neovim',
as = 'rose-pine',
-- config = function()
-- vim.cmd('colorscheme rose-pine')
-- end
})
use 'tanvirtin/monokai.nvim'
use 'arzg/vim-colors-xcode'
use 'shaunsingh/nord.nvim'
use 'kvrohit/mellow.nvim'
use 'Mofiqul/vscode.nvim'
use 'Th3Whit3Wolf/one-nvim'
use 'mhartington/oceanic-next'
use 'folke/tokyonight.nvim'
use 'sainnhe/gruvbox-material'
use { "ellisonleao/gruvbox.nvim" }
use 'sainnhe/everforest'
use 'lourenci/github-colors'
use 'navarasu/onedark.nvim'
use 'shaunsingh/moonlight.nvim'
use 'Mofiqul/dracula.nvim'
use 'kdheepak/monochrome.nvim'
use "savq/melange-nvim"
use { "catppuccin/nvim", as = "catppuccin" }
-- use 'RRethy/nvim-base16'
use ({ 'projekt0n/github-nvim-theme' })
use { 'Everblush/nvim', as = 'everblush' }
use "lewpoly/sherbet.nvim"
use {
'nvim-treesitter/nvim-treesitter',
run = ':TSUpdate',
}
use {
'numToStr/Comment.nvim',
config = function()
require('Comment').setup()
end
}
use 'nvim-treesitter/playground'
-- use 'mbbill/undotree'
use {
'VonHeikemen/lsp-zero.nvim',
requires = {
-- LSP Support
{ 'neovim/nvim-lspconfig' },
{ 'williamboman/mason.nvim' },
{ 'williamboman/mason-lspconfig.nvim' },
-- Autocompletion
{ 'hrsh7th/nvim-cmp' },
{ 'hrsh7th/cmp-buffer' },
{ 'hrsh7th/cmp-path' },
{ 'hrsh7th/cmp-nvim-lsp-signature-help' },
{ 'saadparwaiz1/cmp_luasnip' },
{ 'hrsh7th/cmp-nvim-lsp' },
{ 'hrsh7th/cmp-nvim-lua' },
-- Snippets
{ 'L3MON4D3/LuaSnip' },
{ 'rafamadriz/friendly-snippets' },
}
}
use {
'L3MON4D3/LuaSnip',
--after = 'nvim-cmp',
requires = { "rafamadriz/friendly-snippets" },
config = function()
--require('config.snippets')
require("luasnip.loaders.from_vscode").lazy_load()
end,
run = "make install_jsregexp"
}
use 'rafamadriz/friendly-snippets'
use {
"folke/twilight.nvim",
config = function()
require("twilight").setup {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
}
end
}
use 'winston0410/cmd-parser.nvim'
use {
'winston0410/range-highlight.nvim',
config = function() require("range-highlight").setup {} end
}
use 'RRethy/vim-illuminate'
use 'mfussenegger/nvim-jdtls'
use {
"samjwill/nvim-unception",
setup = function()
-- Optional settings go here!
end
}
use {
"0oAstro/dim.lua",
requires = { "nvim-treesitter/nvim-treesitter", "neovim/nvim-lspconfig" },
config = function()
require('dim').setup({})
end
}
use 'mfussenegger/nvim-dap'
use { "rcarriga/nvim-dap-ui", requires = { "mfussenegger/nvim-dap" } }
use { 'stevearc/dressing.nvim' }
use {
'krady21/compiler-explorer.nvim',
config = function()
require("compiler-explorer").setup({
autocmd = {
enable = true,
hl = "Cursorline"
}
})
end
}
-- use 'ggandor/lightspeed.nvim'
use {
'ggandor/leap.nvim',
config = function()
require('leap').add_default_mappings()
end
}
use 'ollykel/v-vim'
use {
'windwp/nvim-ts-autotag',
config = function()
require('nvim-ts-autotag').setup()
end
}
use 'jbyuki/nabla.nvim'
use {
'ray-x/web-tools.nvim',
config = function()
require('web-tools').setup()
end
}
use {
'natecraddock/workspaces.nvim',
config = function()
require('workspaces').setup()
end
}
use {"smartpde/telescope-recent-files"}
use 'uga-rosa/ccc.nvim'
use 'tveskag/nvim-blame-line'
use {
'lewis6991/gitsigns.nvim',
config = function()
require('gitsigns').setup()
end
}
-- use 'Olical/conjure'
-- use 'PaterJason/cmp-conjure'
use {
'lukas-reineke/indent-blankline.nvim',
config = function()
require 'ibl'.setup{ scope = { enabled = false } }
end,
}
use 'jaawerth/fennel.vim'
use 'stefanos82/nelua.vim'
use 'leafo/moonscript-vim'
use 'teal-language/vim-teal'
use 'https://github.com/VaiN474/vim-etlua'
use 'folke/neodev.nvim'
use {
"kylechui/nvim-surround",
tag = "*", -- Use for stability; omit to use `main` branch for the latest features
config = function()
require("nvim-surround").setup({
-- Configuration here, or leave empty to use defaults
})
end
}
use {
"utilyre/barbecue.nvim",
tag = "*",
requires = {
"SmiteshP/nvim-navic",
"nvim-tree/nvim-web-devicons", -- optional dependency
},
after = "nvim-web-devicons", -- keep this if you're using NvChad
config = function()
require("barbecue").setup()
end,
}
use {
'nvim-lualine/lualine.nvim',
requires = { 'nvim-tree/nvim-web-devicons', opt = true },
config = function()
local function lspactive()
local names = {}
for i, server in pairs(vim.lsp.get_active_clients({ bufnr = 0 })) do
table.insert(names, server.name)
end
return " [" .. table.concat(names, " ") .. "]"
end
require('lualine').setup {
options = {
globalstatus = true,
icons_enabled = false,
section_separators = { left = '', right = '' },
component_separators = { left = '', right = '' }
},
sections = {
lualine_a = { { 'mode', separator = { left = '', right = '' } }, },
lualine_b = {},
lualine_c = {'filename'},
lualine_x = {lspactive, { 'diagnostics', icons_enabled = true }, 'branch', 'diff'},
lualine_y = {'encoding', 'fileformat', 'filetype'},
lualine_z = {'location', { 'progress', separator = { left = '', right = '' } }, },
},
}
end,
}
use {
'goolord/alpha-nvim',
requires = { 'nvim-tree/nvim-web-devicons' },
config = function ()
require'alpha'.setup(require'alpha.themes.startify'.config)
end
}
use 'aklt/plantuml-syntax'
use {
"tpope/vim-dadbod",
opt = true,
requires = {
"kristijanhusak/vim-dadbod-ui",
"kristijanhusak/vim-dadbod-completion",
},
config = function()
require("config.dadbod").setup()
end,
cmd = { "DBUIToggle", "DBUI", "DBUIAddConnection", "DBUIFindBuffer", "DBUIRenameBuffer", "DBUILastQueryInfo" },
}
use 'eandrju/cellular-automaton.nvim'
end)

View File

@@ -1,56 +0,0 @@
require('Comment').setup()
vim.g.mapleader = " "
vim.g.maplocalleader = ","
vim.keymap.set("n", "<leader>op", vim.cmd.Ex)
vim.keymap.set("n", "<leader>lp", ":lua require(\"nabla\").popup()<CR>")
vim.keymap.set("n", "<leader>ll", ":lua require(\"nabla\").toggle_virt()<CR>")
-- vim.keymap.set("n", "<C-x>", vim.cmd.nohlsearch)
vim.keymap.set("n", "<leader>x", vim.cmd.bdelete)
vim.keymap.set("n", "<leader>bd", ":bdelete!<CR>")
vim.keymap.set("n", "<leader>w", function()
vim.cmd.write();
vim.cmd.bdelete();
end)
vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv")
vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv")
vim.keymap.set("n", "J", "mzJ'z")
vim.keymap.set("n", "<C-d>", "<C-d>zz")
vim.keymap.set("n", "<C-u>", "<C-u>zz")
vim.keymap.set("n", "n", "nzzzv")
vim.keymap.set("n", "N", "Nzzzv")
vim.keymap.set("n", "<leader>y", "\"+y")
vim.keymap.set("v", "<leader>y", "\"+y")
vim.keymap.set("n", "<leader>Y", "\"+Y")
vim.keymap.set("n", "<leader>p", "\"+p")
vim.keymap.set("v", "<leader>p", "\"+p")
vim.keymap.set("n", "<leader>P", "\"+P")
vim.keymap.set("n", "<leader>f", function()
vim.lsp.buf.format()
end)
vim.keymap.set("n", "<leader>tw", function()
vim.cmd.Twilight()
end)
vim.keymap.set("t", "<Esc><Esc>", "<C-\\><C-n>")
vim.keymap.set("n", "<leader>ec", ":e ~/.config/nvim<CR>")
vim.keymap.set("n", "<leader>bn", ":bnext<CR>")
vim.keymap.set("n", "<leader>bp", ":bprevious<CR>")
vim.keymap.set("n", "<leader>tn", ":tabnext<CR>")
vim.keymap.set("n", "<leader>tp", ":tabprevious<CR>")
vim.keymap.set("n", "<leader>to", ":tabnew<CR>")
vim.keymap.set("n", "<leader>td", ":tabclose<CR>")
vim.keymap.set("n", "<leader>tt", function()
require('telescope-tabs').list_tabs()
end)

54
config/.config/nvim/lua/config/set.lua Executable file → Normal file
View File

@@ -1,53 +1,87 @@
vim.opt.nu = true
vim.opt.relativenumber = true
-- vim.opt.wrap = true
-- vim.opt.linebreak = true
vim.opt.tabstop = 4
vim.opt.softtabstop = 4
vim.opt.shiftwidth = 4
vim.opt.expandtab = true
vim.opt.showmode = false
vim.opt.winborder = 'none'
vim.opt.smartindent = true
vim.opt.wrap = false
-- vim.opt.spell = true
vim.opt.spelllang = 'en_us'
vim.opt.swapfile = false
vim.opt.backup = false
vim.opt.undodir = os.getenv("HOME") .. "/.vim/undodir"
vim.opt.undodir = os.getenv('HOME') .. '/.nvim/undodir'
vim.opt.undofile = true
vim.opt.hlsearch = true
vim.opt.incsearch = true
vim.opt.ignorecase = true
vim.opt.smartcase = true
vim.opt.termguicolors = true
vim.opt.scrolloff = 8
vim.opt.signcolumn = "yes"
vim.opt.isfname:append("@-@")
vim.opt.signcolumn = 'yes'
vim.opt.isfname:append('@-@')
vim.opt.updatetime = 50
vim.opt.colorcolumn = "80"
vim.opt.colorcolumn = '80'
vim.opt.splitright = true
vim.opt.splitbelow = true
vim.g.mapleader = " "
vim.g.mapleader = ' '
vim.g.neovide_scale_factor = 1.0
vim.g.neovide_theme = 'auto'
vim.g.neovide_opacity = 1.0
function ChangeScaleFactor(delta)
vim.g.neovide_scale_factor = vim.g.neovide_scale_factor * delta
end
vim.keymap.set("n", "<C-=>", function()
vim.keymap.set('n', '<C-=>', function()
ChangeScaleFactor(1.25)
end)
vim.keymap.set("n", "<C-->", function()
vim.keymap.set('n', '<C-->', function()
ChangeScaleFactor(1 / 1.25)
end)
vim.opt.guifont = { "Cascadia Code", ":h12" }
vim.opt.guifont = { 'Iosevka Term SS12', ':h14' }
vim.opt.termguicolors = true
vim.g.netrw_keepdir = 0
vim.g.netrw_preview = 1
vim.g.netrw_alto = 0
vim.ui.select = Snacks.picker.select
-- vim.cmd('colorscheme carbonfox')
vim.lsp.config('lua_ls', {
settings = {
Lua = {
workspace = {
library = vim.api.nvim_get_runtime_file("", true),
maxPreload = 100000,
preloadFileSize = 100000,
}
}
}
})
vim.lsp.config('tinymist', {
settings = {
exportPdf = "onType",
}
})
vim.diagnostic.config({ update_in_insert = true, float = true, virtual_lines = true})

View File

@@ -0,0 +1,163 @@
return {
{
'rose-pine/neovim',
name = 'rose-pine',
priority = 1000,
lazy = true,
},
{
'tanvirtin/monokai.nvim',
priority = 1000,
lazy = true,
},
{
'arzg/vim-colors-xcode',
priority = 1000,
lazy = true,
},
{
'shaunsingh/nord.nvim',
priority = 1000,
lazy = true,
},
{
'kvrohit/mellow.nvim',
priority = 1000,
lazy = true,
},
{
'Mofiqul/vscode.nvim',
priority = 1000,
lazy = true,
},
{
'Th3Whit3Wolf/one-nvim',
priority = 1000,
lazy = true,
},
{
'mhartington/oceanic-next',
priority = 1000,
lazy = true,
},
{
'folke/tokyonight.nvim',
priority = 1000,
lazy = true,
},
{
'sainnhe/gruvbox-material',
priority = 1000,
lazy = true,
},
{
"ellisonleao/gruvbox.nvim",
priority = 1000,
lazy = true,
},
{
'sainnhe/everforest',
priority = 1000,
lazy = true,
},
{
'lourenci/github-colors',
priority = 1000,
lazy = true,
},
{
'navarasu/onedark.nvim',
priority = 1000,
lazy = true,
},
{
'shaunsingh/moonlight.nvim',
priority = 1000,
lazy = true,
},
{
'Mofiqul/dracula.nvim',
priority = 1000,
lazy = true,
},
{
'kdheepak/monochrome.nvim',
priority = 1000,
lazy = true,
},
{
"savq/melange-nvim",
priority = 1000,
lazy = true,
},
{
"catppuccin/nvim",
name = "catppuccin",
priority = 1000,
lazy = true,
},
-- use 'RRethy/nvim-base16'
{
'projekt0n/github-nvim-theme',
priority = 1000,
lazy = true,
},
{
'Everblush/nvim',
name = 'everblush',
priority = 1000,
lazy = true,
},
{
"lewpoly/sherbet.nvim",
priority = 1000,
lazy = true,
},
{
"EdenEast/nightfox.nvim",
priority = 1000,
lazy = true,
},
{
"f-person/auto-dark-mode.nvim",
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
set_dark_mode = function()
vim.api.nvim_set_option_value("background", "dark", {})
vim.cmd('colorscheme carbonfox')
end,
set_light_mode = function()
vim.api.nvim_set_option_value("background", "light", {})
vim.cmd('colorscheme dawnfox')
end,
},
},
-- use 'xiyaowong/transparent.nvim'
}

View File

@@ -0,0 +1,64 @@
return {
{
'ollykel/v-vim',
ft = 'v',
},
{
'jaawerth/fennel.vim',
ft = 'fnl',
},
{
'stefanos82/nelua.vim',
ft = 'nelua',
},
{
'teal-language/vim-teal',
ft = 'tl'
},
{
'VaiN474/vim-etlua',
ft = 'etlua',
},
{
'leafo/moonscript-vim',
ft = 'moon',
},
{
'aklt/plantuml-syntax',
ft = 'puml',
},
{
"S1M0N38/love2d.nvim",
-- event = "VeryLazy",
ft = 'lua',
version = "2.*",
opts = { },
},
{
"nvim-neorg/neorg",
-- lazy = false, -- Disable lazy loading as some `lazy.nvim` distributions set `lazy = true` by default
ft = 'norg',
version = "*", -- Pin Neorg to the latest stable release
config = true,
},
-- {
-- "Olical/conjure"
-- },
{
"vlime/vlime",
config = function(plugin)
vim.opt.rtp:append(plugin.dir .. '/vim/')
end
},
}

View File

@@ -0,0 +1,139 @@
return {
{
'mason-org/mason.nvim',
event = 'VeryLazy',
opts = {},
},
{
'neovim/nvim-lspconfig',
event = 'VeryLazy',
},
{
"mason-org/mason-lspconfig.nvim",
event = 'VeryLazy',
opts = {},
dependencies = {
{ "mason-org/mason.nvim", opts = {} },
"neovim/nvim-lspconfig",
},
},
-- {
-- "MysticalDevil/inlay-hints.nvim",
-- event = "LspAttach",
-- dependencies = { "neovim/nvim-lspconfig" },
-- config = function()
-- require("inlay-hints").setup()
-- end
-- },
--
{
'saghen/blink.cmp',
-- optional: provides snippets for the snippet source
-- dependencies = { 'L3MON4D3/LuaSnip' },
-- use a release tag to download pre-built binaries
version = '1.*',
-- AND/OR build from source, requires nightly: https://rust-lang.github.io/rustup/concepts/channels.html#working-with-nightly-rust
-- build = 'cargo build --release',
-- If you use nix, you can build from source using latest nightly rust with:
-- build = 'nix run .#build-plugin',
---@module 'blink.cmp'
---@type blink.cmp.Config
opts = {
-- 'default' (recommended) for mappings similar to built-in completions (C-y to accept)
-- 'super-tab' for mappings similar to vscode (tab to accept)
-- 'enter' for enter to accept
-- 'none' for no mappings
--
-- All presets have the following mappings:
-- C-space: Open menu or open docs if already open
-- C-n/C-p or Up/Down: Select next/previous item
-- C-e: Hide menu
-- C-k: Toggle signature help (if signature.enabled = true)
--
-- See :h blink-cmp-config-keymap for defining your own keymap
keymap = { preset = 'default' },
-- snippets = { preset = 'mini_snippets' },
appearance = {
-- 'mono' (default) for 'Nerd Font Mono' or 'normal' for 'Nerd Font'
-- Adjusts spacing to ensure icons are aligned
nerd_font_variant = 'mono'
},
cmdline = {
completion = { menu = { auto_show = true } },
},
-- (Default) Only show the documentation popup when manually triggered
completion = {
trigger = {
show_on_insert = true
},
documentation = { auto_show = false },
list = {
selection = {
preselect = true,
auto_insert = false,
},
},
ghost_text = {
enabled = true,
show_with_menu = true,
},
menu = {
auto_show = true,
draw = {
components = {
-- customize the drawing of kind icons
kind_icon = {
text = function(ctx)
-- default kind icon
local icon = ctx.kind_icon
-- if LSP source, check for color derived from documentation
if ctx.item.source_name == "LSP" then
local color_item = require("nvim-highlight-colors").format(ctx.item.documentation, { kind = ctx.kind })
if color_item and color_item.abbr ~= "" then
icon = color_item.abbr
end
end
return icon .. ctx.icon_gap
end,
highlight = function(ctx)
-- default highlight group
local highlight = "BlinkCmpKind" .. ctx.kind
-- if LSP source, check for color derived from documentation
if ctx.item.source_name == "LSP" then
local color_item = require("nvim-highlight-colors").format(ctx.item.documentation, { kind = ctx.kind })
if color_item and color_item.abbr_hl_group then
highlight = color_item.abbr_hl_group
end
end
return highlight
end,
},
},
},
},
},
-- Default list of enabled providers defined so that you can extend it
-- elsewhere in your config, without redefining it, due to `opts_extend`
sources = {
default = { 'lsp', 'path', 'snippets', 'buffer' },
},
-- (Default) Rust fuzzy matcher for typo resistance and significantly better performance
-- You may use a lua implementation instead by using `implementation = "lua"` or fallback to the lua implementation,
-- when the Rust fuzzy matcher is not available, by using `implementation = "prefer_rust"`
--
-- See the fuzzy documentation for more information
fuzzy = { implementation = "prefer_rust_with_warning" }
},
opts_extend = { "sources.default" }
}
}

View File

@@ -0,0 +1,73 @@
return {
{
'nvim-treesitter/nvim-treesitter',
-- branch = 'main',
version = false,
lazy = false,
build = ':TSUpdate',
config = function()
require'nvim-treesitter.configs'.setup {
textobjects = {
select = {
enable = true,
lookahead = true,
keymaps = {
["af"] = "@function.outer",
["if"] = "@function.inner",
}
},
move = {
enable = true,
set_jumps = false,
goto_next_start = {
[']a'] = '@parameter.inner',
},
goto_previous_start = {
['[a'] = '@parameter.inner',
}
},
},
auto_install = true,
highlight = {
enable = true,
},
}
end
},
{
'nvim-treesitter/nvim-treesitter-textobjects',
},
-- {
-- 'folke/twilight.nvim',
-- dependencies = {
-- 'nvim-treesitter/nvim-treesitter',
-- },
-- cmd = {
-- 'Twilight',
-- 'TwilightEnable',
-- 'TwilightDisable',
-- },
-- },
-- {
-- 'RRethy/vim-illuminate',
-- event = 'VeryLazy',
-- lazy = false,
-- },
{
'0oAstro/dim.lua',
dependencies = {
'nvim-treesitter/nvim-treesitter',
'neovim/nvim-lspconfig'
},
event = 'LspAttach',
},
{
'windwp/nvim-ts-autotag',
event = 'VeryLazy',
},
}

View File

@@ -0,0 +1,76 @@
return {
{
'winston0410/range-highlight.nvim',
event = 'VeryLazy',
},
-- {
-- 'lukas-reineke/indent-blankline.nvim',
-- event = 'VeryLazy',
-- config = function()
-- require'ibl'.setup{ scope = { enabled = false } }
-- end
-- },
{
'nvim-tree/nvim-web-devicons',
-- event = 'VeryLazy',
lazy = true,
},
-- {
-- 'goolord/alpha-nvim',
-- dependencies = {
-- 'nvim-tree/nvim-web-devicons',
-- },
-- config = function()
-- require('alpha').setup(require'alpha.themes.startify'.config)
-- end
-- },
{
'lewis6991/gitsigns.nvim',
event = 'VeryLazy',
opts = {
current_line_blame = true,
}
},
{
'Bekaboo/dropbar.nvim',
},
{
'nvim-lualine/lualine.nvim',
dependencies = {
'nvim-tree/nvim-web-devicons',
},
config = function()
local function lspactive()
local names = {}
for i, server in pairs(vim.lsp.get_clients({ bufnr = 0 })) do
table.insert(names, server.name)
end
return " [" .. table.concat(names, " ") .. "]"
-- return "[" .. table.concat(names, " ") .. "]"
end
require('lualine').setup {
options = {
globalstatus = true,
icons_enabled = true,
section_separators = { left = '', right = '' },
component_separators = { left = '', right = '' }
},
sections = {
lualine_a = { { 'mode', separator = { left = '', right = '' } }, },
lualine_b = {},
lualine_c = {'filename'},
lualine_x = {lspactive, { 'diagnostics', icons_enabled = true }, 'branch', 'diff'},
lualine_y = {'encoding', 'fileformat', 'filetype'},
lualine_z = {'location', { 'progress', separator = { left = '', right = '' } }, },
},
}
end
},
}

View File

@@ -0,0 +1,348 @@
return {
{
'nvim-lua/plenary.nvim',
-- event = 'VeryLazy',
lazy = true,
},
{
'RaafatTurki/hex.nvim',
config = true,
cmd = {
'HexDump',
'HexAssemble',
'HexToggle',
},
},
{
"sindrets/diffview.nvim",
event = 'VeryLazy',
},
{
'windwp/nvim-autopairs',
event = "InsertEnter",
config = true
-- use opts = {} for passing setup options
-- this is equivalent to setup({}) function
},
{
"NeogitOrg/neogit",
lazy = true,
dependencies = {
"nvim-lua/plenary.nvim", -- required
"sindrets/diffview.nvim", -- optional - Diff integration
-- Only one of these is needed.
-- "nvim-telescope/telescope.nvim", -- optional
-- "ibhagwan/fzf-lua", -- optional
-- "echasnovski/mini.pick", -- optional
"folke/snacks.nvim", -- optional
},
},
{
'brenoprata10/nvim-highlight-colors',
event = 'VeryLazy',
opts = {
render = 'virtual',
},
},
{
'ggandor/leap.nvim',
dependencies = {
'tpope/vim-repeat',
},
},
{
'LukasPietzschmann/telescope-tabs',
-- event = 'VeryLazy',
lazy = true,
branch = 'vim_ui_select',
config = function()
require('telescope-tabs').setup()
end
},
{
"folke/snacks.nvim",
priority = 1000,
lazy = false,
---@type snacks.Config
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
bigfile = { enabled = true },
-- dashboard = { enabled = true },
dim = { enabled = true },
-- explorer = { enabled = true },
-- git = { enabled = false },
image = {
enabled = true
},
indent = { enabled = true },
input = { enabled = true },
lazygit = { enabled = false },
picker = {
enabled = true,
layout = {
preset = 'ivy_split',
layout = {
height = 0.3,
},
},
},
notifier = { enabled = true },
-- quickfile = { enabled = true },
-- scope = { enabled = true },
-- scroll = { enabled = true },
terminal = { enabled = false },
-- statuscolumn = { enabled = true },
-- words = { enabled = true },
},
},
{
'echasnovski/mini.nvim',
config = function()
require('mini.starter').setup()
-- require('mini.cursorword').setup()
local miniclue = require'mini.clue'
miniclue.setup{
window = {
delay = 0,
config = {
width = 'auto',
},
},
triggers = {
-- Leader triggers
{ mode = 'n', keys = '<Leader>' },
{ mode = 'x', keys = '<Leader>' },
-- Built-in completion
{ mode = 'i', keys = '<C-x>' },
-- `g` key
{ mode = 'n', keys = 'g' },
{ mode = 'x', keys = 'g' },
-- Next
{ mode = 'n', keys = '['},
{ mode = 'n', keys = ']'},
{ mode = 'x', keys = '['},
{ mode = 'x', keys = ']'},
-- Marks
{ mode = 'n', keys = "'" },
{ mode = 'n', keys = '`' },
{ mode = 'x', keys = "'" },
{ mode = 'x', keys = '`' },
-- Registers
{ mode = 'n', keys = '"' },
{ mode = 'x', keys = '"' },
{ mode = 'i', keys = '<C-r>' },
{ mode = 'c', keys = '<C-r>' },
-- Window commands
{ mode = 'n', keys = '<C-w>' },
-- `z` key
{ mode = 'n', keys = 'z' },
{ mode = 'x', keys = 'z' },
-- Localleader
{ mode = 'n', keys = '<Localleader>'},
{ mode = 'x', keys = '<Localleader>'},
},
clues = {
-- Enhance this by adding descriptions for <Leader> mapping groups
miniclue.gen_clues.builtin_completion(),
miniclue.gen_clues.g(),
miniclue.gen_clues.marks(),
miniclue.gen_clues.registers(),
miniclue.gen_clues.windows(),
miniclue.gen_clues.z(),
{ mode = 'n', keys = '<leader>f', desc = '+Find' },
{ mode = 'x', keys = '<leader>f', desc = '+Find' },
{ mode = 'n', keys = '<leader>o', desc = '+Open' },
{ mode = 'x', keys = '<leader>o', desc = '+Open' },
{ mode = 'n', keys = '<leader>g', desc = '+Git' },
{ mode = 'x', keys = '<leader>g', desc = '+Git' },
},
}
end
},
{
'stevearc/oil.nvim',
---@module 'oil'
---@type oil.SetupOpts
opts = {
triggers = {
{ 'g', mode = { 'n', 'x' } },
},
skip_confirm_for_simple_edits = true,
prompt_save_on_select_new_entry = false,
},
-- Optional dependencies
dependencies = { "nvim-tree/nvim-web-devicons" }, -- use if you prefer nvim-web-devicons
-- Lazy loading is not recommended because it is very tricky to make it work correctly in all situations.
lazy = false,
},
{
'eandrju/cellular-automaton.nvim',
-- event = 'VeryLazy',
cmd = 'CellularAutomaton',
},
{
"kylechui/nvim-surround",
version = "^3.0.0", -- Use for stability; omit to use `main` branch for the latest features
event = "VeryLazy",
config = function()
require("nvim-surround").setup({
-- Configuration here, or leave empty to use defaults
})
end
},
{
'jbyuki/nabla.nvim',
lazy = true,
},
{
'krady21/compiler-explorer.nvim',
-- event = 'VeryLazy',
cmd = {
'CECompile',
'CECompileLive',
'CEFormat',
'CEAddLibrary',
'CELoadExample',
'CEOpenWebsite',
'CEDeleteCache',
'CEShowTooltip',
'CEGotoLabel',
},
opts = {
autocmd = {
enable = true,
hl = 'Cursorline',
},
}
},
{
'samjwill/nvim-unception',
event = 'VeryLazy',
},
{
"jake-stewart/multicursor.nvim",
branch = "1.0",
config = function()
local mc = require("multicursor-nvim")
mc.setup()
local set = vim.keymap.set
-- Add or skip cursor above/below the main cursor.
set({"n", "x"}, "<localleader>k", function() mc.lineAddCursor(-1) end, { desc = "Add cursor to previous line" })
set({"n", "x"}, "<localleader>j", function() mc.lineAddCursor(1) end, { desc = "Add cursor to next line" })
set({"n", "x"}, "<up>", function() mc.lineAddCursor(-1) end, { desc = "Add cursor to previous line" })
set({"n", "x"}, "<down>", function() mc.lineAddCursor(1) end, { desc = "Add cursor to next line" })
set({"n", "x"}, "<localleader>K", function() mc.lineSkipCursor(-1) end, { desc = "Skip previous line to add cursor" })
set({"n", "x"}, "<localleader>J", function() mc.lineSkipCursor(1) end, { desc = "Skip next line to add cursor" })
-- Add or skip adding a new cursor by matching word/selection
set({"n", "x"}, "<localleader>n", function() mc.matchAddCursor(1) end, { desc = "Add cursor to next currently selected word" })
set({"n", "x"}, "<localleader>s", function() mc.matchSkipCursor(1) end, { desc = "Skip next instance of current word to add cursor" })
set({"n", "x"}, "<localleader>N", function() mc.matchAddCursor(-1) end, { desc = "Add cursor to previous currently selected word" })
set({"n", "x"}, "<localleader>S", function() mc.matchSkipCursor(-1) end, { desc = "Skip previous instance of current word to add cursor" })
set({"n", "x"}, "<localleader>m", mc.operator, { desc = "Add cursors to text object" })
set("n", "<localleader>s", function()
vim.ui.input({prompt = "Match: "}, function(input) mc.operator({pattern = input}) end)
end, { desc = "Add cursors to regex match inside text object " })
set("n", "<localleader>*", function()
mc.operator({pattern = vim.fn.expand("<cword>")})
end, { desc = "Add cursors to current word inside text object" })
set("x", "<localleader>s", mc.matchCursors, { desc = "Add cursors to regex match inside visual selection" })
-- Add cursor at next argument treesitter
set({'n', 'x'}, ']A', function()
if vim.v.count < 1 then
mc.addCursor(']a')
else
for _=1, vim.v.count - 1 do
mc.addCursor(']a')
end
end
end, { desc = 'Create multicursor on next argument'})
set({'n', 'x'}, '[A', function()
if vim.v.count < 1 then
mc.addCursor('[a')
else
for _=1, vim.v.count - 1 do
mc.addCursor('[a')
end
end
end, { desc = 'Create multicursor on previous argument'})
-- Add and remove cursors with control + left click.
set("n", "<c-leftmouse>", mc.handleMouse)
set("n", "<c-leftdrag>", mc.handleMouseDrag)
set("n", "<c-leftrelease>", mc.handleMouseRelease)
-- Disable and enable cursors.
set({"n", "x"}, "<c-q>", mc.toggleCursor, { desc = "Toggle multiple cursors" })
-- Mappings defined in a keymap layer only apply when there are
-- multiple cursors. This lets you have overlapping mappings.
mc.addKeymapLayer(function(layerSet)
-- Select a different cursor as the main one.
layerSet({"n", "x"}, "<localleader>h", mc.prevCursor, { desc = "Make previous cursor primary" })
layerSet({"n", "x"}, "<localleader>l", mc.nextCursor, { desc = "Make next cursor primary" })
layerSet({"n", "x"}, "<left>", mc.prevCursor, { desc = "Make previous cursor primary" })
layerSet({"n", "x"}, "<right>", mc.nextCursor, { desc = "Make next cursor primary" })
-- Delete the main cursor.
layerSet({"n", "x"}, "<localleader>x", mc.deleteCursor)
-- Enable and clear cursors using escape.
layerSet("n", "<esc>", function()
if not mc.cursorsEnabled() then
mc.enableCursors()
else
mc.clearCursors()
end
end)
end)
-- Customize how cursors look.
local hl = vim.api.nvim_set_hl
hl(0, "MultiCursorCursor", { reverse = true })
hl(0, "MultiCursorVisual", { link = "Visual" })
hl(0, "MultiCursorSign", { link = "SignColumn"})
hl(0, "MultiCursorMatchPreview", { link = "Search" })
hl(0, "MultiCursorDisabledCursor", { reverse = true })
hl(0, "MultiCursorDisabledVisual", { link = "Visual" })
hl(0, "MultiCursorDisabledSign", { link = "SignColumn"})
end
},
}

View File

@@ -0,0 +1,433 @@
#################################
# 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 = 4;
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
shadow-opacity = .45
# The left offset for shadows, in pixels. (defaults to -15)
# shadow-offset-x = -15
shadow-offset-x = 3;
# The top offset for shadows, in pixels. (defaults to -15)
# shadow-offset-y = -15
shadow-offset-y = 2;
# 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
focus-exclude = "x = 0 && y = 0 && override_redirect = true";
# 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 = false
# 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",
"_NET_WM_WINDOW_TYPE:a = '_NET_WM_WINDOW_TYPE_NOTIFICATION'",
"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
];
# 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
#################################
# 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 = 4.0;
# Specify a list of conditions of windows that should not be faded.
# fade-exclude = []
# Do not fade on window open/close.
# no-fading-openclose = false
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
# no-fading-destroyed-argb = false
#################################
# Transparency / Opacity #
#################################
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
# inactive-opacity = 1
inactive-opacity = 1;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
# frame-opacity = 1.0
frame-opacity = 1;
# 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 = []
#################################
# Background-Blurring #
#################################
# Parameters for background blurring, see the *BLUR* section for more information.
blur-method = "dual_kawase"
# blur-method = "none"
blur-size = 10;
blur-strength = 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"
];
#################################
# General Settings #
#################################
# 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 = "glx";
# 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 = false;
# 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;
rounded-corners-exclude = [
"window_type = 'dock'",
"class_g = 'dmenu'"
];
# 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'
# 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 = 0.8; }
dropdown_menu = { opacity = 0.8; }
full-shadow = true;
};

View File

@@ -0,0 +1,206 @@
;==========================================================
;
;
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
;
;
; To learn more about how to configure Polybar
; go to https://github.com/polybar/polybar
;
; The README contains a lot of information
;
;==========================================================
[settings]
screenchange-reload = true
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
;pseudo-transparency = true
[global/wm]
margin-top = 0
margin-bottom = 0
; vim:ft=dosini
[bar/mainbar]
scroll-up = #bspwm.prev
scroll-down = #bspwm.next
enable-structs = true
# monitor = "DisplayPort-1"
background = ${xrdb:background}
foreground = ${xrdb:foreground}
override-redirect = true
wm-restack = bspwm
font-0 = Olympe Mono Hacked:style=Regular:pixelsize=20;2
font-1 = CaskaydiaCove Nerd Font:style=Regular:pixelsize=20:2
font-2 = NotoColorEmoji:pixelsize=20
font-3 = Font Awesome 6 Brands:style=Regular:size=20;2
font-4 = Font Awesome 6 Free Solid:style=Regular:size=20;2
height = 36
line-size = 2
modules-left = bspwm
modules-right = music memory filesystem xkeyboard network redshift pulseaudio backlight tray battery datetime
padding = 0
module-margin = 1.5
[module/tray]
type = internal/tray
[module/xkeyboard]
type = internal/xkeyboard
format = 󰌌 <label-layout>
[module/filesystem]
type = internal/fs
mount-0 = /
format-mounted =  <label-mounted>
label-mounted = %used% / %total%
[module/memory]
type = internal/memory
format = <label>
label =  %used%
[module/bspwm]
type = internal/bspwm
label-focused = %icon%
label-focused-underline= ${xrdb:foreground}
label-focused-background = ${xrdb:foreground}
label-focused-foreground = ${xrdb:background}
label-focused-padding = 1
label-focused-font = 0
label-occupied = %icon%
label-occupied-padding = 1
label-occupied-font = 0
label-occupied-underline= ${xrdb:foreground}
label-urgent = %icon%
label-urgent-padding = 1
label-urgent-font = 0
label-urgent-background = ${xrdb:color1}
label-urgent-underline = ${xrdb:color1}
label-empty = %icon%
label-empty-padding = 1
label-empty-font = 0
;extra icons to choose from
;http://fontawesome.io/cheatsheet/
;       v    
# ws-icon-0 = 1;
ws-icon-0 = 1;א
ws-icon-1 = 2;ב
ws-icon-2 = 3;ג
ws-icon-3 = 4;ד
ws-icon-4 = 5;ה
ws-icon-5 = 6;ו
ws-icon-6 = 7;ז
ws-icon-7 = 8;ח
ws-icon-8 = 9;ט
;ws-icon-9 = 10;
ws-icon-default = " "
#; Separator in between workspaces
# label-separator = |
#
;[module/music]
;type = custom/script
;exec = /home/mikec/.scripts/get_song.sh
;interval = 0.5
;click-left = playerctl play-pause
;click-right = playerctl stop
;scroll-down = playerctl next
;scroll-up = playerctl previous
[module/battery]
type = internal/battery
battery = BAT1
adapter = ADP0
format-charging = 󰂄 <label-charging>
format-discharging = <ramp-capacity> <label-discharging>
label-discharging = %percentage%%
label-charging = %percentage%%
label-full = 󱟢 %percentage%%
# ramp-capacity-0 = ""
ramp-capacity-0 = "󰁺"
# ramp-capacity-1 = ""
ramp-capacity-1 = "󰁼"
# ramp-capacity-2 = ""
ramp-capacity-2 = "󰁾"
# ramp-capacity-3 = ""
ramp-capacity-3 = "󰂀"
# ramp-capacity-4 = ""
ramp-capacity-4 = "󰁹"
[module/backlight]
type = internal/backlight
format = 󰌵 <label>
[module/pulseaudio]
type = internal/pulseaudio
; Sink to be used, if it exists (find using `pacmd list-sinks`, name field)
; If not, uses default sink
; Use PA_VOLUME_UI_MAX (~153%) if true, or PA_VOLUME_NORM (100%) if false
; Default: true
use-ui-max = false
; Interval for volume increase/decrease (in percent points)
; Default: 5
interval = 5
; Available tags:
; <label-volume> (default)
; <ramp-volume>
; <bar-volume>
format-volume = <ramp-volume> <label-volume>
; Available tags:
; <label-muted> (default)
; <ramp-volume>
; <bar-volume>
;format-muted = <label-muted>
; Available tokens:
; %percentage% (default)
; %decibels%
label-volume = %percentage%%
; Available tokens:
; %percentage% (default)
; %decibels%
label-muted =  %percentage%%
; Only applies if <ramp-volume> is used
ramp-volume-0 =
ramp-volume-1 =
ramp-volume-2 =
; Right and Middle click
click-right = st -e pulsemixer
; click-middle =
[module/network]
type = internal/network
interface = wlan0
label-disconnected = "󰖪"
label-connected = " %essid%:%local_ip%"
click-left = st -e iwctl
[module/redshift]
type = custom/text
content = ""
click-left = redshift -O 4300
click-right = redshift -x
[module/datetime]
type = internal/date
date = %a %b %d %I:%M:%S %p

View File

@@ -0,0 +1,32 @@
[Appearance]
color_scheme_path=/home/mikec/.config/qt5ct/style-colors.conf
custom_palette=false
icon_theme=breeze-dark
standard_dialogs=xdgdesktopportal
style=kvantum
[Fonts]
fixed="BigBlueTerm437 Nerd Font,10,-1,5,50,0,0,0,0,0,Regular"
general="Ubuntu,10,-1,5,50,0,0,0,0,0,Regular"
[Interface]
activate_item_on_single_click=1
buttonbox_layout=0
cursor_flash_time=1000
dialog_buttons_have_icons=1
double_click_interval=400
gui_effects=@Invalid()
keyboard_scheme=2
menus_have_icons=true
show_shortcuts_in_context_menus=true
stylesheets=@Invalid()
toolbutton_style=4
underline_shortcut=1
wheel_scroll_lines=3
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\xbb\0\0\t\xe3\0\0\x6 \0\0\0\0\0\0\0\xbb\0\0\t\xe3\0\0\x6 \0\0\0\0\0\0\0\0\v\xaf\0\0\0\0\0\0\0\xbb\0\0\t\xe3\0\0\x6 )
[Troubleshooting]
force_raster_widgets=1
ignored_applications=@Invalid()

View File

@@ -0,0 +1,4 @@
[ColorScheme]
active_colors=#ffe0def4, #ff26233a, #ff6e6a86, #ff6e6a86, #ff191724, #ff191724, #ffe0def4, #ffffffff, #ffe0def4, #ff191724, #ff1f1d2e, #ff000000, #fff07746, #ff191724, #ff9ccfd8, #ffc4a7e7, #ff191724, #ff000000, #ff000000, #ffe0def4, #80e0def4
disabled_colors=#ff787878, #ffe9e9e9, #ffffffff, #ffececec, #ffbebebe, #ffd9d9d9, #ff787878, #ffffffff, #ff787878, #ffffffff, #fff2f1f0, #ff000000, #fff07746, #66fcfcfc, #ff0057ae, #ff452886, #fff4f4f4, #ff000000, #ff000000, #ffffffff, #804c4c4c
inactive_colors=#ffe0def4, #ff26233a, #ff6e6a86, #ff6e6a86, #ff191724, #ff191724, #ffe0def4, #ffffffff, #ffe0def4, #ff191724, #ff1f1d2e, #ff000000, #fff07746, #ff191724, #ff9ccfd8, #ffc4a7e7, #ff191724, #ff000000, #ff000000, #ffe0def4, #80e0def4

View File

@@ -0,0 +1,4 @@
[ColorScheme]
active_colors=#ff000000, #ffc0c0c0, #ffffffff, #ffc0c0c0, #ff808080, #ff808080, #ff000000, #ffffffff, #ff000000, #ffffffff, #ffc0c0c0, #ff000000, #ff000080, #ffffffff, #ff000080, #ff55007f, #ffc0c0c0, #ff000000, #ffffffdc, #ff000000, #80000000, #ff308cc6
disabled_colors=#ff000000, #ffc0c0c0, #ffffffff, #ffc0c0c0, #ff808080, #ff808080, #ff808080, #ffffffff, #ff808080, #ffffffff, #ffc0c0c0, #ff000000, #ff000080, #ffffffff, #ff000080, #ff55007f, #ffc0c0c0, #ff000000, #ffffffdc, #ff000000, #80000000, #ff919191
inactive_colors=#ff000000, #ffc0c0c0, #ffffffff, #ffc0c0c0, #ff808080, #ff808080, #ff000000, #ffffffff, #ff000000, #ffffffff, #ffc0c0c0, #ff000000, #ff000080, #ffffffff, #ff000080, #ff55007f, #ffc0c0c0, #ff000000, #ffffffdc, #ff000000, #80000000, #ff308cc6

View File

@@ -0,0 +1,35 @@
[Appearance]
color_scheme_path=/home/mikec/.config/qt6ct/colors/Chicago95.conf
custom_palette=false
icon_theme=rose-pine-icons
standard_dialogs=xdgdesktopportal
style=Breeze
[Fonts]
fixed="BigBlueTermPlus Nerd Font Mono,9,-1,5,400,0,0,0,0,0,0,0,0,0,0,1,Regular"
general="Ubuntu,10,-1,5,400,0,0,0,0,0,0,0,0,0,0,1,Regular"
[Interface]
activate_item_on_single_click=1
buttonbox_layout=0
cursor_flash_time=1000
dialog_buttons_have_icons=1
double_click_interval=400
gui_effects=@Invalid()
keyboard_scheme=2
menus_have_icons=true
show_shortcuts_in_context_menus=true
stylesheets=@Invalid()
toolbutton_style=4
underline_shortcut=1
wheel_scroll_lines=3
[PaletteEditor]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x3\xad\0\0\x1\x86\0\0\x6#\0\0\x3\x96\0\0\x3\xad\0\0\x1\x86\0\0\x6#\0\0\x3\x96\0\0\0\0\0\0\0\0\n\0\0\0\x3\xad\0\0\x1\x86\0\0\x6#\0\0\x3\x96)
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x5\xc7\0\0\x3\xba\0\0\0\0\0\0\0\0\0\0\x5\xc7\0\0\x3\xba\0\0\0\0\0\0\0\0\x5\xe0\0\0\0\0\0\0\0\0\0\0\x5\xc7\0\0\x3\xba)
[Troubleshooting]
force_raster_widgets=1
ignored_applications=@Invalid()

Some files were not shown because too many files have changed in this diff Show More