Source of Nothingness - xyzzy lisp :

* xyzzy lisp :

こんなのを用意してみた。
cronがちゃんと働けば、一日3回更新チェックをするはず。

(defun ni::add-site-from-raido ()
  (interactive)
  (ni::load-site-data)
  (mapcar
   (lambda (x) (ignore-errors (ni::site-add x)))
   (set-difference
    (let ((stream (ni::http-get-url "http://raido.sakura.ne.jp/southly/lisp/ni/ni-status.txt")))
      (do* ((line (read-line stream nil nil) (read-line stream nil nil))
            (r nil))
          ((not line) (nreverse r))
        (unless (string-matchp "^\\(4[0-9][0-9]\\|NIL\\)" line)
          (push (second (split-string line " ")) r))))
    (mapcar (lambda (x) (cdr (assoc "src" x :test #'equal))) ni::*site-data*)
    :test #'string=)))
(define-key ni::*site-map* #\N 'ni::add-site-from-raido)

update : 2008-02-06 (Wed) 12:38:19