39d77a8cae
Reorganize into grammars/<name>/ subdirs ( Zed's [grammars.*] supports a `path` field, so both grammars ship from this repo without a sibling- repo split ). Vendor tree-sitter-lua as the fork base for tree-sitter- pico8-lua; upstream MIT license preserved at grammars/pico-8-lua/ UPSTREAM-LICENSE.md. Dialect features added: != as ~= alias, \ integer divide, ^^ binary xor, >>> / <<> / >>< shifts and rotates, compound-assignment statements, memory peek prefixes @ % $ (% coexists with binary modulo), single-line `if (cond) stmt [else stmt]` and `while (cond) stmt`, statement-level print shorthand ?, and `#include path` directives. Identifier rule no longer accepts ! ? @ $ ( upstream did ). Pico-8 Lua language ( languages/pico-8-lua/, suffix .p8lua ) ships highlights with the full ~110 PICO-8 builtins as @function.builtin. The cart injection now hands __lua__ bodies to pico-8-lua, so .p8 carts and bare .p8lua files share the dialect-aware grammar. Examples updated to exercise the dialect end-to-end. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
33 lines
691 B
Lua
33 lines
691 B
Lua
pico-8 cartridge // http://www.pico-8.com
|
|
version 42
|
|
__lua__
|
|
-- hello cartridge — exercises Pico-8 dialect features
|
|
#include shared.p8lua
|
|
|
|
function _init()
|
|
cls()
|
|
t = 0
|
|
end
|
|
|
|
function _update()
|
|
t += 1
|
|
if (btn(4)) sweep_palette()
|
|
move()
|
|
end
|
|
|
|
function _draw()
|
|
cls(1)
|
|
draw_blob()
|
|
?"frame:"..t, 0, 120, 7
|
|
end
|
|
__gfx__
|
|
00000000111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
|
__gff__
|
|
00000000000000000000000000000000
|
|
__map__
|
|
0000000000000000
|
|
__sfx__
|
|
010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
|
__music__
|
|
00 41424344
|