* Menu
[[About:self:AboutPage.txt]] | [[Profile:http://iddy.jp/profile/southly/]] | [[まとめ:self:1163859357.txt]] | [[オリジナル:http://ninjinix.x0.com/rn/]] | [[xyzzy:http://raido.sakura.ne.jp/southly/xyzzy/site-lisp/]] | [[あんてな:http://i-know.jp/southly/listall]] | [[■:http://raido.sakura.ne.jp/southly/lisp/ni/view.lisp]] | [[buzz:http://www.google.com/profiles/southly#buzz]]
* 2008-03-09 :
- elisp を書く気はさらさらないので (requre 'cl) には拘らないです。
- 具体例として、現在の .emacs はこんな感じです。
- session.el
- tails-history.el
- キーバインドを覚えていないのですが、M-x の履歴で何とかしています。
* Common Lisp : 文字列中のエスケープシーケンスを解釈する
とりあえずできた。REPL では動作確認できた。
要 cl-interpol。
SANO さんの情報がなかったらどうにか interpol-reader を使えないか、悩んでいたかも。サンクスです。
[[(ReadMore...) index.rb?1204642645.txt]]
要 cl-interpol。
SANO さんの情報がなかったらどうにか interpol-reader を使えないか、悩んでいたかも。サンクスです。
[[(ReadMore...) index.rb?1204642645.txt]]
* 2007-12-20 :
* memo :
- Buffer::goto_char (Point &point, point_t goal) const
- point 現在位置
- goal 目標位置
- b_contents.p1 (point-min)相当
- b_contents.p2 (point-max)相当
- b_nchars バッファのサイズ
* memo :
なんか最近Lisp書いてないので書き捨ててみた
C++用
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ができず残念な思いをする人向け。
メモ:
undo情報をそっくり写せるとうれしいかも。
[[(ReadMore...) index.rb?1161833288.txt]]
主だったところは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]]
未テストなので注意。
帰ってからテストします。
[[(ReadMore...) index.rb?1161316310.txt]]
