Skip to content

ViTeXFTW/ZeroSyntaxV2

Repository files navigation

ZeroSyntax v2

ZeroSyntax logo

CI Release License: MIT

ZeroSyntax v2 brings modern editor support to the INI scripting files used by Command & Conquer: Generals – Zero Hour. It helps modders and map authors find mistakes early and navigate large game or mod workspaces.

The project includes the IDE-independent zerosyntax-lsp language server and a VS Code extension with the server bundled.

What you get

  • Schema-aware diagnostics and quick fixes for blocks, fields, modules, values, references, module tags, and missing End statements.
  • Context-aware completion for INI keywords, enum values, flags, and definitions in your workspace.
  • Hover information, go to definition, find references, rename, workspace and document symbols, and folding.
  • Semantic highlighting for Generals INI files.
  • Optional indentation formatting, disabled by default so existing files are never reformatted without your consent.
  • Base-game and mod indexing for map.ini and solo.ini, including W3D model and bone checks.

Install the VS Code extension

ZeroSyntax supports Windows x64 and Linux x64 release builds.

  1. Download the .vsix for your platform from the latest GitHub release.
  2. In VS Code, open Extensions, choose Views and More Actions …, select Install from VSIX…, and open the downloaded file.
  3. Open your mod or map folder, then open an .ini file.

The extension treats .ini files as Generals INI. If a workspace also contains unrelated INI files, use VS Code's files.associations setting to limit that language association to the appropriate folders.

See the VS Code extension guide for settings and troubleshooting.

Use the standalone language server

Download the zerosyntax-lsp archive for your platform from the latest release, extract it, and configure your editor to run the binary over stdio.

See the language server guide for initialization options and editor integration details.

Configure map and model checks

For complete map.ini and solo.ini diagnostics, set zerosyntax.baseIniRoots in VS Code to the base game or mod directories and/or .big archives that load before the map. The same setting also enables W3D model and bone completion and validation.

{
  "zerosyntax.baseIniRoots": [
    "C:/Games/Zero Hour",
    "C:/Mods/MyMod/Data/INI",
    "C:/Mods/MyMod.big"
  ]
}

Documentation

License and trademarks

ZeroSyntax v2 is available under the MIT License.

ZeroSyntax v2 is an unofficial community project and is not affiliated with, endorsed by, or sponsored by Electronic Arts. Command & Conquer and related names are trademarks of their respective owners.

About

Successor to ZeroSyntax - All in one Language Server for Command & Conquer Generals + Zero Hour scripting format.

Resources

License

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Contributors