Emacs24を使うようになってからしたこといくつか
- 2011.11.07
- Emacs

以前Emacsのxwidgetブランチをビルドしてから、メインでEmacs24を使うようになりました。
ちなみに現在のEmacs安定版は23.3。Emacs24は来年春のリリース(多分)に向けてpretest版がリリースされているだけなので、まだまだ動作検証がされていないものもたくさんあります。
とはいっても世の中には先端マニアや、私のように最新の機能を使いたいという方もいるかと思います。
というわけで、今回はEmacs24を使って困ったこととか講じた対策とかを書いておくことにしました。といってもかなりgdgdなので、あまり参考にならない可能性大です。
- 1. ツールバーやメニューバーが非表示にならない。
- 2. descbinds-anything.elの表示がおかしい
- 3. popwinのウィンドウ分割が正しく動作しない。
- 4. mcomplete.el使ってM-xするとエラーが出る
- 5. Wanderlustを使うと、ウィンドウの移動とかがおかしい
- 6. elscreenをインストールして、シェルからファイル名を引数にしてEmacsを開くと 「command-line-1: Symbol’s value as variable is void: file-count」とゆーエラーが出てファイルが開けない
- 7. hiwin.elを使うと落ちる
- 8. Emacs24,ふつーに使えます。
ツールバーやメニューバーが非表示にならない。
Emacs23までは、(menu-bar-mode nil)としておくとメニューバーなどが非表示となっていましたが、Emacs24ではできなくなっています。(menu-bar-mode 0)とすることで、非表示することができます。
descbinds-anything.elの表示がおかしい
descbinds-anything.elで表示される候補の順番がEmacs24ではおかしくなっています。これはdescribe-bindingsで表示されるバッファのフォーマットが変更されているため発生しているようです。 次のパッチをあてることで改善されると思います。
--- descbinds-anything.el.orig 2011-11-06 15:57:19.405565905 +0900 +++ descbinds-anything.el 2011-09-30 19:04:22.838392514 +0900 @@ -140,7 +140,10 @@ (point) (line-end-position))) (setq header-p nil) - (forward-line 3)) + (if (= emacs-major-version 24) + (forward-line 2) + (forward-line 3)) + ) ((= (char-after) ?\f) (push (cons header (nreverse section)) sections) (setq section nil)
popwinのウィンドウ分割が正しく動作しない。
ウィンドウが変な風に分割されます。最新のpopwin.elではEmacs24に対応してますので、更新することでこの問題は解消されると思います。 m2ym/popwin-el – GitHub
mcomplete.el使ってM-xするとエラーが出る
M-xするとエラーが出てどうにもできません。これも同じくアップデートされていますので、更新すれば問題は解消されます。 bmonkey’s Emacs page
Wanderlustを使うと、ウィンドウの移動とかがおかしい
ウィンドウが移動できなかったり削除できなかったりします。めんどくさくなったので標準搭載されているGnusに乗りかえました。mewもあまり相性が良くないようですね。
Twitter / @kazu_yamamoto: Mew が Emacs 24 で動かない。せっかく …
Emacs 24.0.90 pretest
elscreenをインストールして、シェルからファイル名を引数にしてEmacsを開くと 「command-line-1: Symbol’s value as variable is void: file-count」とゆーエラーが出てファイルが開けない
ファイルがコマンドラインから開けません。Emacs立ちあげてから開くという鉄則を習慣づければよいのですが、やっぱり面倒です。
が、この問題がなかなか解決しません。全く解決になっていないですが、フックさせている関数をフックさせないようにして逃げてます。どなたか解決策ご存知の方いたら教えてください。
--- elscreen.el.orig +++ elscreen.el @@ -1705,9 +1705,10 @@ (setq column 0) t) - (add-hook 'after-init-hook (lambda () - (add-to-list 'command-line-functions - 'elscreen-e21-command-line t)))) + ;; (add-hook 'after-init-hook (lambda () + ;; (add-to-list 'command-line-functions + ;; 'elscreen-e21-command-line t))) + ) (static-when elscreen-on-xemacs (defadvice command-line-1 (around elscreen-xmas-command-line-1 activate)
hiwin.elを使うと落ちる
これが、今回一番厄介でした。どうやら原因は、hiwin.elが多少強引にoverlayをのせていることである気がします。これを解消するには大幅にコードを直さないといけないようで今のところ保留してます。 かなりお気に入りのelispなのでいずれ改造にチャレンジしたいところです。
Emacs側でバッファローカルに背景色が変えられればかなり楽なんですけどね。。。
Emacs24,ふつーに使えます。
手を加えないといけないところはありますが、ほとんどが解決策があるものやすでにEmacs24に対応しているものもあり、Emacs24への移行は以外とスムーズでした。ただ、window.elにはかなり手が加わっているようなので、ウィンドウ操作系のelispをお使いの方は気をつけた方が良いと思います。
感動したのが、多くのelispがすでにEmacs24へ対応していること。特にmcomplete.elは私がEmacsを使いはじめた時からずーっと使わせてもらっているelispなのですごく嬉しかったです。開発者の皆さん、本当にありがとうございます。
それでは素敵な先端ライフを!!
[tmkm-amazon]4774143278[/tmkm-amazon]
[tmkm-amazon]4877832718[/tmkm-amazon]
-
前の記事
日記をお引越しました 2011.11.06
-
次の記事
Org-modeとMS Wordの連携 2011.11.08