From ae2cdd1c9114169d2fbe34ebcd1f77b6a4165488 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Wed, 9 Apr 2025 18:19:19 -0400 Subject: [PATCH] refactor(cc): configure clang-format in :editor format These should be upstreamed. --- modules/editor/format/config.el | 6 ++++++ modules/lang/cc/config.el | 11 ----------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/modules/editor/format/config.el b/modules/editor/format/config.el index df38a12ad..fa2fc1e15 100644 --- a/modules/editor/format/config.el +++ b/modules/editor/format/config.el @@ -79,6 +79,12 @@ This is controlled by `+format-on-save-disabled-modes'." ;; `+format-with-lsp-mode' in the appropriate modes. (add-to-list 'apheleia-formatters '(lsp . +format-lsp-buffer)) + ;; Use clang-format for cuda and protobuf files. + (add-to-list 'apheleia-mode-alist '(cuda-mode . clang-format)) + (add-to-list 'apheleia-mode-alist '(protobuf-mode . clang-format)) + (add-to-list 'apheleia-formatters-mode-extension-assoc '(cuda-mode . ".cu")) + (add-to-list 'apheleia-formatters-mode-extension-assoc '(protobuf-mode . ".proto")) + ;; Apheleia's default clang-format config doesn't respect `c-basic-offset', so ;; force it to in the absence of a .clang-format file. (setf (alist-get 'clang-format apheleia-formatters) diff --git a/modules/lang/cc/config.el b/modules/lang/cc/config.el index 1209069b3..a1b797271 100644 --- a/modules/lang/cc/config.el +++ b/modules/lang/cc/config.el @@ -32,17 +32,6 @@ This is ignored by ccls.") (set-docsets! 'c-mode "C") (set-docsets! 'c++-mode "C++" "Boost") (set-electric! '(c-mode c++-mode objc-mode java-mode) :chars '(?\n ?\} ?\{)) - (set-formatter! - 'clang-format - '("clang-format" - "-assume-filename" - (or (buffer-file-name) - (cdr (assoc major-mode - '((c-mode . ".c") - (c++-mode . ".cpp") - (cuda-mode . ".cu") - (protobuf-mode . ".proto")))))) - :modes '(c-mode c++-mode protobuf-mode cuda-mode)) (set-rotate-patterns! 'c++-mode :symbols '(("public" "protected" "private") ("class" "struct")))