5.1 KiB
Konfigurer din egen Emacs!
- Installer Emacs
- Finn konfigurasjonsfilen
- Tips
- Sette variabler
- Mindre distraksjoner ved å skru av modes
- Auto-revert
- Backup-filer
- Pakker
- Vertikalt minubuffer
- Husk tidligere kommandoer
- Navigering og søking
- Tidligere besøkte filer
- Which-key
- Fargetema!
- Programmering
Installer Emacs
-
Følg de offisielle instruksjonene
Finn konfigurasjonsfilen
-
Emacs leter etter en Emacs Lisp fil den kan kjøre ved oppstart
~/.emacs.el
(få bruker dette)~/.emacs
~/.emacs.d/init.el
- I den rekkefølgen
- Se https://www.gnu.org/software/emacs/manual/html_node/emacs/Find-Init.html
- For Windows + https://www.gnu.org/software/emacs/manual/html_node/emacs/Windows-HOME.html
Tips
- Det er lurt å forstå alt som legges inn i konfigurasjonsfilen
- Du kan oppdatere Emacs under kjøring
- Bruk
C-x C-e
for å evaluere et uttrykket bak pekeren - Bruk
M-x eval-buffer
for å evaluere hele filen -
En konfigurasjonsfil bør være idempotent!
- Det vil si at det er trygt å evaluere den flere ganger
Sette variabler
- Enkle konfigurasjoner gjøres ved å sette variabler
-
Få en mindre bråkete velkomst
;; Dette fjerner velkomstskjermen ved oppstart av Emacs. (setq inhibit-splash-screen t)
-
Gi korte svar når Emacs ber om input
;; Emacs ber deg iblant svare "yes" eller "no". Dette gjør at Emacs ;; nøyer seg med "y" eller "n". (setq use-short-answers t)
Mindre distraksjoner ved å skru av modes
-
En blinkende peker blir fort gammelt
;; Skru av blinkende peker. (blink-cursor-mode 0)
-
Andre GUI-elementer er også lite nyttig i et tastaturdrevet program!
;; Disse skrur av diverse GUI-elementer. (menu-bar-mode 0) (tool-bar-mode 0) (scroll-bar-mode 0)
Auto-revert
- Vanligvis vil ikke Emacs automatisk oppdatere innholdet i et buffer når filen endrer seg
- I tillegg lagrer den «lås-filer» for å unngå at to programmer jobber på samme fil
-
Det kan være litt forvirrende, så la oss endre det
(global-auto-revert-mode) (setq global-auto-revert-non-file-buffers t create-lockfiles nil)
Backup-filer
- Emacs liker å lagre backupfiler, som kan være litt forkludrende
-
La oss gjemme de vekk
(setq backup-directory-alist `(("." . ,(locate-user-emacs-file "backups"))))
Pakker
- Det finnes utrolig mange pakker til Emacs
-
Legg til dette for å få tilgang til flere tusen pakker!
(require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
-
Den enkleste måten å ta i bruk en pakke er med
use-package
;; (use-package my-package-name ;; :ensure t ; Ensure my-package is installed ;; :after foo ; Load my-package after foo is loaded (seldom used) ;; :init ; Run this code before my-package is loaded ;; :bind ; Bind these keys to these functions ;; :custom ; Set these variables ;; :config ; Run this code after my-package is loaded
Vertikalt minubuffer
-
Pakken
vertigo
gir en mer oversiktlig måte å interagere med minibufferet;; VERTical Interactive COmpletion (use-package vertico :ensure t :config (setq vertico-count 25) (vertico-mode 1))
Husk tidligere kommandoer
-
savehist-mode
gjør at kommandoer du brukte nylig vises først;; Save minibuffer history (use-package savehist :config (savehist-mode 1))
Navigering og søking
-
Pakken
consult
forbedrer mange kommandoer når du skal navigere og søke(use-package consult :ensure t :bind ("C-x b" . consult-buffer) :config (setq consult-preview-key (list :debounce 0.1 'any)))
Tidligere besøkte filer
-
Emacs har såklart en mode for å tilgjengeliggjøre nylig besøkte filer
(recentf-mode t) (setq recentf-max-saved-items 1000)
Which-key
-
which-key
er en pakke som hjelper deg finne tastekombinasjoner;; Display available keybindings in popup (use-package which-key :ensure t :config (which-key-mode 1))
Fargetema!
-
Du kan Style emacs som du vil
-
Pakken
ef-themes
har mange gode fargetemaer(use-package ef-themes :ensure t :config (ef-themes-select 'ef-light))
- Bruk
M-x consult-theme
for å teste ut ulike fargetemaer!
Programmering
-
Noen liker linjenummere
(add-hook 'prog-mode-hook 'display-line-numbers-mode)
-
Noen liker også relative linjenummere
(setq display-line-numbers-type t)
-
Alle liker å se hvor en parentes starter og slutter
(show-paren-mode 1)