;;;;;;;;;;;; -*- 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, lscht 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

		;; fr 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. Verschlsseln
				;; 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)
				;; Hhe wird automatisch richtig eingestellt
				;; Standard Font ist normaler Windows Font und ist erwnscht.


				(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 -- <text:documentation>
		;; 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)
				)
		  )
		)

  )


;; -----------------------------------------------------------------
;; Abschlusachen
;; -----------------------------------------------------------------

(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 (gelst 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 fr 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 fr Java, Tex, Perl etc.
;;+ gnuserv richtig installieren
;;+    gnuclient Fenster gleich nach start wieder schlieen,
;;+    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 fr 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 greren Zeichensatz auswhlen
;; 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 wegfllt.
;;+ mocha und jj auch im java mode ( - 5. 5. 1997)
;;+ Standardtastaturbelegungen fr texinfo mode (5. 5. 1997)
;; query-replace fr datei hierachien. (19. 5. 1997 - )
;; /* kommentare in gelb in java mode (23. 7. 1997 - )
;;(set-default-font "-*-Fixedsys-normal-r-*-*-13-97-*-*-c-*-*-ansi-")