The very unofficial .emacs home AlexanderMikhailian.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
Latest Additions
local files:
John J. Glynn
David Jolley

linked files:


articles:


links:
The Emacs wiki
ODP search for Emacs


dmoz.org
;; -*- emacs-lisp -*- 
;; Main dotemacs file - loads different data depending
;;on the operating system and the version of emacs
(defmacro GNUEmacs (&rest x)
  (list 'if (string-match "GNU Emacs" (prin1-to-string (version))) (cons 'progn x))) 
(defmacro GNUEmacs20 (&rest x)
  (list 'if (string-match "GNU Emacs 20" (prin1-to-string (version))) (cons 'progn x))) 
(defmacro GNUEmacs21 (&rest x)
  (list 'if (string-match "GNU Emacs 21" (prin1-to-string (version))) (cons 'progn x))) 
(defmacro XEmacs (&rest x)
  (list 'if (string-match "XEmacs 21" (prin1-to-string (version))) (cons 'progn x))) 
(defmacro GNULinux (&rest x)
  (list 'if (string-match "linux" (prin1-to-string system-type)) (cons 'progn x))) 
(defmacro Windows (&rest x)
  (list 'if (string-match "windows" (prin1-to-string system-type)) (cons 'progn x)))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;; General system setup start - almost everything ;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Load Paths ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(GNUEmacs
 (setq load-path (cons "/emacs/user-lisp" load-path))
 ;;(setq info-directory-list '("/usr/local/info" "/usr/info"))
 ) ;; GNUEmacs

(Windows
 (setq load-path (cons "/emacs/user-lisp" load-path))
 ) ;; Windows

;;;;;;;;;;;;;;;;;;;;;;;;;; Charsets Customization ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; Defining additional coding systems

;; Russian DOS
(defvar cp866-decode-table
  [ 255 240 nil nil 242 nil nil 244 nil nil nil nil nil nil 246 nil
    128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
    144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
    160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
    224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
    252 241 nil nil 243 nil nil 245 nil nil nil nil nil nil 247 nil]
    "Table for converting ISO-8859-5 characters into codepage 866 glyphs.")  

(setplist 'cp866-decode-table
          '(charset cyrillic-iso8859-5 language "Cyrillic-ISO" offset 160))

;; Greek DOS
(defvar cp737-decode-table
  [ 255 nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil
    248 nil 253 nil nil nil 234 250 235 236 237 nil 238 nil 239 240
    nil 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
    143 144 nil 145 146 147 148 149 150 151 244 245 225 226 227 229
    nil 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
    167 168 170 169 171 172 173 174 175 224 228 232 230 231 232 nil]
    "Table for converting ISO-8859-7 characters into codepage 737 glyphs.")  

(setplist 'cp737-decode-table
          '(charset greek-iso8859-7 language "Greek" offset 160))

; setting coding systems
(GNUEmacs
 (codepage-setup 437) ;; ascii
 (codepage-setup 737) ;; Greek old
 (codepage-setup 869) ;; Greek old
 (codepage-setup 851) ;; Greek oldest
 (codepage-setup 866) ;; Russian DOS
 (codepage-setup 1251)
 (set-terminal-coding-system 'cp1251)
 (set-keyboard-coding-system nil)
 (setq default-buffer-file-coding-system 'cp1251)
 (set-selection-coding-system 'cp1251)
 (prefer-coding-system 'cp1251)
 (define-coding-system-alias 'windows-1251 'cp1251)
 (define-coding-system-alias 'microsoft-1251 'cp1251)
 (define-coding-system-alias 'microsoft-cp1251 'cp1251)
 (define-coding-system-alias 'windows-cp1251 'cp1251)
 (define-coding-system-alias 'koi8-u 'cyrillic-koi8)
 (define-coding-system-alias 'KOI8-R 'cyrillic-koi8)
 (modify-coding-system-alist 'file "\.*" 'cp1251)
 (modify-coding-system-alist 'file "\\.el$" 'iso-2022-7bit))

;; Do not expand unprintable characters to their 8-bit values
(standard-display-8bit 128 255)

;; PC-like bindings
(GNUEmacs
 (pc-bindings-mode)
 (pc-selection-mode))

(condition-case err
    (require 'belarusian)
  (error
   (message "Cannot load belaruisan input method %s" (cdr err))))

(condition-case err
    (require 'htmlize)
  (error
   (message "Cannot load htmlize %s" (cdr err))))

;; Fancy highlighting in *info* buffer
(condition-case err
    (add-hook 'info-hook (require 'gc-info))
  (error
   (message "Cannot load gc-info %s" (cdr err))))

;; Nice buffer handling when many files are open
(condition-case err
(require 'msb)
  (error
   (message "Cannot load msb %s" (cdr err))))

;; Nice buffer handling when many files are open
(condition-case err
(require 'dictionary)
  (error
   (message "Cannot load dictionary %s" (cdr err))))

(condition-case err
(require 'blank-mode)
  (error
   (message "Cannot load blank-mode %s" (cdr err))))

(condition-case err
(require 'python-mode)
  (error
   (message "Cannot load python-mode %s" (cdr err))))

(condition-case err
(require 'css-mode)
  (error
   (message "Cannot load css-mode %s" (cdr err))))

(condition-case err
		(require 'ansi-color)
  (error
   (message "Cannot load ansi-color %s" (cdr err))))
(autoload 'ansi-color-for-comint-mode-on "ansi-color" nil t)
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)

;; (condition-case err (and (require 'ebnf2ps) (setq ebnf-syntax 'yacc
;; ;; put as much on one sheet as possible ps-n-up-printing 2 ;; print
;; on 2 pages ebnf-horizontal-orientation t)) (error (message "Cannot
;; load ebnf2ps converter %s" (cdr err))))


;;(condition-case err (and(require 'table) (add-hook 'text-mode-hook
;;'table-recognize)) (error (message "Cannot load table %s" (cdr
;;err))))

;;(condition-case err
;;(require 'xrdb-mode)
;;  (error
;;   (message "Cannot load xrdb-mode %s" (cdr err))))

;;(condition-case err
;;(and(require 'color-theme)
;; (color-theme-gnome2))
;;  (error
;;   (message "Cannot load color-teme %s" (cdr err))))

;;; (require 'backup-dir) (setq bkup-backup-directory-info
;;; '(("/home/greg/.*" "/~/.backups/" ok-create full-path
;;; prepend-name) ("^/[^/:]+:" ".backups/") ; handle EFS files
;;; specially: don't ("^/[^/:]+:" "./") ; search-upward... its very
;;; slow (t ".backups/" full-path prepend-name search-upward)))


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Highlighting ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; Global Highlight
(cond ((fboundp 'global-font-lock-mode)
       ;; Turn on font-lock in all modes that support it
       (global-font-lock-mode t)
       ;; Maximum colors
       (setq font-lock-maximum-decoration t)
       ;; Set the maximum buffer size for coloured text to unlimited
       (setq-default font-lock-maximum-size nil)
       ))

;; Turn on fast but less accurate lazy-lock mode
(add-hook 'font-lock-mode-hook 'turn-on-lazy-lock)

;; Setting this to t makes scrolling faster, but may  
;; momentarily present unfontified areas when you 
;; scroll into them.
(setq lazy-lock-defer-on-scrolling t)

;;  Highlight selection
(GNUEmacs
 (transient-mark-mode t))

;; Highlight matching parentheses
(GNUEmacs
 (show-paren-mode t))

;;Changing .h to use automatic C++ formatting (instead of standard C)
(setq auto-mode-alist
      (append 
       '(
         ("\\.h$"       . c++-mode)   
         ("\\.dps$"     . pascal-mode) 
         ("\\.l$"       . c-mode)
         ("\\.y$"       . c-mode)
         ("\\.py$"       . python-mode)
         ("\\.css$"       . css-mode)
	 ("\\.Xdefaults$"    . xrdb-mode)
	 ("\\.Xenvironment$" . xrdb-mode)
	 ("\\.Xresources$"   . xrdb-mode)
	 ("*.\\.ad$"         . xrdb-mode)
         ) auto-mode-alist)
      )

;;;;;;;;;;;;;;;;;;;;;;;;; Interface and key bindings ;;;;;;;;;;;;;;;;;;;;;;;;;

;; dispaly time in the modeline
(setq display-time-24hr-format t)
(setq display-time-day-and-date t)
(display-time)

;; automatic resizing of the minibuffer 
(resize-minibuffer-mode 1)

;; Customize the calendar
(setq european-calendar-style 't)
(setq calendar-week-start-day 1)
(setq calendar-latitude 51.05)
(setq calendar-longitude -2.39)
(setq calendar-location-name "Ieper")

;; make searches case-INsensitive
(set-default 'case-fold-search t)

;; This makes `apropos' and `super-apropos' 
;; do everything that they can and run slower.
(setq apropos-do-all t)

;; Stop ^M's from displaying in system shell window
(add-hook 'comint-output-filter-functions 'shell-strip-ctrl-m nil t)

;; This tells emacs to show the column number in each modeline. 
(column-number-mode 1)

;; Setting the defualt tabulation
(setq default-tab-width 2)

;; Wrap lines while typing in text mode
(add-hook 'text-mode-hook 'auto-fill-mode t)

;; Don't wrap long lines when viewing
(GNUEmacs
 (hscroll-global-mode t))

;; Remove the startup message
(setq inhibit-startup-message t) 

; don't automatically add new lines when 
;;scrolling down at the bottom of a buffer 
(setq next-line-add-newlines nil)

;;delete excess backup versions
(setq delete-old-versions t)

;; Do not make backup files
;;(setq make-backup-files 'nil)

;; Do only one line scrolling.
(setq scroll-step 1)

;; Start scrolling when 2 lines from top/bottom
;;(setq scroll-margin 1)

;; Shut off message buffer. 
;; (setq message-log-max nil)
;; (kill-buffer "*Messages*")

;; Save session in ~/.emacs.desktop
(load "desktop")
(desktop-load-default)
(desktop-read)

;; Make all "yes or no" prompts show "y or n" instead
(fset 'yes-or-no-p 'y-or-n-p)

;; set autocompletion on
(dynamic-completion-mode) ;;!!! slows startup !!!

;; We want compression support, entering tgz files etc.. :)
;;(auto-compression-mode t) ;; !!! slows startup !!!

;; This turns off the GUI menus in X.  
;; (menu-bar-mode nil))

;; Shut off annoying beep
;; Works only on Windows?
(Windows
 (set-message-beep 'silent))

;; Some elisp customization
;;(setq debug-on-error t)
;;(setq debug-on-quit t)

;;;;;;;;;;; Frame title bar formatting to show full path of file ;;;;;;;;;;;;;; 
(setq-default
 frame-title-format
 (list 
  '((buffer-file-name 
     " %f" 
     (dired-directory
      dired-directory
      (revert-buffer-function 
       " %b"
       ("%b - Dir:  " default-directory)))))))

(setq-default
 icon-title-format
 (list 
  '((buffer-file-name 
     " %f" 
     (dired-directory
      dired-directory
      (revert-buffer-function 
       " %b"
       ("%b - Dir:  " default-directory)))))))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; W3 customization ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 
(custom-set-variables
 '(url-be-asynchronous t)
 '(url-external-retrieval-program "wget")
 '(url-mail-command (quote mail)))
(eval-after-load "mule-sysdp"  
  '(push '("windows-1251" . cp1251) w3-mime-charset-coding-alist))

;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mail customization ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 
(setq user-name "yourname") 
(setq user-full-name "Your Full Name") 
(setq user-mail-address "your@ddress") 
(setq mail-default-headers "Content-Type: text/plain; charset=windows-1251\n") 
; assign a prefix for each quoted line in email replies and forwards 
(setq mail-yank-prefix ">")

; copy all outgoing messages to a file
;;(setq mail-archive-file-name "~/nsmail/Sent")

; specify location of primary mail folder
;;(setq rmail-file-name "~/mail/RMAIL")

; automatically append .signature to end of emails
(setq mail-signature t) 


;;;;;;;;;;;;;;;;;;;;;;;;;;; Gnus customization ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 
(setq gnus-check-new-newsgroups nil
      gnus-read-active-file nil
      gnus-nov-is-evil nil
      gnus-select-method '(nntp "ddt.demos.su")
			system-name "localhost")

;; The following lines make the startup much slower
(gnus-mule-add-group "fido7.ru" 'cyrillic-koi8)


;;;;;;;;;;;;;;;;;;;;;; For dired to use only one buffer ;;;;;;;;;;;;;;;;;;;;;;; 
(defadvice dired-advertised-find-file (around
dired-subst-directory activate)
  "Replace current buffer if file is a directory."
  (interactive)
  (let ((orig (current-buffer))
        (filename (dired-get-filename)))
    ad-do-it
    (when (and (file-directory-p filename)
               (not (eq (current-buffer) orig)))
      (kill-buffer orig))))


;; Inserts the user name 
(defun insert-userid ()
  "Insert the my full name and address"
  (interactive)
        (insert user-full-name " <" user-mail-address ">"))


;; Inserts the date in the format 
(defun insert-date ()
  "Insert date at point."
  (interactive)
  (insert (format-time-string "%d.%m.%Y %H:%M")))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Printing ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 
;; Print two pages on 1 sheet of paper 
(setq ps-n-up-printing 2)

;; remove that ugly header
(setq ps-print-header nil)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;; General system setup end - part one
;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;Linux setup start;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(GNULinux
 (define-key global-map [(delete)]    "\C-d")

 ;; Setting load-path

 (create-fontset-from-fontset-spec
  "-misc-*-medium-r-*-*-14-*-*-*-*-*-fontset-debian,
 latin-iso8859-1:-misc-*-medium-r-*-*-14-*-*-*-*-*-*-1,
 latin-iso8859-2:-misc-*-medium-r-*-*-14-*-*-*-*-*-*-2,
 cyrillic-iso8859-5:-misc-*-medium-r-*-*-14-*-*-*-*-*-*-5")

;(GNUEmacs21
;(set-default-font "fontset-default"))
 (GNUEmacs20
  (set-default-font "-adobe-courier-medium-r-*-*-14-*-*-*-*-*-*-*"))
 ) ;; GNULinux

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;Linux setup end;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;Windows setup start;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; WinNT fontset for maximum i18n
(Windows
 (set-w32-system-coding-system 'cp1251)
 (setq w32-standard-fontset-spec
       "-*-Courier New-normal-r-*-*-12-*-*-*-c-*-fontset-courier,
    ascii:-*-Courier New-normal-r-*-*-12-*-*-*-c-*-iso8859-1,
    latin-iso8859-1:-*-Courier New-normal-r-*-*-12-*-*-*-c-*-iso8859-1,
    latin-iso8859-2:-*-Courier New-normal-r-*-*-12-*-*-*-c-*-iso8859-2,
    latin-iso8859-3:-*-Courier New-normal-r-*-*-12-*-*-*-c-*-iso8859-3,
    latin-iso8859-4:-*-Courier New-normal-r-*-*-12-*-*-*-c-*-iso8859-4,
    latin-iso8859-9:-*-Courier New-normal-r-*-*-12-*-*-*-c-*-iso8859-9,

    cyrillic-iso8859-5:-*-Courier New-normal-r-*-*-12-*-*-*-c-*-iso8859-5,
    greek-iso8859-7:-*-Courier New-normal-r-*-*-12-*-*-*-c-*-iso8859-7,
    hebrew-iso8859-8:-*-Rod-normal-r-*-*-12-*-*-*-c-*-iso8859-8,

    ipa:-*-Lucida Sans Unicode-normal-r-*-*-12-*-*-*-c-*-muleipa*-*,

    thai-tis620:-*-Tahoma-normal-r-*-*-12-*-*-*-c-*-tis620-*,

    latin-jisx0201:-*-MS Gothic-normal-r-*-*-12-*-*-*-c-*-jisx0208-sjis,
    katakana-jisx0201:-*-MS Gothic-normal-r-*-*-12-*-*-*-c-*-jisx0208-sjis,
    japanese-jisx0208:-*-MS Gothic-normal-r-*-*-12-*-*-*-c-*-jisx0208-sjis,
    japanese-jisx0208-1978:-*-MS Gothic-normal-r-*-*-12-*-*-*-c-*-jisx0208-sjis,
    japanese-jisx0212:-*-MS Gothic-normal-r-*-*-12-*-*-*-c-*-jisx0212-sjis,
    korean-ksc5601:-*-Gulim-normal-r-*-*-12-*-*-*-c-*-ksc5601-*,
    chinese-gb2312:-*-MS Song-normal-r-*-*-12-*-*-*-c-*-gb2312-*,
    chinese-big5-1:-*-MingLiU-normal-r-*-*-12-*-*-*-c-*-big5-*,
    chinese-big5-2:-*-MingLiU-normal-r-*-*-12-*-*-*-c-*-big5-*")

 (setq w32-enable-italics t)
 (create-fontset-from-fontset-spec w32-standard-fontset-spec t)

;; Use a unix-style font dialog
 (setq w32-use-w32-font-dialog nil)
 (setq w32-fixed-font-alist '("Select Fontset"))

 ;; setting the default fontset
 ;; (set-frame-font "fontset-courier")

 ;; Set up BDF fonts:
 (setq bdf-directory-list
       '("d:/intlfonts/Asian"       "d:/intlfonts/Chinese" 
         "d:/intlfonts/Chinese.X"   "d:/intlfonts/Ethiopic"   
         "d:/intlfonts/European"    "d:/intlfonts/Japanese"
         "d:/intlfonts/Japanese.X"  "d:/intlfonts/Korean.X" 
         "d:/intlfonts/Misc/" "d:/intlfonts/Japanese.BIG"))
 (setq w32-bdf-filename-alist (w32-find-bdf-fonts bdf-directory-list))

 
 ;; Setting the network printer
 (setq ps-printer-name "//yourserver/yourprinter")
 
 ;; BDF fonts for printing
 (load-library "ps-mule") ;; needed for setting some variables below
 
 (setq ps-multibyte-buffer 
       'bdf-font
       ps-mule-font-info-database ps-mule-font-info-database-bdf
       bdf-directory-list 
       '(
         "d:/intlfonts/Asian" 
         "d:/intlfonts/Chinese"
         "d:/intlfonts/Chinese.X"  
         "d:/intlfonts/Ethiopic" 
         "d:/intlfonts/European"   
         "d:/intlfonts/Japanese"
         "d:/intlfonts/Japanese.X" 
         "d:/intlfonts/Korean.X"
         "d:/intlfonts/Misc"       
         "d:/intlfonts/Japanese.BIG")
       )
 
 ;; bdf-only fontset 
 (create-fontset-from-fontset-spec
  "-*-fixed-medium-r-normal-*-16-*-*-*-c-*-fontset-bdf,
 japanese-jisx0208:-*-*-medium-r-normal-*-16-*-*-*-c-*-jisx0208.1983-*,
 katakana-jisx0201:-*-*-medium-r-normal-*-16-*-*-*-c-*-jisx0201*-*,
 latin-jisx0201:-*-*-medium-r-normal-*-16-*-*-*-c-*-jisx0201*-*,
 japanese-jisx0208-1978:-*-*-medium-r-normal-*-16-*-*-*-c-*-jisx0208.1978-*,
 thai-tis620:-misc-fixed-medium-r-normal--16-160-72-72-m-80-tis620.2529-1,
 lao:-misc-fixed-medium-r-normal--16-160-72-72-m-80-MuleLao-1,
 tibetan-1-column:-TibMdXA-fixed-medium-r-normal--16-160-72-72-m-80-MuleTibetan-1,
 ethiopic:-Admas-Ethiomx16f-Medium-R-Normal--16-150-100-100-M-160-Ethiopic-Unicode,
 tibetan:-TibMdXA-fixed-medium-r-normal--16-160-72-72-m-160-MuleTibetan-0")
 
 ;; Need to add some fonts to font-encoding-alist since the bdf fonts
 ;; are type 0 not the default type 1.
 (setq font-encoding-alist
       (append '(("MuleTibetan-0" (tibetan . 0))
                 ("GB2312"        (chinese-gb2312 . 0))
                 ("JISX0208"      (japanese-jisx0208 . 0))
                 ("JISX0212"      (japanese-jisx0212 . 0))
                 ("VISCII"        (vietnamese-viscii-lower . 0))
                 ("KSC5601"       (korean-ksc5601 . 0))
                 ("MuleArabic-0"  (arabic-digit . 0))
                 ("MuleArabic-1"  (arabic-1-column . 0))
                 ("MuleArabic-2"  (arabic-2-column . 0)))
               font-encoding-alist))
 
 ;; Setting bash as the default emacs shell
 (defun my-shell-setup ()
   "For bash (cygwin 18) under Emacs 20"
   (setq comint-scroll-show-maximum-output 'this)
   (setq comint-completion-addsuffix t)
   ;; (setq comint-process-echoes t) ;; reported that this is no longer needed
   (setq comint-eol-on-send t)
   (setq w32-quote-process-args ?\")
   (make-variable-buffer-local 'comint-completion-addsuffix))
 
 (setq shell-mode-hook 'my-shell-setup)
 (setq binary-process-input t) 
 
 (setq process-coding-system-alist 
       (cons 
        '("bash" . cp1251)
        process-coding-system-alist))
 
 ) ;; Match Windows

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;Windows setup - end;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;; General system setup start - fontsets
;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(GNULinux
 (create-fontset-from-fontset-spec
  "-adobe-courier-medium-r-*-*-14-*-*-*-*-*-fontset-adobe,
 latin-iso8859-1:-adobe-courier-medium-r-*-*-14-*-*-*-*-*-*-1,
 latin-iso8859-2:-adobe-courier-medium-r-*-*-14-*-*-*-*-*-*-2,
 cyrillic-iso8859-5:-adobe-courier-medium-r-*-*-14-*-*-*-*-*-*-5")

 (create-fontset-from-fontset-spec
  "-adobe-courier-medium-o-*-*-14-*-*-*-*-*-fontset-adobe,
 latin-iso8859-1:-adobe-courier-medium-o-*-*-14-*-*-*-*-*-*-1,
 latin-iso8859-2:-adobe-courier-medium-o-*-*-14-*-*-*-*-*-*-2,
 cyrillic-iso8859-5:-adobe-courier-medium-o-*-*-14-*-*-*-*-*-*-5")

 (create-fontset-from-fontset-spec
  "-adobe-courier-bold-o-*-*-14-*-*-*-*-*-fontset-adobe,
 latin-iso8859-1:-adobe-courier-bold-o-*-*-14-*-*-*-*-*-*-1,
 latin-iso8859-2:-adobe-courier-bold-o-*-*-14-*-*-*-*-*-*-2,
 cyrillic-iso8859-5:-adobe-courier-bold-o-*-*-14-*-*-*-*-*-*-5")

 (create-fontset-from-fontset-spec
  "-adobe-courier-bold-r-*-*-14-*-*-*-*-*-fontset-adobe,
 latin-iso8859-1:-adobe-courier-bold-r-*-*-14-*-*-*-*-*-*-1,
 latin-iso8859-2:-adobe-courier-bold-r-*-*-14-*-*-*-*-*-*-2,
 cyrillic-iso8859-5:-adobe-courier-bold-r-*-*-14-*-*-*-*-*-*-5")

 (set-default-font "fontset-adobe")
 
 (setq default-frame-alist
       '(
         ;; (top . 2) (left . 5)
         (width . 110) (height . 43)
         (cursor-color . "black")
         (cursor-type . box)
         (foreground-color . "black")
         (background-color . "white")
				 )
			 )
 ) ;; GNULinux


(Windows
 (setq default-frame-alist
			 '(
				 (top . 2) (left . 5)
				 (width . 120) (height . 43)
				 (cursor-color . "black")
				 (cursor-type . box)
				 (foreground-color . "black")
				 (background-color . "white")
				 (font . "-*-Courier
New-normal-r-*-*-12-*-*-*-c-*-fontset-courier")
				 )
			 )
 ) ;; Windows

(custom-set-faces
 '(modeline ((t (:inverse-video nil :foreground "black" :background "skyblue"))))
 '(font-lock-comment-face ((((class color)) (:foreground "firebrick" :italic t))))
 '(font-lock-keyword-face ((((class color)) (:foreground "dodger blue" :bold t) )))
 )

;; This is more correct than the previous statement 
; (setq font-lock-face-attributes ; '( 
; (font-lock-comment-face "SteelBlue" nil nil 1 nil) 
; (font-lock-string-face "cyan" nil nil 1 nil) 
; (font-lock-keyword-face "darkorange" nil nil nil nil) 
; (font-lock-type-face "yellow" nil nil nil nil) 
; (font-lock-function-name-face "DeepSkyBlue" nil nil nil 1) 
; (font-lock-variable-name-face "magenta" nil nil nil nil) 
; (font-lock-reference-face "blue" nil nil nil nil) 
; (font-lock-builtin-face "lightblue" nil nil nil nil) 
; (font-lock-constant-face "cornflowerblue" nil nil nil nil) 
; (font-lock-warning-face "red" nil nil nil nil)))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;; General system setup end - fontsets
;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;; Last changes

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:49:24 2005 by Ingo Koch