Skip to content

Commit

Permalink
Formatting and improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
hoontee committed Nov 30, 2023
1 parent c86a4ac commit 5511934
Show file tree
Hide file tree
Showing 7 changed files with 36 additions and 95 deletions.
2 changes: 1 addition & 1 deletion docs/.vitepress/config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ export default defineConfig({
text: 'Usage',
collapsed: false,
items: [
{ text: 'Command Line', link: '/lync/getting-started/usage/command-line' },
{ text: 'Lync Executable', link: '/lync/getting-started/usage/lync-executable' },
{ text: 'Studio Plugin', link: '/lync/getting-started/usage/studio-plugin' }
]
},
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Command Line

### List of Arguments
# Lync Executable
The Lync executable can start a live sync session, build to file, and fetch downloads.
::: info Command Line Arguments
- `LYNC HELP` - Displays the list of available arguments.
- `LYNC CONFIG` - Opens the config file.
- `LYNC SERVE project.json? REMOTE?` - Syncs the project.
Expand All @@ -12,26 +12,27 @@


`REMOTE?` - Connect to the project's `remoteAddress` instead of the localhost.
:::

::: warning
`REMOTE` is unimplemented!
:::

### Live Sync
## Live Sync

The `SERVE` and `OPEN` modes start live sync.

`OPEN` functions the same as `SERVE`, except it also builds the project and opens it in Roblox Studio.

Connect to the session through the Roblox Studio plugin.

### Build to File
## Build to File

The `BUILD` mode builds the project to a place (or model) file.

This mode works without having Roblox Studio installed and without an internet connection.

### Fetch Downloads
## Fetch Downloads

The `FETCH` mode downloads the list of sources in the project file.

Expand Down
13 changes: 7 additions & 6 deletions docs/lync/getting-started/usage/studio-plugin.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
# Studio Plugin

### Lync Client Widget
The **Lync Client** widget is used to interface with an active live sync session.
The Studio plugin interfaces with an active live sync session in order to sync content.

When using the `OPEN` mode, the plugin will attempt to connect automatically.

## Lync Client Widget
The **Lync Client** widget is used to control an active live sync session.

- **Sync** / **Pause** / **Resume** - Toggles live sync.
- **Server Port** - Used only when the default port isn't available for live sync.
- **Save Script** / **Revert Script** - When live sync is enabled, the open script in Roblox Studio can be saved to disk, or reverted to its linked file's contents.

### Playtest Sync
## Playtest Sync
When **Playtest Sync** is enabled from the toolbar, file changes are synced during a singleplayer or multiplayer test session.

Only the Roblox server-side (i.e., not client-side) will sync changes.

### Save Terrain
## Save Terrain
The **Save Terrain** toolbar button is used to snapshot a [TerrainRegion](https://create.roblox.com/docs/reference/engine/classes/TerrainRegion) for use inside a project.

Activating it opens a file save dialog.

### Unsaved Models Widget
## Unsaved Models Widget
A cube icon will appear in the bottom right corner of the viewport whenever a synced model is modified.

Clicking on the icon opens the **Unsaved Models** widget which displays a list of all modified synced models.
Expand Down
15 changes: 10 additions & 5 deletions docs/lync/introduction/community-tooling.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,29 +3,34 @@ Although most (if not all) were originally designed with Rojo in mind, the follo

This list is by no means complete.

## Toolchain and Package Managers
::: info Toolchain and Package Managers
- [Aftman](https://github.com/LPGhatguy/aftman)
- [~~Foreman~~](https://github.com/Roblox/foreman) *(Abandoned)*
- [Wally](https://wally.run/)
:::

## Language Servers and Linters
::: info Language Servers and Linters
- [Luau Language Server](https://github.com/JohnnyMorganz/luau-lsp)
- [~~Roblox Luau Language Server~~](https://github.com/NightrainsRbx/RobloxLsp) *(Abandoned)*
- [roblox-lua-autofills](https://github.com/Kampfkarren/roblox-lua-autofills)
- [selene](https://kampfkarren.github.io/selene/)
- [Tooling Language Server](https://github.com/filiptibell/tooling-language-server)
:::

## Script Formatting and Documentation
::: info Script Formatting and Documentation
- [darklua](https://darklua.com/)
- [Moonwave](https://eryn.io/moonwave/)
- [StyLua](https://github.com/JohnnyMorganz/StyLua)
:::

## Cross Compilers
::: info Cross Compilers
- [Haxe](https://haxe.org/)
- [JsToLua](https://github.com/Roblox/js-to-lua)
- [MoonScript](https://moonscript.org/)
- [roblox-pyc](https://robloxpyc.gitbook.io/roblox-pyc/)
- [roblox-ts](https://roblox-ts.com/)
:::

## Other
::: info Other
- [Roblox UI](https://github.com/filiptibell/roblox-ui)
:::
6 changes: 4 additions & 2 deletions docs/lync/project-format/files/script-directives.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
# Script Directives
Add the following directives to the top of your script to control its [RunContext](https://create.roblox.com/docs/reference/engine/enums/RunContext) or to disable it:
Add Script Directives to the top of your script to control its [RunContext](https://create.roblox.com/docs/reference/engine/enums/RunContext) or to disable it.
::: info Script Directives
* `--@script` / `--@script:legacy`
* `--@script:server`
* `--@script:client`
* `--@localscript` / `--@script:localscript`
* `--@disabled`
* `--@disabled`
:::
8 changes: 7 additions & 1 deletion docs/lync/project-format/files/supported-files.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
# Supported Files
Different file types are synced into the place in different forms.

All forms of Roblox content can be stored on the filesystem and synced.

::: info Supported Files
| Concept | File Extension | Roblox ClassName |
|-|-|-|
| Folders | any directory | Folder
| Folders | any directory | [Folder](https://create.roblox.com/docs/reference/engine/classes/Folder)
| Scripts | `LUA`/`LUAU` | [LuaSourceContainer](https://create.roblox.com/docs/reference/engine/classes/LuaSourceContainer) * |
| Models | `RBXM`/`RBXMX` | Varies |
| JSON Objects | `JSON` | [ModuleScript](https://create.roblox.com/docs/reference/engine/classes/ModuleScript) |
Expand All @@ -17,3 +22,4 @@
| Meta Files | `*.Meta.JSON` / `YAML` / `TOML` | N/A |

\* Can be [ModuleScript](https://create.roblox.com/docs/reference/engine/classes/ModuleScript), [Script](https://create.roblox.com/docs/reference/engine/classes/Script), or [LocalScript](https://create.roblox.com/docs/reference/engine/classes/ModuleScript) depending on the script run context directive
:::
74 changes: 0 additions & 74 deletions temp
Original file line number Diff line number Diff line change
@@ -1,78 +1,4 @@

### Legend
| Symbol | Meaning |
|-|-|
| ✔ | Available |
| ❌️ | Unavailable |
| ➖ | Pending / WIP |

### Sync Features
| | Lync | Rojo |
|-|-|-|
| Playtest Sync | ✔ | ❌️ |
| Full Reverse Sync | ❌️ | ➖ |
| Manual Reverse Script Sync | ✔ | ❌️ |
| Server IP Address | ➖ | ✔ |
| Server Port | ✔ | ✔ |
| Multiple Project Serving | ❌️ | ✔ |
| Unsaved Model Warnings | ✔ | ❌️ |
| Patch Viewer | ❌️ | ✔ |

### Project Features
| | Lync | Rojo |
|-|-|-|
| `RunContext` / `Enabled` Script Directives | ✔ | ❌️ |
| Package Management | ✔ | ❌️ |
| Custom File Downloads | ✔ | ❌️ |
| Automated Jobs | ✔ | ❌️ |
| Automatic Sourcemap Generation | ✔ | ❌️ |

### Misc Features
| | Lync | Rojo |
|-|-|-|
| Automatic Updates | ✔ | ❌️ |
| Offline Builds | ✔ | ✔ |
| Place to Project Tool | ❌️ | ➖ |

### File Types
| | Lync | Rojo |
|-|-|-|
| `*.Project.JSON` | ✔ | ✔ |
| `*.Model.JSON` | ✔ | ✔ |
| `RBXM`/`RBXMX` | ✔ | ✔ |
| `LUAU`/`LUA` | ✔ | ✔ |
| `Init.LUA` (Anonymous) | ✔ | ✔ |
| `*.Init.LUA` (Named) | ✔ | ❌️ |
| `JSON` | ✔ | ✔ |
| `YAML` | ✔ | ❌️ |
| `TOML` | ✔ | ✔ |
| `XLSX`/`XLS` | ✔ | ❌️ |
| `TXT` | ✔ | ✔ |
| `CSV` ([LocalizationTable](https://create.roblox.com/docs/reference/engine/classes/LocalizationTable)) | ➖ | ✔ |
| `*.Meta.JSON` | ✔ | ✔ |
| `*.Meta.YAML` | ✔ | ❌️ |
| `*.Meta.TOML` | ✔ | ❌️ |

### Roblox Types
| | Lync | Rojo |
|-|-|-|
| Properties | ✔ | ✔ |
| Attributes | ✔ | ✔ |
| Tags | ✔ | ✔ |
| Terrain | ✔ | ✔ |
| Terrain Material Colors | ✔ | ✔ |

### Syntax
| Lync | Rojo |
|-|-|
| [ "Color3.new(...)" ] | [ ... ] |
| $attributes | $properties.Attributes |
| $tags | $properties.{any array} |
| $clearOnSync | $ignoreUnknownInstances |
| Terrain.$terrainRegion | Terrain.$path |
| Terrain.$terrainMaterialColors | Terrain.$path |


> [!NOTE]
> Complex expressions in property fields may not be supported by other tools, so when releasing packages made with Lync, avoid using things like math or string functions.
>
Expand Down

0 comments on commit 5511934

Please sign in to comment.