use c-ts-mode and c++-ts-mode when available

This commit is contained in:
zedhugh committed 2023-10-10 01:54:36 +08:00
1 parent 2f3efabd0e
commit 64ef980ff2
3 files changed
+16 -1

No files matched your search

+1
View File
@@ -115,6 +115,7 @@
(setq fill-column 80)))
(add-hook 'c-mode-common-hook #'display-fill-column-indicator-mode)
(add-hook 'c-ts-base-mode-hook #'display-fill-column-indicator-mode)
(unless (featurep 'server) (require 'server))
(unless (server-running-p) (server-start))
+10 -1
View File
@@ -29,6 +29,13 @@
(eglot--highlight-piggyback cb)
t)))
(defun creature/eglot-c-mode-keybinding ()
(when (derived-mode-p 'c-mode 'c++-mode 'c-ts-mode 'c++-ts-mode)
(make-local-variable 'eglot-mode-map)
(lazy-load-set-keys
'(("C-M-\\" . eglot-format))
eglot-mode-map)))
(with-eval-after-load 'eglot
(setq eglot-events-buffer-size 0)
(setq eglot-confirm-server-initiated-edits nil)
@@ -36,6 +43,7 @@
(add-to-list 'eglot-ignored-server-capabilities :inlayHintProvider)
(add-hook 'eglot-managed-mode-hook #'creature/eglot-load-markdown-for-doc)
(add-hook 'eglot-managed-mode-hook #'creature/eglot-c-mode-keybinding)
;; variable `eglot-prefer-plaintext' invoked in eglot-1.14
;; and document only show one line by eldoc since eglot-1.14
@@ -63,7 +71,8 @@
bash-ts-mode
cmake-mode-hook
c-mode-hook
c++-mode-hook))
c++-mode-hook
c-ts-base-mode-hook))
(add-hook hook #'eglot-ensure))
+5
View File
@@ -10,6 +10,11 @@
(add-to-list 'major-mode-remap-alist '(js-mode . js-ts-mode))
(add-to-list 'major-mode-remap-alist '(javascript-mode . js-ts-mode)))
(when (treesit-ready-p 'c)
(add-to-list 'major-mode-remap-alist '(c-mode . c-ts-mode)))
(when (treesit-ready-p 'cpp)
(add-to-list 'major-mode-remap-alist '(c++-mode . c++-ts-mode)))
(when (treesit-ready-p 'cmake)
(add-to-list 'major-mode-remap-alist '(cmake-mode . cmake-ts-mode))))