AutoYADM commit: 2025-05-23 17:45:15

This commit is contained in:
Daniel Fichtinger 2025-05-23 17:45:15 -04:00
parent b5df8717ab
commit 80e799b782

View file

@ -1,3 +1,33 @@
hook global BufCreate .*[.](kdl) %{
set-option buffer filetype kdl
set-option buffer comment_line "//"
set-option buffer comment_block_begin "/*"
set-option buffer comment_block_end "*/"
# set-option window formatcmd "kdlfmt format -"
}
hook global WinSetOption filetype=kdl %<
require-module kdl
# hook window InsertChar \n -group kdl-indent %{ kdl-indent-newline }
# hook window InsertChar [}{}] -group kdl-indent kdl-indent-closing-brace
# hook window InsertChar '}' -group kdl-indent %{ kdl-indent-closing-brace }
hook window InsertChar .* -group kdl-indent kdl-indent-on-char
hook window ModeChange pop:insert:.* -group kdl-trim-indent kdl-trim-indent
hook window InsertChar \n -group kdl-indent kdl-indent-on-new-line
hook -once -always window WinSetOption filetype=.* %{ remove-hooks window kdl-.+ }
# hook -group kdl-auto-format window BufWritePre .* format
# hook -once -always WinSetOption filetype=.* %sh{
# if [ "$kak_opt_filetype" != "kdl" ]; then
# echo "unset-option window formatcmd"
# echo "remove-hooks window kdl-auto-format"
# fi
# }
>
provide-module kdl %~ provide-module kdl %~
# define-command -hidden kdl-indent-newline %( # define-command -hidden kdl-indent-newline %(
@ -17,13 +47,26 @@ provide-module kdl %~
# # try %= execute-keys -draft x_ <a-k>^\h*\}\z<ret> m<a-S>1<a-&> = # # try %= execute-keys -draft x_ <a-k>^\h*\}\z<ret> m<a-S>1<a-&> =
# try %= execute-keys -draft -itersel <a-h><a-k>^\h*\Q %val{hook_param} \E$<ret> mGi s \A|.\z<ret> 1<a-&> = # try %= execute-keys -draft -itersel <a-h><a-k>^\h*\Q %val{hook_param} \E$<ret> mGi s \A|.\z<ret> 1<a-&> =
# | # |
#
define-command -hidden kdl-trim-indent %{
# remove trailing white space
try %{ execute-keys -draft -itersel x s \h+$ <ret> d }
}
define-command -hidden kdl-indent-on-char %<
evaluate-commands -draft -itersel %<
# align closer to its opener when alone on line
try %< execute-keys -draft <a-h> <a-k> ^\h+[\]}]$ <ret> m <a-S> 1<a-&> >
>
>
define-command -hidden kdl-indent-on-new-line %< define-command -hidden kdl-indent-on-new-line %<
evaluate-commands -draft -itersel %< evaluate-commands -draft -itersel %<
# preserve prev indent # preserve prev indent
try %{ execute-keys -draft <semicolon> K <a-&> } try %{ execute-keys -draft <semicolon> K <a-&> }
# filter prev line # filter prev line
# try %{ execute-keys -draft k : json-trim-indent <ret> } try %{ execute-keys -draft k : kdl-trim-indent <ret> }
# indent after lines ending with opener # indent after lines ending with opener
try %< execute-keys -draft k x <a-k> [[}]\h*$ <ret> j <a-gt> > try %< execute-keys -draft k x <a-k> [[}]\h*$ <ret> j <a-gt> >
# deindent closer when after cursor # deindent closer when after cursor
@ -33,31 +76,3 @@ define-command -hidden kdl-indent-on-new-line %<
~ ~
hook global BufCreate .*[.](kdl) %{
set-option buffer filetype kdl
set-option buffer comment_line "//"
set-option buffer comment_block_begin "/*"
set-option buffer comment_block_end "*/"
# set-option window formatcmd "kdlfmt format -"
}
hook global WinSetOption filetype=kdl %<
require-module kdl
# hook window InsertChar \n -group kdl-indent %{ kdl-indent-newline }
# hook window InsertChar [}{}] -group kdl-indent kdl-indent-closing-brace
# hook window InsertChar '}' -group kdl-indent %{ kdl-indent-closing-brace }
hook window InsertChar \n -group kdl-indent kdl-indent-on-new-line
hook -once -always window WinSetOption filetype=.* %{ remove-hooks window kdl-indent }
# hook -group kdl-auto-format window BufWritePre .* format
# hook -once -always WinSetOption filetype=.* %sh{
# if [ "$kak_opt_filetype" != "kdl" ]; then
# echo "unset-option window formatcmd"
# echo "remove-hooks window kdl-auto-format"
# fi
# }
>