Meadow セットアップ2009/12/03 12:23

Ruby + Rails のコーディング用に Meadow をセットアップしたのでその記録
なお、以下の設定は自分用なので、他の人には通用しないかもしれない、、、

■ インストール~初期設定 (参考サイト -> http://www.bookshelf.jp/soft/meadow_9.html)
(1) http://www.meadowy.org/meadow/dists/3.00/ から setup-ja.exe をダウンロード
(2) ダウンロードした setup-ja-exe を実行して、普通にインストール -> C:\TOOLS\meadow 
  ディレクトリ下にインストールした
  Meadow のインストールと同時に ImageMagick というものがインストールされるが、どうも
  システム環境変数の Path を上書きしてしまうみたいで、元々の Path の設定が消えてし
  まった (net use とかのコマンドラインのツールが使えなかったので気づいた) 。何が設定
  されていたのか、わからないのでとりあえず次の %SystemRoot% の分だけ追加しておい
  た。

    Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;c:\tools\meadow\imagemagick-6.2.8-q16

(3) home ディレクトリと tmp ディレクトリの作成
 
    home ディレクトリ -> d:\home
    tmp ディレクトリ -> d:\home\tmp

(4) 環境変数の設定

    LANG=ja_JP.SJIS
    TZ=JST-9
    TMP=d:/home/tmp
    HOME=d:/home
    PATH=%PATH%;c:\tools\meadow\bin
    CYGWIN="binmode nontsec tty"

(5) .emacs の作成
  Meadow インストールディレクトリ (c:\tools\meadow) にある dot.emacs.ja をそのまま使
  用した

    copy c:\tools\meadow\dot.emacs.ja d:\home\.emacs

(6) マシンを再起動して Meadow の動作確認



■ TicagoFix フォントが使いたい
「Meadowうそっこちゅーとりある」さん (http://www.remus.dti.ne.jp/~m-mikiya/emacs/meadow.html) の「■なんかデフォルトのフォントでかいんだけど」で書いてある設定 (これは、Meadow とか Meadow2 とかの記述方法で、今回インストールした Meadow3 には通用しない) と、「ぬぞうメモ」さんの「Meadowのフォントを変える」(http://milky.way-nifty.com/nuzou/2004/02/meadow.html) で書いてある設定を合成したものを .emacs に追加


  ;;; Ticago フォント設定
  (w32-add-font
   "ticago-fontset"
   '((spec
    ((:char-spec ascii :height any)
     strict
     (w32-logfont "TicagoFix" 0 -10 400 0 nil nil nil 128 1 1 1))
    ((:char-spec ascii :height any :weight bold)
     strict
     (w32-logfont "TicagoFix" 0 -10 700 0 nil nil nil 128 1 1 1)
     ((spacing . -1)))
    ((:char-spec ascii :height any :slant italic)
     strict
     (w32-logfont "TicagoFix" 0 -10 400 0 t nil nil 128 1 1 1))
    ((:char-spec ascii :height any :weight bold :slant italic)
     strict
     (w32-logfont "TicagoFix" 0 -10 700 0 t nil nil 128 1 1 1)
     ((spacing . -1)))
    ((:char-spec katakana-jisx0201 :height any)
     strict
     (w32-logfont "TicagoFix" 0 -10 400 0 nil nil nil 128 1 1 1))
    ((:char-spec katakana-jisx0201 :height any :weight bold)
     strict
     (w32-logfont "TicagoFix" 0 -10 700 0 nil nil nil 128 1 1 1)
     ((spacing . -1)))
    ((:char-spec katakana-jisx0201 :height any :slant italic)
     strict
     (w32-logfont "TicagoFix" 0 -10 400 0 t nil nil 128 1 1 1))
    ((:char-spec katakana-jisx0201 :height any :weight bold :slant italic)
     strict
     (w32-logfont "TicagoFix" 0 -10 700 0 t nil nil 128 1 1 1)
     ((spacing . -1)))
    ((:char-spec japanese-jisx0208 :height any)
     strict
     (w32-logfont "TicagoFix" 0 -10 400 0 nil nil nil 128 1 1 1))
    ((:char-spec japanese-jisx0208 :height any :weight bold)
     strict
     (w32-logfont "TicagoFix" 0 -10 700 0 nil nil nil 128 1 1 1)
     ((spacing . -1)))
    ((:char-spec japanese-jisx0208 :height any :slant italic)
     strict
     (w32-logfont "TicagoFix" 0 -10 400 0 t nil nil 128 1 1 1))
    ((:char-spec japanese-jisx0208 :height any :weight bold :slant italic)
     strict
     (w32-logfont "TicagoFix" 0 -10 700 0 t nil nil 128 1 1 1)
     ((spacing . -1))))))
  ;; Ticago をデフォルトで
  (setq default-frame-alist
     (append (list
          '(width . 128)
          '(height . 60)
          '(font . "ticago-fontset"))
         default-frame-alist))


・w32-logfont の "-10" を変えるとフォントのサイズが変わるみたい
・setq default-frame-alist の中の width と height がウインドウのサイズみたい

あとは、よくわからなぁ~い



■ shell モードで bash が使いたいので、cygwin をインストール
(1) http://www.cygwin.com/ から setup.exe をダウンロード
(2) ダウンロードした setup.exe を実行して、普通にインストール
  特にオプションは指定しなかったが、Default Text File Type (つまり改行コード) は Unix
  形式の LF を選択した
(3) Path の追加 -> PATH=%PATH%;C:\TOOLS\cygwin\bin
(4) 再起動
(5) とりあえず bash の動作確認

  (a) コマンドラインプロンプトから bash と入力 -> bash が起動
  (b) ls -l を実行してみる -> 実行できるが日本語が文字化けする

(6) ホームディレクトリ (d:\home) 下に .bash_profile と .bashrc を作成
  「Cygwinのページ」さん (http://www.asahi-net.or.jp/~UQ7K-HRSM/cygwin.html) に記載
  されているものをそのまま利用させていただきました。

    --- .bash_profile ---
    # ~/.bash_profile: executed by bash for login shells.
    if [ -e /etc/bash.bashrc ] ; then
     source /etc/bash.bashrc
    fi
    if [ -e ~/.bashrc ] ; then
     source ~/.bashrc
    fi


    --- .bashrc ---
    # Source global definitions
    if [ -f /etc/bashrc ]; then
        . /etc/bashrc
    fi
    export SHELL=/bin/bash
    export HOME=/cygdrive/d/home
    export TMPDIR=/cygdrive/d/home/tmp
    export TZ=JST-09
    export MAKE_MODE=unix
    export LANG=ja_JP.SJIS
    PATH=/usr/local/sbin:/usr/sbin:/sbin:.:~/bin
    PATH=/usr/local/bin:/usr/X11R6/bin:/usr/bin:/bin:$PATH
    PAGER=less
    JLESSCHARSET=japanese-sjis
    export PATH PAGER JLESSCHARSET
    PS1="$HOSTNAME:\w$ "
    if [ -n ${DISPLAY} ]; then
      export DISPLAY=localhost:0.0
    fi
    if [ ! -n "${TERM}" ]; then
      TERM=cygwin
    fi
    alias ls='ls --show-control-chars'

最初、これらのファイルの改行コードを CR+LF で作ってしまい bash を起動すると

  bash: /cygdrive/d/home/.bashrc: line 30: syntax error: unexpected end of file

のようなエラーが発生していた。改行コードの問題と気づくまでにずいぶんかかってしまった、、、

(7) 日本語ファイル名等が文字化けするので、「日本語メッセージの文字化けに対応する」
  (http://www.sixnine.net/cygwin/cygwin-doc/japo.html) の説明にしたがって、Shift_JIS
  のメッセージカタログを作成
  なお、このページで公開されている moconv.sh の実行には nkf と msgfmt 等の cygwin
  のデフォルトインストールではインストールされないツールが必要なので、別途インストー
  ルしておく必要がある

  a) nkf のインストール
    「nkf Network Kanji Filter プロジェクト日本語トップページ」
   (http://sourceforge.jp/projects/nkf/) には、ソースコードしかなく、make するのが面
   倒、というか make する環境を作るのが面倒だっだので、cygwin 用のバイナリを探す
    http://cygwin-je.sourceforge.jp/cygwin_je/release/nkf/ に nkf-2.0.4-1.tar.bz2 つーの
   があるので、展開してできたファイルをフォルダ毎コピー

    $ tar -jxvf nkf-2.0.4-1.tar.bz2
    $ cp -R usr/* /usr

  b) cygwin の setup.exe を実行して gettext-devel をインストール
  c) moconv.sh を実行



■ Meadow の shell 設定 (参考サイト -> http://www.bookshelf.jp/soft/meadow_15.html)
基本的には、参考サイトの設定通りなのだが、日本語が文字化けしたりするので、coding-system の設定を色々といじった結果 (試行錯誤、行き当たりばったり) 下記のような設定になっている

  ;; Shell の設定
  (setq explicit-shell-file-name "bash.exe")
  (setq shell-file-name "sh.exe")
  (setq shell-command-switch "-c")
  (modify-coding-system-alist 'process ".*sh\\.exe" '(sjis-dos . euc-jp-unix))
  ;; argument-editing の設定
  (require 'mw32script)
  (mw32script-init)
  (setq exec-suffix-list '(".exe" ".sh" ".pl"))
  (setq shell-file-name-chars "~/A-Za-z0-9_^$!#%&{}@`'.:()-")



■ その他の設定
・Ctrl-z で undo
  (global-set-key "\C-z" 'undo)


とりあえず、以上