dotfiles/.emacs.el
Jesper Saastamoinen 84725344c9 Updated dotfiles
2026-01-02 19:33:25 +01:00

59 lines
1.8 KiB
EmacsLisp

(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
(use-package dracula-theme
:ensure t
:config (load-theme 'dracula t))
(use-package eglot-inactive-regions
:ensure t)
(require 'eglot)
(add-hook 'c-mode-hook 'eglot-ensure)
(global-set-key (kbd "C-c d") 'open-test-file)
(global-set-key (kbd "C-c f") 'eglot-code-actions)
(global-set-key (kbd "C-c c") 'compile)
(global-set-key (kbd "C-c e") 'open-init-file)
;; Quick shortcuts for testing
(defun open-init-file ()
(interactive)
(find-file "~/.emacs.el"))
(defun open-test-file ()
(interactive)
(find-file "~/programming/c-testing/emacstest.c"))
;; ELDOC
;; Ensure eldoc displays in a side window
(setq eldoc-in-side-window-mode t)
;; Set up the display buffer alist to open new buffers in a vertical split
(add-to-list 'display-buffer-alist
'(.* "\\*eldoc\\*" (side . right) (slot . 0) (window-height . 0.1) (reusable-frames . nil)))
(add-hook 'c-mode-hook 'eldoc-mode)
(add-hook 'python-mode-hook 'eldoc-mode)
;; Function to ensure new windows are split vertically if possible, otherwise horizontally
(setq split-height-threshold 0)
(setq split-width-threshold (1- (window-width)))
;;
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(package-selected-packages '(dracula-theme eglot eglot-inactive-regions)))