release: Storybook v0.2.0 - Major syntax and features update
BREAKING CHANGES: - Relationship syntax now requires blocks for all participants - Removed self/other perspective blocks from relationships - Replaced 'guard' keyword with 'if' for behavior tree decorators Language Features: - Add tree-sitter grammar with improved if/condition disambiguation - Add comprehensive tutorial and reference documentation - Add SBIR v0.2.0 binary format specification - Add resource linking system for behaviors and schedules - Add year-long schedule patterns (day, season, recurrence) - Add behavior tree enhancements (named nodes, decorators) Documentation: - Complete tutorial series (9 chapters) with baker family examples - Complete reference documentation for all language features - SBIR v0.2.0 specification with binary format details - Added locations and institutions documentation Examples: - Convert all examples to baker family scenario - Add comprehensive working examples Tooling: - Zed extension with LSP integration - Tree-sitter grammar for syntax highlighting - Build scripts and development tools Version Updates: - Main package: 0.1.0 → 0.2.0 - Tree-sitter grammar: 0.1.0 → 0.2.0 - Zed extension: 0.1.0 → 0.2.0 - Storybook editor: 0.1.0 → 0.2.0
This commit is contained in:
89
storybook-editor/assets/Storybook.sublime-syntax
Normal file
89
storybook-editor/assets/Storybook.sublime-syntax
Normal file
@@ -0,0 +1,89 @@
|
||||
%YAML 1.2
|
||||
---
|
||||
name: Storybook
|
||||
file_extensions:
|
||||
- sb
|
||||
- storybook
|
||||
scope: source.storybook
|
||||
|
||||
contexts:
|
||||
main:
|
||||
# Comments
|
||||
- match: '//!.*$'
|
||||
scope: comment.line.documentation.storybook
|
||||
- match: '//.*$'
|
||||
scope: comment.line.double-slash.storybook
|
||||
|
||||
# Prose blocks
|
||||
- match: '^(\s*)(---\w*)$'
|
||||
captures:
|
||||
2: keyword.control.prose.storybook
|
||||
push: prose_block
|
||||
|
||||
# Declaration keywords
|
||||
- match: '\b(species|character|behavior|template|use|from)\b'
|
||||
scope: keyword.declaration.storybook
|
||||
|
||||
# Control flow keywords
|
||||
- match: '\b(for|where|if|else|match|with)\b'
|
||||
scope: keyword.control.storybook
|
||||
|
||||
# Boolean literals
|
||||
- match: '\b(true|false)\b'
|
||||
scope: constant.language.boolean.storybook
|
||||
|
||||
# Numeric literals
|
||||
- match: '\b\d+(\.\d+)?\b'
|
||||
scope: constant.numeric.storybook
|
||||
|
||||
# Time/Duration literals
|
||||
- match: '\b\d+[hms]\b'
|
||||
scope: constant.numeric.time.storybook
|
||||
|
||||
# String literals
|
||||
- match: '"'
|
||||
scope: punctuation.definition.string.begin.storybook
|
||||
push: double_quoted_string
|
||||
|
||||
# Field names (before colon)
|
||||
- match: '^\s*([a-zA-Z_][a-zA-Z0-9_]*)\s*(:)'
|
||||
captures:
|
||||
1: variable.other.member.storybook
|
||||
2: punctuation.separator.storybook
|
||||
|
||||
# Range operator
|
||||
- match: '\.\.'
|
||||
scope: keyword.operator.range.storybook
|
||||
|
||||
# Operators
|
||||
- match: '[+\-*/%<>=!&|]'
|
||||
scope: keyword.operator.storybook
|
||||
|
||||
# Punctuation
|
||||
- match: '[{}()\[\],;]'
|
||||
scope: punctuation.storybook
|
||||
|
||||
# Type names and identifiers (capitalized)
|
||||
- match: '\b[A-Z][a-zA-Z0-9_]*\b'
|
||||
scope: entity.name.type.storybook
|
||||
|
||||
# Regular identifiers
|
||||
- match: '\b[a-z_][a-zA-Z0-9_]*\b'
|
||||
scope: variable.other.storybook
|
||||
|
||||
prose_block:
|
||||
- meta_scope: string.unquoted.prose.storybook
|
||||
- match: '^(\s*)(---)$'
|
||||
captures:
|
||||
2: keyword.control.prose.storybook
|
||||
pop: true
|
||||
- match: '.*$'
|
||||
scope: string.unquoted.prose.storybook
|
||||
|
||||
double_quoted_string:
|
||||
- meta_scope: string.quoted.double.storybook
|
||||
- match: '\\.'
|
||||
scope: constant.character.escape.storybook
|
||||
- match: '"'
|
||||
scope: punctuation.definition.string.end.storybook
|
||||
pop: true
|
||||
33
storybook-editor/assets/fonts/DOWNLOAD.md
Normal file
33
storybook-editor/assets/fonts/DOWNLOAD.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# Font Download Instructions
|
||||
|
||||
## Geist
|
||||
|
||||
1. Go to: https://vercel.com/font
|
||||
2. Click "Download Geist" button
|
||||
3. Extract the zip file
|
||||
4. Copy these files to this directory:
|
||||
- `Geist/static/Geist-Regular.otf`
|
||||
- `Geist/static/Geist-Medium.otf`
|
||||
- `Geist/static/Geist-SemiBold.otf`
|
||||
|
||||
## Monaspace Neon
|
||||
|
||||
1. Go to: https://github.com/githubnext/monaspace/releases/latest
|
||||
2. Download `monaspace-v1.101.zip` (or latest version)
|
||||
3. Extract the zip file
|
||||
4. Copy these files to this directory:
|
||||
- `monaspace-v1.101/fonts/otf/MonaspaceNeon-Regular.otf`
|
||||
- `monaspace-v1.101/fonts/otf/MonaspaceNeon-SemiBold.otf`
|
||||
|
||||
## Quick Check
|
||||
|
||||
After downloading, you should have these 5 files:
|
||||
```
|
||||
Geist-Regular.otf
|
||||
Geist-Medium.otf
|
||||
Geist-SemiBold.otf
|
||||
MonaspaceNeon-Regular.otf
|
||||
MonaspaceNeon-SemiBold.otf
|
||||
```
|
||||
|
||||
Once you have the fonts, we'll update the code to load them!
|
||||
1
storybook-editor/assets/fonts/Geist.zip
Normal file
1
storybook-editor/assets/fonts/Geist.zip
Normal file
@@ -0,0 +1 @@
|
||||
Not Found
|
||||
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Bold.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Bold.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-BoldItalic.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-BoldItalic.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-ExtraBold.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-ExtraBold.otf
Normal file
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-ExtraLight.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-ExtraLight.otf
Normal file
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Italic.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Italic.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Light.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Light.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-LightItalic.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-LightItalic.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Medium.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Medium.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-MediumItalic.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-MediumItalic.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Regular.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-Regular.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiBold.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiBold.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiBoldItalic.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiBoldItalic.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiWideBold.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiWideBold.otf
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiWideItalic.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiWideItalic.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiWideLight.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiWideLight.otf
Normal file
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiWideMedium.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-SemiWideMedium.otf
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideBold.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideBold.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideBoldItalic.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideBoldItalic.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideExtraBold.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideExtraBold.otf
Normal file
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideExtraLight.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideExtraLight.otf
Normal file
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideItalic.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideItalic.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideLight.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideLight.otf
Normal file
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideMedium.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideMedium.otf
Normal file
Binary file not shown.
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideRegular.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideRegular.otf
Normal file
Binary file not shown.
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideSemiBold.otf
Normal file
BIN
storybook-editor/assets/fonts/MonaspaceNeonNF-WideSemiBold.otf
Normal file
Binary file not shown.
Binary file not shown.
28
storybook-editor/assets/fonts/README.md
Normal file
28
storybook-editor/assets/fonts/README.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# Fonts for Storybook Editor
|
||||
|
||||
## Required Fonts
|
||||
|
||||
### Geist (UI Text)
|
||||
- **Source**: https://vercel.com/font
|
||||
- **License**: SIL Open Font License
|
||||
- **Files needed**:
|
||||
- `Geist-Regular.otf` (400)
|
||||
- `Geist-Medium.otf` (500)
|
||||
- `Geist-SemiBold.otf` (600)
|
||||
|
||||
### Monaspace Neon (Code)
|
||||
- **Source**: https://github.com/githubnext/monaspace
|
||||
- **License**: SIL Open Font License
|
||||
- **Files needed**:
|
||||
- `MonaspaceNeon-Regular.otf` (400)
|
||||
- `MonaspaceNeon-SemiBold.otf` (600)
|
||||
|
||||
## Installation
|
||||
|
||||
1. Download Geist from https://vercel.com/font
|
||||
2. Download Monaspace from https://github.com/githubnext/monaspace/releases
|
||||
3. Extract and copy the `.otf` files to this directory
|
||||
|
||||
## Usage in Iced
|
||||
|
||||
Fonts will be embedded at compile time using `include_bytes!()` and loaded via Iced's font system.
|
||||
20
storybook-editor/assets/fonts/download-fonts.sh
Executable file
20
storybook-editor/assets/fonts/download-fonts.sh
Executable file
@@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
echo "Downloading Geist font..."
|
||||
curl -L "https://github.com/vercel/geist-font/releases/latest/download/Geist.zip" -o Geist.zip
|
||||
unzip -q Geist.zip
|
||||
cp Geist/static/Geist-Regular.otf ./
|
||||
cp Geist/static/Geist-Medium.otf ./
|
||||
cp Geist/static/Geist-SemiBold.otf ./
|
||||
rm -rf Geist Geist.zip
|
||||
|
||||
echo "Downloading Monaspace..."
|
||||
curl -L "https://github.com/githubnext/monaspace/releases/latest/download/monaspace-v1.101.zip" -o monaspace.zip
|
||||
unzip -q monaspace.zip
|
||||
cp monaspace-v1.101/fonts/otf/MonaspaceNeon-Regular.otf ./
|
||||
cp monaspace-v1.101/fonts/otf/MonaspaceNeon-SemiBold.otf ./
|
||||
rm -rf monaspace-v1.101 monaspace.zip
|
||||
|
||||
echo "Fonts downloaded successfully!"
|
||||
ls -lh *.otf
|
||||
Reference in New Issue
Block a user