Emacs Viewing and Editing Chinese

I have two versions of Emacs on my iMac (SnowLeopard): Aquamacs and Emacs for Mac OS X. When I open a Chinese text file, Aquamacs can display it, but Emacs for Mac OS X cannot. Fortunately, Google brought me to an old post about editing and viewing Chinese in Emacs/Cygwin, and the method does work for Emacs for Mac OS X.

The code snippet that should be inserted into your .emacs file.

(if (not (member '("-*-courier new-normal-r-*-*-13-*-*-*-c-*-fontset-chinese"
   . "fontset-chinese") fontset-alias-alist))
    (progn
      (create-fontset-from-fontset-spec
       "-*-courier new-normal-r-*-*-13-*-*-*-c-*-fontset-chinese,
      chinese-gb2312:-*-MS Song-normal-r-*-*-16-*-*-*-c-*-gb2312*-*,
      chinese-big5-1:-*-MingLiU-normal-r-*-*-16-*-*-*-c-*-big5*-*,
      chinese-big5-2:-*-MingLiU-normal-r-*-*-16-*-*-*-c-*-big5*-*" t)

      (setq default-frame-alist
            (append
             '((font . "fontset-chinese"))
             default-frame-alist))
      )
  )

Above method is not enough to GNU Emacs for Windows.  I added the following encoding settings (copied from this post):

(set-language-environment 'Chinese-GB)
(set-keyboard-coding-system 'euc-cn)
(set-clipboard-coding-system 'euc-cn)
(set-terminal-coding-system 'euc-cn)
(set-buffer-file-coding-system 'euc-cn)
(set-selection-coding-system 'euc-cn)
(modify-coding-system-alist 'process "*" 'euc-cn)
(setq default-process-coding-system
            '(euc-cn . euc-cn))
(setq-default pathname-coding-system 'euc-cn)