;; Beispieldatei fuer Emacs-Customizing ;; ;; Bitte an die eigenen Bedürfnisse anpassen und ;; unter dem Namen ".emacs" im HOME-Verzeichnis abspeichern ;; ;; Zeilen, die mit ";" beginnen sind Kommentare und werden ;; überlesen; also ggf. die Kommentare bei gewuenschten Features ;; entfernen. ;;============================================================== ;; Allgemeine Einstellungen ;;-------------------------------------------------------------- ;; eigenes Macroverzeichnis zum Suchpfad fuer Lisp-Files hinzufügen (add-to-list 'load-path "~/elisp") ;; die Standard Tatstenbelegungen für Cut, Copy und Paste sind ;; ziemlich schwachsinnig. Wenn der CUA-Modus von http://www.cua.dk/ ;; installiert ist (dh. irgendwo im Emacs-Suchpfad abgelegt ist, ;; z.B. im oben angegebenen privaten Macroverzeichnis), ;; dann koennen mit den folgenden Zeilen die unter Windows/Mac/Motif ;; ueblichen Shortcuts aktiviert werden: ;;(load "cua") ;;(CUA-mode t) ;; normales Verhalten von Pos1- und Ende-Taste (global-set-key [end] ' end-of-line) (global-set-key [home] ' beginning-of-line) ;; Scroll-Rad Support ;;(mouse-wheel-mode) ;; beim Abspeichern immer isolatin1-Encoding verwenden ;; (ansonsten fragt der Emacs nach, was nervig sein kann) (standard-display-european t) ;; Rechtschreibprüfung defaultmässig: Deutsch mit Umlauten (setq-default ispell-dictionary "deutsch8") ;; keine automatischen *~-files (setq-default make-backup-files nil) ;; keine neuen Zeilen am Bufferende (setq-default next-line-add-newlines nil) ;; Unterstrich (_) soll Wortbestandteil sein (modify-syntax-entry ?_ "w") ;; Zeilen- und Spaltennummern anzeigen (line-number-mode t) (column-number-mode t) ;; aktiviere Syntax-Highlighting (global-font-lock-mode t) ;; mache Region deutlich waehrend Selektion per Tastatur (transient-mark-mode t) ;; Emacs hat zwar comment-region, aber kein uncomment-region (defun uncomment-region (beg end &optional arg) (interactive "*r\np") (comment-region beg end (- arg))) ;; Speedbar Einstellungen (add-hook 'speedbar-load-hook '(lambda () (speedbar-add-supported-extension ".pgc"))) (setq speedbar-tag-hierarchy-method nil) ;; Einstellungen für spezielle Modi ;;------------------------------------------------------ ;; spezielle Einstellungen für C und C++ mode: ;; '_' ist Wort-Bestandteil; Spaces statt TAB bei Einrückung (add-hook 'c++-mode-hook '(lambda () (modify-syntax-entry ?_ "w"))) (add-hook 'c++-mode-hook '(lambda () (setq indent-tabs-mode nil))) (add-hook 'c-mode-hook '(lambda () (modify-syntax-entry ?_ "w"))) (add-hook 'c-mode-hook '(lambda () (setq indent-tabs-mode nil))) ;; binden spezieller extensions an modi (add-to-list 'auto-mode-alist '("\\.html?$" . html-mode)) (add-to-list 'auto-mode-alist '("\\.m$" . octave-mode)) (add-to-list 'auto-mode-alist '("\\.pgc$" . c-mode)) ;; verwende cperl-mode statt perl-mode (add-to-list 'interpreter-mode-alist '("perl" . cperl-mode)) (add-hook 'cperl-mode-hook '(lambda () (cperl-set-style "PerlStyle"))) ;; Beispiel für das Laden eines bestimmten Makro-Pakets ("Modus") ;; bei bestimmter Dateiendung: ;;(autoload 'abctab-mode "abctab-mode" "ABC mode." t) ;;(add-to-list 'auto-mode-alist '("\\.abc$" . abctab-mode)) ;; spezielle Einstellungen für Syntaxhighlighting (font-lock) (setq font-lock-maximum-decoration '((cperl-mode . 1) (t . 3))) (setq font-lock-support-mode '((cperl-mode . lazy-lock-mode)))