NTEmacs Binary Build by Cygwin

You can choose install my build package or build it by your self.

If you want to install build package, please see "Distributed Package Install" section.

If you want to build it by yourself, please see "How to Build the NTEmacs and Wanderlust by Cygwin" section.

Cygwin Install

Before starting to use NTEmacs either using build package or buid it by yourself, I strongly recommend to use cygwin with NTEmacs.

The some feature of build package expects the cygwin is in installed on machine which you want to use NTEmacs.

Distributed Package Install

Download

GNU Emacs 23.1.1 (i386-mingw-nt5.1.2600) of 2009-08-19 on JINKUDO - Wanderlust/2.15.7 (Almost Unreal)

emacs_nt_23.1.1_wl_2.15.7.tar.gz - base source emacs-23.1.tar.gz

GNU Emacs 22.1.50.1 (i386-mingw-nt5.1.2600) of 2007-05-28 on JKUDO01 - Wanderlust/2.15.6 (Almost Unreal)

emacs_nt_22.1.50.1_wl_2.15.6.tar.gz - base source emacs-22.1.tar.gz

Installation

Original NTEmacs

Original NTEmacs is also available the following information resources.

How to Build the NTEmacs and Wanderlust by Cygwin

This is only required to create the build by yourself, if you just install the distributed package in this page, you don't need to do anything in this section.

Emacs

Wanderlust

Emacs-W3M

If you compile w3m itself,

Ghost Script/View

Mule-UCS

Eblook for Dictionary Search

Perforce Emacs Integration

Emacs Configuration by .emacs file

Shell Configuration

(setq explicit-shell-file-name "bash")

(setq shell-file-name "bash")

Emacs-W3M Configuration

