buf-menu-plus

Last modified: "2008/01/01 01:09:27"
■概要

  ・ウィンドウを分割しないで,カレントウィンドウにリストを表示
  ・他ウィンドウを開いてバッファを閲覧
  ・マーク行等に色付け
  ・複数バッファにまとめてマークをつける/はずす
  ・ファイルのないバッファ保存時に「名前を付けて保存」ダイアログを表示
  ・終了時にマークを実行
  ・diff の実行
  ・複数ファイル一括バイトコンパイル
  ・複数ファイル一括印刷
  ・実行(shell-execute)
  ・マウスダブルクリック対応
  ・buffer-menu 起動時に,アクティブだったバッファの行に移動
  ・既定のフレームに移動して起動(要 bufmenu.l)


■インストール

  1. buf-menu-plus.l を site-lisp にコピーする。

  2. 必要に応じ,バイトコンパイルする。

       M-x byte-compile-file

  3. .xyzzy か siteinit.l に以下の記述を追加する。

      (require "buf-menu-plus")

  4. xyzzy を再起動し,設定を反映させる。
     siteinit.l に記述した場合は再ダンプもする。


■起動方法

  ・C-x C-b で拡張版(?)buffer-menuを起動します。

  ・C-u と入力してから上記コマンドを実行すると,ファイルに関連付けられた
    バッファのみを表示します。M-x buffer-menu-plus-visit でもよいです。


■キーバインド

    RET : カーソル行のバッファを開く
    TAB : カーソル行のバッファを他のウィンドウで閲覧
    M-n : 次行のバッファを他のウィンドウで閲覧(or M-Down)
    M-p : 前行のバッファを他のウィンドウで閲覧(or M-Up)
    0   : カーソル行のバッファをカレントウィンドウで開く
    1   : カーソル行のバッファを開く&他のウィンドウを閉じる
    b   : バイトコンパイルマーク "B" をつける
    p   : 印刷マーク "P" を付ける
    D   : 全てのバッファに削除マーク "D" をつける
    S   : 未保存バッファに保存マーク "S" をつける
    U   : 全てのマークを消す
    x   : マークを実行
    t   : diff マーク "O" または "N" をトグル
    M-f : diff を実行
    M-s : カーソル行のファイルを実行
    q   : buffer-menu を終了

  その他は,標準の buffer-menu (list-buffers) と同じ。(たぶん)

    f   : カーソル行のバッファを開く
    s   : 保存マーク "S" を付ける
    d   : 削除マーク "D" を付ける
    k   : 削除マーク "D" を付ける
    o   : カーソル行のバッファを他のウィンドウで開く
    C-d : 削除マーク "D" を付けて前の行に移動
    C-k : 削除マーク "D" を付ける
    SPC : 次の行に移動
    ~   : 変更マークを消す
    u   : マークを消す


■diff

  diff の実行には,diff.exe が必要となります。どこかから手に入れてください。

  buffer-menu で比較したいバッファにカーソルを合わせ,t を押します。このキ
  ーによりマークがトグルしますが,`O' が old file,`N' が new file となり
  ます。マークを付けたら,M-f を入力し,diff を実行します。

  diff 実行後には,対象バッファに対し revert-buffer を実行し,diff の結果
  をバッファに反映させます。


■カスタマイズ

  buffer-menu から navigate を実行するにはこんな感じで。一覧から選択できる
  のでちょっと便利かも。

    ;;; browser で開く (M-b)
    (defun buf-menu-plus-navigate ()
      (interactive)
      (save-excursion
        (bx:navigate (get-buffer-file-name (ed::buffer-menu-buffname)))))
    (define-key ed::*buffer-menu-mode-map* #\M-b 'buf-menu-plus-navigate)


■更新履歴

  [Version 1.02] 2007-12-31 (月)
  ・MITライセンスにした。

  [Version 1.01] 2005-02-03 (Thu)
  ・公開用にいくらか整理。

  [Version 1.00] 2003-10-05 (Sun)
  ・初版作成。


■ライセンス

  buf-menu-plus.l はMITライセンスに基づいて利用可能です。
  

Copyright (c) 2007 HIE Masahiro

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

Download ...