Blots Language Support
May 31, 2026 · View on GitHub
This extension adds support for the Blots programming language to VSCode and other VSCode-based editors (such as Cursor).
Currently, this support consists of basic syntax highlighting.
Install
This extension is available on both the VSCode Marketplace and the Open VSX Registry. You should be able to install it from within your editor like other extensions, but you can also download the VSIX file directly from either directory.
Syntax files
VS Code uses syntaxes/blots.tmLanguage.json. bat and other Sublime Text / syntect-based tools use syntaxes/blots.sublime-syntax. When you change highlighting rules, update both files (see below).
bat
bat can highlight .blots and .blot files using the grammar in this repository. There is no separate bat plugin; you add the syntax to your local bat config once.
From a clone of this repo:
mkdir -p "$(bat --config-dir)/syntaxes"
ln -sf "$(pwd)/syntaxes/blots.sublime-syntax" "$(bat --config-dir)/syntaxes/blots.sublime-syntax"
bat cache --build
bat --list-languages | rg -i blots
You should see Blots:blots,blot. Then:
bat path/to/file.blots
If a filename is not recognized, set the language explicitly (bat -l Blots file.blots) or add to your bat config:
--map-syntax '*.blots:Blots'
--map-syntax '*.blot:Blots'
Regenerating blots.sublime-syntax
After editing blots.tmLanguage.json, regenerate the Sublime syntax (requires Ruby):
cd syntaxes
python3 -c "
import json, plistlib
with open('blots.tmLanguage.json') as f:
plistlib.dump(json.load(f), open('blots.tmLanguage', 'wb'))
"
gem install sublime_syntax_convertor # once, if needed
sublime_syntax_convertor blots.tmLanguage
rm blots.tmLanguage
Then restore file_extensions (blots, blot) at the top of blots.sublime-syntax if the converter dropped them, and run bat cache --build again.
To propose built-in bat support upstream, see bat’s assets guide. That is optional; the local setup above is enough for daily use.