使っているのはMeadow-3.00-devです。以下のsetup-ja-3.00.5.exeからインストールできます。
Index of /meadow/dists/3.00
インストールなどは以下が参考になります。
Meadow/Emacs memo: Meadow のインストール
.emacs
現在の.emacsの内容は以下の通りです。
;;;; -*- mode: lisp-interaction; coding: iso-2022-7bit -*- ;;; ;;; Mule-UCS ;;; (setq unicode-basic-translation-charset-order-list '(ascii latin-iso8859-1 latin-iso8859-2 latin-iso8859-3 latin-iso8859-4 cyrillic-iso8859-5 greek-iso8859-7 hebrew-iso8859-8 latin-iso8859-9 ipa thai-tis620 ethiopic indian-is13194 vietnamese-viscii-lower vietnamese-viscii-upper mule-unicode-0100-24ff japanese-jisx0208 korean-ksc5601 chinese-cns11643-1 chinese-cns11643-2 chinese-cns11643-3 chinese-cns11643-4 chinese-cns11643-5 chinese-cns11643-6 chinese-cns11643-7 chinese-gb2312 chinese-big5-1 chinese-big5-2 chinese-sisheng japanese-jisx0212 japanese-jisx0213-1 japanese-jisx0213-2 latin-jisx0201 katakana-jisx0201 )) (setq unicode-basic-translation-charset-order-list '(ascii japanese-jisx0208 japanese-jisx0213-1 japanese-jisx0213-2 japanese-jisx0212 katakana-jisx0201 latin-iso8859-1)) (require 'un-define) (setq bitmap-alterable-charset 'tibetan-1-column) (require 'jisx0213) ;;; ;;; ;;; (set-language-environment "Japanese") ;;; ;;; ;;; (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 '("[--]" "[あ]" "[--]")) (add-hook 'mw32-ime-on-hook (function (lambda () (set-cursor-height 2)))) (add-hook 'mw32-ime-off-hook (function (lambda () (set-cursor-height 4)))) ;;; BDF ;;; (setq bdf-use-intlfonts16 t) ;;; (setq initial-frame-alist '((font . "intlfonts16"))) (w32-add-font "bdf-font" '((spec ((:char-spec ascii :height 120) strict (bdf-font "c:/usr/local/share/emacs/fonts/bdf/lt1-16-etl.bdf")) ((:char-spec ascii :height 120 :weight bold) strict (bdf-font "c:/usr/local/share/emacs/fonts/bdf/lt1-16b-etl.bdf")) ((:char-spec ascii :height 120 :slant italic) strict (bdf-font "c:/usr/local/share/emacs/fonts/bdf/lt1-16i-etl.bdf")) ((:char-spec ascii :height 120 :weight bold :slant italic) strict (bdf-font "c:/usr/local/share/emacs/fonts/bdf/lt1-16bi-etl.bdf")) ((:char-spec japanese-jisx0208 :height 120 :weight any :slant any) strict (bdf-font "c:/usr/local/share/emacs/fonts/bdf/jiskan16.bdf"))))) ;; フレームフォントの設定 (setq default-frame-alist (cons '(font . "bdf-font") default-frame-alist)) ;;; (setq default-frame-alist (append (list '(foreground-color . "black") '(background-color . "white") '(background-color . "gray") '(border-color . "black") '(mouse-color . "white") '(cursor-color . "black") '(width . 100) '(height . 40) '(top . 100) '(left . 290) '(alpha . (70 70 nil nil)) ) default-frame-alist)) ;; Don't work on 3.0 ;;(if window-system ;; (progn ;; (setq font-lock-support-mode 'lazy-lock-mode) ;; (global-font-lock-mode t))) ;;; ;;php-mode ;;; (autoload 'php-mode "php-mode" "PHP mode" t) (defcustom php-file-patterns (list "\\.php[s34]?\\'" "\\.phtml\\'" "\\.inc\\'") "*List of file patterns for which to automatically invoke php-mode." :type '(repeat (regexp :tag "Pattern")) :group 'php) (let ((php-file-patterns-temp php-file-patterns)) (while php-file-patterns-temp (add-to-list 'auto-mode-alist (cons (car php-file-patterns-temp) 'php-mode)) (setq php-file-patterns-temp (cdr php-file-patterns-temp)))) ;;; ;;;ruby-mode ;;; (autoload 'ruby-mode "ruby-mode" "Mode for editing ruby source files" t) (setq auto-mode-alist (append '(("\\.rb$" . ruby-mode)) auto-mode-alist)) (setq interpreter-mode-alist (append '(("ruby" . ruby-mode)) interpreter-mode-alist)) (autoload 'run-ruby "inf-ruby" "Run an inferior Ruby process") (autoload 'inf-ruby-keys "inf-ruby" "Set local key defs for inf-ruby in ruby-mode") (add-hook 'ruby-mode-hook '(lambda () (inf-ruby-keys))) (modify-coding-system-alist 'file "\\.rb$" 'utf-8) (modify-coding-system-alist 'file "\\.rhtml$" 'utf-8) ;;ruby-electric (require 'ruby-electric) (add-hook 'ruby-mode-hook '(lambda () (ruby-electric-mode t))) ;;rails ;;(defun try-complete-abbrev (old) ;; (if (expand-abbrev) t nil)) ;;(setq hippie-expand-try-functions-list ;; '(try-complete-abbrev ;; try-complete-file-name ;; try-expand-dabbrev)) ;;(setq rails-use-mongrel t) ;;(require 'rails) ;;; ;;;html-mode ;;; (autoload 'html-helper-mode "html-helper-mode" "Yay HTML" t) (setq auto-mode-alist (cons '(".html$" . html-helper-mode) auto-mode-alist)) (setq auto-mode-alist (cons '(".rhtml$" . html-helper-mode) auto-mode-alist)) (setq auto-mode-alist (cons '(".tpl$" . html-helper-mode) auto-mode-alist)) (custom-set-variables ;; custom-set-variables was added by Custom -- don't edit or cut/paste it! ;; Your init file should contain only one such instance. '(case-fold-search t) '(current-language-environment "Japanese") '(default-input-method "japanese") '(global-font-lock-mode t nil (font-lock))) (custom-set-faces ;; custom-set-faces was added by Custom -- don't edit or cut/paste it! ;; Your init file should contain only one such instance. ) ;;no backup (setq make-backup-files nil) ;;config key (require 'redo) (global-set-key "\C-@" 'redo) (global-set-key "\C-f" 'goto-line) (global-set-key "\C-ch" 'replace-string) ;;color (set-face-foreground 'default "white") (set-face-background 'default "black") (setq frame-background-mode 'dark) (frame-update-face-colors (selected-frame)) ;;; ;;; gnuserv ;;; (require 'gnuserv) (gnuserv-start) (setq gnuserv-frame (selected-frame)) ;;elscreen-tab (require 'elscreen-tab)
起動時にエラーする
この.emacsでMeadowを起動すると、次のように怒られます。
・・・
Loading c:/meadow/packages/pkginfo/migemo/auto-autoloads.el (source)...done
Loading c:/meadow/packages/pkginfo/ms-fonts-ja/auto-autoloads.el (source)...done
Loading c:/meadow/packages/pkginfo/mule-fonts/auto-autoloads.el (source)...
Loading unicode...done
Loading cl-macs (compiled; note, source file is newer)...done
「Invalid value for :char-spec :nil」でぐぐってみると、参考になるものがありました。
(require 'jisx0213)
(set-language-environment "Japanese")
とだけ書いて Meadow を起動すると、
An error has occurred while loading `h:/home/.emacs':
error: Invalid value for :char-spec :nil
というエラーが表示されます。
おぉ。同じエラー。レスを見てみると解決策が。
mule-ucs-0.85-20050113-1-pkg から mule-ucs-0.85-20050113-2-pkg
へ update すると packages/pkginfo/mule-ucs/auto-autoloads.el
を消します。それでエラーはでなくなります。
それでもエラーになる場合は手動で
packages/pkginfo/mule-ucs/auto-autoloads.el
を消してください。
ここからはファイルをいじるので、まずは、Meadowのディレクトリ全体をsvnレポジトリにインポート。
次に上の変更をやってみようとしたら、既に同じ状態になっていた。でもエラーはでる(ノд`)
もう少し調べてみたら解決策があった。
違った。すみません。逆だった。
(中略)
.emacs で (require 'jisx0213) するとエラーになって、
mule-ucs/auto-autoloads.el で (require 'jisx0213) すればエラー
にならないんです。
なるほど。ここで.emacs中の「require 'jisx0213」を消して、「packages\pkginfo\mule-ucs\」にauto-autoloads.elを作成。内容は以下の通り。
(require 'jisx0213) ;;; auto-autoloads.el ends here
Meadow起動・・・・・・エラーorz
Loading c:/meadow/packages/pkginfo/pukiwiki-mode/auto-autoloads.el (source)...done
Loading c:/meadow/packages/pkginfo/session/auto-autoloads.el (source)...done
Loading c:/meadow/packages/pkginfo/skk/auto-autoloads.el (source)...
あ、でも違うエラーだ。ってことはさっきのは解決した!
どうやら、skk関連でエラーしている模様。
エラーログを出力してみる。
Debugger entered--Lisp error: (void-variable skk-large-jisyo) (null skk-large-jisyo) (cond ((null skk-large-jisyo) (setq skk-large-jisyo ...)) ((listp skk-large-jisyo)) ((not ...) (setq skk-large-jisyo ...))) eval-buffer(#<buffer *load*<2>> nil "c:/meadow/packages/pkginfo/skk/auto-autoloads.el" nil t) ; Reading at buffer position 475 load-with-code-conversion("c:/meadow/packages/pkginfo/skk/auto-autoloads.el" "c:/meadow/packages/pkginfo/skk/auto-autoloads.el" nil nil) load("c:/meadow/packages/pkginfo/skk/auto-autoloads.el" nil nil t)
pkginfo/skk/auto-autoloads.elでエラーしてるな。
GNU Emacs Lispリファレンスマニュアル: Void Variablesによると、どうやら、skk-large-jisyoが初期化されてない上で評価されているかららしい。
skk使わないから、auto-autoloads.elいらないわ。これを削除しよう。
通った丶(´▽`)ノ
skk使う場合
.emacsに以下を記述します。この上でauto-autoload.elが呼ばれると正常に動作します。
;; Add pahts to SKK and APEL (defvar system-load-path load-path) (setq my-load-path '("~/share/emacs/site-lisp/skk" "~/share/emacs/site-lisp/apel" "~/share/emacs/site-lisp/emu")) (setq load-path (append my-load-path system-load-path)) ;; Configure for SKK (require 'skk-autoloads) (global-set-key "\C-x\C-j" 'skk-mode) (global-set-key "\C-xj" 'skk-auto-fill-mode) (global-set-key "\C-xt" 'skk-tutorial) ;; Specify dictionary location (setq skk-large-jisyo "~/share/skk/SKK-JISYO.L") ;; Specify tutorial location (setq skk-tut-file "~/share/skk/SKK.tut") (add-hook 'isearch-mode-hook (function (lambda () (and (boundp 'skk-mode) skk-mode (skk-isearch-mode-setup))))) (add-hook 'isearch-mode-end-hook (function (lambda () (and (boundp 'skk-mode) skk-mode (skk-isearch-mode-cleanup)) (and (boundp 'skk-mode-invoked) skk-mode-invoked (skk-set-cursor-properly)))))