The very unofficial .emacs home IngoKoch.emacs
emacs
Sections
home
what is this all about ?
customization basics
special topics
local dotfiles
dotfiles on the web
new and updated pages
useful sites and pages
search locally
EMacro
OS/2 Emacs
Ingo Koch
IngoKoch.emacs
.emacs-gnu-all
.emacs-gnu-win
.mycustom
.vm
javadecomp.el
wsmake.el

IngoKoch.zip
Latest Additions
local files:
John J. Glynn
David Jolley

linked files:


articles:


links:
The Emacs wiki
;; -*- lisp -*- 
;; *****************************************************************************;;              Ingos own special emacs-initialization
;; 
;; This .emacs is based on the work of many people all around the world.
;; Whenever I found an interesting or useful piece in another .emacs, I've 
;; integrated it into my own .emacs
;; A smaller part of it was done by myself (the one which first didn't work 
;; like expected 8-)) ).
;; I'm no elisp professional, but a user who loves this tool and who tries
;; to tailor it most closely to his own needs.
;; 
;; This .emacs is currently used only on the NT-machines I work with 
;; (although some parts of it are relicts from the time I used emacs 19.xx 
;; on OS/2 - where are the guys who did this port ?).
;; The linux-boxes I have to deal with at home and in my company are used 
;; as communication servers for internet access, mail, news and an internal 
;; http-server. For the system administration tasks I have to do, the 
;; standard .emacs delivered with the SuSE distribution is good enough.
;;
;; Anybody for whom this .emacs is useful may use all or part of it 
;; with respect to the rules of the GPL.
;;
;; This file is a countinuos work, every new discovered package finds it's
;; way in here. Because of this, and due to the fact, that I've given it
;; a new structure today, I'll start versioning it.
;;
;; Date        Version  Author  Reason
;; 1999/06/06  1.0.0    ko      Restructuring and documentation
;; 1999/07/25  1.0.1    ko      changed all comments to english due to the fact
;;                              that it may be published along with other .emacs
;;                              for non german readers.
;;                              Deletet a part of jde configuration which was 
;;                              already handled by java-mode
;;                              Deleted some other relicts of former times.
;; 1999/11/07  1.0.2    ko      moved htmlize and html-helper-mode from the dark
;;                              side of the moon to the sunny side of all day
;;                              emacs.
;;                              Applied the urls for the used packages which are
;;                              not part of the standard distribution of emacs.
;;                              Added Comments and removed rexx
;; 2000/03/07  1.0.3    ko      Moved all additional packages to a new 
;;                              directory beside the emacs dir: site-lisp.
;;                              Replaced yes/no with y/n.
;;                              Removed custom-set-faces, now handled in
;;                              .mycustom.
;;                              Added mail support for vm.
;;                              Modified Printer support for direct Postscript
;;                              printing instead of printing via ghostscript.
;;                              Added extensions to be handled as pascal files.
;;                              Added jde contributions jdok and jmaker.
;;                              Added browse-javadoc.
;;                              Added javadecomp.
;;                              moved some things to the sunny side:
;;                              gnus, shell-execute
;;                              Added things to the dark side:
;;                              auctex
;;                              And last but not least 8-)
;;                              I have thrown out all this custom-set stuff into
;;                              a separate file.
;;                              This includes all custom-set-variables and the 
;;                              custom-set-faces statements.
;; 2000/04/23  1.1.0    ko      Oops, a major rewrite !
;;                              I'm setting up a page about using the same 
;;                              .emacs on multiple platforms and multiple
;;                              versions of emacs, and all split into pieces
;;                              for better maintainance, so I need an example !
;;                              The .emacs is the 'decide what to load' file
;;                              now. The only thing that happens here is to
;;                              load the right files for the different platforms
;; 2000/05/26  1.1.1    ko      Added Robs suggestion: use system-configuration
;;                              for the query about the used OS
;; *****************************************************************************
;; -----------------------------------------------------------------------------
;; load customizations split into pieces for better maintainance
;; put information about what was loaded into the messages buffer
;; -----------------------------------------------------------------------------
;;
;; Check which Emacs we are running and on which platform.
;; Load the right customizations.
;; The platform specific files are loaded before the files which
;; hold the information common to all platforms, because they are
;; the place where the load-path should be defined in order to 
;; load packages not part of the standard distribution.
;; The notation of this path depends on the platform Emacs is used 
;; on, so load this info first.
;;
;; If you don't see the messages below, don't get crazy, my messages 
;; buffer holds only the last 50 messages, I don't see them either.
;; 
(cond
    ((string-match "GNU" (emacs-version))
        ; Yep, it's my GNU Emacs
        (cond
             ((string-match "linux" system-configuration)
	        ; Hey, its linux, try to load the linux customizations
                (if (file-exists-p "~/.emacs-gnu-linux")
                    (progn
                     (message "loading GNU Emacs customizations for Linux")
                     (load-file "~/.emacs-gnu-linux"))))
             ((string-match "nt4" system-configuration)
                ; Oh, Windoze again, load the right stuff for this one
                (if (file-exists-p "~/.emacs-gnu-win")
                    (progn
                     (message "loading GNU Emacs customizations for Win NT")
                     (load-file "~/.emacs-gnu-win"))))
        )
	; Ok, platform dependend things should be setup, now for the rest
        (if (file-exists-p "~/.emacs-gnu-all")
            (progn
             (message "loading GNU Emacs customizations common to all OS")
             (load-file "~/.emacs-gnu-all")))
    ) ; end of GNU section
    ((string-match "XEmacs" (emacs-version))
        ; Oops, I don't use XEmacs how do I come here ?
        (cond
             ((string-match "linux" system-configuration)
                (if (file-exists-p "~/.emacs-xemacs-linux")
                    (progn
                     (message "loading XEmacs customizations for Linux")
                     (load-file "~/.emacs-xemacs-linux"))))
             ((string-match "win32" system-configuration)
                (if (file-exists-p "~/.emacs-xemacs-win")
                    (progn
                     (message "loading XEmacs customizations for Win")
                     (load-file "~/.emacs-xemacs-win"))))
        )
        (if (file-exists-p "~/.emacs-xemacs-all")
            (progn
             (message "loading XEmacs customizations common to all OS")
             (load-file "~/.emacs-xemacs-all")))
    ) ; end of XEmacs section
)
;; After all platform and kind of Emacs dependend initialization is done
;; here is the place to load those things common to all.
;; I currently don't have this, because I'm only using GNU Emacs and all
;; is done in .emacs-gnu-all
(if (file-exists-p "~/.emacs-all")
    (progn
     (message "loading Emacs customizations common to all Emacs and all OS")
     (load-file "~/.emacs-all")))

(message ".emacs loaded successfully")
All content copyright by the contributors. Website maintained with Emacs , wsmake and html-helper-mode
Emacs community logo by Daniel Lundin Last updated on Sat Jan 22 14:57:05 2005 by Ingo Koch