flink-sql-language-server
v0.3.0
Published
A LSP-based language server for Apache Flink SQL
Downloads
542
Readme
Flink SQL Language Server
A browser language server (LSP) for Apache Flink SQL, in addition to a simple vscode extension.
The language features are mainly implemented by Antlr4ts.
Functionality
This Language Server works for Flink SQL file. It has the following language features:
- Completions
- Diagnostics regenerated on each file change or configuration change
- Rename
- References
- FoldingRanges
- Hover
- DocumentFormatting
- CodeAction: QuickFix
- Custom Command
- extract SQL structure
- register schemas: auto-completion will include registered schemas
// structure would be undefined if uri is invalid
const structure = await commands.executeCommand<StructureResult | undefined>(
'extension.flinkSQL.extractStructure', // or ServerCommands.EXTRACT_SQL_STRUCTURE
window.activeTextEditor.document.uri.toString()
);
if (structure) {
// Do something
}
await commands.executeCommand<void>('extension.flinkSQL.registerSchemas', {
catalogs: [{ kind: 'catalog', label: 'testCatalog' }],
databases: [{ kind: 'database', catalog: 'testCatalog', label: 'testDatabase' }],
tables: [{ kind: 'table', catalog: 'testCatalog', database: 'testDatabase', label: 'testTable' }]
});