;;;;;;;;;;;; -*- emacs-lisp -*- ;; $Id: .emacs,v 1.1 1998/09/20 12:47:53 clemens Exp clemens $ ;; ;; Ok, this is my personal .emacs file. ;; ;; Clemens.Lahme@mailexcite.com ;; ;; Sometimes someone asks me for this file (mostly Java ;; beginners), therefore I made it public. I was too lazy to ;; edit it in any form (except the mail filter stuff ;-). So ;; be warned, don't expect an clean mean elisp example file. ;; BTW, nothing here works with XEmacs. I used it most of ;; the time with ntemacs. (setq debug-on-error t) ;; ----------------------------------------------------------------- ;; Allgemeine Variablen ;; ----------------------------------------------------------------- ;; 13. 6. 1996 (setq my-email-address "Clemens.Lahme@gmd.de") ;; ----------------------------------------------------------------- ;; Hilfsfunktionen ;; ----------------------------------------------------------------- (defun nop () ) ;; 26. 1. 1996 (defun current-window-line () (let ((col (current-column))) ;; point muss in erster Columne stehen, tut's auch. (beginning-of-line) (let ((line (count-lines (window-start) (point)))) (move-to-column col) line ) ) ) (setq number-of-lines "") (defun set-number-of-lines () (setq number-of-lines (concat "/" (number-to-string (1+ (count-lines (point-min) (point-max) ) ) ) ) ) ) ;; die endgueltige loesung, urgs (defun ccl-get-line () (if (= (point-min) (point-max)) 1 (if (= (point) (point-max)) (progn (if (= (current-column) 0) (1+ (count-lines 1 (point))) (count-lines 1 (point)) ) ) (progn (count-lines 1 (1+ (point))) ) ) ) ) (defun my-connect-site () "Returns site name from where the connection has been made." (or (getenv "_LOGIN_SITE") (error "Please define env var _LOGIN_HOST") ) ) ;; 13. 6. 1996 (defun my-text-to-kill-ring (string) (interactive) (my-goto-scratch-and-clear) (set-register 116 string) (insert-register 116) (my-goto-scratch-and-clear) (kill-buffer "*scratch*") ) ;; 13. 6. 1996 (defun my-insert-string (string) (interactive) (my-text-to-kill-ring string) (yank) ) ;; Farben (defun my-set-standard-colors () (interactive) (set-background-color "Black") (set-foreground-color "Cyan") (set-foreground-color "SeaGreen") ;;(set-foreground-color "Grey") ;;(set-cursor-color "Cyan") (set-cursor-color "Grey") (set-face-foreground 'region "Black") ; 19. 1. 1996 (set-face-background 'region "SeaGreen") ; 19. 1. 1996 (set-face-foreground 'highlight "YellowGreen") ; 3. 2. 1996 (set-face-background 'highlight "Black") ; 3. 2. 1996 ;;(set-face-foreground 'font-lock-reference-face "DarkGrey") ;;(set-face-foreground 'bold-italic "MediumBlue") ) ;; 14. 8. 1996 (defun my-set-java-colors () (interactive) (set-foreground-color "Black") (set-background-color "LightGrey") (set-cursor-color "Black") (set-face-foreground 'region "Grey") (set-face-background 'region "Black") (set-face-foreground 'font-lock-comment-face "DarkOliveGreen") (set-face-foreground 'font-lock-string-face "Brown") (set-face-foreground 'font-lock-keyword-face "CadetBlue") (set-face-foreground 'font-lock-function-name-face "Gold") ;; (set-face-foreground 'font-lock-reference-face "DarkGrey") ) ;; ----------------------------------------------------------------- ;; Allgemeiner Funktionskram (interactive) ;; ----------------------------------------------------------------- ;; 21. 1. 1996 (defun lisp-newline () (interactive) (newline) (indent-for-tab-command) (set-number-of-lines) ) ;; smart-line, 20. 1. 1996, 21. 1. 1996 (defun smartline () (interactive) (newline) ;;(let ((bound (point))) (forward-line -1) ;;(set-mark-command nil) (let ((beg (point))) (search-forward-regexp "^[ ]*") (copy-to-register 116 (point) beg) ;;(message "%s %s" beg (point)) ) (forward-line 1) (insert-register 116) (search-forward-regexp "^[ ]*") (set-number-of-lines) ) (defun my-delete-char () (interactive) (delete-char 1) (set-number-of-lines) ) (defun my-backward-delete-char () (interactive) (if (equal major-mode "emacs-lisp-mode") (backward-delete-char-untabify 1) (backward-delete-char 1) (set-number-of-lines) ) ) (defun my-compile () (interactive) (if (or (string= major-mode "emacs-lisp-mode") (string= major-mode "lisp-interaction-mode") ) (progn ;;(setq debug-on-error t) (eval-region (region-beginning) (region-end)) (message "%s" "Compile done.") ;;(setq debug-on-error nil) ) ;;(compile "make -k") ;;(compile "javac ..\\SimSoccer\\SimSoccer.java") ) (if (string= major-mode "java-mode") (progn (compile "smake all") ) ) (if (string= major-mode "latex-mode") (progn (compile "smake all") (other-window 1) (end-of-buffer) ) ) ) (defun my-run () (interactive) ;;(if (or (string= major-mode "emacs-lisp-mode") ;; (string= major-mode "lisp-interaction-mode") ;; ) ;; (eval-current-buffer) ;; (compile "make -k run") ;; ) (if (string= major-mode "java-mode") (progn (shell-command "smake run &") ) ) ) ;; Buffer Kram ;; mit Alt-n zwischen letztem Buffer switchen (defun my-switch-to-last-buffer () (interactive) ;;(switch-to-buffer "t") (switch-to-buffer (other-buffer)) (set-number-of-lines) ) (defun my-Buffer-menu-1-window () (interactive) (Buffer-menu-1-window) (set-number-of-lines) ) ;; naechste Java-Funktion anspringen (defun my-next-java-function () (interactive) (end-of-line) (search-forward-regexp "^\\(\t\\| \\)\\w[^\(=]*\(") (beginning-of-line) ) (defun my-previous-java-function () (interactive) (beginning-of-line) (search-backward-regexp "^\\(\t\\| \\)\\w[^\(=]*\(") (beginning-of-line) ) ;; ;; Java Intelligente {} Klammern (defun my-java-open-brace (arg) (interactive "P") (my-insert-string "{") ;;(c-electric-brace arg) ;;(newline) ;;(my-insert-string "}") ;;(c-indent-command) ;;(previous-line 1) ) ;; 30. 1. 1996 (defun my-dabbrev-expand () (interactive) (let ((old-case-fold-search case-fold-search)) (setq case-fold-search nil) (dabbrev-expand nil) (setq case-fold-search old-case-fold-search) ) ) ;; 16. 2. 1996 (defun my-goto-scratch-and-clear () (interactive) (switch-to-buffer "*scratch*") (mark-whole-buffer) (kill-region 1 (+ (buffer-size) 1)) ) ;; list-buffers aut F5 (defun my-list-buffers () (interactive) (list-buffers) (other-window 1) ) ;; 28. 5. 1996 (defun my-dos-save-buffer () (interactive) (using-unix-filesystems nil) (save-buffer) (using-unix-filesystems t) ) (defun delete-trailing-space () "Deletes trailing space from all lines in buffer." (interactive) (or buffer-read-only (save-excursion (message "Deleting trailing spaces ... ") (goto-char (point-min)) (while (< (point) (point-max)) (end-of-line nil) (delete-horizontal-space) (forward-line 1)) (message "Deleting trailing spaces ... done."))) nil ) ; indicates buffer-not-saved for write-file-hook ;; 13. 6. 1996 (defun my-gnus-summary-mail-forward (post) "Mail forwarding setzt automatisch meine email Adresse ein." (interactive "P") (gnus-summary-mail-forward post) (my-insert-string my-email-address) ) ;; 18. 6. 1996 (defun my-insert-cc-header () (beginning-of-buffer) (next-line 1) (my-insert-string (concat "Cc: " my-email-address)) (newline) (end-of-buffer) ) (defun my-rmail-summary-reply (just-sender) "Reply to the current message. Normally include CC: to all other recipients of original message; prefix argument means ignore them. While composing the reply, use \\[mail-yank-original] to yank the original message into it." (interactive "P") (rmail-summary-reply just-sender) (my-insert-cc-header) ) (defun my-rmail-reply (just-sender) "Reply to the current message. Normally include CC: to all other recipients of original message; prefix argument means ignore them. While composing the reply, use \\[mail-yank-original] to yank the original message into it." (interactive "P") (rmail-reply just-sender) (my-insert-cc-header) ) ;; 13. 8. 1996 (fset 'my-isearch-repeat-function 'isearch-repeat-forward) (defun my-isearch-repeat () (interactive) (my-isearch-repeat-function) ) (defun my-isearch-forward () (interactive) (fset 'my-isearch-repeat-function 'isearch-repeat-forward) (isearch-forward) ) (defun my-isearch-backward () (interactive) (fset 'my-isearch-repeat-function 'isearch-repeat-backward) (isearch-backward) ) ;; ----------------------------------------------------------------- ;; Besonderer Funktionskram (interactive) ;; ----------------------------------------------------------------- (defun my-dos-2-unix () "Was der Name sagt!\ Aber Vorsicht, löscht blind letztes Zeichen in jeder Zeile." (interactive) (end-of-buffer) (previous-line 1) (while (> (point) 1) (progn (end-of-line) (delete-backward-char 1) (beginning-of-line) (previous-line 1) ) ) ;;(beginning-of-buffer) (end-of-line) (delete-backward-char 1) (beginning-of-line) ) (defun my-register-url (your-comment) "Dokumentiert." (interactive "s" "Der Kommentar (oder RETURN): ") (let ((my-title (concat (buffer-name) "\n"))) (let ((my-url (concat url-current-type "://" url-current-server ":" url-current-port url-current-file "\n") ) ) (if (string= your-comment "") (copy-to-register 116 (region-beginning) (region-end)) (set-register 116 your-comment) ) (my-goto-scratch-and-clear) (insert my-url) (insert my-title) (insert-register 116) (end-of-buffer) (insert "\n---\n") (append-to-file 1 (+ 1 (buffer-size)) "/home/lahme/t") (kill-buffer "*scratch*") (kill-buffer (buffer-name)) (message "%s" (w3-zone-at (point))) ) ) (let ((my-web-title (concat (buffer-name) "\n"))) (let ((beg (point))) (search-forward-regexp "}}\\|\\]\\]") (forward-char -2) (copy-to-register 116 (point) beg) ) (search-forward-regexp "}}+\\|\\]\\]+") (let ((beg (point))) (re-search-forward "{{\\|\\[\\[" (+ 1 (buffer-size)) "weder nil noch t") (forward-char -2) (copy-to-register 117 (point) beg) ) (my-goto-scratch-and-clear) (insert my-web-title) (insert-register 116) (end-of-buffer) (insert "\n---\n") (insert-register 117) (end-of-buffer) (insert "\n---\n") (append-to-file 1 (+ 1 (buffer-size)) "/home/lahme/t") (kill-buffer "*scratch*") (w3-forward-link 1) ) ) (defun test ()(interactive) ;; (message "Test: %s" (face-font 'default))) (message "Test: %s" (win32-select-font))) ;; (message "Test: %s" (ccl-get-line))) ;; (re-search-forward "[ \t\n]+Jacob[ \t\n]*([ \t\n]*Controller[^,)]+,[ \t\n]*String[^,)]+)")) ;;(message "Test: %s" last-command)) ;;(message "Test: %s %s" (screen-height) (window-height))) ;;(message "%s" (fboundp 'raise-frame))) ;; (setq debug-on-error t) ;; (w3-do-search "e") ;; (setq debug-on-error nil) ;; ) ;;(setq my-data (w3-zone-data (w3-zone-at (point)))) ;; (setq my-data 1) ;;(if (eq (nth 0 my-data) 'w3) ; Its a form field ;; (message "%s" (nth 3 my-data)) ;; ) ;; ) ;;(message "%s" (w3-zone-data (w3-zone-at (point))))) ;; Buffer in temp datei schreiben ;;(mark-hole-buffer) ;;(write-region (point-min) (point-max) "d:\\eigen\\t") ;; Namen abfrageb ;; system pgp -ests temp namen ;;(call-process "l") ;; in neuen Buffer lesen ;; (if (equal (system-name) "ALBUNDY") ;; nil ;; ) ;;(message "%s" (+ (count-lines (point-min) (point-max)) 1)) ;;(setq number-of-lines (number-to-string ;; (+ (count-lines (point-min) (point-max)) 1))) ;;(setq mode-line-process ;; (format " %4d %4d" ;;(1+ (count-lines 1 (point))) (current-column)) ;; ) ;;(message "Test: %s" mode-name) ;;(setq state (parse-partial-sexp 1 20 0)) ;;(message "Test: %s" ) ;;) ;;------------------------------------------------------------------- ;; Macros ;;------------------------------------------------------------------- ;; noch nix da :-)( ;;------------------------------------------------------------------- ;; Einstellungen fuer alle Systeme ;;------------------------------------------------------------------- (setq scroll-step 1) ;; 2. 2. 1996 (standard-display-european 1) ;; Tab = 3 (setq-default tab-width 3) (setq-default tab-stop-list '(3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60 63 66 69 72 75 78 81 84 87 90 93 96 99 ) ) ;; keine Backup Files (unter Win95 gibt's Probleme mit ~) (setq make-backup-files nil) (setq default-fill-column 70) (setq default-major-mode 'indented-text-mode) (setq-default auto-fill-hook 'do-auto-fill) ;; 2. 1. 1996 (setq rmail-output-file-alist (list (list "ntemacs-user" 'format "ntemacs") (list "\\[comp.emacs" 'format "ntemacs") (list "\\[gnu.emacs" 'format "ntemacs") (list "\\[comp.lang.java" 'format "java") (list "\\[comp.software" 'format "se") (list "From: Clemens.Lahme@gmd.de" 'format "eigen") (list "From: Clemens Lahme" 'format "eigen") (list "\"Chr. Clemens Lahme\"" 'format "eigen") (list "To: \"Chr. Clemens Lahme\"" 'format "privat") (list "all-user-student" 'format "uni") (list "all-st@" 'format "uni") (list ":" 'format "versch") ) ) (setq rmail-ignored-headers "^via:\\|^mail-from:\\|^origin:\\|^status:\\|^received:\\|^x400-originator:\\|^x400-recipients:\\|^x400-received:\\|^x400-mts-identifier:\\|^x400-content-type:\\|^\\(resent-\\|\\)message-id:\\|^summary-line:\\|^mime-version:\\|^content-type:\\|^x-mailer:\\|^return-path:\\|^in-reply-to:\\|^return-receipt-to:\\|^reply-to:\\|^references:\\|^x-sun-charset:\\|^x-sender:\\|^x-charset:\\|^x-char-esc:\\|^sender:\\|^x-url:\\|^content-identifier:\\|^alternate-recipient:\\|^content-transfer-encoding:\\|^comments:\\|^x-\\|^Precedence:\\|^Priority:\\|^Mr-Received:\\|^Disclose-Recipients:\\|^Autoforwarded:\\|^Importance:\\|^Sensitivity:\\|^Ua-Content-Id:\\|^Hop-Count:\\|^Resent-Date:\\|^Old-Return-Path:\\|^Resent-From:\\|^Resent-Sender:\\|^Approved-By:") (setq gnus-header-face-alist (list (list "^From" nil 'custom-face-darkblue-default-default-t-t-custom:asis) (list "^Subject" nil 'highlight) ;; 'custom-face-pink-default-default-t-t-custom:asis) (list "^Newsgroups:.*," nil 'custom-face-yellow-default-default-t-t-custom:asis) (list "" 'custom-face-cyan-default-default-t-custom:asis-custom:asis 'custom-face-forestgreen-default-default-custom:asis-t-custom:asis) ) ) ;;gnus-header-face-alist's value is (("From" nil custom-face-dark\ blue-default-default-t-t-custom:asis) ("Subject" nil custom-face-pink-default-default-t-t-custom:asis) ("Newsgroups:.*," nil custom-face-yellow-default-default-t-t-custom:asis) ("" custom-face-cyan-default-default-t-custom:asis-custom:asis custom-face-forestgreen-default-default-custom:asis-t-custom:asis)) (setq gnus-summary-highlight (list '((= mark gnus-canceled-mark) . custom-face-yellow-black-default-nil-nil-nil) '((and (> score default) (or (= mark gnus-dormant-mark) (= mark gnus-ticked-mark)) ) . custom-face-pink-default-default-t-nil-nil) '((and (< score default) (or (= mark gnus-dormant-mark) (= mark gnus-ticked-mark)) ) . custom-face-pink-default-default-nil-t-nil) '((or (= mark gnus-dormant-mark) (= mark gnus-ticked-mark)) . custom-face-pink-default-default-nil-nil-nil) '((and (> score default) (= mark gnus-ancient-mark)) . custom-face-mediumblue-default-default-t-nil-nil) '((and (< score default) (= mark gnus-ancient-mark)) . custom-face-SkyBlue-default-default-nil-t-nil) '((= mark gnus-ancient-mark) . custom-face-SkyBlue-default-default-nil-nil-nil) '((and (> score default) (= mark gnus-unread-mark)) . custom-face-white-default-default-t-nil-nil) '((and (< score default) (= mark gnus-unread-mark)) . custom-face-white-default-default-nil-t-nil) '((= mark gnus-unread-mark) . custom-face-defualt-default-default-nil-nil-nil) '((> score default) . bold) '((< score default) . italic) ) ) ;;gnus-summary-highlight's value is ;;( ;; ((= mark gnus-canceled-mark) . ;; custom-face-yellow-black-default-nil-nil-nil) ;; ((and (> score default) ;; (or (= mark gnus-dormant-mark) (= mark gnus-ticked-mark)) ;; ) . custom-face-pink-default-default-t-nil-nil) ;; ((and (< score default) ;; (or (= mark gnus-dormant-mark) (= mark gnus-ticked-mark)) ;; ) . custom-face-pink-default-default-nil-t-nil) ;; ((or (= mark gnus-dormant-mark) (= mark gnus-ticked-mark)) . ;; custom-face-pink-default-default-nil-nil-nil) ;; ((and (> score default) (= mark gnus-ancient-mark)) . ;; custom-face-mediumblue-default-default-t-nil-nil) ;; ((and (< score default) (= mark gnus-ancient-mark)) . ;; custom-face-SkyBlue-default-default-nil-t-nil) ;; ((= mark gnus-ancient-mark) . ;; custom-face-SkyBlue-default-default-nil-nil-nil) ;; ((and (> score default) (= mark gnus-unread-mark)) . ;; custom-face-white-default-default-t-nil-nil) ;; ((and (< score default) (= mark gnus-unread-mark)) . ;; custom-face-white-default-default-nil-t-nil) ;; ((= mark gnus-unread-mark) . ;; custom-face-white-default-default-nil-nil-nil) ;; ((> score default) . bold) ;; ((< score default) . italic) ;;) (setq completion-ignored-extensions (list ".o" ".elc" "~" ".bin" ".bak" ".obj" ".map" ".dvi" ".toc" ".log" ".aux" ".a" ".ln" ".lof" ".blg" ".bbl" ".glo" ".idx" ".lot" ".fmt" ".class") ) ;;(column-number-mode) ;funktioniert nicht, keine Ahnung warum nicht. ;; jetzt aber doch, 15. 1. 1996 (setq column-number-mode t) (setq number-of-lines "") (setq default-mode-line-format '(" " mode-line-modified " " "C%c" " " "L%l" number-of-lines " " mode-line-buffer-identification " " global-mode-string " %[(" "%t:" mode-name mode-line-process minor-mode-alist "%n" ")%] " ) ) ;; yes-or-no -> y-or-n (fset 'yes-or-no-p 'y-or-n-p) (global-set-key [?\C-t] 'test) ;;(setq search-highlight t) ;; remove trailing spaces before saving the buffer (or (memq 'delete-trailing-space write-file-hooks) (setq write-file-hooks (cons 'delete-trailing-space write-file-hooks))) ;; GNUS setup (setq gnus-default-nntp-server "news.gmd.de") (setq gnus-Group-mode-hook '(lambda () (load "gnus-setup"))) (autoload 'gnus "gnus" "Read network news." t nil) ;; ; Clemens Erweiterungen, 22. 3. 1995 ;; ;; kein automatisches subscriben mehr ;;(setq gnus-subscribe-newsgroup-method 'gnus-subscribe-interactively) ;; normal ist 4, zu viel (Mark hat 2) (setq gnus-thread-indent-level 1) ;; damit nicht bei jeder popelgruppe eine Abfrage stattfindest, mit ;; leerem String unbegrenzt (setq gnus-large-newsgroup 9000) ;; usenet anfaengermodus ;; (setq gnus-novice-user nil) ;; ueberfluessige abfragen vermeiden ;;(setq gnus-interactive-post nil) ;; bei oeffnen einer newsgruppe soll kein artikel geoeffnet werden (setq gnus-select-group-hook '(lambda () (setq gnus-auto-select-first nil))) ;; keywords: pgp mc shell subprocess ;;(setq win32-quote-process-args t) (setq inhibit-startup-message t) ;;(setq-default truncate-lines t) ;;------------------------------------------------------------------- ;; Hooks fuer alle Systeme ;;------------------------------------------------------------------- (defun my-standard-hook (map) (setq mode-line-modified '("%1*%1+")) (setq mode-line-buffer-identification '("%f")) ;;(setq-default mode-line-buffer-identification ;;(list " %b > " (system-name) ":%f ") ;;) (setq next-line-add-newine nil) (define-key map [?\M-s] 'save-buffer) (define-key map "\M-ds" 'save-buffer) (define-key map "\M-d\M-s" 'save-buffer) (define-key map "\M-b" 'save-buffers-kill-emacs) (define-key map "\M-db" 'save-buffers-kill-emacs) (define-key map "\M-d\M-b" 'save-buffers-kill-emacs) (define-key map "\M-f" 'find-file) (define-key map "\M-df" 'find-file) (define-key map "\M-d\M-f" 'find-file) (define-key map [?\M- ] 'my-dabbrev-expand) (define-key map [?\C-d] 'my-delete-char) (define-key map [?\M-q] 'query-replace) (define-key map [backspace] 'my-backward-delete-char) (define-key map [?\M-n] 'my-switch-to-last-buffer) (define-key map [?\M-i] 'info) (define-key map [?\M-a] 'apropos) (define-key map [f9] 'my-compile) (define-key map [S-f9] 'my-run) (define-key map [C-f5] 'my-run) (define-key map [C-f4] 'next-error) (define-key map [f11] 'advertised-undo) (define-key map [f3] 'my-isearch-repeat) (define-key map "\C-s" 'my-isearch-forward) (define-key map "\C-r" 'my-isearch-backward) (define-key map "\C-j" 'goto-line) ;;(set (make-local-variable 'dabbrev-case-replace) t) (define-key map "\M-e" 'execute-extended-command) (define-key map [f1] 'my-help) ) (defun my-telnet-hook (map) (define-key map [?\C-q] 'set-mark-command) ;; C-x 1 ist umstaendlich, nun auf pause ;; C-x 0 auf scroll (Rollen), 20. 1. 1996 ;; C-x o auf M-o (define-key map [?\M-1] 'delete-other-windows) (define-key map [?\M-0] 'delete-window) (define-key map [?\C-o] 'other-window) ) (add-hook 'rmail-show-message-hook '(lambda () (rmail-toggle-header) (rmail-toggle-header) ) ) ;; rmail files in besonderem Directory ;; von MS Fischer (add-hook 'rmail-mode-hook '(lambda () (setq mail-yank-prefix "> ") ; fuer schoene reply's (or rmail-default-file (setq rmail-default-file (expand-file-name "~/Mail/versch")) ) ;eigentlich nicht noetig, da in rmail, komisch (setq rmail-secondary-file-directory (expand-file-name "~/Mail") ) (setq rmail-secondary-file-regexp "^[^.#].*[^~]$") (setq rmail-delete-after-output t) ;; damit kein eigenes Fenster auf geht ;;(setq rmail-mail-new-frame nil) (define-key rmail-mode-map [?\C-q] 'set-mark-command) (define-key rmail-mode-map "r" 'my-rmail-reply) (define-key rmail-mode-map [?\M-n] 'my-switch-to-last-buffer) (define-key rmail-mode-map "\M-b" 'save-buffers-kill-emacs) (define-key rmail-mode-map "\M-db" 'save-buffers-kill-emacs) (define-key rmail-mode-map "\M-d\M-b" 'save-buffers-kill-emacs) (define-key rmail-mode-map "\M-f" 'find-file) (define-key rmail-mode-map "\M-df" 'find-file) (define-key rmail-mode-map "\M-d\M-f" 'find-file) ) ) (add-hook 'rmail-summary-mode-hook '(lambda () (define-key rmail-summary-mode-map "r" 'my-rmail-summary-reply) (define-key rmail-summary-mode-map [?\M-n] 'my-switch-to-last-buffer) (define-key rmail-summary-mode-map "\M-b" 'save-buffers-kill-emacs) (define-key rmail-summary-mode-map "\M-db" 'save-buffers-kill-emacs) (define-key rmail-summary-mode-map "\M-d\M-b" 'save-buffers-kill-emacs) (define-key rmail-summary-mode-map "\M-f" 'find-file) (define-key rmail-summary-mode-map "\M-df" 'find-file) (define-key rmail-summary-mode-map "\M-d\M-f" 'find-file) ) ) (add-hook 'gnus-group-mode-hook '(lambda () (define-key gnus-group-mode-map [?\M-n] 'my-switch-to-last-buffer) ) ) (add-hook 'gnus-summary-mode-hook '(lambda () (define-key gnus-summary-mode-map [?\M-n] 'my-switch-to-last-buffer) (define-key gnus-summary-mode-map "\M-b" 'save-buffers-kill-emacs) (define-key gnus-summary-mode-map "\M-db" 'save-buffers-kill-emacs) (define-key gnus-summary-mode-map "\M-d\M-b" 'save-buffers-kill-emacs) (define-key gnus-summary-mode-map "\M-f" 'find-file) (define-key gnus-summary-mode-map "\M-df" 'find-file) (define-key gnus-summary-mode-map "\M-d\M-f" 'find-file) ) ) (add-hook 'indented-text-mode-hook '(lambda () (my-standard-hook indented-text-mode-map) (define-key indented-text-mode-map [tab] 'tab-to-tab-stop) (define-key indented-text-mode-map [?\t] 'tab-to-tab-stop) (define-key indented-text-mode-map [return] 'smartline) (auto-fill-mode 70) ) ) (add-hook 'emacs-lisp-mode-hook '(lambda () (my-standard-hook emacs-lisp-mode-map) (define-key emacs-lisp-mode-map [return] 'lisp-newline) (define-key emacs-lisp-mode-map "\r" 'lisp-newline) ) ) ;;(add-hook 'Buffer-menu-mode-hook ;; '(lambda () ;; (define-key Buffer-menu-mode-map [return] ;; 'my-Buffer-menu-this-window) ;; (define-key Buffer-menu-mode-map "\r" ;; 'my-Buffer-menu-this-window) ;; ) ;; ) (add-hook 'buffer-menu-mode-hook '(lambda () (define-key Buffer-menu-mode-map [return] 'my-Buffer-menu-1-window) (define-key Buffer-menu-mode-map "\r" 'my-Buffer-menu-1-window) ) ) (add-hook 'perl-mode-hook '(lambda () (my-standard-hook perl-mode-map) (setq perl-indent-level 3) (standard-display-european 1) ) ) (add-hook 'help-mode-hook '(lambda () (my-standard-hook help-mode-map) ) ) (add-hook 'html-helper-mode-hook '(lambda () (my-standard-hook html-helper-mode-map) ) ) (add-hook 'gnus-summary-mode-hook '(lambda () (define-key gnus-summary-mode-map "\C-cf" 'my-gnus-summary-mail-forward) (define-key gnus-summary-mode-map "\C-c\C-f" 'my-gnus-summary-mail-forward) ) ) (add-hook 'mail-mode-hook '(lambda () (define-key mail-mode-map "\C-c\C-s" 'mail-signature) (define-key mail-mode-map [f11] 'advertised-undo) (define-key mail-mode-map [?\C-q] 'set-mark-command) (define-key mail-mode-map "\M-b" 'save-buffers-kill-emacs) (define-key mail-mode-map "\M-db" 'save-buffers-kill-emacs) (define-key mail-mode-map "\M-d\M-b" 'save-buffers-kill-emacs) (define-key mail-mode-map "\M-f" 'find-file) (define-key mail-mode-map "\M-df" 'find-file) (define-key mail-mode-map "\M-d\M-f" 'find-file) ) ) ;; 2. 10. 1996 (add-hook 'bibtex-mode-hook '(lambda () (my-standard-hook bibtex-mode-map) (auto-fill-mode 1) ) ) ;; 5. 5. 1997 (add-hook 'texinfo-mode-hook '(lambda () (my-standard-hook texinfo-mode-map) (auto-fill-mode 1) ) ) ;; Mailcrypt ;;(autoload 'mc-install-write-mode "mailcrypt" nil t) ;;(autoload 'mc-install-read-mode "mailcrypt" nil t) ;;(add-hook 'mail-mode-hook 'mc-install-write-mode) ;;(add-hook 'rmail-mode-hook 'mc-install-read-mode) ;;(add-hook 'rmail-summary-mode-hook 'mc-install-read-mode) ;;(add-hook 'gnus-summary-mode-hook 'mc-install-read-mode) ;;(add-hook 'news-reply-mode-hook 'mc-install-write-mode) (setq auto-mode-alist (cons '("\\.txt$" . indented-text-mode) auto-mode-alist)) (setq auto-mode-alist (append (list (cons "\\.pl$" 'perl-mode)) auto-mode-alist)) (autoload 'html-helper-mode "html-helper-mode" "Yay HTML" t) (setq auto-mode-alist (cons '("\\.html$" . html-helper-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.shtml$" . html-helper-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.htm$" . html-helper-mode) auto-mode-alist)) ;;| D-73446 Oberkochen | e-mail: kraemer@zeiss.de | 12. 7. 1996 ;; ;; Auto scroll when point moves off the screen. ;; (defvar auto-scroll-mode nil) (defun auto-scroll-mode (flag) "Toggle automatic horizontal scroll. This command applies to all windows. With a numeric argument, if the argument is negative, turn off automatic scroll, otherwise, turn it on." (interactive "P") (setq auto-scroll-mode (if (null flag) (not auto-scroll-mode) (or (not (numberp flag)) (>= flag 0)))) (if auto-scroll-mode (progn (message "turn on automatic horizontal scrolling and truncate lines") (setq-default truncate-lines t) (add-hook 'post-command-hook 'hscroll-point-visible t)) (setq-default truncate-lines (y-or-n-p "automatic horizontal scrolling off. Truncate lines? ")) (remove-hook 'post-command-hook 'hscroll-point-visible))) (auto-scroll-mode 1) ;;------------------------------------------------------------------------ ;; fuer ntemacs, 29. 12. 1995 ;;------------------------------------------------------------------------ (if (or (equal (system-name) "SCRIABIN") (equal (system-name) "ALBUNDY") (equal (system-name) "SCHUBERT") (equal (system-name) "MAT_PC4") (equal (system-name) "mat_pc4.gmd.de") (equal (system-name) "mat_pc04.gmd.de") ) (progn ;; für Java (load "cc-mode") (load "java-f-lck.el") (setq auto-mode-alist (cons '("\\.mocha$" . java-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.jj$" . java-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.jjt$" . java-mode) auto-mode-alist)) ;; gnuserv (require 'gnuserv) (setq gnuserv-frame (selected-frame)) ;;(defvar server-program "h:\\eigen\\edit\\emacs\\bin\\gnuserv" ;; "*The program to use as the edit server") (gnuserv-start) ;; woman (autoload 'woman "woman" "Decode and browse a UN*X man page" t) (autoload 'woman-find-file "woman" "Find, decode and browse a specific UN*X man-page file" t) (setq woman-path (list "c:/man/" nil)) ;; ;; ispell4: ;; (autoload 'ispell-word "ispell4" "Check spelling of word at or before point" t) (autoload 'ispell-complete-word "ispell4" "Complete word at or before point" t) (autoload 'ispell-region "ispell4" "Check spelling of every word in the region" t) (autoload 'ispell-buffer "ispell4" "Check spelling of every word in the buffer" t) (setq ispell-command "h:/eigen/edit/emacs/ispell/ispell.exe" ispell-look-command "h:/eigen/edit/emacs/ispell/look.exe" ispell-command-options (list "-d" "h:/eigen/edit/emacs/ispell/ispell.dict" "-p" "h:/eigen/ispell.words") ) ;; Farben (my-set-standard-colors) (scroll-bar-mode -1) ;; deutsche Tastatur ;; Ende und C-Ende etc. ;; Del (pc-bindings-mode) ;; C-delete = kill-word, 2. 1. 1995 ;; kill word ;; ist point auf Leerzeichen ;;ja -> del (defun my-kill-word () (interactive) (kill-word 1) (if (equal (following-char) 32) (progn (let ((beg (point))) (forward-char 1) (kill-region beg (point))) ) nil ) ) (global-set-key [C-delete] 'my-kill-word) ;; C-d C-s bzw. C-d C-b (global-set-key "\M-d" nil) ;;(global-set-key "\M-s" 'save-buffer) ;;(global-set-key "\M-b" 'save-buffers-kill-emacs) ;;(global-set-key "\M-f" 'find-file) ;; Immer Unix-File System (using-unix-filesystems t) ;;(abbrev-mode 1) ;;(add-hook 'text-mode-hook ;; '(lambda () ;; (my-standard-hook text-mode-map) ;; ) ;; ) (add-hook 'makefile-mode-hook '(lambda () (my-standard-hook makefile-mode-map) ) ) (add-hook 'compilation-mode-hook '(lambda () (my-standard-hook compilation-mode-map) ) ) (add-hook 'lisp-interaction-mode-hook '(lambda () (my-standard-hook lisp-interaction-mode-map) ) ) (add-hook 'java-mode-hook '(lambda () (my-standard-hook java-mode-map) ;;(defconst c-indent-level 3) (define-key java-mode-map [C-tab] 'my-next-java-function) (define-key java-mode-map [C-S-tab] 'my-previous-java-function) ;; 30. 1. 1996 (modify-syntax-entry ?ö "." java-mode-syntax-table) (modify-syntax-entry ?ä "." java-mode-syntax-table) (modify-syntax-entry ?ü "." java-mode-syntax-table) (modify-syntax-entry ?Ö "." java-mode-syntax-table) (modify-syntax-entry ?Ä "." java-mode-syntax-table) (modify-syntax-entry ?Ü "." java-mode-syntax-table) (modify-syntax-entry ?ß "." java-mode-syntax-table) ;; 14. 8. 1996 (setq c-basic-offset 3) (define-key java-mode-map "\C-m" 'newline-and-indent) ;; springt automatisch in neue Zeile nach ; und Klammern ;;(c-toggle-auto-state 1) (setq c-hanging-braces-alist '((class-open after) (inline-open after) (block-close . c-snug-do-while) (substatement-open after) (brace-list-open))) ;;(my-set-java-colors) (set-face-foreground 'font-lock-reference-face "DarkGrey") (set-face-foreground 'bold-italic "MediumBlue") (font-lock-mode 1) ;; 15. 8. 1996 ;;(define-key java-mode-map "{" 'my-java-open-brace) (setq c-conditional-key c-C++-conditional-key) (c-set-offset 'knr-argdecl-intro 7) (c-set-offset 'statement-cont 7) (c-set-offset 'substatement-open 0) ) ) (add-hook 'bat-mode-hook '(lambda () (my-standard-hook bat-mode-map) (define-key bat-mode-map "\M-s" 'my-dos-save-buffer) (define-key bat-mode-map "\M-ds" 'my-dos-save-buffer) (define-key bat-mode-map "\M-d\M-s" 'my-dos-save-buffer) ) ) (add-hook 'tex-mode-hook '(lambda () (my-standard-hook tex-mode-map) (define-key tex-mode-map "\M-s" 'my-dos-save-buffer) (define-key tex-mode-map "\M-ds" 'my-dos-save-buffer) (define-key tex-mode-map "\M-d\M-s" 'my-dos-save-buffer) (define-key tex-mode-map "\"" 'self-insert-command) ) ) (add-hook 'shell-mode-hook '(lambda () (my-standard-hook shell-mode-map))) (add-hook 'find-file-hooks '(lambda () (set-number-of-lines) ) ) (defun hrm-Info-hook () "Info-mode hook" (interactive) (copy-face 'font-lock-reference-face 'info-xref) (copy-face 'font-lock-function-name-face 'info-node) (copy-face 'font-lock-keyword-face 'info-menu-5)) (add-hook 'Info-mode-hook 'hrm-Info-hook) (defvar bat-mode-map nil "Bat mode map") (if (not bat-mode-map) (setq bat-mode-map (copy-keymap indented-text-mode-map))) (defun bat-mode () "Major mode for editing Dos Batch code." (interactive) (setq major-mode 'bat-mode mode-name "bat") (use-local-map bat-mode-map) (run-hooks 'bat-mode-hook) ) (setq auto-mode-alist (cons '("\\.bat$" . bat-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.ksh$" . bat-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.ptx$" . LaTeX-mode) auto-mode-alist)) (global-set-key "\M-n" 'my-switch-to-last-buffer) ;; Copy Cut and Paste (global-set-key "\M-c" 'kill-ring-save) (global-set-key "\M-e" 'execute-extended-command) (global-set-key "\M-x" 'kill-region) (global-set-key "\M-v" 'yank) ;; C-_ und F4 fuer Line copy ;; Abhaengigkeiten: von M-c M-v ;; M-m gehe zu letztem Mark(er) (fset 'goto-last-mark [?\C-u ?\C- ]) (global-set-key [?\M-m] 'goto-last-mark) (fset 'duplicate-current-line [?\C- home ?\C- down ?\M-c ?\M-v ?\C-u ?\C- ?\C-u ?\C- ?\C-u ?\C- down] ) (global-set-key [f4] 'duplicate-current-line) (fset 'previous-char [up ?\C- right ?\M-c left down ?\M-v]) (global-set-key [?\C-_] 'previous-char) (fset 'copy-current-line [?\C- home ?\C- down ?\M-c ?\M-m ?\M-m]) (global-set-key [f12] 'copy-current-line) ;; kill buffer ;;(fset 'kill-saved-buffer ;;[?\C-x ?k ?\C-m]) (defun my-kill-buffer () "Kill-buffer macro war ohne Sicherheitsabfrage." (interactive) (kill-buffer nil) ) (global-set-key "\M-k" 'my-kill-buffer) ;; C-y loescht Zeile ;; Abhaengigkeiten: von M-x ;;(fset 'kill-zeile ;;[home ?\C- down ?\M-x]) (defun kill-zeile () (interactive) (if (equal mode-name "Fundamental") ;; sdfg sdfg sdfg sdfg (progn (beginning-of-line) (kill-line) ) (progn (beginning-of-line) (let ((beg (point))) (forward-line 1) (kill-region beg (point)) ) ) ) ) (global-set-key "\C-y" 'kill-zeile) ;; Datei einfuegen und block in Datei schreiben Alt-R und Alt-W (global-set-key "\M-r" 'insert-file) (global-set-key "\M-w" 'write-region) ;; eval-current-buffer auf F9 (wie unter Turbo C) (global-set-key [f9] 'eval-current-buffer) ;; super end-kbd-macro ;; Abhaengikeiten: M-e (fset 'super-end-kbd-macro [?\M-e ?n ?a ?m tab return ?t ?t ?t return ?\M-e ?i ?n ?s tab ?k tab return ?t ?t ?t return] ) (global-set-key [?\C-x ?9] 'super-end-kbd-macro) ;; C-x 1 ist umstaendlich, nun auf pause ;; C-x 0 auf scroll (Rollen), 20. 1. 1996 ;; C-x o auf M-o (global-set-key [pause] 'delete-other-windows) (global-set-key [scroll] 'delete-window) (global-set-key [?\M-o] 'other-window) ;; Help (defun my-help () (interactive) (if (string= major-mode "java-mode") (browse-javadoc) (info "h:\\eigen\\edit\\emacs\\info\\help.info") ) ;;(if (string= major-mode "java-mode") ;; (shell-command (concat "h:\\eigen\\edit\\emacs\\bin\\whelp.exe" ;; " -f j:\\cafe\\help\\apiref.hlp " ;; (current-word) " &") ;; ) ;;(info "h:\\eigen\\edit\\emacs\\info\\help.info") ;;) ) (global-set-key [f1] 'my-help) ;; this-line-to-top auf M-l ;; (defun this-line-to-top () (interactive) (recenter 0)) (global-set-key [?\M-l] 'this-line-to-top) ;; ;; scroll in place, von Achim Kaeber uebernommen ;; (defun scroll-up-in-place () (interactive) (scroll-up 1) (if (equal (point) (window-start)) nil (next-line 1) ) ) (defun scroll-down-in-place () (interactive) (let ((col (current-column))) (scroll-down 1) ;; point muss in erster Columne stehen, tut's auch. (let ((line (count-lines (window-start) (point)))) (if (equal line (- (screen-height) 3)) (move-to-column col) (previous-line 1) ) ) ) ) (global-set-key [M-down] 'scroll-up-in-place) (global-set-key [C-M-down] 'scroll-up-in-place) (global-set-key [M-up] 'scroll-down-in-place) (global-set-key [C-M-up] 'scroll-down-in-place) ;;(defun find-file-read-only-other-window (filename) ;; "Like find-file-read-only, but does it in another window." ;; (interactive "FFind file read-only in other window: ") ;; (switch-to-buffer-other-window (find-file-noselect filename)) ;; (setq buffer-read-only t)) ;; C-PgUp und C-PgDn (defun cursor-to-top () (interactive) (move-to-window-line 0) ) (defun cursor-to-bottom () (interactive) (move-to-window-line (- (screen-height) 3)) ) (global-set-key [C-prior] 'cursor-to-top) (global-set-key [C-next] 'cursor-to-bottom) ;; Lange Zeilen abschneiden ;;(setq default-truncate-lines t) ;;(setq truncate-lines t) ;; Zeichensatzkram ;;(set-default-font ;;"-*-MS Sans Serif-normal-r-*-*-*-280-*-*-c-0-*-*-") ;;(set-default-font "-*-Courier-normal-r-*-*-*-300-*-*-c-0-*-*-") ;;(set-default-font "-*-Symbol-normal-r-*-*-*-280-*-*-c-0-*-*-") ;;(set-default-font "-*-Fixedsys-normal-r-*-*-*-280-*-*-c-0-*-*-") ;;(set-default-font "-*-Fixedsys-normal-r-*-*-*-280-*-*-c-0-*-*-") ;;(set-default-font "-*-Terminal-normal-r-*-*-*-285-*-*-c-0-*-*-") ;;(set-default-font "-*-Courier-normal-r-*-*-*-300-*-*-c-180-*-*-") ;;(set-default-font "-*-Helv-normal-r-*-*-*-300-*-*-p-120-*-*-") ;; Fehlende Tasten (global-set-key "\M-\C-\\" "\\") (global-set-key "\M-\C-\]" "]") (global-set-key "\M-\C-\[" "[") (global-set-key [?\C-\M-~] "~") (global-set-key [?\C-\M-{] "{") (global-set-key [?\C-\M-}] "}") (global-set-key [?\C-\M-|] "|") ; 19. 1. 1996 (global-set-key [?\C-\M-@] "@") ; 21. 1. 1996 ;; cursor-down soll nicht neue Zeilen einfuegen ;; wird von my-next-line benoetigt. (setq next-line-add-newlines nil) ;; keine Backup Files (unter Win95 gibt's Probleme mit ~) (setq make-backup-files nil) ;; C--> landet auf llerzeichen und nicht auf naechstem Wort (defun my-forward-word () (interactive) (forward-word 2) (backward-word 1) ) (global-set-key [C-right] 'my-forward-word) ;; korrektes Scroll up und down (defvar my-scroll-column 0) (defun my-scroll-up () (interactive) (if (or (string= last-command "my-scroll-up") (string= last-command "my-scroll-down")) nil (setq my-scroll-column (current-column)) ) (beginning-of-line) ;; Vorsicht, stimmt nur, wenn point an Zeilenbeginn ist! (let ((line (count-lines (window-start) (point)))) (next-line (- (window-height) 2)) (recenter line) ) (move-to-column my-scroll-column) ) (defun my-scroll-down () (interactive) (if (or (string= last-command "my-scroll-up") (string= last-command "my-scroll-down")) nil (setq my-scroll-column (current-column)) ) (beginning-of-line) ;; Vorsicht, stimmt nur, wenn point an Zeilenbeginn ist! (let ((line (count-lines (window-start) (point)))) (previous-line (- (window-height) 2)) (recenter line) ) (move-to-column my-scroll-column) ) (global-set-key [next] 'my-scroll-up) (global-set-key [prior] 'my-scroll-down) ;; kein Beep unter Windows (setq visible-bell t) (global-set-key [f5] 'my-list-buffers) (setq shell-file-name "c:\\4nt\\4nt.exe") (setq explicit-shell-file-name "c:\\4nt\\4nt") ;; Mail senden (setq user-full-name "Chr. Clemens Lahme") (setq user-mail-address "Clemens.Lahme@gmd.de") (setq smtpmail-default-smtp-server "mats.gmd.de") (setq smtpmail-local-domain nil) (setq send-mail-function 'smtpmail-send-it) (setq smtpmail-smtp-service "smtp") (setq smtpmail-debug-info t) (setq smtpmail-code-conv-from nil) (load-library "smtpmail") ;;(setq mail-self-blind t) ;; Font Lock (global-font-lock-mode nil) (setq font-lock-maximum-decoration t) (turn-on-font-lock) ;;------------------------------------------------------------- ;; Home Rechner Kram ;;------------------------------------------------------------- (if (or (equal (system-name) "ALBUNDY") (equal (system-name) "SCHUBERT") ) (progn (find-file "d:\\eigen\\_emacs") (setq rmail-file-name "e:\\Mail\\RMAIL") ) ) (if (equal (system-name) "SCRIABIN") (progn ;; browsejavadoc settings (autoload 'browse-javadoc "browse-javadoc" "Read the java-api documentation of the keyword your cursor is over in a web browser." t) (setq browse-javadoc-browser "d:\\Netscape\\Communicator\\Program\\netscape.exe" ) (defvar browse-javadoc-java "j:\\jdk1.1.4\\bin\\java" ) (defvar browse-javadoc-classpath "h:\\eigen\\src\\java\\browsejavadoc;j:\\jdk1.1.4\\lib\\classes.zip;h:\\eigen\\src\\java" ) (defvar browse-javadoc-apipath "h:\\eigen\\clemens\\java\\browsejavadoc" ) ;; PGP ;; Buffer in temp datei schreiben ;; Namen abfrageb ;; system pgp -ests temp namen ;; in neuen Buffer lesen ;; 1. Verschlüsseln ;; Phrase einlesen und in scratch schreiben als Test ;; Buffer markieren ;; in Tempdatei speichern ;; pgp mit -z aufrufen (defun my-pgp-encrypt (password user) (interactive "sBitte das Passwort:\40 sAdressat: ") (write-region (point-min) (point-max) "c:\\pgp\\t.txt") (shell-command "del c:\\pgp\\t.asc") (shell-command (concat "c:\\pgp\\pgp.exe -esa c:\\pgp\\t.txt " user " -z\"" password "\"")) (find-file "c:\\pgp\\t.asc") (message "%s" "PGP encrypt erfolgreich abgeschlossen.") ) (defun my-pgp-decrypt (password) (interactive "sBitte das Passwort: ") (write-region (point-min) (point-max) "c:\\pgp\\t.asc") (shell-command "del c:\\pgp\\t") (shell-command (concat "c:\\pgp\\pgp.exe c:\\pgp\\t.asc -z\"" password "\"")) (find-file "c:\\pgp\\t") (message "%s" "PGP decrypt erfolgreich abgeschlossen.") ) (scroll-bar-mode 1) (set-screen-width 98) ;; Höhe wird automatisch richtig eingestellt ;; Standard Font ist normaler Windows Font und ist erwünscht. (setq rmail-file-name "~/Mail/RMAIL") ;; wird nun von desktop.el erledigt ;;(find-file "~/.emacs") ) ) (if (equal (system-name) "ALBUNDY") (progn (set-screen-width 79) (set-screen-height 31) (set-default-font "-*-Terminal-normal-r-*-*-*-285-*-*-c-0-*-*-") ) ) (if (equal (system-name) "SCHUBERT") (progn ;;(set-screen-width 66) ;;(set-screen-height 29) ;;(set-default-font ;;"-*-Courier-normal-r-*-*-*-300-*-*-c-180-*-*-") (set-screen-width 79) (set-screen-height 31) (set-default-font "-*-Terminal-normal-r-*-*-*-285-*-*-c-0-*-*-") (setq auto-mode-alist (cons '("\\.java$" . java-mode) auto-mode-alist)) (autoload 'java-mode "java-mode" "Java programming mode" t) ) ) (if (or (equal (system-name) "MAT_PC4") (equal (system-name) "mat_pc4.gmd.de") (equal (system-name) "mat_pc04.gmd.de") ) (progn ;;(set-screen-width 101) ;;(set-screen-width 85) ;;(set-screen-height 40) ;;(set-screen-height 36) (set-screen-width 66) (set-screen-height 27) ;; Font unter emacs-19.30 ;;(set-default-font "-*-Courier-normal-r-*-*-*-300-*-*-c-180-*-*-") (set-default-font "-*-Courier-normal-r-*-*-20-150-*-*-c-*-*-ansi-" ) ;; Mail lesen (setenv "MAILHOST" "mats.gmd.de") (setq rmail-primary-inbox-list '("po:lahme")) (setq rmail-pop-password-required t) (setq rmail-file-name "l:\\Mail\\RMAIL") ;; BBDB ;;(autoload 'bbdb "bbdb-com" "Insidious Big Brother Database" t) ;;(autoload 'bbdb-name "bbdb-com" "Insidious Big Brother Database" t) ;;(autoload 'bbdb-company "bbdb-com" "Insidious Big Brother Database" t) ;;(autoload 'bbdb-net "bbdb-com" "Insidious Big Brother Database" t) ;;(autoload 'bbdb-notes "bbdb-com" "Insidious Big Brother Database" t) ;;(autoload 'bbdb-insinuate-vm "bbdb-vm" "Hook BBDB into VM") ;;(autoload 'bbdb-insinuate-rmail "bbdb-rmail" "Hook BBDB into RMAIL") ;;(autoload 'bbdb-insinuate-mh "bbdb-mhe" "Hook BBDB into MH-E") ;;(autoload 'bbdb-insinuate-gnus "bbdb-gnus" "Hook BBDB into GNUS") ;;(autoload 'bbdb-insinuate-sendmail ;; "bbdb" "Hook BBDB into sendmail") ;;(setq rmail-mode-hook 'bbdb-insinuate-rmail) ;;(setq gnus-startup-hook 'bbdb-insinuate-gnus) ; for GNUS 3.15 or newer ;;(setq mail-setup-hook 'bbdb-insinuate-sendmail) ) ) (menu-bar-mode -1) ) ) (if (or (string= (system-name) "mats") (string= (system-name) "hoss") (string= (system-name) "peppi") (string= (system-name) "loriot") (string= (system-name) "scotty") ) (progn ;; wegen eines ntemacs bugs beim speichern von RMAIL, kleingeschrieben (setq rmail-file-name "~/Mail/rmail") ;;(global-set-key [?\M-a] 'set-mark-command) (global-set-key [?\C-x ?\C-b] 'my-list-buffers) (global-set-key [end] 'end-of-line) (global-set-key [home] 'beginning-of-line) (global-set-key [C-end] 'end-of-buffer) (global-set-key [C-home] 'beginning-of-buffer) ;; .emacs -- ;; Chr. Clemens Lahme, einiges (fast alles) uebernommen ;; von Joachim Kaeber, ;; Peter Kanzow, Mark S. Fischer ;; Joachim Kaeber, 1987 ;; ==================== ;; some global settings ;; ==================== (setq load-path (cons (concat (getenv "HOME") "/lib/emacs") load-path)) (put 'eval-expression 'disabled nil) (setq-default mode-line-buffer-identification (list " %b > " (system-name) ":%f ")) (global-set-key "\C-xf" 'find-file) ; was: 'set-fill-column ;; ==================================== ;; Loading and autoloading more el-code ;; ==================================== (setq auto-mode-alist (cons '("\\.pl$" . perl-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.tcl$" . tcl-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.cc$" . c++-mode) auto-mode-alist)) ;;(setq auto-mode-alist (cons '("\\.html$" . html-mode) auto-mode-alist)) ;; :::::::::::::::::::: ;; clemens aenderung, muss komischerweise am Anfang stehen ;; (setq scroll-step 1) ;; ;;;;;;;;;;;;;;;;;;;;; ;; .emacs init file ;; ;; ;;;;;;;;;;;;;;;;;;;;; (setq load-path (append '("/home/kanzow/emacs/lisp") load-path)) (setq load-path (append '("/home/kanzow/emacs/bam") load-path)) ;; ; Linenumber in Status Line ;;(load "linenumbers" t t) Funktioniert nicht mit PgDn und PgUp ;;(load "line+" ) ;;(linenumbers-all-buffers t) ;; ; This will set the line number in the mode line automatically when ;; ; next-line,prev-line,scroll-up, and scroll down are called. It does ;; ; not work to well with vm. ;; ; Use the following commented out code for displaying the current column. ;; ; Substitute it in the set-line function. ;; ; ;; ; (setq mode-line-process ;; ; (format " %4d %4d" (1+ (count-lines 1 (point))) (current-column)))) (defun toggle-truncate-lines () (interactive) (setq truncate-lines (not truncate-lines)) (redraw-display)) ;; variable settings ;; ;; ;; automatic mode load list ;; (setq auto-mode-alist (append '(("\\.emacs" . emacs-lisp-mode) ("\\.epoch" . emacs-lisp-mode) ("\\.el" . emacs-lisp-mode) ("\\.scm$" . scheme-mode) ("\\.sc$" . scheme-mode) ("\\.act$" . scheme-mode) ("\\.bhv$" . scheme-mode) ("\\.oosl$" . oosl-mode) ("\\.bib$" . bibtex-mode) ("\\.tex$" . tex-mode) ("\\.cc$" . c++-mode) ("\\.h$" . c++-mode) ("\\.k$" . c++-mode) ("\\.y$" . c++-mode) ("\\.l$" . c++-mode) ("\\.e$" . eiffel-mode) ("\\.tar$" . tar-mode) ("\\.Z$" . uncompress-while-visiting)) auto-mode-alist )) ;; (require 'crypt) ; automagically identify crypted files ;; ;; hooks ;; ;; ; mail setup ;;(setq vm-inhibit-startup-message t) ;;(setq send-mail-function 'feedmail-send-it) ;;(setq feedmail-confirm-outgoing t) ;;(setq feedmail-last-chance-hook ;; '(lambda () ;; (save-window-excursion ;; (switch-to-buffer feedmail-prepped-text-buffer) ;; (display-buffer feedmail-prepped-text-buffer) ;; (goto-char (point-min)) ;; (if (re-search-forward "^To:.*<.*>" nil t) ;; (progn ;; (message "Sending to EAN ...") ;; ; mail2ean has no %s because of mis- ;; ; interpretation of X.400 addresses ;; (setq mail-self-blind t) ;; (setq feedmail-nuke-bcc t) ;; (setq mail-default-reply-to ;; "ina@fokus.gmd.de") ;; (setq feedmail-binmail-template ;; "mail2ean -b lutzebaeck -q -m /usr3/drk/mail/out")) ;; (progn ;; (setq mail-self-blind t) ;; (setq feedmail-nuke-bcc t) ;; (setq mail-default-reply-to "drk@sol") ;; (setq feedmail-binmail-template "/bin/mail %s")))))) ;;(defun supercite-overload () ;; (require 'sc-oloads) ;; (sc-overload-functions) ;; (setq sc-citation-leader " ")) ;;(setq mail-yank-hooks 'sc-cite-original) ;;(setq mail-setup-hook 'supercite-overload) ;; ;; autoload ;; (autoload 'c++-mode "c++-mode" t nil nil) (autoload 'ispell-word "ispell" t nil nil) (autoload 'ispell-complete-word "ispell" t nil nil) (autoload 'ispell-region "ispell" t nil nil) (autoload 'ispell-buffer "ispell" t nil nil) (autoload 'eiffel-mode "eiffel" t nil nil) (autoload 'scheme-mode "scheme" t nil nil) (autoload 'run-scheme "cmuscheme" "Run an inferior Scheme process" t nil) (autoload 'gnus-post-news "gnuspost" "Post a new news." t nil) (autoload 'forms-find-file "forms" "Forms editing" t nil) (autoload 'tar-mode "tar-mode" nil nil nil) (autoload 'uncompress-while-visiting "uncompress" nil nil nil) (autoload 'sc-cite-original "sc" "Supercite 2.2" t nil) (autoload 'fast-apropos "fast-apropos" nil t nil) (autoload 'fast-command-apropos "fast-apropos" nil t nil) (autoload 'super-apropos "fast-apropos" nil t nil) (autoload 'vm "vm" nil t nil) (autoload 'vm-mode "vm" nil t nil) (autoload 'vm-visit-folder "vm" nil t nil) (autoload 'vm-visit-virtual-folder "vm-virtual" nil t nil) (autoload 'vm-mail "vm-reply" nil t nil) (autoload 'feedmail-send-it "feedmail" nil nil nil) (autoload 'sci "s2c-gnuemacs" "run an inferior scheme->c process" t nil) (autoload 'latin1-mode "latin1-mode" nil nil nil) ; load 8bit ISO charcodes (autoload 'cmushell "cmushell" "Run an inferior shell process" t nil) (autoload 'batch-byte-compile "bytecomp" nil nil nil) ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Let tex-mode be called, if a `.tex' file is loaded. The fuction ;; tex-mode will automatically select either plain-TeX or LaTeX mode (setq auto-mode-alist (append '(("\\.tex$" . tex-mode)) auto-mode-alist)) ;; ;; misc stuff ;; ;; ;(setq default-mode-line-format (quote (" " mode-line-buffer-identification mode-line-modified global-mode-string mode-line-time-string " [" (-3 . "%p") "]" " %[(" mode-name minor-mode-alist "%n" mode-line-process ")%]"))) ;;(set-buffer-modified-p (buffer-modified-p)) ;; Zeit setzen ;;(setq european-calendar-style t) ;;(setq display-time-day-and-date t) (setq display-time-string-forms '(day "." month "." (substring year -2)) ) (display-time) ;; wechseln in anderen Buffer mit Alt-n bzw Sun .-n ;;(fset 'next-buffer ;; [24 98 return]) ;;(global-set-key "\M-n" 'next-buffer) ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ; rmail ;; ; ;; Mail wird geloescht nachdem sie in separates file gespeichert wurde (put 'upcase-region 'disabled nil) ;; ; Emacs-w3 configuration options (setq load-path (cons (expand-file-name "/home/lahme/adm/emacs/w3") load-path) ) (autoload 'w3-preview-this-buffer "w3" "WWW Previewer" t) (autoload 'w3-follow-url-at-point "w3" "Find document at pt" t) (autoload 'w3 "w3" "WWW Browser" t) (autoload 'w3-open-local "w3" "Open local file for WWW browsing" t) (autoload 'w3-fetch "w3" "Open remote file for WWW browsing" t) (autoload 'w3-use-hotlist "w3" "Use shortcuts to view WWW docs" t) (autoload 'w3-show-hotlist "w3" "Use shortcuts to view WWW docs" t) (autoload 'w3-follow-link "w3" "Follow a hypertext link." t) (autoload 'w3-batch-fetch "w3" "Batch retrieval of URLs" t) (autoload 'w3-do-search "w3-srch" "w3-do-search" nil) (autoload 'url-get-url-at-point "url" "Find the url under the cursor" nil) (autoload 'url-file-attributes "url" "File attributes of a URL" nil) (autoload 'url-popup-info "url" "Get info on a URL" t) (autoload 'url-retrieve "url" "Retrieve a URL" nil) (autoload 'url-buffer-visiting "url" "Find buffer visiting a URL." nil) (autoload 'gopher-dispatch-object "gopher" "Fetch gopher dir" t) ;; ; End of Emacs-w3 configuration options (setq w3-default-homepage "http://mats.gmd.de/clemens") (global-set-key "\M-u" 'my-register-url) ;; 24. 1. 1996 ;; (if (or (equal "(mat_pc4)" (my-connect-site)) (equal "(mat_pc04)" (my-connect-site)) (equal "(elvis)" (my-connect-site)) (equal "(comtes03.gmd.de)" (my-connect-site)) (equal "(comtes04.gmd.de)" (my-connect-site)) (equal "(129.26.13.252)" (my-connect-site)) (equal "(smash.gmd.de)" (my-connect-site)) ) (progn (add-hook 'indented-text-mode-hook '(lambda () (my-telnet-hook indented-text-mode-map) ) ) (add-hook 'emacs-lisp-mode-hook '(lambda () (my-telnet-hook emacs-lisp-mode-map) ) ) ) ) (if (or (equal "(mat_pc4)" (my-connect-site)) (equal "(mat_pc04)" (my-connect-site)) ;; (equal "(comtes)" (my-connect-site)) ) (progn ;;(set-screen-height 48) (set-screen-height 37) ) ) (if (or (equal "(comtes03.gmd.de)" (my-connect-site)) (equal "(comtes04.gmd.de)" (my-connect-site)) (equal "(129.26.13.252)" (my-connect-site)) (equal "(smash.gmd.de)" (my-connect-site)) ) (progn (set-screen-height 37) ) ) ) ) ;; ----------------------------------------------------------------- ;; Abschlußsachen ;; ----------------------------------------------------------------- (setq debug-on-error nil) (load "desktop") (desktop-load-default) (desktop-read) ;; ----------------------------------------------------------------- ;; ToDo Liste ;; ----------------------------------------------------------------- ;;+ Undo auf F11 28. 5. 1996 ;;+ find-file Tab funktioniert garnicht richtig ;;+ Anzahl Zeilen in Datei ;;+ Column in Mode-Zeile ;;+ kill buffer mit anschliessendem return, 15. 1. 1996 ;;+ Alt-k von qedit (gelöst durch verweis in help auf doku.) ;;+ ( - 5. 5. 1997) ;;+ help verbessern (als info mode) ( - 5. 5. 1997) ;;-Truncate Zeichen > statt $ ;;-Truncate Scrollbar machen ;;+ C--> landet auf Leerzeichen und nicht auf naechstem Wort, ;;+ 15. 1. 1996 ;;+ yes-no zu y-n, 15. 1. 1996 ;;+ PgUp PgDown soll hinterher wieder in gleicher Zeile landen, ;;+ 15. 1. 1996 ;;+ aber immer noch nicht ganz korrekt, next-line funktioniert ;;+ nicht exakt wie per Tastatur (next-line 28 und C-u 28 down). ;;+ ausserdem an Windowgroesse statt screen anpassen ;;+ ( - 5. 5. 1997) ;;+ Return im Indented Text modus rueckt anschliessend nicht ein. ;;+ 20. 1. 1996 ;;+ Fehler in scroll-up-in-line wenn in erster Zeile, 26. 1. 1996 ;;+ Trim Spaces at end of Lines ;;+ Buffer durch pgp ersetzen. ;;+ warten auf neue ntemacs version. ;;+ PGP einbauen. 15.12.1996 jetzt hats also doch noch endlich geklappt. ;;+ datei laden sollte unter d:\eigen und nicht unter g:\emacs... ;;+ starten. 20. 1. 1996 durch besseres C-y ;;+ und durch direktes laden von _emacs, dadurch danach schon im ;;+ richtigen verzeichnis. 26. 1. 1996 ;;- fundamental-mode-hook funktioniert nicht??? ;;+ (mats, hoss, peppi, scotty), hypert, telnet, ALBUNDY, SCHUBERT, 2. 2. 1996 ;;+ Umlaute, bzw. anderen Zeichensatz. ;;? Bildschirmoptimierungen beim Scrollen ausschalten. ;; absatz in Kommentare huellen und enthuellen. (besonders fuer java) ;;+ dabbrev soll Gross und Kleinschreibung des Wortes uebernehmen: ;;+ z.B. TabellenPanel ;;+ standard hook mit dynamischer keytabellen uebergabe. 26. 1. 1996 ;;+ bestimmte Datei-Endungen (wie .class) sollten unterdrueckt werden. ;;+ 27. 1. 1996 ;;- smartline ohne mark-set ;;+ M-d s Bug unter emacs 19.31 ;;+ F3 für weitersuchen 13. 8. 1996 ;; sollte auch in RMAIL mode funktionieren ;; bei mail unten eine Signatur ;;+ bei news forward automatisch meinen mail-namen eintragen ;;+ pgp soll funktionieren ( - 5. 5. 1997) ;; clipb2nscp soll funktionieren ;;+ shell-command soll funktionieren ;;+ an Scriabin anpassen ;;+ Font farbig darstellen für Java, Tex, Perl etc. ;;+ gnuserv richtig installieren ;;+ gnuclient Fenster gleich nach start wieder schließen, ;;+ so wie bei runemacs.exe ;; rcs $ID$ in Variable legen und bei Hilfe etc auswerten. ;; Rollen Taste funktioniert nicht mehr. ;; im Help Buffer sollen Zeilen wieder umgebrochen werden ;; Organisationsfeld für Mail setzen (oder auch nicht: [Me myself and I]) ;;+ Java ;;- graue Hintergrundfarben ;;+ indent nach meinem Geschmack ;;+ Fontifying 14. 8. 1996 ;; /* */ funktioniert überhaupt nicht richtig ;; oder zumindest im moment nicht (kann wohl auch nicht) ;; wieder größeren Zeichensatz auswählen ;; anderen weniger grellen Zeichensatz. ;; w3 waere doch nicht schlecht fuer ToDo Liste etc. ;;+ Alt-n in Shell-Mode 20.12.1996 ;;+ info mode farbig (7. 2. 1997 - 5. 5. 1997) ;; Mail funktioniert nicht von Scriabin (7. 2. 1997 - ) ;; Mail From Feld automatisch setzen damit peppi Bug endlich wegfällt. ;;+ mocha und jj auch im java mode ( - 5. 5. 1997) ;;+ Standardtastaturbelegungen für texinfo mode (5. 5. 1997) ;; query-replace für datei hierachien. (19. 5. 1997 - ) ;; /* kommentare in gelb in java mode (23. 7. 1997 - ) ;;(set-default-font "-*-Fixedsys-normal-r-*-*-13-97-*-*-c-*-*-ansi-")