各関数の実行例を調べることができる
関数の実行例が揃っているから関数をどう使えばいいかが把握しやすい 初心者から上級者まで、lispを学ぶときに関数の実行例をすぐ確認して学習効率を上げることができる
コマンドを実行したとき、入力プロンプトが出てきて関数とかを入力すると実行結果を出力してくれる。
コマンドでM-x ex-example function とかすると別バッファに関数の使い方を出力する
例えば、キーバインド C-9 , M-9, s-9 などに設定をしておいて、キーバインド一つで呼び出して、関数の実行例を確認する
作ったライブラリの関数も簡単な操作で関数の実行例を登録できる
別ファイルに関数のexample群を登録しておいてM-x ex-example function で*example*バッファに実行結果を出力する。 ファイルに関数の実行例を格納しておいてそれをロードする?
elispで実行できるものを開発したらその実行例を登録して、テストなどに備えることができる?
リージョンの選択をして、それを一気にexampleとして登録する
ex-add-exampleで実行例を登録して、ex-insert-current-bufferで登録用のデータ出力するex-delete-last-elemを作成
pop-to-bufferで出てきた*example*バッファに表示させるpopwinを使用?
変更するようにした。 mapで実行できるように変更 ‘(“(__ex-foo)”)’(“(__ex-bar t)” “(__ex-bar nil)”)
’((ex-push . ‘(“(ex-push ‘__ex-foo)”)) (ex-get . ‘(ex-get ‘__ex-foo))) (ex-push . ‘(“(ex-push ‘__ex-foo)” “(ex-push ‘__ex-bar)”)) ‘(“(defun __ex-foo () (message "t")) (__ex-foo)” “(defun __ex-bar (bool) (if (message "message t") (message "message nil")))”)print, prin1, princ
手動は大変だからなにかスクリプトが作れないか
(ex-put-example function sexp1 sexp2 …) という風に登録の手間を省きたい =>やらなくていいやファイルに保存するしたのを読み込む コードにそのまま書く
fmakunbound, makunboundでエラーの場合に止まらないように動かせるようにしたい。 => condition-caseを使ってエラーがあっても動くようにした。ex-eval-stringを使う
(format “%s” expression)で文字列にできる (format “%S” expression)で”や\をクオートできるex-exampleはひとつの関数にしたほうがいいかも
:before,:afterのある属性リストを使う?
ruby, python, c, c++, etc…