Organize Emacs configuration

This commit is contained in:
Fabio Scotto di Santolo
2025-12-24 15:56:55 +01:00
parent 0e396c05b2
commit fc6f51343d
8 changed files with 84 additions and 58 deletions

View File

@@ -32,12 +32,14 @@
'core/performance
'core/editor
'core/keybindings
'core/buffer
;; Tools
'tools/completion
'tools/project
'tools/lsp
'tools/dap
'tools/treesitter
;; Languages
'lang/c

View File

@@ -0,0 +1,22 @@
;;; buffer.el -*- lexical-binding: t; -*-
(use-package ibuffer
:ensure t)
(use-package ibuffer-tramp
:ensure t)
(use-package ibuffer-vc
:ensure t)
(use-package ibuffer-projectile
:ensure t)
(add-hook 'ibuffer-mode-hook
(lambda ()
(ibuffer-projectile-set-filter-groups)))
(provide 'buffer)
;;; buffer.el ends here

View File

@@ -53,17 +53,18 @@
;; Setting default directory for Org files
(setq org-directory "~/Remotes/pCloud/Org")
(use-package ivy
;; Highlight keywords to remember the activity when coding.
(use-package hl-todo
:ensure t
:config
(ivy-mode 1))
:commands (global-hl-todo-mode)
:init (global-hl-todo-mode))
(use-package consult
:ensure t
:defer t)
(use-package ibuffer
:ensure t)
(setq hl-todo-keyword-faces
'(("TODO" . "#94e2d5")
("FIXME" . "#f38ba8")
("DEBUG" . "#cba6f7")
("GOTCHA" . "#eba0ac")
("STUB" . "#89b4fa")))
(provide 'ui)
;;; ui.el ends here

View File

@@ -58,6 +58,14 @@
("gopls.analyses.useany" t)
("gopls.env" ((GO111MODULE . "on"))))))
(with-eval-after-load 'flycheck
;; Usa golangci-lint in Go
(add-hook 'go-ts-mode-hook
(lambda ()
(setq-local flycheck-checker 'golangci-lint)
(setq-local flycheck-check-syntax-automatically '(save mode-enabled))
(flycheck-mode 1))))
(use-package dap-dlv-go
:after (dap-mode go-ts-mode))

View File

@@ -1,3 +1,6 @@
(with-eval-after-load 'flycheck
(add-hook 'bash-ts-mode-hook 'flycheck-mode))
(use-package reformatter
:ensure t
:config

View File

@@ -1,30 +1,14 @@
;; Highlight keywords to remember the activity when coding.
(use-package hl-todo
;;; completion.el -*- lexical-binding: t; -*-
(use-package ivy
:ensure t
:commands (global-hl-todo-mode)
:init (global-hl-todo-mode))
:config
(ivy-mode 1))
(setq hl-todo-keyword-faces
'(("TODO" . "#94e2d5")
("FIXME" . "#f38ba8")
("DEBUG" . "#cba6f7")
("GOTCHA" . "#eba0ac")
("STUB" . "#89b4fa")))
(use-package consult
:ensure t
:defer t)
(use-package ibuffer-tramp
:ensure t)
(use-package ibuffer-vc
:ensure t)
(use-package ibuffer-projectile
:ensure t)
(add-hook 'ibuffer-mode-hook
(lambda ()
(ibuffer-projectile-set-filter-groups)))
;; Add autocomplete feature to Emacs
(use-package company
:ensure t
:custom
@@ -39,7 +23,10 @@
;; Static analysis for code base
(use-package flycheck
:ensure t
:hook (prog-mode . flycheck-mode))
:hook (prog-mode . flycheck-mode)
:config
(setq flycheck-check-syntax-automatically '(save mode-enabled)))
(with-eval-after-load 'flycheck
(add-hook 'bash-ts-mode-hook 'flycheck-mode))
(provide 'completion)
;;; completion.el ends here

View File

@@ -1,28 +1,6 @@
(use-package treesit
:ensure nil
:config
(setq treesit-font-lock-level 4)
(setq treesit-auto-install t)
(setq major-mode-remap-alist
'((c-mode . c-ts-mode)
(c++-mode . c++-ts-mode)
(go-mode . go-ts-mode)
(go-mod-mode . go-mod-ts-mode)
(python-mode . python-ts-mode)
(sh-mode . bash-ts-mode)))
(setq treesit-language-source-alist
'((c "https://github.com/tree-sitter/tree-sitter-c")
(cpp "https://github.com/tree-sitter/tree-sitter-cpp")
(python "https://github.com/tree-sitter/tree-sitter-python")
(bash "https://github.com/tree-sitter/tree-sitter-bash")
(go "https://github.com/tree-sitter/tree-sitter-go")
(gomod "https://github.com/camdencheek/tree-sitter-go-mod"))))
(use-package lsp-mode
:ensure t
:commands (lsp lsp-deferred)
;; :init
;; (setq lsp-keymap-prefix "C-c l")
:hook
((c-mode
c-ts-mode

View File

@@ -0,0 +1,25 @@
;;; treesitter.el -*- lexical-binding: t; -*-
(use-package treesit
:ensure nil
:config
(setq treesit-font-lock-level 4)
(setq treesit-auto-install t)
(setq major-mode-remap-alist
'((c-mode . c-ts-mode)
(c++-mode . c++-ts-mode)
(go-mode . go-ts-mode)
(go-mod-mode . go-mod-ts-mode)
(python-mode . python-ts-mode)
(sh-mode . bash-ts-mode)))
(setq treesit-language-source-alist
'((c "https://github.com/tree-sitter/tree-sitter-c")
(cpp "https://github.com/tree-sitter/tree-sitter-cpp")
(python "https://github.com/tree-sitter/tree-sitter-python")
(bash "https://github.com/tree-sitter/tree-sitter-bash")
(go "https://github.com/tree-sitter/tree-sitter-go")
(gomod "https://github.com/camdencheek/tree-sitter-go-mod"))))
(provide 'treesitter)
;;; treesitter.el ends here