;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;Exempel .emacs ;; ;;Skapad av: Ingemar Axelsson 2002-06-13 ;; ;; ingax146@student.liu.se ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; ;; Filen innehåller lite exempel på inställningar som man kan ;; ;; använda för att personifiera emacs. Det finns mer inställningar ;; ;; som man kan göra. Men jag har bara tagit upp de viktigaste. ;; ;; ;; ;; En liten förklaring till "nil" och "t" som förkommer nedan. ;; ;; nil är samma sak som falskt och t är samma sak som sant. ;; ;; ;; ;; Utkommenterade rader startar med dubbla semikolon. ;; ;; ;; ;; Är det någon funktion man inte vill ha så tar man helt enkelt och ;; ;; kommenterar ut de rader som representerar funktionen. Detta gör ;; ;; man genom att sätta två semikolon i början av raden. ;; ;; ;; ;; OBS OBS Inställningarna är gjorda för Emacs v20.7 OBS OBS ;; ;; ;; ;; För tidigare versioner kan det vara vissa inställningar som inte ;; ;; fungerar riktigt som man tänkt sig eller inte fungerar alls ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;Visa inte emacs startupmeddelande (setq inhibit-startup-message t) ;;Sätt om yes och no till y och n (fset 'yes-or-no-p 'y-or-n-p) ;;Dölj menyraden i emacs. Kan vara trevligt när man lärt sig många ;;kortkommandon. Rekommenderas inte att användas av nybörjare. (menu-bar-mode -1) ;;Dölj rullningslisten. Rullningslisten kan vara bra att ha om man inte ;;använder sig av kortkommandon. (scroll-bar-mode -1) ;;Starta färgintenderingen direkt. Anpassar sig beroende på vilket emacs-mode ;;som filen man öppnar kommer i. Ingen färgintendering i text-mode. (global-font-lock-mode t) (setq font-lock-maximum-decoration t) ;;Se till att ha rätt teckentabell som standard. Latin-1 tillåter svenska ;;tecken att läsas och skrivas. Hoppar man över denna rad så kommer emacs ;;att varna när man sparar filen första gången. (set-language-environment "Latin-1") ;;Vanligen brukar man se på vilken rad man står i nere på statusraden. ;;Med nedanstående rad kommer vi även att se vilken kolumn på raden vi ;;befinner oss på. (column-number-mode t) ;;Ställ in så att emacs visar vilket område som är markerat. (transient-mark-mode 1) ;;Lägg till information i statusraden. I detta fallet visar vi vilken dag, ;;vilket datum och vad klockan är. Mitt på statusraden. (setq display-time-24hr-format t) (setq display-time-day-and-date t) (display-time) ;;Rulla raderna. Gör så att raderna rullar mer intuitivt i emacs. (setq scroll-step 1) (setq scroll-conservatively 1) (setq next-screen-context-lines 2) ;;Gör så att minibufferten ändrar storlek om man skriver stora uttryck i ;;den. (resize-minibuffer-mode 1) (setq resize-minibuffer-window-max-height 3) (setq resize-minibuffer-window-exactly t) (setq resize-minibuffer-frame nil) ;;Starta emacs med 2 vertikala fönster. Det vänstra med kolumnbredden 80 ;;tecken (split-window-horizontally 80) ;; Kompilerar om .emacs filerna om de har ändrats. Annars så laddar ;; han bara in dem. Vi kompilerar .emacs för sig själv. Detta för att vi inte ;; behöver ladda in den. (defun compile-dot-emacs-file(filnamn) (let ( (filn (expand-file-name (car filnamn))) (filb (expand-file-name (cadr filnamn))) ) (cond ((file-newer-than-file-p filn filb) (progn (message "byte-compiling %s" filn) (byte-compile-file filn) (load-file filb))) ((not (file-exists-p filb)) (progn (message "byte-compiling %s" filn) (byte-compile-file filn) (load-file filb))) (t (progn (message "Behöver inte kompilera om.") (load-file filb) ))))) (defun byte-compile-dot-emacs-files() (mapcar #'compile-dot-emacs-file '(("~/.emacs.colors.el" "~/.emacs.colors.elc") ("~/.emacs.private.el" "~/.emacs.private.elc") ("~/.emacs.macro.el" "~/.emacs.macro.elc")))) (add-hook 'emacs-startup-hook #'byte-compile-dot-emacs-files) ;;Kompilera .emacsfilen. Detta gör vi separat eftersom man inte måste ;;ladda den. (defun compile-dot-emacs() (if (file-newer-than-file-p "~/.emacs" "~/.emacs.elc") (progn (message "Bytecompiling .emacs to .emacs.elc") (byte-compile-file "~/.emacs") (load-file "~/.emacs.elc")))) (add-hook 'emacs-startup-hook #'compile-dot-emacs) ;;Starta emacs-server. Emacsservern gör det möjligt att öppna filer direkt ;;till en buffert från ett skalfönster. Detta gör man genom att använda ;;kommandot: ;; ;;emacsclient filnamn & ;; ;;Använder man inte emacsclient någonting så kan man kommentera ut raden ;;under. (server-start)