<< < 1 > >>

Org-ModeがSpeedBarに対応

Org-Modeが5.16からSpeedBarに対応したそうで。
どういうことかというと、Org-Modeでは アスタリスクの数で階層を深くすることが出きるけど、
この階層のうち、第一、第二階層までのインデックスがSpeedBarで表示出きるようになるってこと。

使い方はOrg-Modeでファイルを編集中に M-x speedbarとすると、ファイル一覧が表示される。
さらにファイルをえらんで '+' を押すと Org-Modeで言う第一階層が展開される。
さらに '+' を押すと第二階層が。
Enterでその場所にジャンプしてくれる。

Org-Modeで編集しているファイルが肥大化してくると非常に重宝する機能。
ついでに今まであまり使っていなかった Speedbarの便利さにも触れることが出来た。

org-modeとappt.elでアポイントメントを管理

仕事中に約束の時間をうっかり過ぎないように、携帯電話でアラームを鳴らすようにしたり、
PC上だと、ポップアップでアラームを表示してくれるようなソフトを使ってたけど、
org-modeの機能で実現できる事を知った。
これでついつい作業に没頭して、会議等の出席に遅れるようなミスを防ぐことが出来る。

org-modeとappt.elを連携させて実現している機能で、org-modeで書いたスケジュールと連動して指定時間前になると、
アラームがmode-lineやwindowに表示され非常に便利。

準備としてはorg-modeでファイルを開いて(大抵は拡張子が.orgならorg-modeになる)、
agendaファイルとして登録する(キーバインドはC-[)。
次に.emacsの設定は以下のとおりにしておけば、起動時にagendaファイルからアラームを登録してくれる。
; apptをwindow表示
(setq appt-display-format 'window)
; appt message 表示秒数
(setq appt-display-duration 30)
; beep音をならす
(setq appt-audible t)
; appt message 何分前にアラームを上げるか
(setq appt-message-warning-time 14)
; mode line に apptまでの分を表示
(setq appt-display-mode-line t)
(appt-activate 1)
(org-agenda-to-appt)


; 保存時にorg-agenda-to-apptを実行
(add-hook 'org-mode-hook
	  (lambda() (add-hook 'before-save-hook
			      'org-agenda-to-appt t)))

上記の設定で、例えば下記のような内容がある場合
** 定時ダッシュ
   SCHEDULED: <2007-11-19 月 18:00>
17時46分から、mode-lineとwindowでアラームを表示してくれる。

スケジュールを追加後には手動で M-x org-agenda-to-appt とすれば、
随時agendaファイルからアラームを登録できるし、
上記のようにhookを登録しておけば、ファイル保存時にアラームを登録してくれる。

Emacs ediffでファイルの一部分を相互比較

ファイル全部じゃなくて選択した部分だけ比較したいって時に、
Emacsに標準でついてるediffが便利なのに気づいた。
用途としては、あるクラスの、あるメソッドだけを相互に比較したいとか。
その名も
  • ediff-regions-wordwise
  • ediff-regions-linewise
ediff-regions-wordwiseはword単位、
ediff-regions-linewiseは行単位で比較結果を表示してくれる。

使い方は簡単。
まず M-x ediff-regions-wordwise とした後、比較対象のバッファを2つ指定する。
(事前に比較するファイルを開いておく必要あり)
その後、それぞれのバッファが開くので、コピーするときと同じ要領で C-SPACE と M-w で比較対象となる部分を選択。
選択後は C-M-c を押す。

欲しかったけど意外となかった機能じゃないかな。
地味な機能かもしれないけど、これでorg-mode以外にEmacsから離れられない理由ができてしまった。