OxL Справочник OxL
РусскийEnglish

Sublime Text

  1. Установите пакет LSP (Package Control → Install Package → LSP).
  2. Создайте синтаксис: Tools → Developer → New Syntax… и сохраните OxL.sublime-syntax в Packages/User:
yaml
%YAML 1.2
---
name: OxL
file_extensions: [oxl]
scope: source.oxl
contexts:
  main:
    - match: '///.*$'
      scope: comment.line.documentation.oxl
    - match: '//.*$'
      scope: comment.line.double-slash.oxl
    - match: '"'
      push:
        - meta_scope: string.quoted.double.oxl
        - match: '\\.'
          scope: constant.character.escape.oxl
        - match: '"'
          pop: true
    - match: '\b[0-9][0-9_]*(\.[0-9]+)?(ms|us|ns|s|m|h|d)?\b'
      scope: constant.numeric.oxl
    - match: '@[A-Za-z_][A-Za-z0-9_]*'
      scope: storage.modifier.annotation.oxl
    - match: '\b(fn|let|var|const|data|enum|interface|impl|actor|msg|service|rpc|saga|undo|pipeline|topic|cluster|role|config|test|fixture|mock|use|pub|match|if|else|for|while|loop|return|fail|await|spawn|scope|select|atomic|unsafe|import|extern|export|where|in|is|as)\b'
      scope: keyword.control.oxl
  1. Preferences → Package Settings → LSP → Settings:
json
{
  "clients": {
    "oxl": {
      "enabled": true,
      "command": ["oxl", "lsp"],
      "selector": "source.oxl",
      "initializationOptions": { "debounceMs": 150 }
    }
  },
  "show_inlay_hints": true,
  "lsp_format_on_save": true
}

Включить сервер для проекта: Command Palette → LSP: Enable Language Server in Project → oxl. Диагностики показываются в панели и на полях, F12 — определение, Shift+F12 — ссылки, Ctrl+Alt+R — переименование (стандартные сочетания пакета LSP). Отладчик в Sublime Text отсутствует; пользуйтесь oxl test --debug=lldb в терминале (отладка).