dabbrev-expand-multiple による動的略語展開

この週末に tokyo-emacs なんていう勉強会があったんですね。完全にノーチェックでした。もし次回があったら参加したいのですが、あるのかな… (追記:あるみたいです。次回は絶対参加しよう。)

せっかくなので、 Emacs についてなんか書いてみることにします。僕は単語の補完に dabbrev-expand-multiple を愛用しています。動的略語展開の候補を tooltip もしくはインラインで複数表示してくれるものです。単語を途中まで入力して、 M-/ を押すと補完してくれるのですが、ここでさらに / を押すと他の候補一覧がツールチップで表示されます。で、それらの候補は SKK 風に a,s,d,f,g で選択することができます。

こういうのは実際に使ってみないと便利さがなかなか伝わらないのですが、おすすめ。

;; dabbrev-expand-multiple
(require 'dabbrev-expand-multiple)
(global-set-key "\M-/" 'dabbrev-expand-multiple)

;; 補完候補を一度に5つにする
(setq dabbrev-expand-multiple-select-keys '("a" "s" "d" "f" "g"))
;; 複数候補表示に移るキーに / を足す
(add-to-list 'dabbrev-expand-multiple-multi-selection-keys "/")
;; 複数候補表示時に次の候補表示に使用するキーに n を足す
(add-to-list 'dabbrev-expand-multiple-next-keys "n")
;; 複数候補表示時に前の候補表示に使用するキーに p を足す
(add-to-list 'dabbrev-expand-multiple-previous-keys "p")
;; ツールチップを表示する秒数
(setq dabbrev-expand-multiple-tooltip-timeout 2000)
;; 10秒で消えるように設定する
(setq dabbrev-expand-multiple-tooltip-timeout 10)
;; 最初に展開した文字列に highlight をかける.
(setq dabbrev-expand-multiple-highlight-face 'highlight)
;; インライン表示のときに使用するフェイス.
(setq dabbrev-expand-multiple-inline-show-face 'underline)
;; インライン表示の見た目の変更 (アンダーラインをなしにする)
(setq dabbrev-expand-multiple-inline-show-face nil)

関連リンク:
» anything.el が手放せなくなった
» emacs-snapshot-gtk

anything.el が手放せなくなった

anything.el は,最近使ったファイルや locate の結果や Man や Info など様々なソースからインクリメンタルサーチを可能にする Emacs の拡張です。一度使ってしまうと,もうこれなしの Emacs は考えられません。自分は,携帯電話に予測変換が入ったときくらいのインパクトを感じていて,今後のモバイル端末の未来を暗示していると思っています。いや,冗談抜きで。

anything.el

こんな感じに設定しています。本当は,もっといろいろなソースを対象にできるみたいですが,使う頻度と速度から今のところこの設定で満足してます。

;; anything
(require 'anything-config)
(setq anything-sources (list anything-c-source-buffers
                             anything-c-source-bookmarks
                             anything-c-source-recentf
                             anything-c-source-file-name-history
                             anything-c-source-locate))
(define-key anything-map (kbd "C-p") 'anything-previous-line)
(define-key anything-map (kbd "C-n") 'anything-next-line)
(define-key anything-map (kbd "C-v") 'anything-next-source)
(define-key anything-map (kbd "M-v") 'anything-previous-source)
(global-set-key (kbd "C-;") 'anything)

(1) C-; で anything 起動
(2) 目的の文字を入力
(3) C-n および C-p で上下移動
(4) C-v および M-v でソース間を移動

anything.el を最初に試したときに recentf は使えないと思って,コメントアウトしていたのですが,なんのことはない anything-c-source-recentf の「c」が抜けていただけでした。


※自分と同じように感動した人たちの声をまとめてみました。

@junyaanything.elアツい!
@isseianything.el に驚愕しているところ
@okuparaanything.vimを作って、vimユーザにanything.elのすごさを教えてください。
@mincemaker今更だがAnything.el便利。すごい。
@hardfrostanything.el面白いな
@webooanything.el 便利やわー
@tomoyuki28jpemacsにanything.elを導入した。QuickSilver並みにヤバいかも。
@gan2anything.el はやっぱり便利だー
@okhra今更ながらanything.el使いはじめたけど、便利すぎてわろた
@pm11opanything.el すげー
@snj14ついでにemacsにもanything.elをいれた.今更だけどすげー.これやべー. 使命か、情熱かーー。!!
@kentaroいまさらanything.elの素晴しさに爆笑している。笑えるほどすごい。
@typesteranything.el使ってなかったとか今までどんだけ無駄な時間をすごしたのかという話である
@holysugaranything.el のすすめ
@Ashizawaいまさらだけどanything.elを入れて感激してる
@tactactad設定丸パクリで試してみた。感動した!<anything.el
@k1LoWanything.elやばい!!

emacs-snapshot-gtk

emacs-snapshot-gtk

Emacsをターミナル内で動かしている人も多いと思いますが、僕はウィンドウ派です。最近は、YASnippetanything.el の快適な使い方を模索中なのですが、今回はEmacs23 (snapshot)について書きたいと思います。

emacs-snapshot のインストール方法は、いつの間にかUbuntuのuniverseリポジトリに加わっていたので、Synaptic パッケージ・マネージャの[設定]-[リポジトリ]で下記の"universe"を有効にするだけ。これで、パッケージ一覧にemacs-snapshotが現われるようになるので、インストール可能になります。

フォントの設定は、.emacs に以下のように設定します。例えば、「IPA モナー ゴシック」を使う場合は、こんな感じ。

(set-default-font "Bitstream Vera Sans Mono-9")
    (set-fontset-font (frame-parameter nil 'font)
      'japanese-jisx0208
      '("IPA モナー ゴシック" . "unicode-bmp"))

あとは、起動時のウィンドウサイズ指定とクリップボードからコピーできるようにしておくと便利です。また、最後の windmove-default-keybindings は、Shift+カーソルで分割したWindow間の移動ができるようになります。これ最高。

(setq initial-frame-alist '((width . 80) (height . 40)))
(setq x-select-enable-clipboard t)
(windmove-default-keybindings)
便利べんり。Ubuntu 最高。

vi使いとemacs使いの狭間で

今日は、vi使いの鶴ちゃんとemacs使いのなかやんの会話が面白かった。


な「viって、入力モードが別なのが意味分かんないすよねー」

鶴「そうですかー?そんな人聞いたことないなー」

鶴「emacsで検索ってどうやるんすか?」

な「C-sですね。」

鶴「キーを2つも押すのかー。viは/だけで検索できて、次に進むのもn押すだけですよ。」

な「C-s押し続けてれば、どんどん次に進んでいけるよー」

鶴「でも、emacsって根本的にインストールされてない場合もあるし…」


二人の会話が面白いので、ニコニコしながら聞いていると、突然こっちに質問が飛んできた。


な&鶴「hideさんは、どっち派なんですか?」


宗教戦争に巻き込まれそうになり、身の危険を感じたので、僕はとっさに答えたよ。


「も、萌ディター」




※一部、フィクションです。