AutoYADM commit: 2025-06-16 18:07:18
This commit is contained in:
parent
be0ce95ec5
commit
9339668f72
3 changed files with 253 additions and 5 deletions
209
.config/kak/.kakrc.kak.e6XXkH
Normal file
209
.config/kak/.kakrc.kak.e6XXkH
Normal file
|
@ -0,0 +1,209 @@
|
||||||
|
# Daniel's Personal kakrc
|
||||||
|
# Author: Daniel Fichtinger <daniel@ficd.ca>
|
||||||
|
# See README.md for explanations.
|
||||||
|
|
||||||
|
evaluate-commands %sh{ kak-tree-sitter -dks --init $kak_session }
|
||||||
|
evaluate-commands %sh{kak-popup init}
|
||||||
|
colorscheme ashen
|
||||||
|
require-module hop-kak
|
||||||
|
require-module fishr
|
||||||
|
require-module surround
|
||||||
|
require-module ficgrep
|
||||||
|
require-module byline
|
||||||
|
require-module spell
|
||||||
|
require-module title-bar
|
||||||
|
require-module notes
|
||||||
|
set-option global scrolloff 3,3
|
||||||
|
require-module ui-mode
|
||||||
|
|
||||||
|
require-module luar
|
||||||
|
set-option global luar_interpreter luajit
|
||||||
|
|
||||||
|
|
||||||
|
try %{
|
||||||
|
set-option global ashen_dynamic_cursor true
|
||||||
|
set-option global ashen_eol_cursor true
|
||||||
|
}
|
||||||
|
# disable clippy
|
||||||
|
set-option -add global ui_options terminal_assistant=none
|
||||||
|
|
||||||
|
# only set to foot if we are on wayland
|
||||||
|
hook global ModuleLoaded wayland %{
|
||||||
|
set-option global termcmd 'footclient dash -c'
|
||||||
|
}
|
||||||
|
|
||||||
|
# This gets overridden by editorconfig but we set sane default anyways
|
||||||
|
set-option global tabstop 4
|
||||||
|
set-option global indentwidth 4
|
||||||
|
|
||||||
|
# needed for tree-sitter to respect show-matching
|
||||||
|
define-command -override tree-sitter-user-after-highlighter %{
|
||||||
|
add-highlighter -override buffer/show-matching show-matching
|
||||||
|
# try %{
|
||||||
|
# remove-highlighter window/bracket
|
||||||
|
# remove-highlighter window/regex-escaped
|
||||||
|
# }
|
||||||
|
}
|
||||||
|
|
||||||
|
hook global WinSetOption filetype=kak %{
|
||||||
|
# make brackets gray a-la Ashen
|
||||||
|
add-highlighter window/bracket regex [\[\]\(\)\{\}]{1} 0:rgb:737373
|
||||||
|
# special highlighting for escaped goodies in regex
|
||||||
|
add-highlighter window/regex-escaped regex \\[\[\]\(\)\{\}fnrtv0\\dwshDWSH] 0:rgb:e5e5e5
|
||||||
|
}
|
||||||
|
|
||||||
|
# default window settings
|
||||||
|
# wrap enabled
|
||||||
|
# scrolloff enabled
|
||||||
|
hook global WinCreate .* %{
|
||||||
|
ui-wrap-enable
|
||||||
|
# TODO: fix ui-scrolloff-enable and use that instead
|
||||||
|
ui-scrolloff-toggle
|
||||||
|
add-highlighter window/number-lines number-lines -hlcursor -relative -separator " "
|
||||||
|
# only-trailing is nice QOL otherwise it gets hard to read the screen
|
||||||
|
# and it makes it easy to see trailing spaces
|
||||||
|
add-highlighter window/show-whitespaces show-whitespaces -only-trailing
|
||||||
|
add-highlighter window/show-matching show-matching
|
||||||
|
}
|
||||||
|
|
||||||
|
# convenience mappings
|
||||||
|
# quitting & saving
|
||||||
|
map -docstring "quit" global user q ": q<ret>"
|
||||||
|
map -docstring "quit" global normal <c-q> ": q<ret>"
|
||||||
|
map -docstring "force quit" global user Q ": q!<ret>"
|
||||||
|
map -docstring "force quit" global normal <c-Q> ": q!<ret>"
|
||||||
|
map -docstring "kill session" global normal <a-q> ':kill<ret>'
|
||||||
|
map -docstring "force kill session" global normal <a-q> ':kill!<ret>'
|
||||||
|
map -docstring "save" global normal <c-s> ": write<ret>"
|
||||||
|
map -docstring "save" global normal <c-S> ": write!<ret>"
|
||||||
|
|
||||||
|
# buffer operations
|
||||||
|
map -docstring "close current buffer" global user x ": db<ret>"
|
||||||
|
map -docstring "goto previous buffer" global user m ": bp<ret>"
|
||||||
|
map -docstring "goto next buffer" global user i ": bn<ret>"
|
||||||
|
map -docstring "goto previous buffer" global normal <c-m> ": bp<ret>"
|
||||||
|
map -docstring "goto next buffer" global normal <c-i> ": bn<ret>"
|
||||||
|
|
||||||
|
# trim whitespace
|
||||||
|
map global normal <tab> _
|
||||||
|
|
||||||
|
# comments
|
||||||
|
map -docstring "comment line" global normal "#" ": comment-line<ret>"
|
||||||
|
map -docstring "comment block" global normal "<a-#>" ": comment-block<ret>"
|
||||||
|
|
||||||
|
# formatting
|
||||||
|
map -docstring "format" global normal = ": format-buffer<ret>"
|
||||||
|
map -docstring "format" global normal <a-=> ": format-selections<ret>"
|
||||||
|
|
||||||
|
# Case-insensitive Search
|
||||||
|
map -docstring 'case insensitive search' global user '/' /(?i)
|
||||||
|
map -docstring 'case insensitive backward search' global user '<a-/>' <a-/>(?i)
|
||||||
|
map -docstring 'case insensitive extend search' global user '?' ?(?i)
|
||||||
|
map -docstring 'case insensitive backward extend-search' global user '<a-?>' <a-?>(?i)
|
||||||
|
|
||||||
|
# TODO: how to bind these to goto mode while respecting g/G??
|
||||||
|
map -docstring 'Select to file end' global user N "Gj<a-L>L"
|
||||||
|
map -docstring 'Extend to file end' global user n "gj<a-l>l"
|
||||||
|
|
||||||
|
define-command -docstring "Create a scratch buffer" scratch %{
|
||||||
|
edit -scratch
|
||||||
|
}
|
||||||
|
|
||||||
|
alias global s scratch
|
||||||
|
|
||||||
|
define-command -params 1 -docstring "Set buffer filetype" filetype %{
|
||||||
|
set-option buffer filetype %arg{1}
|
||||||
|
}
|
||||||
|
|
||||||
|
define-command -docstring "New terminal in cwd" cwd-terminal %{
|
||||||
|
terminal fish
|
||||||
|
}
|
||||||
|
# make easy to open new shell
|
||||||
|
alias global t cwd-terminal
|
||||||
|
|
||||||
|
# manually requiring needed for some reason 😢
|
||||||
|
require-module peneira
|
||||||
|
|
||||||
|
declare-user-mode peneira
|
||||||
|
map -docstring %{
|
||||||
|
Picker mode
|
||||||
|
} global user f ': enter-user-mode peneira<ret>'
|
||||||
|
map -docstring 'pick file' global peneira f ': peneira-files<ret>'
|
||||||
|
map -docstring 'pick unopened file' global peneira F ': peneira-files -hide-opened<ret>'
|
||||||
|
map -docstring %{
|
||||||
|
pick line in buffer
|
||||||
|
} global peneira '/' ': peneira-lines<ret>'
|
||||||
|
|
||||||
|
map global normal <backspace> '"_'
|
||||||
|
define-command goto-debug %{
|
||||||
|
try %{
|
||||||
|
buffer *debug*
|
||||||
|
ui-scrolloff-disable
|
||||||
|
execute-keys 'gj'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
declare-user-mode debug
|
||||||
|
map -docstring 'open debug buffer' global debug d ':goto-debug<ret>'
|
||||||
|
map -docstring 'open debug buffer' global user D ': enter-user-mode debug<ret>'
|
||||||
|
|
||||||
|
define-command exec-selection %{
|
||||||
|
execute-keys ':<c-r>.<ret>'
|
||||||
|
}
|
||||||
|
|
||||||
|
map -docstring 'execute selection' global debug x ': exec-selection<ret>'
|
||||||
|
define-command repl %{
|
||||||
|
new %{ edit -scratch; set buffer filetype kak }
|
||||||
|
}
|
||||||
|
define-command -override -hidden consume %{
|
||||||
|
nop %sh{
|
||||||
|
niri msg action consume-or-expel-window-left
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
define-command terminal-consume %{
|
||||||
|
terminal dash -c 'niri msg action consume-or-expel-window-left; exec fish'
|
||||||
|
}
|
||||||
|
|
||||||
|
alias global tc terminal-consume
|
||||||
|
|
||||||
|
define-command -docstring %{
|
||||||
|
Create a new client in vertial split
|
||||||
|
} new-consume %{
|
||||||
|
new consume
|
||||||
|
}
|
||||||
|
|
||||||
|
alias global nc new-consume
|
||||||
|
alias global n new
|
||||||
|
|
||||||
|
# jumplist
|
||||||
|
|
||||||
|
map -docstring 'jump forward' global normal <c-f> <c-i>
|
||||||
|
map -docstring 'save to jumplist' global normal <c-v> <c-s>
|
||||||
|
|
||||||
|
# selection saving
|
||||||
|
map -docstring 'add selection' global normal Y <a-Z>a
|
||||||
|
|
||||||
|
define-command -docstring 'open popup shell' popup-shell %{
|
||||||
|
popup fish
|
||||||
|
}
|
||||||
|
alias global pp popup-shell
|
||||||
|
|
||||||
|
map -docstring 'popup shell' global user . ': popup-shell<ret>'
|
||||||
|
|
||||||
|
# hook -once global ClientCreate .* %{
|
||||||
|
# evaluate-commands %sh{
|
||||||
|
# if [ "$kak_buflist" != "*debug* *scratch*" ]; then
|
||||||
|
# echo "delete-buffer *scratch*"
|
||||||
|
# else
|
||||||
|
# echo "echo -debug dumping buffers"
|
||||||
|
# echo "echo -debug %val{buflist}"
|
||||||
|
# fi
|
||||||
|
# }
|
||||||
|
# }
|
||||||
|
|
||||||
|
try %{
|
||||||
|
evaluate-commands %sh{kak-lsp-diags}
|
||||||
|
map -docstring 'enable diagnostic hover' global ui "'" ': lsp-diag-hover-enable<ret>'
|
||||||
|
map -docstring 'disable diagnostic hover' global ui '"' ': lsp-diag-hover-disable<ret>'
|
||||||
|
}
|
|
@ -165,8 +165,41 @@ hook -group lsp-filetype-python global BufSetOption filetype=python %{
|
||||||
|
|
||||||
hook -group lsp-filetype-bibtex global BufSetOption filetype=bibtex %{
|
hook -group lsp-filetype-bibtex global BufSetOption filetype=bibtex %{
|
||||||
set-option buffer lsp_servers %{
|
set-option buffer lsp_servers %{
|
||||||
|
[ltex-ls-plus]
|
||||||
|
root_globs = [".git", ".hg", "main.tex"]
|
||||||
|
[ltex-ls-plus.settings.ltex]
|
||||||
|
# TODO: write a script where the dictionary is a list of words
|
||||||
|
# that's read from a file and then output in TOML format.
|
||||||
|
# This way we can implement adding our own words to this list dynamically
|
||||||
|
# dictionary = { "en-US" = ["builtin", "Fichtinger", "SonarAuth", "sexpenis" ], "en-CA" = ["more", "words"] }
|
||||||
|
dictionary = { "en-US" = [] }
|
||||||
|
|
||||||
[texlab]
|
[texlab]
|
||||||
root_globs = [".git", ".hg", "."]
|
root_globs = [".git", ".hg"]
|
||||||
|
[texlab.settings.texlab]
|
||||||
|
# See https://github.com/latex-lsp/texlab/wiki/Configuration
|
||||||
|
#
|
||||||
|
# Preview configuration for zathura with SyncTeX search.
|
||||||
|
# For other PDF viewers see https://github.com/latex-lsp/texlab/wiki/Previewing
|
||||||
|
build.onSave = true
|
||||||
|
forwardSearch.executable = "zathura"
|
||||||
|
forwardSearch.args = [
|
||||||
|
"%p",
|
||||||
|
"--synctex-forward", # Support texlab-forward-search
|
||||||
|
"%l:1:%f",
|
||||||
|
"--synctex-editor-command", # Inverse search: use Control+Left-Mouse-Button to jump to source.
|
||||||
|
"""
|
||||||
|
sh -c '
|
||||||
|
echo "
|
||||||
|
evaluate-commands -client %%opt{texlab_client} %%{
|
||||||
|
evaluate-commands -try-client %%opt{jumpclient} %%{
|
||||||
|
edit -- %%{input} %%{line}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
" | kak -p $kak_session
|
||||||
|
'
|
||||||
|
""",
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -39,12 +39,18 @@ set-option global indentwidth 4
|
||||||
# needed for tree-sitter to respect show-matching
|
# needed for tree-sitter to respect show-matching
|
||||||
define-command -override tree-sitter-user-after-highlighter %{
|
define-command -override tree-sitter-user-after-highlighter %{
|
||||||
add-highlighter -override buffer/show-matching show-matching
|
add-highlighter -override buffer/show-matching show-matching
|
||||||
|
# try %{
|
||||||
|
# remove-highlighter window/bracket
|
||||||
|
# remove-highlighter window/regex-escaped
|
||||||
|
# }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hook global WinSetOption filetype=kak %{
|
||||||
# make brackets gray a-la Ashen
|
# make brackets gray a-la Ashen
|
||||||
add-highlighter global/bracket regex [\[\]\(\)\{\}]{1} 0:rgb:737373
|
add-highlighter window/bracket regex [\[\]\(\)\{\}]{1} 0:rgb:737373
|
||||||
# special highlighting for escaped goodies in regex
|
# special highlighting for escaped goodies in regex
|
||||||
add-highlighter global/regex-escaped regex \\[\[\]\(\)\{\}fnrtv0\\dwshDWSH] 0:rgb:e5e5e5
|
add-highlighter window/regex-escaped regex \\[\[\]\(\)\{\}fnrtv0\\dwshDWSH] 0:rgb:e5e5e5
|
||||||
|
}
|
||||||
|
|
||||||
# default window settings
|
# default window settings
|
||||||
# wrap enabled
|
# wrap enabled
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue