From 0daf54486bceddf399930bcb8777d9e5f24ad003 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 12 Jun 2026 10:01:40 +0530 Subject: Split init file --- autoload/code.kak | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 autoload/code.kak (limited to 'autoload/code.kak') diff --git a/autoload/code.kak b/autoload/code.kak new file mode 100644 index 0000000..512226c --- /dev/null +++ b/autoload/code.kak @@ -0,0 +1,36 @@ +# Disable indent trimming +set-option global disabled_hooks .*-trim-indent + +# Wrapping +set-option global autowrap_column 100 +hook global WinSetOption filetype=git-commit %{ + set window autowrap_column 72 + autowrap-enable +} +add-highlighter global/ column '%opt{autowrap_column}' WrapLine +add-highlighter global/ wrap -word -indent # Softwrap long lines +map global normal = '|fmt -w $kak_opt_autowrap_column' -docstring 'Wrap text with fmt' + +# Code mode +declare-user-mode code +map global user c ': enter-user-mode code' -docstring 'Code mode' +map global code c ': comment-line' -docstring 'Comment/uncomment lines' +map global code C ': comment-block' -docstring 'Comment/uncomment lines' +map global code f ': apply-formatting' -docstring 'Apply configured formatter' +def casecamel %{ exec '`s[-_]d~w' } +def casesnake %{ exec 's-|[a-z][A-Z];as[-\s]+c_w`' } +def casekebab %{ exec 's_|[a-z][A-Z];as[_\s]+c-w`' } +map global code ': casekebab' -docstring 'kebab-casing' +map global code ': casesnake' -docstring 'snake_casing' +map global code ': casecamel' -docstring 'camelCasing' + +# Editorconfig +hook global BufOpenFile .* %{ editorconfig-load } +hook global BufNewFile .* %{ editorconfig-load } + +# XML tag object +map -docstring "xml tag objet" global object t %{c([\w.]+)\b[^>]*?(?!/)>,/([\w.]+)\b[^>]*?(?!/)>} + +# Highlighters +add-highlighter global/ regex \b(TODO|FIXME)\b 0:default+rb +add-highlighter global/ regex @(todo|fixme) 0:default+rb -- cgit v1.3.1