feat(swift): add treesit support

This commit is contained in:
Henrik Lissner
2025-06-28 19:41:29 +02:00
parent 617d8411e6
commit 3155fefd47
3 changed files with 13 additions and 4 deletions

View File

@ -19,6 +19,7 @@ This module adds support for the [[https://developer.apple.com/swift/][Swift pro
** Packages
- [[doom-package:swift-mode]]
- [[doom-package:swift-ts-mode]] if [[doom-module:+tree-sitter]]
- if [[doom-module:+lsp]]
- [[doom-package:lsp-sourcekit]]
- else

View File

@ -1,13 +1,18 @@
;;; lang/swift/config.el -*- lexical-binding: t; -*-
(after! swift-mode
(use-package! swift-mode
:defer t
:init
(when (modulep! +tree-sitter)
(set-tree-sitter! 'swift-mode 'swift-ts-mode
'((swift :url "https://github.com/alex-pinkus/tree-sitter-swift"))))
:config
(set-repl-handler! 'swift-mode #'run-swift)
(set-eglot-client! 'swift-mode '("sourcekit-lsp"))
(when (modulep! +lsp)
(add-hook 'swift-mode-local-vars-hook #'lsp! 'append))
(when (modulep! +tree-sitter)
(add-hook 'swift-mode-local-vars-hook #'tree-sitter! 'append)))
(add-hook 'swift-mode-local-vars-hook #'lsp! 'append)))
(use-package! flycheck-swift

View File

@ -10,3 +10,6 @@
(package! company-sourcekit :pin "a1860ad4dd3a542acd2fa0dfac2a388cbdf4af0c"))
(when (modulep! :checkers syntax -flymake)
(package! flycheck-swift :pin "4c5ad401252400a78da395fd56a71e67ff8c2761")))
(when (modulep! +tree-sitter)
(package! swift-ts-mode :pin "43a0be79f9758fc444f5fafdff6023c4c7bf80f7"))