Emacs Lisp での繰り返しの書き方
繰り返しを書くときは、まず mapcar, find-if などの高階関数で書けるかどう かを検討する。書けなければ dolist, dotimes などを使う。それでも書けなけ れば、while, loop, 再帰を使う。 ...
繰り返しを書くときは、まず mapcar, find-if などの高階関数で書けるかどう かを検討する。書けなければ dolist, dotimes などを使う。それでも書けなけ れば、while, loop, 再帰を使う。 ...
(dolist (target '(a b c)) (if (eql 'b target) (return target)))
M-x re-builder
(string-to-number "20" 16) #=> 32 (read (concat "?\\x" "20")) #=> 32
% emacs -q –no-site-file -batch -eval ‘(message (getenv “HOME”))’
(let ((str "hogehoge,") (regexp ",$") (newstr "")) (cond ((eq emacs-major-version 21) (replace-regexp-in-string regexp newstr str)) ((eq emacs-major-version 20) (progn (string-match regexp str) (replace-match newstr nil nil str))) ((eq emacs-major-version 19) (progn (require 'dired) (dired-replace-in-string regexp newstr str)))))
ファイル名がかぶっていて、loadされないファイルを表示する。
(symbol-function 'MEW-TO) => (lambda nil (aref mew-vec 5))
GNU-Emacs 21.2.93 だと音を鳴らせるようだ。 (play-sound '(sound :file "~/Mail/email.wav"))
call-process()でファイル名等を渡す時は expand-file-name()しなければならない。