Emacs上でふつーの(WebKit)ブラウザを表示する

NO IMAGE

Emacsでふつーのブラウザが動いたら素敵だと思いませんか? え?変態?そうですか。 Emacs開発レポジトリには、いろいろと野心的なブランチがありまして、例えばkhikerさんが紹介されていたgtk-tabsもそのひとつです。

Emacs gtk-tabs ブランチでタブを表示 – とりあえず暇だったし何となく始めたブログ

そのブランチの中にxwidgetというブランチがありまして、これがとても素敵そうだったので、試してみることにしました。

xwidgetブランチEmacsのビルド

まずソースコードをとってきます。 bzrならば

bzr clone http://bzr.savannah.gnu.org/r/emacs/xwidget/

bzrは遅いので、ちょっと。。や宗教上の理由でbzrが使えないという方はgitのミラーリポジトリがあるのでそちらから落とすのも良いと思います。

emacs.git – Git mirror of Emacs bzr repo

次に、Emacsをビルドできるような環境が必要となります。以下はUbuntu11.04での例。 といってもすごく楽でaptitudeを使えば、

sudo aptitude build-dep emacs23

これで終わりです。

次にwebkitでのレンダリングに必要なものをインストールします。
実はここではまりまして, いろいろ試していたのですが恐らく次のものをインストールすると良いと思います。

libwebkitgtk-dev libwebkitgtk-1.0-0 libwebkitgtk-1.0-0-common libwebkitgtk-3.0-0 libwebkitgtk-3.0-common libwebkitgtk-3.0-dev

それではビルド。 ソースコードの解凍先に入って次のようなコマンドを入力します。詳しくは解凍した中身にあるREADME.xwidgetをどうぞ。

./configure   --with-x-toolkit=gtk3 --with-xwidgets
make -j4
sudo make install

これでビルドは終わりです。

使ってみる

そのままでも使えるのですが、使い勝手をあげるため、popwin.elを使わせていただきまして下からポップアップするようにしています。

(when (=  emacs-major-version 24)
  (setq browse-url-browser-function 'xwidget-webkit-browse-url))

;;popwin.elでポップアップさせる
(eval-after-load "popwin"
 '(push '("\*xwidget" :regexp t :height 20) popwin:special-display-config))

こんな感じになります。 https://i0.wp.com/img683.imageshack.us/img683/2267/xwidget.png?w=1100

使い勝手

開発版ということもあり、ブラウザ開いたら落ちるというようなことも起きますが、総じて便利でメインのEmacsはこのxwidgetブランチEmacsになってしまいました。C-v、M-vによる移動や入力フォームにはミニバッファから入力することもできるので、ふつーにブラウザとして使えます。

あえて、苦言を言えば、Hit a Hint にあたる機能がないのがつらいです。これが改善されれば、Emacs引きこもり具合がまた上りそうです。

今のところ、Emacs24に取りこまれる予定はないとのこと。うーん残念だ。是非取りこんでもらいたいものです。

[tmkm-amazon]4774143278[/tmkm-amazon]