Syntax highlighting + autocomplete for Svelte 5 files (.svelte) in Notepad++.
⚠️ This is a User Defined Language (UDL) — it ships as XML, not as a binary plugin. No compilation needed, works with stock Notepad++.
- 🎨 Syntax highlighting for Svelte markup,
<script>,<style> - 🪄 Svelte 5 runes highlighted (
$state,$derived,$effect,$props, …) - 🔁 Block syntax highlighted and folded (
{#if}/{:else}/{/if},{#each},{#await},{#snippet},{#key}) - 🏷️ Special tags
{@render},{@html},{@const},{@debug},{@attach} - 🎯 Directives:
bind:,on:,use:,transition:,class:,style: - 💡 Autocomplete for Svelte runes & block syntax
- 🌗 Two themes: Dark (VSCode-like) and Light
git clone https://github.com/<you>/notepad-svelte-support
cd notepad-svelte-support
.\scripts\install.ps1 # Dark theme (default)
.\scripts\install.ps1 -Theme Light # Light theme-
UDL (syntax highlighting):
- Open Notepad++ →
Language→User Defined Language→Define your language… - Click Import… and select
udl/Svelte.xml(orSvelte-Light.xml) - Restart Notepad++
- Open Notepad++ →
-
Autocomplete:
- Copy
autocomplete/Svelte.xmlto:%ProgramFiles%\Notepad++\autoCompletion\Svelte.xml
- Enable:
Settings→Preferences→Auto-Completion→ ✓ Enable auto-completion on each input
- Copy
-
Open a
.sveltefile — language should be auto-detected.
The samples/ folder contains real Svelte 5 components:
Counter.svelte— runes, blocks, await, stylesTodoList.svelte— bindings, each blocks, events
.\scripts\uninstall.ps1# Validate XML files
./scripts/validate.shThis project starts as a UDL. If real Svelte support needs more (like multi-language lexing of HTML+CSS+JS within one file, or context-aware autocomplete), Phase 2 will be a real C++ Notepad++ plugin. See docs/ROADMAP.md.
Found a missing keyword? A wrong color? PRs welcome! Edit the udl/*.xml, run ./scripts/validate.sh, open PR.
MIT — see LICENSE.
Inspired by other community Notepad++ language packs (e.g. the official userDefinedLanguages repo). Color palette inspired by VSCode Dark+ / Light+.