From 904cec3c4a329cf89fc3219d359239910d61f3f6 Mon Sep 17 00:00:00 2001 From: thing1 Date: Tue, 28 Jan 2025 09:14:32 +0000 Subject: init commit --- autoload/filetype/svelte.kak | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 autoload/filetype/svelte.kak (limited to 'autoload/filetype/svelte.kak') diff --git a/autoload/filetype/svelte.kak b/autoload/filetype/svelte.kak new file mode 100644 index 0000000..a4469f2 --- /dev/null +++ b/autoload/filetype/svelte.kak @@ -0,0 +1,35 @@ +hook global BufCreate .*\.svelte %[ + set-option buffer filetype svelte +] + +hook global WinSetOption filetype=(svelte) %{ + require-module html + + hook window ModeChange pop:insert:.* -group "svelte-trim-indent" html-trim-indent + hook window InsertChar '>' -group "svelte-indent" html-indent-on-greater-than + hook window InsertChar \n -group "svelte-indent" html-indent-on-new-line + + hook -once -always window WinSetOption "filetype=.*" " + remove-hooks window ""svelte-.+"" + " +} + +hook -group svelte-highlight global WinSetOption filetype=(svelte) %{ + add-highlighter "window/svelte" ref svelte + hook -once -always window WinSetOption "filetype=.*" " + remove-highlighter ""window/svelte"" + " +} + +add-highlighter shared/svelte regions +add-highlighter shared/svelte/comment region fill comment +add-highlighter shared/svelte/tag region < > regions +add-highlighter shared/svelte/style region \K (?=) ref css +add-highlighter shared/svelte/script region \K (?=) ref javascript + +add-highlighter shared/svelte/block region \{((#|:|/)\w+)? \} regions +add-highlighter shared/svelte/block/ default-region fill meta +add-highlighter shared/svelte/block/inner region -recurse \{ \{((#|:|/)\w+)?\K (?=\}) ref javascript + +add-highlighter shared/svelte/tag/base default-region ref html/tag +add-highlighter shared/svelte/tag/block region -recurse \{ \{ \} ref svelte/block -- cgit v1.2.3