書庫解凍機能を使う。

(defun nar-dir (dir)
 (dolist (file (directory dir :absolute t))
 (let ((ext (pathname-type file)))
  (if (member ext '("zip" "lzh" "tar" "gz") :test 'equal)
   (nar file)))))

(defun nar (file)
 (extract-archive file (merge-pathnames (pathname-name file)(directory-namestring file))))

(defun backslash-to-slash ()
 (interactive)
 (let ((lim (progn (forward-sexp 1)(point))))
  (backward-sexp 1)
  (while (scan-buffer "\\" :limit lim)
   (overwrite-char #\/))
   (goto-char (1+ lim))))

今日の成果物。
xyzzycliから呼べればいいのだが、pathの渡し方が判らないので取り敢えず保留。
こういうのはxyzzy wikiに書いておいた方がいいのだろうか。


それと、xyzzyのsiteinit.lと.xyzzyを整理した。
ほとんどがnetinstallerでまかなえるので、重複分は消した。
siteinit.lの中身は設定を書くのに便利なgroupとseriesのみ。
.xyzzyは、netinstallerの呼び出しと各種require、それにキーバインドの指定だけ。
他のものは、適当にmoduleに分けて記録しておく。
editorで定義するものは別のファイルにすれば、紛らわしくなくて良い。


上に書いたみたいな、適当に思いついた関数はF1から.xyzzyを呼び出して書き込む。
.xyzzyが肥えてきたら、moduleに移してバイトコンパイル。ダンプしなくて良いので楽。


こっちはそのうち自分のwikiにまとめた方が良さそう。