2.7 KiB
2.7 KiB
ASHES Language Support
A Visual Studio Code extension that provides syntax highlighting and IntelliSense for the ASHES (Adventure Scripting Helping Escoria) language used in Escoria adventure game framework.
Features
- Syntax Highlighting: Full syntax highlighting for ASHES language files (.esc)
- Auto-completion: IntelliSense for ASHES commands, built-in variables, and keywords
- Hover Information: Detailed information about commands and variables on hover
- Code Snippets: Pre-built snippets for common ASHES patterns
- Command Reference: Built-in command reference panel
- Smart Indentation: Proper indentation rules for ASHES code structure
ASHES Language Features Supported
Events
- Event definitions with
:event_name - Event flags with
| FLAG_NAME
Commands
- All standard Escoria commands (say, set_global, change_scene, etc.)
- Custom commands
- Command parameter hints
Variables
- Local variables with
var - Global variables with
global - Built-in variables (CURRENT_PLAYER, ESC_LAST_SCENE, etc.)
- Global IDs with
$prefix
Control Flow
- If/elif/else statements
- While loops
- Break and done keywords
Dialog System
- Dialog blocks with
?! - Dialog choices with
- - Conditional dialog choices with
[condition]
Comments
- Line comments with
#
Installation
- Copy this extension folder to your VS Code extensions directory
- Reload VS Code
- Open any
.escfile to see syntax highlighting
Usage
Auto-completion
- Type any ASHES command and press
Ctrl+Spacefor suggestions - Use
$prefix for global ID suggestions - Built-in variables are automatically suggested
Snippets
- Type snippet prefixes and press
Tabto expand:event- Create new eventsay- Say commanddialog- Dialog blockif- If statement- And many more...
Command Reference
- Press
Ctrl+Shift+Pand type "ASHES: Show Command Reference" - View all available commands with descriptions and parameters
Language Features
Syntax Highlighting
- Events are highlighted in blue
- Commands are highlighted in green
- Variables are highlighted in orange
- Strings are highlighted in yellow
- Comments are highlighted in gray
- Dialog blocks have special highlighting
Smart Indentation
- Automatic indentation for events, control flow, and dialog blocks
- Proper outdenting for
break,done,else, etc.
Folding
- Events can be folded for better code organization
- Dialog blocks can be folded
Contributing
This extension is designed specifically for the Escoria framework and ASHES language. If you find issues or want to add features, please contribute to the project.
License
This extension is part of the Gymkhana project and follows the same license terms.