You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 37ba483
Browse filesBrowse the repository at this point in the historyBrowse files
Updates to reflect changes in directory names (generate-docs.js and astro.config.mjs) while being mindful of astro component names (SLuaEvents.astro, etc). Ideally, publicly visible labels should show Lua, even if backend functions currently retain the older names. Also updated CLAUDE.md, taxonomy.md & CONTRIBUTING.md for SLua terms & links.
Copy file name to clipboardExpand all lines: CLAUDE.md
+21-21Lines changed: 21 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,7 +15,7 @@ All commands use pnpm:
15
15
-`pnpm build` - Build production site to ./dist/
16
16
-`pnpm preview` - Preview production build locally
17
17
-`pnpm astro check` - Run TypeScript type checking
18
-
-`pnpm generate:docs` - Generate all reference pages (functions, events, and constants) for both LSL and SLua from src/definitions/lsl_definitions.yaml
18
+
-`pnpm generate:docs` - Generate all reference pages (functions, events, and constants) for both LSL and Lua from src/definitions/lsl_definitions.yaml
19
19
20
20
## Architecture
21
21
@@ -30,8 +30,8 @@ Documentation lives in `src/content/docs/` with two main areas:
Files are `.md` or `.mdx` format. Routes auto-generate from file paths (e.g., `docs/script/lsl-reference/example.md` → `/script/lsl-reference/example/`).
37
37
@@ -71,13 +71,13 @@ All documentation should use a balanced and pragmatic tone that:
71
71
- Use "you" to address the reader directly
72
72
- Be clear and precise without being overly formal
73
73
- Explain the "why" behind concepts, not just the "what"
74
-
- Anticipate common confusion points (especially for LSL-to-SLua migration)
74
+
- Anticipate common confusion points (especially for LSL-to-Lua migration)
75
75
- Use code examples to illustrate concepts
76
76
- Avoid excessive enthusiasm or marketing language
77
77
- Don't oversimplify or condescend to the reader
78
78
79
79
**Example of preferred tone:**
80
-
> "Tables are SLua's most powerful data structure. Unlike LSL's separate `list` type, tables serve two purposes: they work as both arrays (like LSL lists) and dictionaries/maps (which LSL doesn't have)."
80
+
> "Tables are Lua's most powerful data structure. Unlike LSL's separate `list` type, tables serve two purposes: they work as both arrays (like LSL lists) and dictionaries/maps (which LSL doesn't have)."
81
81
82
82
## Adding Documentation
83
83
@@ -104,7 +104,7 @@ All documentation should use a balanced and pragmatic tone that:
104
104
105
105
The repository includes reference materials in the `context/` directory (gitignored):
106
106
107
-
**context/lsl_definitions.yaml** - Comprehensive language definitions for both LSL and SLua, including:
107
+
**context/lsl_definitions.yaml** - Comprehensive language definitions for both LSL and Lua, including:
108
108
- Constants with types, values, and tooltips
109
109
- Functions with signatures, parameters, return types, and descriptions
110
110
- Events and their parameters
@@ -117,22 +117,22 @@ The repository includes reference materials in the `context/` directory (gitigno
117
117
-`flow-control/` - Control flow documentation
118
118
-`lsl-portal/` - General LSL portal pages, tutorials, protocols, examples
- Licensed under Creative Commons Attribution 4.0 (text) and MIT License (code examples)
129
-
- Use as reference for SLua language documentation and migration patterns
129
+
- Use as reference for Lua language documentation and migration patterns
130
130
131
131
**context/taxonomy.md** - Proposed site architecture and content taxonomy:
132
132
- Scripting portal structure with sections for Getting Started, Features, Guides, and Recipes
133
-
- Planned organization for SLua/LSL language documentation
133
+
- Planned organization for Lua/LSL language documentation
134
134
- Standard library/reference organization patterns
135
-
- Site-wide SLua/LSL toggle considerations
135
+
- Site-wide Lua/LSL toggle considerations
136
136
137
137
These files are reference materials for building the new documentation. They should be transformed into clean, modern Markdown/MDX format in `src/content/docs/`.
138
138
@@ -153,20 +153,20 @@ When building documentation, use `context/lsl_definitions.yaml` as the authorita
153
153
154
154
## Reference Page Generation
155
155
156
-
The project includes an automated generator for creating LSL and SLua reference pages for functions, events, and constants:
156
+
The project includes an automated generator for creating LSL and Lua reference pages for functions, events, and constants:
157
157
158
158
**Generator Script:**`scripts/generate-docs.js`
159
159
- Parses `src/definitions/lsl_definitions.yaml` to extract definitions
160
-
- Supports both LSL and SLua/Luau generation
161
-
- Creates MDX pages with appropriate components (LSLFunction/SLuaFunction, LSLEvent/SLuaEvent, LSLConstant/SLuaConstant)
160
+
- Supports both LSL and Lua/Luau generation
161
+
- Creates MDX pages with appropriate components (LSLFunction/LuaFunction, LSLEvent/LuaEvent, LSLConstant/LuaConstant)
Generated pages support custom content that persists across regenerations. Any content after the component tag (e.g., `<LSLFunction />`, `<LSLEvent />`, `<LSLConstant />`) and before the optional attribution footer will be preserved when re-running the generator. This allows you to:
@@ -178,7 +178,7 @@ Generated pages support custom content that persists across regenerations. Any c
178
178
**Generated Page Structure:**
179
179
1. Frontmatter with title and description
180
180
2. Component import statements
181
-
3. Reference component tag (LSLFunction/SLuaFunction, LSLEvent/SLuaEvent, or LSLConstant/SLuaConstant)
181
+
3. Reference component tag (LSLFunction/LuaFunction, LSLEvent/LuaEvent, or LSLConstant/LuaConstant)
182
182
4. Custom content marker comment: `{/* DO NOT EDIT ABOVE THIS LINE */}`
183
183
5. Custom content section for examples, notes, and related links
These components dynamically load data from `src/definitions/lsl_definitions.yaml` at build time, requiring only the name as a prop. All metadata (signatures, parameters, types, values, energy costs, sleep times, badges) is loaded from the YAML file.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -44,10 +44,10 @@ Visit http://localhost:4321 to see your changes.
44
44
The project auto-generates function and event reference pages from LSL definitions:
45
45
46
46
```bash
47
-
# Fetch latest LSL/SLua definitions from GitHub
47
+
# Fetch latest LSL/Lua definitions from GitHub
48
48
pnpm fetch:definitions
49
49
50
-
# Generate all documentation (LSL + SLua functions and events)
50
+
# Generate all documentation (LSL + Lua functions and events)
51
51
pnpm generate:docs
52
52
```
53
53
@@ -58,7 +58,7 @@ pnpm generate:docs
58
58
All documentation lives in `src/content/docs/` as Markdown (`.md`) or MDX (`.mdx`) files:
59
59
60
60
-`script/lsl-reference/` - LSL language reference
61
-
-`script/slua-reference/` - SLua language reference
61
+
-`script/lua-reference/` - Lua language reference
62
62
-`script/guides/` - Scripting tutorials and guides
63
63
-`build/` - Building and construction documentation
64
64
@@ -73,7 +73,7 @@ Use a **balanced, pragmatic tone**:
73
73
- Avoid marketing language or excessive enthusiasm
74
74
75
75
**Example:**
76
-
> "Tables are SLua's most powerful data structure. Unlike LSL's separate `list` type, tables serve two purposes: they work as both arrays (like LSL lists) and dictionaries/maps (which LSL doesn't have)."
76
+
> "Tables are Lua's most powerful data structure. Unlike LSL's separate `list` type, tables serve two purposes: they work as both arrays (like LSL lists) and dictionaries/maps (which LSL doesn't have)."
77
77
78
78
### Adding New Pages
79
79
@@ -123,7 +123,7 @@ default {
123
123
```
124
124
````
125
125
126
-
### SLua Code Blocks
126
+
### Lua Code Blocks
127
127
128
128
Use `luau` (not `lua`) and **always include type annotations**:
129
129
@@ -135,7 +135,7 @@ end)
135
135
```
136
136
````
137
137
138
-
See [SLUA_REFERENCE.md](SLUA_REFERENCE.md) for detailed SLua documentation guidelines.
138
+
See [LUA_REFERENCE.md](src/content/docs/script/lua-reference/index.mdx) for detailed Lua documentation guidelines.
139
139
140
140
## Internationalization
141
141
@@ -156,7 +156,7 @@ The site supports additional languages. To add translated content:
│ ├── definitions/ # LSL/SLua language definitions (YAML)
159
+
│ ├── definitions/ # LSL/Lua language definitions (YAML)
160
160
│ └── styles/ # Custom CSS
161
161
├── astro.config.mjs # Astro configuration
162
162
└── CLAUDE.md # Detailed project guidance
@@ -173,7 +173,7 @@ This repository uses different licenses for different types of content:
173
173
-**Legacy wiki content** (pages with `<WikiAttribution>` component) remains under [CC-BY-SA 3.0](https://creativecommons.org/licenses/by-sa/3.0/)
174
174
175
175
**Code Examples:**
176
-
-**All code examples** (LSL, SLua, JavaScript, etc.) must be contributed under [CC0 1.0 (Public Domain)](https://creativecommons.org/publicdomain/zero/1.0/)
176
+
-**All code examples** (LSL, Lua, JavaScript, etc.) must be contributed under [CC0 1.0 (Public Domain)](https://creativecommons.org/publicdomain/zero/1.0/)
177
177
- This means anyone can use your code examples freely without attribution requirements
0 commit comments