Skip to content

Commit 5b01984

Browse files
authored
Add support for GNAT Project. (#4417)
1 parent 0f85b38 commit 5b01984

File tree

5 files changed

+26
-0
lines changed

5 files changed

+26
-0
lines changed

CHANGELOG.org

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
* Changelog
22
** Unreleased 9.0.1
3+
* Add support for GNAT Project (~gpr-mode~, ~gpr-ts-mode~).
34

45
** 9.0.0
56
* Add language server config for QML (Qt Modeling Language) using qmlls.

clients/lsp-ada.el

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,17 @@
178178
:synchronize-sections '("ada")
179179
:environment-fn 'lsp-ada--environment))
180180

181+
(lsp-register-client
182+
(make-lsp-client :new-connection (lsp-stdio-connection
183+
(lambda () (list (lsp-package-path 'ada-ls)
184+
"--language-gpr")))
185+
:major-modes '(gpr-mode gpr-ts-mode)
186+
:priority -1
187+
:download-server-fn (lambda (_client callback error-callback _update?)
188+
(lsp-package-ensure 'ada-ls callback error-callback))
189+
:server-id 'gpr-ls
190+
:environment-fn #'lsp-ada--environment))
191+
181192
(lsp-consistency-check lsp-ada)
182193

183194
(provide 'lsp-ada)

docs/lsp-clients.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -364,6 +364,15 @@
364364
"installation-url": "https://github.com/nametake/golangci-lint-langserver#installation",
365365
"debugger": "Not available"
366366
},
367+
{
368+
"name": "gpr",
369+
"full-name": "GNAT Project",
370+
"server-name": "ada_language_server",
371+
"server-url": "https://github.com/AdaCore/ada_language_server",
372+
"installation-url": "https://github.com/AdaCore/ada_language_server#install",
373+
"lsp-install-server": "gpr-ls",
374+
"debugger": "Not available"
375+
},
367376
{
368377
"name": "grammarly",
369378
"full-name": "Grammarly",

lsp-mode.el

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -800,6 +800,8 @@ Changes take effect only when a new session is started."
800800
("^yang\\.settings$" . "jsonc")
801801
(ada-mode . "ada")
802802
(ada-ts-mode . "ada")
803+
(gpr-mode . "gpr")
804+
(gpr-ts-mode . "gpr")
803805
(awk-mode . "awk")
804806
(awk-ts-mode . "awk")
805807
(nxml-mode . "xml")
@@ -6008,6 +6010,8 @@ Request codeAction/resolve for more info if server supports."
60086010
(erlang-mode . erlang-indent-level) ; Erlang
60096011
(ess-mode . ess-indent-offset) ; ESS (R)
60106012
(go-ts-mode . go-ts-mode-indent-offset)
6013+
(gpr-mode . gpr-indent-offset) ; GNAT Project
6014+
(gpr-ts-mode . gpr-ts-mode-indent-offset)
60116015
(hack-mode . hack-indent-offset) ; Hack
60126016
(java-mode . c-basic-offset) ; Java
60136017
(java-ts-mode . java-ts-mode-indent-offset)

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ nav:
8181
- GDScript: page/lsp-gdscript.md
8282
- Gleam: page/lsp-gleam.md
8383
- GLSL: page/lsp-glsl.md
84+
- GNAT Project: page/lsp-gpr.md
8485
- Go (gopls): manual-language-docs/lsp-gopls.md
8586
- Grammarly: page/lsp-grammarly.md
8687
- GraphQL: page/lsp-graphql.md

0 commit comments

Comments
 (0)