Syntax highlighting and language support for the Kernel Programming Language (kpl) and the compiled Blitz Assembly Language (blitz-asm) from the Blitz System (v2.0) in Visual Studio Code.
Links: Code Examples, KPL Overview, Context Free Language, and Instruction Set,
- Full syntax highlighting for KPL (
.k,.h) and Blitz Assembly (.s) files - Smart bracket matching and autoclosing
- Code folding
- Comment toggling
- Auto-indentation for code blocks
- Syntax Highlighting Support for:
- Classes and interfaces
- Functions and methods
- Control structures
- Type declarations
- Error handling
- Parameterized classes
- Function types and pointers
- A formatter for the
blitz-asmlanguage files - A basic parser for the
kpllanguage
- Open VS Code
- Press
Ctrl+P/Cmd+Pto open the Quick Open dialog - Type
ext install kpl-linter - Press Enter
VS Code 1.96.0 or higher
Please report any issues on the GitHub repository.
Contributions are welcome! Please feel free to submit a Pull Request.
Basic kpl parsing and validation
Added kpl autocompletion features, fixed clr command
Added constants checking to the KPL language syntax highlighting
Added single quote string to the Blitz Assembly Language syntax highlighting
Added btst instruction hotfix
Added basic linting and hover support for Blitz Assembly files
Added CI/CD for faster development
Added Blitz Assembly formatter with support for:
- Comment alignment and label-based indentation
- Formatting instructions, labels, and comments with customizable tab spacing
- Automatic handling of label lines and in-line comments
Added Blitz Assembly support with syntax highlighting, smart indentation, and more.
Fixed package extensions
Initial release of KPL Language Support:
- Basic syntax highlighting
- Code block detection
- Smart indentation
- Bracket matching
Features
- Auto-closing statements (e.g.,
ifandendIf) - Auto-completion for common statements/fields
-
kplformatter - Parse
kplinto an ast-
tokenizerwith look aheads based on rules forkplCFL - basic token validation
- store tokens into
symbolTable - code auto-completion
- hover support
-
Bugs
- add
clrblitz-asmcommand - fix duplicating labels in
blitz-asmsymbolManager