2025-12-14 22:31:01 +11:00
|
|
|
;; -*- lexical-binding: t; -*-
|
|
|
|
|
|
|
|
|
|
(use-package cc-mode
|
2025-12-14 23:03:35 +11:00
|
|
|
:ensure nil
|
2025-12-14 23:46:29 +11:00
|
|
|
:init (setq-default c-basic-offset 2))
|
2025-12-14 22:31:01 +11:00
|
|
|
|
|
|
|
|
(when (treesit-available-p)
|
|
|
|
|
(use-package c-ts-mode
|
2025-12-14 23:46:29 +11:00
|
|
|
:ensure nil
|
2025-12-14 22:31:01 +11:00
|
|
|
:functions centaur-treesit-available-p
|
|
|
|
|
:init
|
2025-12-14 23:46:29 +11:00
|
|
|
(setq c-ts-mode-indent-offset 2)
|
2025-12-14 22:31:01 +11:00
|
|
|
|
|
|
|
|
(when (boundp 'major-mode-remap-alist)
|
|
|
|
|
(add-to-list 'major-mode-remap-alist '(c-mode . c-ts-mode))
|
|
|
|
|
(add-to-list 'major-mode-remap-alist '(c++-mode . c++-ts-mode))
|
|
|
|
|
(add-to-list 'major-mode-remap-alist
|
|
|
|
|
'(c-or-c++-mode . c-or-c++-ts-mode)))))
|
|
|
|
|
|
2025-12-14 23:46:29 +11:00
|
|
|
(with-eval-after-load 'eglot
|
|
|
|
|
(add-hook 'c-ts-mode-hook #'eglot-ensure)
|
|
|
|
|
(add-hook 'c++-ts-mode-hook #'eglot-ensure)
|
2025-12-14 23:00:58 +11:00
|
|
|
(add-to-list 'eglot-server-programs '((c++-mode c-mode) "clangd")))
|
2025-12-14 23:46:29 +11:00
|
|
|
|
2025-12-14 22:31:01 +11:00
|
|
|
|
|
|
|
|
(provide 'init-cc)
|