e88d32f281
- pkg/lsp: JSON-RPC 2.0 LSP server (formatting, diagnostics, codeAction quick-fixes) - cmd/pgtidy: lsp and config subcommands - pkg/diagnostics: TextFix struct for byte-range autofixes - pkg/lint: MIG001/MIG003 autofixes, ApplyFixes helper, --fix flag on lint command - editors/vscode: TypeScript extension with LanguageClient, showVersion/showConfig/formatDocument commands, logo - editors/datagrip: Gradle JetBrains plugin via LSP4IJ, pluginIcon - .goreleaser.yaml, .github/workflows: CI + release pipeline - Makefile: snapshot, release, vscode-compile, vscode-package targets - go.mod + all imports: module path updated to git.warky.dev/wdevs/pgtidy - assets: logo files (256px, 128px, 1024px, ico)
88 lines
2.0 KiB
JSON
88 lines
2.0 KiB
JSON
{
|
|
"name": "pgtidy",
|
|
"displayName": "PgTidy",
|
|
"description": "PostgreSQL formatter and linter powered by pgtidy",
|
|
"version": "0.1.0",
|
|
"publisher": "warky-devs",
|
|
"author": {
|
|
"name": "Hein Puth",
|
|
"email": "hein.puth@gmail.com"
|
|
},
|
|
"icon": "assets/logo_256.png",
|
|
"license": "MIT",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://git.warky.dev/wdevs/PgTidy"
|
|
},
|
|
"engines": {
|
|
"vscode": "^1.85.0"
|
|
},
|
|
"categories": [
|
|
"Formatters",
|
|
"Linters"
|
|
],
|
|
"activationEvents": [
|
|
"onCommand:pgtidy.showVersion",
|
|
"onCommand:pgtidy.showConfig",
|
|
"onCommand:pgtidy.formatDocument"
|
|
],
|
|
"main": "./out/extension",
|
|
"contributes": {
|
|
"commands": [
|
|
{
|
|
"command": "pgtidy.showVersion",
|
|
"title": "Show Version",
|
|
"category": "PgTidy"
|
|
},
|
|
{
|
|
"command": "pgtidy.showConfig",
|
|
"title": "Show Config",
|
|
"category": "PgTidy"
|
|
},
|
|
{
|
|
"command": "pgtidy.formatDocument",
|
|
"title": "Format Document",
|
|
"category": "PgTidy"
|
|
}
|
|
],
|
|
"languages": [
|
|
{
|
|
"id": "sql",
|
|
"extensions": [
|
|
".pgsql"
|
|
]
|
|
}
|
|
],
|
|
"configuration": {
|
|
"title": "PgTidy",
|
|
"properties": {
|
|
"pgtidy.path": {
|
|
"type": "string",
|
|
"default": "pgtidy",
|
|
"description": "Path to the pgtidy binary. Defaults to 'pgtidy' (must be on PATH)."
|
|
},
|
|
"pgtidy.enable": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"description": "Enable the PgTidy language server."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"scripts": {
|
|
"build": "tsc -p ./",
|
|
"compile": "tsc -p ./",
|
|
"watch": "tsc -watch -p ./",
|
|
"package": "vsce package --no-dependencies",
|
|
"lint": "eslint src --ext ts"
|
|
},
|
|
"dependencies": {
|
|
"vscode-languageclient": "^9.0.1"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^20.0.0",
|
|
"@types/vscode": "^1.85.0",
|
|
"@vscode/vsce": "^2.24.0",
|
|
"typescript": "^5.3.0"
|
|
}
|
|
} |