header

2014年11月29日土曜日

Emacs24.4をインストールした

Emacs24.4をインストール(ソースからビルド)した。理由は24.4からサポートされるeww.elを試すためでした。(ewwはEmacsから使えるテキストブラウザーです)ubuntu12.04でインストールして特に問題はなかったが、configureオプションを自分が忘れそうなので、自分用のメモも兼ねて記事にしておく。

参考にしたページ

上のページ通りにやってだいたい行けたが、2つ問題がありひとつは、

./configureする時、以下のパッケージが足りなかったのでaptでインストールした。

sudo apt-get install libxaw7-dev libgif-dev libxpm-dev

もう一つの問題は、というか当たり前ことかもしれないけど、git checkoutでbranchを移動しないと、最新のEmacsになってしまうことだった。(最初気づかなくて、emacs-versionをみたら25.xx.xとなっていてありのまま起こったことを話すポルナレフ状態だった。)

あと、これが未来の自分へ伝えたいことだが、./configureする時オプションで"–with-x-toolkit=lucid"を指定してEmacs起動時のうざいメッセージを消すことができた。(メッセージみればやることはわかるけど、インストールしなおすのがめんどくていつもそのままだった)

./configure --with-x-toolkit=lucid

あっ、あとこれはまぁemacsclientを使わない人には関係ないことだけど、参考ページのやり方でやった場合emacsclientはemacsのクローンしたリポジトリのlib-src以下に入っているのでそちらにもパスを通したほうがいいと思います。(24.3の時のemacsclientでも動きましたが)


ewwの設定とか

半年前くらいに開発版を試したときは、googleの検索結果画面が背景がgrayで自分のフォント色とあわず、また、背景の変更方法もよくわからず投げ出してしまいました。今回標準で使えるということで、eww関係の変数をざらっとみてみましたが残念ながら変更方法がわかりませんでした。
ただ、強制的に変える方法はわかったので一応紹介します。(いい方法ご存知のかたいたら教えてください…)
以下のアドバイス関数を定義すれば、背景を固定できました。
(blackとなっている部分を好きな色に変えてください)

※2014/11/29更新

shr-colorパッケージで元の背景から少し明るくなるように設定されていました。
(僕の場合は背景黒だったので、明るくなってgrayに見えた?)
僕は黒背景が使いたかったので以下の設定で元の背景色に戻しました。

(setq shr-color-visible-luminance-min 100)

ewwの検索エンジンについて

デフォルトだとduckduckgoですが、googleに変更しました。
それと、httpsだとテキストブラウザーなのに結構遅くて(自分の中で)使用にたえない感じだったので、httpに設定しました。(どうせ大したもの検索しないし、ewwでwebサービスにログインしないし)
-> 僕がコンパイルするときにlibgnutlsをインストールしてなかったからっぽいです。インストール後、再度コンパイルしたら早くなりました。

(setq eww-search-prefix "https://www.google.com/search?q=")

ewwのコマンド

リンクの移動関数がよくわからなかったが、shrの関数で移動できた。

ewweww起動 or ewwで検索
eww-next-url次ページに移動
eww-back-url前ページに移動
shr-next-link次リンクに移動
shr-previous-link前リンクに移動

2014年11月6日木曜日

Emacs Mew.elでメールを日本語で検索する

Emacs Mew.elでメールを日本語でも検索できるようにした。公式だとmgというもの利用するように書いてあったが探せなかったので、他の外部プログラム(jvgrep)を利用するようにした。

ネット上で探しても、(自分は)mgの昔の記事ばかりだったので一応記事にしておく。


jvgrepのインストール

Golang製のソフトウェアなので、golangが使える必要があります。
もしもう既に使えるようなら、

go get github.com/mattn/jvgrep

でインストールできると思います。


Emacsの設定

既にmewが使えているのであれば、下の設定を追加すればjvgrepで検索できると思います。一応ハマったところを書いておくと、-rオプションを指定しないとmew側でなんにも検知してくれないところですね。。。
あっ、あと最後の-Gオプションは正規表現のオプションなのでjvgrepのhelpをみて適当に変えてください。

(setq mew-prog-grep "jvgrep"
mew-prog-grep-opts
'("-l" "-r" "--enc" "\"iso-2022-jp,utf-8,ascii,euc-jp,sjis\"" "-G"))

人によっては必要ないかもしれませんが、僕の場合はmew-cs-encode-argに日本語を渡すところで文字化けするするようになりjvgrepへ日本語を渡せませんでした。それと下の設定は24.4から使えるようになったアドバイス関数を利用しているので、それ以下のバージョンだと旧アドバイスを使う必要があります。(mew-summary-selection-by-pick-with-grep1関数をみてください)

;; mew-cs-encode-arg関数を上書き
(advice-add 'mew-cs-encode-arg :override (lambda (arg) arg))

mewでsummary-modeで検索するには"/"キーです。カラのままエンターを押すと直接コマンドをいじれます。


Popular Posts

Blogger templates

Blogger news