最終更新日: 2016-06-26 日 01:23
ホーム | 文書トップ | 目次

NTEmacsとMeadow

Table of Contents

NTEmacsとは

後述する通り、私はこれまで使用してきたMeadowから、NTEmacsに乗り換えたこともあり、設定方法等、Meadowからの差分という観点も記載している。

Meadowについて

(2010.3.21) これまで10年近く、Meadow (1.XX,2.XX)を常用してきた。 Emacs 22ベースである、Meadow 3.XX に期待してはいたのだが、未だに開発版のままで、そうこうしているうちに、Emacs はメジャーバージョンが23になった。 Meadow 1.XX は Emacs 20、Meadow 2.XX は Emacs 21、Meadow 3.XX は Emacs 22 をベースにしているということなので、Emacs 23がベースのMeadow 4.XXが開発されてもよいはずだが、 現時点でMeadow 3.XXすら正式リリースされそうもない。

機能アップしているはずの最新のEmacsを使えないことはもどかしく、そういうわけで、2010年3月、Meadow 2.10の使用をやめ、NTEmacs 23.1 へ移行した。

Meadow vs NTEmacs

正式リリースされているバージョンに対し、あくまで私が使用した上での比較である。 Meadow2.10 に対して、NTEmacs23.1(但し、後述のIMEパッチは適用したもの)の優位な点は下記である。

  • 起動がちょっと早い
  • 動作が安定している
    • 私の環境のMeadow2では Ctrl-なんちゃらでコマンドを入力する時、途中でキャンセルして別のコマンドを実行しようとしたりすると固まることがあった
  • 標準でUNICODE対応している
  • ImageMagick無しでも画像表示が可能(特にMeadowはImageMagickのバージョンにも依存する)

個人的には、現時点で両者を比較した場合、あえてMeadowを使用する理由は無い。つまり、NTEmacs を使う方がよいと考える。

NTEmacsのMeadowとの共存設定

  • 大体の場合は、Meadow固有の設定を下記のように記述すればよいだろう
(if (featurep 'meadow)
    (progn
;;ここにMeadow固有の設定を記述
))
  • 私の場合、Meadow用の.emacsをそのまま使用して問題になり、回避した部分は下記の通り。
(if (featurep 'meadow)
    (progn
      (w32-set-modifier-key 18 nil) ;Altキーのmeta割り当てを解除
#      (w32-set-modifier-key 18 'none);Altキーを無視
))
  • 一旦、下記設定で回避したが、
(if (featurep 'meadow)
    (progn
  (setq font-lock-support-mode 'lazy-lock-mode)
#  (setq font-lock-support-mode 'fast-lock-mode)
))
  • 私の環境で、NTEmacs/Meadow両方で有効な設定方法は下記であった。
  • また、現在はlazy-lock-modeより高速な jit-lock-mode があり、NTEmacs では既に lazy-lock-mode はしておらず、エラーになったのかもしれない。
  • Meadow 2.10でも、jit-lock-modeはサポートしているようだ。
  • 私は fast-lock-mode はキャッシュを生成するのが気になるため、使用していない。
(setq font-lock-support-mode
      '(
#        (c-mode   . fast-lock-mode)
#        (c++-mode . fast-lock-mode)
        (t        . jit-lock-mode)))
define-process-argument-editing を使っている部分。(詳細は省略)
  • 下記は、locate-libray の判断で回避した。
  • が、Meadowから使うシェルの設定によると、
  • 「mw32script は Meadow 固有の拡張モジュールであり、使用しているシェルに従って適宜引数を置き換えたり、1行目に #!/bin/sh と書いてあるスクリプトファイルならば/bin/sh経由で呼出しを行なって実行するものである。」とのこと。私は全く意識していなかったが、無いと不便かもしれない。
;;; argument-editing の設定
(when (locate-library "mw32script")
  (require 'mw32script)
  (mw32script-init)
)
ホーム | 文書トップ | 目次
Created by Emacs 25.1.1 (Org mode 8.2.10)