(autoload 'w3m "w3m" "Interface for w3m on Emacs." t)

(autoload 'w3m-find-file "w3m" "Interface for w3m on Emacs." t)

(autoload 'w3m-search "w3m-search" "Search QUERY using SEARCH-ENGINE." t)

(setq w3m-command "w3m")

(setq w3m-type 'w3m)

(setq w3m-use-filter t)

(setq w3m-display-inline-image t)

(setq mime-setup-enable-inline-html t)

(eval-after-load "mime-view"

 '(progn

    (autoload 'mime-w3m-preview-text/html "mime-w3m")

    (ctree-set-calist-strictly

     'mime-preview-condition

     '((type . text)

       (subtype . html)

       (body . visible)

       (body-presentation-method . mime-w3m-preview-text/html)))

    (set-alist 'mime-view-type-subtype-score-alist

               '(text . html) 3)))

(require 'mime-w3m)

Mail User Agent(Wanderlust) Configuration

(autoload 'wl "wl" "Wanderlust" t)

(autoload 'wl-other-frame "wl" "Wanderlust on new frame." t)

(autoload 'wl-draft "wl-draft" "Write draft with Wanderlust." t)

(autoload 'wl-user-agent-compose "wl-draft" nil t)

(if (boundp 'mail-user-agent)

   (setq mail-user-agent 'wl-user-agent))

(if (fboundp 'define-mail-user-agent)

   (define-mail-user-agent

     'wl-user-agent

     'wl-user-agent-compose

     'wl-draft-send

     'wl-draft-kill

     'mail-send-hook))

Create the .wl,.folders,.address files followed by the http://www.gohome.org/wl/index.ja.html example

Windows IME Setting (with IME Patch Only)

(if (string-match "22." emacs-version)

(progn

;;; IME

(when (fboundp 'mw32-ime-initialize)

 (setq default-input-method "MW32-IME")

 (setq-default mw32-ime-mode-line-state-indicator "[--]")

 (setq mw32-ime-mode-line-state-indicator-list '("[--]" "[あ]" "[--]"))

 (mw32-ime-initialize)

 (wrap-function-to-control-ime 'y-or-n-p nil nil)

 (wrap-function-to-control-ime 'yes-or-no-p nil nil)

 (wrap-function-to-control-ime 'universal-argument t nil)

 (wrap-function-to-control-ime 'read-string nil nil)

 (wrap-function-to-control-ime 'read-from-minibuffer nil nil)

 (wrap-function-to-control-ime 'read-key-sequence nil nil)

 (wrap-function-to-control-ime 'map-y-or-n-p nil nil)

 (wrap-function-to-control-ime 'read-passwd t t) ; don't work as we expect.

 (add-hook 'mw32-ime-on-hook

    (function (lambda () (set-cursor-color "blue"))))

 (add-hook 'mw32-ime-off-hook

    (function (lambda () (set-cursor-color "black"))))

 (add-hook 'minibuffer-setup-hook

      (function (lambda ()

  (if (fep-get-mode)

    (set-cursor-color "blue")

  (set-cursor-color "black"))))))

))

(if (string-match "23." emacs-version)

(progn

;;; IME

(when (fboundp 'w32-ime-initialize)

 (setq default-input-method "W32-IME")

 (setq-default w32-ime-mode-line-state-indicator "[--]")

 (setq w32-ime-mode-line-state-indicator-list '("[--]" "[あ]" "[--]"))

 (w32-ime-initialize)

 (wrap-function-to-control-ime 'y-or-n-p nil nil)

 (wrap-function-to-control-ime 'yes-or-no-p nil nil)

 (wrap-function-to-control-ime 'universal-argument t nil)

 (wrap-function-to-control-ime 'read-string nil nil)

 (wrap-function-to-control-ime 'read-from-minibuffer nil nil)

 (wrap-function-to-control-ime 'read-key-sequence nil nil)

 (wrap-function-to-control-ime 'map-y-or-n-p nil nil)

 (wrap-function-to-control-ime 'read-passwd t t) ; don't work as we expect.

 (add-hook 'w32-ime-on-hook

    (function (lambda () (set-cursor-color "red"))))

 (add-hook 'w32-ime-off-hook

    (function (lambda () (set-cursor-color "black"))))

;  (add-hook 'minibuffer-setup-hook

    (function (lambda ()

(if (fep-get-mode)

;     (set-cursor-color "blue")

;   (set-cursor-color "black")))))

)))

Windows Font Configuration

(setq w32-use-w32-font-dialog nil)

(setq scalable-fonts-allowed t)

(setq w32-enable-synthesized-fonts t)

(if (string-match "22." emacs-version)

(progn

(create-fontset-from-ascii-font "-outline-Courier New-normal-r-normal-normal-12-*-*-*-*-*-iso8859-1" nil "u1")

))

(if (string-match "23." emacs-version)

(progn

(create-fontset-from-ascii-font "Courier New 9" nil "u1")

))

(set-fontset-font "fontset-u1" 'japanese-jisx0208

  '("メイリオ" . "jisx0208-sjis"))

(set-fontset-font "fontset-u1" 'katakana-jisx0201

  '("メイリオ" . "jisx0208-sjis"))

(set-fontset-font "fontset-u1" 'japanese-jisx0208-1978

  '("メイリオ" . "jisx0208-sjis"))

(set-fontset-font "fontset-u1" 'latin-iso8859-1

  '("Courier New" . "iso8859-1"))

(set-fontset-font "fontset-u1" 'latin-iso8859-2

  '("Courier New" . "iso8859-2"))

(set-fontset-font "fontset-u1" 'latin-iso8859-3

  '("Courier New" . "iso8859-3"))

(set-fontset-font "fontset-u1" 'latin-iso8859-4

  '("Courier New" . "iso8859-4"))

(set-fontset-font "fontset-u1" 'cyrillic-iso8859-5

  '("Courier New" . "iso8859-5"))

(set-fontset-font "fontset-u1" 'greek-iso8859-7

  '("Courier New" . "iso8859-7"))

(set-fontset-font "fontset-u1" 'hebrew-iso8859-8

  '("Arial Unicode MS" . "iso8859-8"))

(set-fontset-font "fontset-u1" 'latin-iso8859-9

  '("Courier New" . "iso8859-9"))

(set-fontset-font "fontset-u1" 'thai-tis620

  '("Arial Unicode MS" . "tis620-0"))

(if (string-match "23." emacs-version)

(progn

(set-fontset-font "fontset-u1" 'korean-ksc5601

  '("Arial Unicode MS" . "ksc5601.1987-0") nil 'append)

(set-fontset-font "fontset-u1" 'chinese-big5-1

  '("Arial Unicode MS" . "big5-0") nil 'append)

(set-fontset-font "fontset-u1" 'chinese-big5-2

  '("Arial Unicode MS" . "big5-0") nil 'append)

(set-fontset-font "fontset-u1" 'chinese-gb2312

  '("Arial Unicode MS" . "gb2312.1980-0") nil 'append)

(set-fontset-font "fontset-u1" 'mule-unicode-0100-24ff

  "Arial Unicode MS" nil 'append)

(set-fontset-font "fontset-u1" 'mule-unicode-2500-33ff

  "Arial Unicode MS" nil 'append)

(set-fontset-font "fontset-u1" 'mule-unicode-e000-ffff

  "Arial Unicode MS" nil 'append)

(set-fontset-font "fontset-u1" 'ethiopic

  '("Arial Unicode MS" . "iso10646-1") nil 'append)

(set-fontset-font "fontset-u1" 'mule-unicode-0100-24ff

  '("Arial Unicode MS" . "iso10646-1") nil 'append)

(set-fontset-font "fontset-u1" 'mule-unicode-0100-24ff

  '("Arial Unicode MS" . "iso10646-1") nil 'append)

(set-fontset-font "fontset-u1" 'mule-unicode-0100-24ff

  '("Arial Unicode MS" . "iso10646-1") nil 'append)

(set-fontset-font "fontset-u1" 'mule-unicode-0100-24ff

  '("Arial Unicode MS" . "iso10646-1") nil 'append)

(set-fontset-font "fontset-u1" nil "Arial Unicode MS" nil 'append)

))

;;; Frame parameters

(setq default-frame-alist

     (append (list

      '(foreground-color . "grey20")

      '(background-color . "white smoke")

      '(cursor-color . "black")

              '(alpha . (85 85))

      ;'(font . "fontset-TT12M")

      '(font . "fontset-u1")

      )

      default-frame-alist))

(setq initial-frame-alist default-frame-alist)

Print Configuration

(require 'ps-print)

(setq ps-multibyte-buffer 'non-latin-printer)

(setq ps-lpr-command "c:/Program Files/Ghostgum/gsview/gsview32.exe")

(setq ps-printer-name nil)

(setq ps-printer-name-option nil)

(setq ps-line-number t)

(setq ps-line-number-font "Times Italic")

(setq ps-line-number-font-size 6)

(setq ps-font-family 'Courier)

(setq ps-paper-type 'a4)

(setq ps-landscape-mode t)

(setq ps-number-of-columns 2)

Mule-UCS Configuration

(require 'un-define)

(require 'jisx0213)

Eblook and Lookup Configuration

(autoload 'lookup "lookup" nil t)

(autoload 'lookup-region "lookup" nil t)

(autoload 'lookup-pattern "lookup" nil t)

(autoload 'lookup-current-word "lookup" nil t)

(define-key ctl-x-map "l" 'lookup)

(define-key ctl-x-map "y" 'lookup-region)

(define-key ctl-x-map "w" 'lookup-word)

(define-key ctl-x-map "\C-y" 'lookup-pattern)

(setq lookup-search-agents '((ndeb "c:/emacs/dict/")))

(setq lookup-default-dictionary-options '((:stemmer .

    stem-english)))

(setq lookup-use-kakasi nil)

(setq ndeb-process-coding-system 'sjis-dos)

Perforce Emacs Integration Configuration

(load-library "p4")

(setenv "P4PORT" "hostname:6999")

(setenv "P4CLIENT" "client name")

(setenv "P4USER" "user name")

(setenv "P4PASSWD" "password")

Additional .emacs configuration

Linux, Cygwin Emacs, Meadow, NTEmacs Dispatch

;; Unix/Linux.

(cond

((or (string= system-type "usg-unix-v")

     (string= system-type "gnu/linux")

     )

;; Linux Setting is here

))

;; Cygwin Emacs

(cond

((or (string= system-type "cygwin")

     )

;; Cygwin Setting is here

))

;; NTEmacs and Meadow for Meadow1.99/2.X(Emacs21)

(cond

((or

 (string= system-type "windows-nt")

 (string= system-type "windows")

 )

 (cond

 ((featurep 'meadow)

 ;; Meadow Setting is here

  )

 (t

  (if (string-match "22." emacs-version)

    (progn

    ;; NTEmacs22 Setting is here

  ))

  (if (string-match "23." emacs-version)

    (progn

    ;; NTEmacs23 Setting is here

  ))

 ))

))

Emacs Tips

Emacs Reference