docs: add auto-editing features section to AGENTS.md
This commit is contained in:
@@ -283,6 +283,34 @@ The LSP supports goto declaration functionality for:
|
||||
|
||||
Usage: Place cursor on a variable or type name and press `gD` (or use LSP client command).
|
||||
|
||||
## Auto-Editing Features
|
||||
|
||||
### Auto-Uppercase Keywords
|
||||
When typing SCL keywords followed by a space, they are automatically converted to uppercase:
|
||||
- `if ` → `IF `
|
||||
- `then ` → `THEN `
|
||||
- `end_if` → `END_IF`
|
||||
- etc.
|
||||
|
||||
Works in `.scl`, `.udt`, and `.db` files.
|
||||
|
||||
### Auto-Semicolon for Control Structures
|
||||
When pressing Enter after an `END_*` control structure keyword, a semicolon is automatically added:
|
||||
- `END_IF` → `END_IF;`
|
||||
- `END_FOR` → `END_FOR;`
|
||||
- `END_WHILE` → `END_WHILE;`
|
||||
- `END_REPEAT` → `END_REPEAT;`
|
||||
- `END_CASE` → `END_CASE;`
|
||||
|
||||
Block definitions (END_VAR, END_FUNCTION, etc.) are NOT affected.
|
||||
|
||||
### Auto-Prefix Local Variables
|
||||
Local variables are automatically prefixed with `#` when typing space or semicolon after BEGIN:
|
||||
- `myVar := ` → `#myVar := `
|
||||
- `counter.in` → `#counter.in` (on dot)
|
||||
|
||||
Can be toggled with `:lua require("scl.auto_prefix").toggle()`.
|
||||
|
||||
## Keybindings (SCL/UDT files)
|
||||
|
||||
### Attribute Block Toggle
|
||||
@@ -304,9 +332,6 @@ Interactive expand/collapse of individual `{...}` blocks (uses `<Leader>x` prefi
|
||||
|
||||
| Key | Mode | Description |
|
||||
|-----|------|-------------|
|
||||
| `<Leader>xa` | Normal/Insert | Toggle attribute block under cursor |
|
||||
| `<Leader>xae` | Normal | Expand all attribute blocks |
|
||||
| `<Leader>xac` | Normal | Collapse all attribute blocks |
|
||||
| `<Space>mp` | Insert | Fill multiline FB parameters |
|
||||
| `<Tab>` | Insert | Jump to next parameter or regular Tab |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user