> ## Documentation Index
> Fetch the complete documentation index at: https://glua.bluejutzu.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Configure GLua Language Server

> GLua Language Server is configurable through VS Code settings, committed config files, and inline suppressions that all layer in a defined precedence.

GLua Language Server gives you three ways to control behavior: VS Code editor settings for personal preferences, committed config files for team-wide rules, and inline suppressions for one-off exceptions. These layers stack so you can enforce standards across a project while still allowing individual overrides where they make sense.

<CardGroup cols={3}>
  <Card title="Committed config files" icon="file-code" href="/configuration/config-files">
    Share linter and formatter settings with `.glua.json` and `.gluafmtrc.json`.
  </Card>

  <Card title="Inline suppressions" icon="message-square-x" href="/configuration/suppressions">
    Silence a specific diagnostic on a single line or block without changing global rules.
  </Card>

  <Card title="Diagnostic rules" icon="list" href="/reference/rules">
    Browse every diagnostic rule the linter can enforce or ignore.
  </Card>
</CardGroup>

## Precedence order

Settings are resolved from lowest to highest priority. A higher layer always wins when the same option is set in multiple places.

1. Built-in defaults
2. VS Code editor settings (`settings.json`)
3. `.editorconfig`
4. `.prettierrc`
5. `.glua.json` (linter)
6. `.gluafmtrc.json` (formatter)
7. Inline suppression comments

<Note>
  Generic tools like `.editorconfig` and `.prettierrc` are read so you do not repeat yourself. GLua-specific config files (`.glua.json` and `.gluafmtrc.json`) override them when there is a conflict.
</Note>

## The `glua.activation` setting

Use `glua.activation` to decide when the language server starts. The default is auto-detect, which activates only when GLua files are present in the workspace.

| Value         | Behavior                                      |
| ------------- | --------------------------------------------- |
| `auto-detect` | Starts only if GLua files are found (default) |
| `always`      | Starts for every workspace                    |
| `never`       | Never starts; treat everything as plain Lua   |

When the server is active, the VS Code status bar shows the current realm: `GLua · Server`, `GLua · Client`, `GLua · Shared`, or `Plain Lua`. You can toggle activation manually through the command palette if the auto-detection guess is wrong.


## Related topics

- [GLua Language Server: GMod Lua IDE Support](/index.md)
- [GLua Language Server Performance](/reference/performance.md)
- [GLua Language Server Commands](/reference/commands.md)
- [Realm Awareness in GLua Language Server](/features/realms.md)
