Source of Nothingness - Buffer

* Menu

[[About:self:AboutPage.txt]] | [[Profile:file/southly/]] | [[まとめ:self:1163859357.txt]] | [[オリジナル:http://ninjinix.x0.com/rn/]] | [[xyzzy:lisp/]] | [[あんてな:listall]] | [[■:lisp]] | [[buzz:files/southly#buzz]]

* 2008-03-09 :

[[(ReadMore...) index.rb?1205059356.txt]]

* Common Lisp : 文字列中のエスケープシーケンスを解釈する

とりあえずできた。REPL では動作確認できた。
要 cl-interpol。
SANO さんの情報がなかったらどうにか interpol-reader を使えないか、悩んでいたかも。サンクスです。
[[(ReadMore...) index.rb?1204642645.txt]]

* 2007-12-20 :

* memo :

現在位置と前と後ろと目標位置との関係を調べて、近いほうから進む?

* memo :

なんか最近Lisp書いてないので書き捨ててみた
C++用
(defun foo ()
  (interactive)
  (let ((l nil))
    (save-excursion
      (goto-char (point-min))
      (while (scan-buffer "\\bstd::\\(\\sw\\|\\s_\\)+" :regexp t :no-dup t)
        (pushnew (match-string 0) l :test #'string=)))
    (dolist (x l)
      (insert (format nil "using ~a;~%" x)))))

(defun bar ()
  (interactive)
  (perform-replace "\\bstd::\\(\\(\\sw\\|\\s_\\)+\\)" "\\1" nil t nil nil))

* editorパッケージのbuiltin関数

以下で調べて652個
(let ((count 0))
  (do-symbols (sym (find-package "editor") (format t "~%count: ~d~%" count))
    (when (and (not (find-symbol (symbol-name sym) "lisp"))
               (fboundp sym)
               (si:*builtin-function-p (symbol-function sym)))
      (format t "~a~%" sym)
      (incf count))))
[[(ReadMore...) index.rb?1164371462.txt]]

* 適当すぎる

[[(ReadMore...) index.rb?1162458380.txt]]

* xyzzy lisp : clone-buffer

とりあえずこんなところか。
主だったところはsession.lから。
outline-tree2をバッファバーの代わりにしつつ、rename-bufferを良く使う人向け。
もしくは*compilation*バッファとかでうっかりそのまま編集して、undoができず残念な思いをする人向け。
(defun clone-buffer (buffer-name &optional (buffer (selected-buffer)))
  (interactive "sClone Buffer: ")
  (let ((major buffer-mode)
        (minor (mapcan #'(lambda (mode)
                           (let ((var (and (consp mode) (car mode))))
                             (and (symbolp var)
                                  (boundp var)
                                  (symbol-value var)
                                  (list var))))
                       *minor-mode-alist*))
        (locals (mapcar #'(lambda (var)
                            (and (symbolp var)
                                 (local-variable-p var)
                                 (cons var (symbol-value var))))
                        *buffer-info-variable-list*))
        (point (point)))
    (set-buffer (create-new-buffer buffer-name))
    (insert-buffer buffer)
    (funcall major)
    (mapc #'(lambda (f) (and (fboundp f) (funcall f))) minor)
    (mapc #'(lambda (x)
              (when (and (car x) (symbolp (car x)))
                (make-local-variable (car x))
                (set (car x) (cdr x))))
          locals)
    (goto-char point)))

メモ:
undo情報をそっくり写せるとうれしいかも。
[[(ReadMore...) index.rb?1161833288.txt]]

* xyzzy lisp : insert-include

てきとー
(defun insert-include (file &optional cwd)
  (interactive "lHeader: " :default0 (merge-pathnames "*.h"))
  (unless cwd
    (if (get-buffer-file-name)
        (setq cwd (directory-namestring (get-buffer-file-name)))
      (return-from insert-include nil)))
  (if (consp file)
      (dolist (f file)
        (insert-include f cwd))
    (insert (format nil "~%#include \"~A\"" (substitute-string file (regexp-quote cwd) "" :case-fold t)))))

* xyzzy : モバイルxyzzyの件

ヒストリ変数でパスを指定する場合でのみ問題ということであれば.xyzzy.historyの出力をどうにかすればいいのでは?と思い、書いてみる。
未テストなので注意。
帰ってからテストします。
[[(ReadMore...) index.rb?1161316310.txt]]

* xyzzy lisp : Buffer selection

http://www.geekware.de/software/emacs/#bs
移植をしてみました。
http://raido.sakura.ne.jp/southly/xyzzy/site-lisp/bs-20060920.lzh
元の動作は知らないのですが、八割程度は動いているような気がします。

どんなものかは
http://www.bookshelf.jp/soft/meadow_28.html#SEC352

気が向いたときにでもNetInstaller用のパッケージにします。

* xyzzy lisp : へなちょこ補完その3