diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f284e80..3cee78a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,6 +24,12 @@ jobs: - name: Install dependencies run: npm install + - name: Install autobuild + run: npm run bootstrap:autobuild + + - name: Sync definition artifacts + run: npm run definitions:sync + - name: Run linter run: npm run lint @@ -55,6 +61,12 @@ jobs: - name: Install dependencies run: npm install + - name: Install autobuild + run: npm run bootstrap:autobuild + + - name: Sync definition artifacts + run: npm run definitions:sync + - name: Install vsce (VS Code Extension Manager) run: npm install -g @vscode/vsce diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 055859b..9793774 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -377,6 +377,12 @@ jobs: - name: Install dependencies run: npm install + - name: Install autobuild + run: npm run bootstrap:autobuild + + - name: Sync definition artifacts + run: npm run definitions:sync + - name: Compile extension run: npm run vscode:prepublish diff --git a/.gitignore b/.gitignore index 3945be4..a9c7c73 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,9 @@ node_modules *.code-workspace .vscode/settings.json .vscode/lsl-lsp-server.log +.autobuild/ +/data/secondlife_selene.yml +/data/lsl_keywords.xml +/data/lua_keywords.xml +/data/secondlife.d.luau +/data/secondlife.docs.json diff --git a/.vscodeignore b/.vscodeignore index 2b6bf53..96f9b94 100644 --- a/.vscodeignore +++ b/.vscodeignore @@ -2,6 +2,7 @@ .vscode-test/** .github/** .* +.autobuild/** src/** out/test/** data/dev/** diff --git a/README.md b/README.md index 46dcb63..a0bc855 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,7 @@ The Second Life External Scripting Extension transforms VS Code into a developme - **WebSocket Connection**: Direct communication with Second Life viewer - **Live Synchronization**: Real-time script editing and updates - **External Editing**: Edit scripts externally while maintaining viewer session +- **Pinned Object Explorer Items**: Pin important objects in the Second Life (Inworld) explorer, keep them visible while disconnected, and auto-restore them on reconnect - **Configurable Networking**: Customizable WebSocket port and connection settings ### Development Tools diff --git a/autobuild.xml b/autobuild.xml new file mode 100644 index 0000000..3e1ec1a --- /dev/null +++ b/autobuild.xml @@ -0,0 +1,77 @@ + + + + version + 1.3 + type + autobuild + installables + + lsl_definitions + + platforms + + common + + archive + + hash + c9928095cf40377e901458f5240305a7af2c554d + hash_algorithm + sha1 + url + https://github.com/secondlife/lsl-definitions/releases/download/v0.6.12/lsl_definitions-0.6.12-common-29281156609.tar.zst + + name + common + + + license + MIT + license_file + LICENSES/lsl_definitions.txt + copyright + Copyright (c) 2026, Linden Research, Inc. + version + 0.6.12 + name + lsl_definitions + description + LSL definitions + + + package_description + + platforms + + common + + configurations + + Release + + configure + + + build + + + default + True + name + Release + + + name + common + + + license + MIT + version + 1.0.0 + name + sl-vscode-plugin + + + diff --git a/data/syntax_def_default.json b/data/syntax_def_default.json deleted file mode 100644 index bd36ac1..0000000 --- a/data/syntax_def_default.json +++ /dev/null @@ -1,33491 +0,0 @@ -{ - "id": "default", - "lsl": { - "controls": { - "do": { - "tooltip": "do / while loop\\ndo {\\n...\\n} while ();" - }, - "else": { - "tooltip": "if / else block\\nif () {\\n...\\n[} else [if () {\\n...]]\\n}" - }, - "event": { - "deprecated": true, - "tooltip": "Undefined reserved word." - }, - "for": { - "tooltip": "for loop\\nfor (; ; )\\n{ ...\\n}" - }, - "if": { - "tooltip": "if / else block\\nif () {\\n...\\n[} else [if () {\\n...]]\\n}" - }, - "jump": { - "tooltip": "jump statement\\njump