From: Dominik Kaiser Date: Tue, 11 Feb 2025 16:03:54 +0000 (+0100) Subject: Add lsp-mode and company-mode X-Git-Url: https://git.dkaiser.de/?a=commitdiff_plain;h=1e4ce84035d434b12388574b35af8e482ba3a146;p=config%2Femacs.git Add lsp-mode and company-mode --- diff --git a/README.org b/README.org index 688cd47..74bc460 100644 --- a/README.org +++ b/README.org @@ -129,6 +129,12 @@ These settings ensure that block highlights aren't visible when collapsed. (use-package counsel-projectile :config (counsel-projectile-mode)) #+end_src +** Direnv +#+begin_src elisp + (use-package direnv + :config + (direnv-mode)) +#+end_src * Version Control ** Magit #+begin_src lisp @@ -137,6 +143,30 @@ These settings ensure that block highlights aren't visible when collapsed. :custom (magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1)) #+end_src +* Programming Language Support +** LSP +#+begin_src elisp + (use-package lsp-mode + :init + (setq lsp-keymap-prefix "C-c l") + :config + (lsp-enable-which-key-integration t) + :commands lsp) +#+end_src +** Company Mode +#+begin_src elisp + (use-package company + :after lsp-mode + :hook (lsp-mode . company-mode) + :bind + (:map company-active-map + ("" . company-complete-selection)) + (:map lsp-mode-map + ("" . company-indent-or-complete-common)) + :custom + (company-minimum-prefix-lenght 1) + (company-idle-delay 0.0)) +#+end_src * 42 ** Header #+begin_src elisp diff --git a/init.el b/init.el index e224bb0..fad302a 100644 --- a/init.el +++ b/init.el @@ -81,9 +81,32 @@ (use-package counsel-projectile :config (counsel-projectile-mode)) +(use-package direnv + :config + (direnv-mode)) + (use-package magit :commands (magit-status magit-get-current-branch) :custom (magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1)) +(use-package lsp-mode + :init + (setq lsp-keymap-prefix "C-c l") + :config + (lsp-enable-which-key-integration t) + :commands lsp) + +(use-package company + :after lsp-mode + :hook (lsp-mode . company-mode) + :bind + (:map company-active-map + ("" . company-complete-selection)) + (:map lsp-mode-map + ("" . company-indent-or-complete-common)) + :custom + (company-minimum-prefix-lenght 1) + (company-idle-delay 0.0)) + (load "~/.config/emacs/42header.el")