Skir Language Support for Visual Studio CodeThis extension provides language support for the Skir language - a declarative language for representing data types, constants and APIs (similar to Protocol Buffer). Website: https://skir.build Features
Skir LanguageSkir is a language for representing data types, constants and APIs. It is designed for systems where different services are written in different languages but need to exchange structured data. Example:
Go to DefinitionNavigate to the definition of any symbol or import path:
Hover DocumentationHovering over a record, field, method or constant shows the doc comment attached to that declaration. Find All ReferencesPlace the cursor on any symbol and press Shift+F12 (or right-click → Find All References) to see every location in the workspace that references it. Rename SymbolPlace the cursor on a symbol name and press F2 (or right-click → Rename Symbol) to rename it and all its references atomically. Renaming is only supported for symbols defined in the current workspace; symbols from external dependencies cannot be renamed. DiagnosticsThe extension continuously validates your files and reports errors in the Problems panel:
Auto-CompletionPress Ctrl+Space (or ⌃Space on macOS) at any point in a
Suggestions are derived from the current state of all modules in the workspace, so they stay up to date as you edit. Automatic ImportsWhen you press Ctrl+Space on an unqualified symbol name, the extension also suggests symbols from modules that are not yet imported in the current file. Selecting such a suggestion automatically inserts the corresponding import statement at the top of the file:
FormattingDocuments are formatted automatically on save. You can also trigger formatting manually with Shift+Alt+F (or right-click → Format Document). Import Updates on File Rename / MoveWhen you rename or move one or more
Choosing Update Imports rewrites the import block in every affected file so that paths reflect the new file location. The update is applied atomically as a single workspace edit, so it can be undone in one step with Ctrl+Z. This also handles bulk operations: if several files are moved together (e.g. an entire directory), cross-references between the moved files are updated correctly, in addition to references from files that stayed in place. RequirementsNo special requirements for this extension. |