diff --git a/rc/filetype/svelte.kak b/rc/filetype/svelte.kak
index b7e52610..beb8dd4c 100644
--- a/rc/filetype/svelte.kak
+++ b/rc/filetype/svelte.kak
@@ -15,8 +15,21 @@ hook global WinSetOption filetype=(svelte) %{
}
hook -group svelte-highlight global WinSetOption filetype=(svelte) %{
- add-highlighter "window/svelte" ref html
+ 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 ) ref css
+add-highlighter shared/svelte/script region ) 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