ottt

xyzzy の覚え書き

ANYTHING (for xyzzy)

複数の機能を一つにまとめてしまう lisp

emacs の anything とは動作が多分(かなりかも;))違ます。

INSTALL

  (require :anything/anything)
  (require :anything/sources)
  (require :anything/menu)
anything/sources
anything/menu なんて飾りです。

UI

 M-x anything

インクリメンタルに候補を絞り、カテゴリで実行したい動作が変わります。

KEYMAP

#\C-p anything-previous-line 次行
#\C-n anything-next-line 前行
#\C-v anything-next-source 次のソース
#\M-v anything-previous-source 前のソース
#\C-M-n anything-next-page 次のページ
#\C-M-p anything-previous-page 前のページ
#\C-h anything-backward-char 訂正
#\C-l anything-recenter 真ん中に
#\C-g anything-quit 中止
#\C-i anything-action-tab 属性指定
#\RET anything-action-return 実行
#\LFD anything-action-return 実行
#\C-@ anything-set-mark-action file に mark をつけて開く
#\C-s anything-isearch-forward isearch
#\C-r anything-isearch-backward isearch
#\C-z anything-upper-directory up directory

CUSTUMIZE

LOOK

 (setq *anything-select-color*
   '(:foreground 0 :background 14 :bold t))
 (setq *anything-sources-name-color*
   '(:color 0 15 :bold :line))

横に表示

 ;; with-output-to-temp-buffer の説明を参考にして下さい
 (setq *anything-buffer-popup* t)
 (setq *anything-buffer-vert* t)

バッファタブを消す

 (setq *anything-buffer* " *anything*")

フレーム はいらない

 (setq *anything-use-frame* nil)

HOOK

anything の開始時と終了時に実行する場合

 *anything-open-hook*
 *anything-close-hook*

MIGEMO

migemo がインストールされていれば絞りこみに migemo を使います。

 (setq *anything-migemo-on* t)

migemo で絞り込む type 数

 (setq *anything-migemo-length* 4)

SOURCES

sources を追加していくことで拡張できます。

add-anything-sources
 :name string

表示するための名前 カテゴリ

 :type attribute

属性を指定

 :candidates function

リストを返す関数

 :action function arg

引数を一つ取る関数

 :init init

初期値

 :move-action function

移動した時に呼ばれる関数

 :visible-mode buffer-mode , list

表示したいモード(モードのリスト)

add-anything-attribute
 :type source type

ソースでしている属性を指定

 :display string

表示するための名前

 :action function

引数を一つ取る関数

 :default variable

RET の場合実行される関数

ANOTHER ANYTHING

通常の anything とは別に sources を作り呼び出せます。

another-anything

 name

name-anything という関数が生成されます。

 body sources attribute ...

name-anything で使う source と attribute

ToDo

  1. 括弧好きな人が拡張を公開してくれるのを待つ
  2. multi-line
  3. process 用の関数の提供

last modified Wed, 05 Mar 2008 17:20:57 JST-9