Compact Emacs C-lang configuration

This commit is contained in:
Fabio Scotto di Santolo
2025-12-24 16:16:29 +01:00
parent fc6f51343d
commit 6e20358ad6
5 changed files with 42 additions and 32 deletions

View File

@@ -3,7 +3,6 @@
(use-package ibuffer
:ensure t)
(use-package ibuffer-tramp
:ensure t)

View File

@@ -4,19 +4,6 @@
(setq tab-stop-list nil)
(setq indent-tabs-mode nil)
;; C / C++ fallback style (Linux-like)
(setq c-default-style "linux"
c-basic-offset 4
tab-width 8)
(add-hook 'c-mode-common-hook
(lambda ()
(setq indent-tabs-mode t)))
;; Tree-sitter C/C++
(setq c-ts-mode-indent-offset 4)
(setq c++-ts-mode-indent-offset 4)
;; Setting variables
(setq vc-follow-symlinks 't)
(prefer-coding-system 'utf-8-unix)

View File

@@ -1,2 +1,39 @@
;; c.el -*- lexical-binding: t; -*-
;; C / C++ fallback style (Linux-like)
(setq c-default-style "linux"
c-basic-offset 4
tab-width 8)
(add-hook 'c-mode-common-hook
(lambda ()
(setq indent-tabs-mode t)))
;; Tree-sitter C/C++
(setq c-ts-mode-indent-offset 4)
(setq c++-ts-mode-indent-offset 4)
(with-eval-after-load 'lsp
;; Clangd configurations
(setq lsp-clients-clangd-args
'("--background-index"
"--clang-tidy"
"--completion-style=detailed"
"--header-insertion=never"
"--header-insertion-decorators"
"--pch-storage=memory"
"--log=error"
"--ranking-model=heuristics"
"--malloc-trim"
"--limit-results=500"
"--limit-references=2000")))
(with-eval-after-load 'dap-mode
(require 'dap-cpptools))
(add-hook 'c-ts-mode-hook #'fscotto/disable-c-formatting)
(add-hook 'c-mode-hook #'fscotto/disable-c-formatting)
(provide 'c)
;;; c.el ends here

View File

@@ -19,8 +19,6 @@
(dap-ui-repl . ((side . bottom) (slot . 1) (window-height . 0.25)))
(dap-ui-console . ((side . bottom) (slot . 2) (window-height . 0.25)))))
;; Loading DAP adapters
;; For C/C++
(require 'dap-cpptools)
;; For Python
(require 'dap-python)
(setq dap-python-debugger 'debugpy))

View File

@@ -1,3 +1,5 @@
;;; lsp.el -*- lexical-binding: t; -*-
(use-package lsp-mode
:ensure t
:commands (lsp lsp-deferred)
@@ -13,8 +15,8 @@
:config
;; Performance
(setq lsp-enable-symbol-highlighting t
lsp-enable-snippet t
lsp-log-io nil
lsp-enable-snippet t
lsp-log-io nil
lsp-modeline-code-actions-enable nil
lsp-modeline-diagnostics-enable nil
lsp-signature-auto-activate nil
@@ -25,20 +27,7 @@
lsp-enable-indentation nil
;; Disable for huge projects
lsp-enable-file-watchers nil
lsp-idle-delay 0.5)
;; Clangd configurations
(setq lsp-clients-clangd-args
'("--background-index"
"--clang-tidy"
"--completion-style=detailed"
"--header-insertion=never"
"--header-insertion-decorators"
"--pch-storage=memory"
"--log=error"
"--ranking-model=heuristics"
"--malloc-trim"
"--limit-results=500"
"--limit-references=2000")))
lsp-idle-delay 0.5))
(use-package lsp-ui
:ensure t