diff --git a/dot.config/kak/colors/catppuccin_mocha.kak b/dot.config/kak/colors/catppuccin_mocha.kak new file mode 100644 index 0000000..6191160 --- /dev/null +++ b/dot.config/kak/colors/catppuccin_mocha.kak @@ -0,0 +1,83 @@ +# Catppuccin theme for Kakoune + +# Color palette +declare-option str rosewater 'rgb:f5e0dc' +declare-option str red 'rgb:f38ba8' +declare-option str mauve 'rgb:cba6f7' +declare-option str maroon 'rgb:eba0ac' +declare-option str pink 'rgb:f5c2e7' +declare-option str cyan 'rgb:74c7ec' +declare-option str yellow 'rgb:f9e2af' +declare-option str green 'rgb:a6e3a1' +declare-option str white 'rgb:cdd6f4' +declare-option str blue 'rgb:89b4fa' +declare-option str sky 'rgb:89dceb' +declare-option str lavender 'rgb:b4befe' +declare-option str black1 'rgb:181825' +declare-option str black2 'rgb:1e1e2e' +declare-option str black3 'rgb:313244' +declare-option str orange 'rgb:fab387' +declare-option str teal 'rgb:94e2d5' +declare-option str gray0 'rgb:585b70' +declare-option str gray1 'rgb:6c7086' +declare-option str bright_red %opt{red} +declare-option str bright_green %opt{green} +declare-option str bright_yellow %opt{yellow} +declare-option str bright_blue %opt{blue} +declare-option str bright_cyan %opt{cyan} +declare-option str bright_white %opt{white} +declare-option str foreground %opt{white} +declare-option str background %opt{black2} + +# 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}" +set-face global documentation comment +set-face global meta "%opt{pink}" +set-face global builtin "%opt{lavender}+b" diff --git a/dot.config/kak/colors/penumbra.kak b/dot.config/kak/colors/penumbra.kak new file mode 100644 index 0000000..eb45c6c --- /dev/null +++ b/dot.config/kak/colors/penumbra.kak @@ -0,0 +1,84 @@ +# Catppuccin theme for Kakoune + +# Color palette +declare-option str rosewater 'rgb:CB7459' +declare-option str red 'rgb:CA7081' +declare-option str mauve 'rgb:CA736C' +declare-option str maroon 'rgb:F2E6D4' +declare-option str pink 'rgb:BD72A8' +declare-option str cyan 'rgb:00A0BE' +declare-option str yellow 'rgb:A38F2D' +declare-option str green 'rgb:46A473' +declare-option str white 'rgb:BEBEBE' +declare-option str blue 'rgb:7E87D6' +declare-option str sky 'rgb:6E8DD5' +declare-option str lavender 'rgb:BC73A4' +declare-option str black1 'rgb:24272B' +declare-option str black2 'rgb:2F3339' +declare-option str black3 'rgb:3E4044' +declare-option str orange 'rgb:C27D40' +declare-option str teal 'rgb:00A2AF' +declare-option str gray0 'rgb:585b70' +declare-option str gray1 'rgb:6c7086' +declare-option str bright_red %opt{red} +declare-option str bright_green %opt{green} +declare-option str bright_yellow %opt{yellow} +declare-option str bright_blue %opt{blue} +declare-option str bright_cyan %opt{cyan} +declare-option str bright_white 'rgb:FFF7ED' +declare-option str foreground %opt{white} +declare-option str background %opt{black2} + +# 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{bright_white},%opt{rosewater}" +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{rosewater},%opt{background}+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{blue}" +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}" +set-face global MatchingChar "%opt{bright_white},%opt{black1}+b" + +# Code +set-face global value "%opt{orange}" +set-face global type "%opt{mauve}" +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}" +set-face global documentation comment +set-face global meta "%opt{pink}" +set-face global builtin "%opt{lavender}+b" diff --git a/dot.config/kak/filetypes.kak b/dot.config/kak/filetypes.kak index 821cbe8..4bc2ce8 100644 --- a/dot.config/kak/filetypes.kak +++ b/dot.config/kak/filetypes.kak @@ -6,10 +6,6 @@ hook global WinSetOption filetype=(?!markdown).* %{ add-highlighter window/ number-lines -hlcursor -separator ' ' } -hook global WinSetOption filetype=(javascript|ecmascript) %{ - set window formatcmd 'prettier-standard' - #hook window BufWritePre .* format -} hook global WinSetOption filetype=rust %{ racer-enable-autocomplete set window formatcmd 'rustfmt' diff --git a/dot.config/kak/personalization.kak b/dot.config/kak/personalization.kak index 601455a..f65aa80 100644 --- a/dot.config/kak/personalization.kak +++ b/dot.config/kak/personalization.kak @@ -1,4 +1,4 @@ -colorscheme warm-pastel +colorscheme penumbra set-option global scrolloff 5,5 set-option global incsearch true set-option global aligntab true @@ -25,12 +25,16 @@ set global modelinefmt %{ ยท {{context_info}} {{mode_info}} } -#hook global InsertEnd .* %{ -# lint -#} - # spaces instead tabs -map global insert ' ' +hook global InsertChar \t %{ try %{ + execute-keys -draft "h\A\h+\z;%opt{indentwidth}@" +}} +hook global InsertDelete ' ' %{ try %{ + execute-keys -draft 'h\A\h+\zi' +}} + +# Bring back S-x (kind of) +map global normal X 'Jx' # editorconfig support hook global BufCreate .* %{editorconfig-load} diff --git a/dot.config/kak/plugins.kak b/dot.config/kak/plugins.kak index 6fcef4d..f2e6ace 100644 --- a/dot.config/kak/plugins.kak +++ b/dot.config/kak/plugins.kak @@ -39,3 +39,17 @@ plug "andreyorst/kaktree" defer kaktree %{ } kaktree-enable } + +plug "ABuffSeagull/kakoune-vue" + +plug "schemar/kak-jsts" config %{ + hook global WinSetOption filetype=(javascript|typescript|ecmascript) %{ + map window user l -docstring 'lint' ': lint' + map window user f -docstring 'format' ': format-prettier' + hook window BufWritePre .* %{ + evaluate-commands -no-hooks %{ + format-prettier + } + } + } +}