+2013-06-21 Glenn Morris <rgm@gnu.org>
+
+ * play/cookie1.el (cookie-apropos): Add optional display argument.
+ * obsolete/yow.el (apropos-zippy): Use cookie-apropos.
+ (psychoanalyze-pinhead): Use cookie-doctor.
+
2013-06-21 Juanma Barranquero <lekktu@gmail.com>
* emacs-lisp/package.el (tar-get-file-descriptor)
"Return a list of all Zippy quotes matching REGEXP.
If called interactively, display a list of matches."
(interactive "sApropos Zippy (regexp): ")
- ;; Make sure yows are loaded
- (cookie yow-file yow-load-message yow-after-load-message)
- (let* ((case-fold-search t)
- (cookie-table-symbol (intern yow-file cookie-cache))
- (string-table (symbol-value cookie-table-symbol))
- (matches nil)
- (len (length string-table))
- (i 0))
- (save-match-data
- (while (< i len)
- (and (string-match regexp (aref string-table i))
- (setq matches (cons (aref string-table i) matches)))
- (setq i (1+ i))))
- (and matches
- (setq matches (sort matches 'string-lessp)))
- (and (called-interactively-p 'interactive)
- (cond ((null matches)
- (message "No matches found."))
- (t
- (let ((l matches))
- (with-output-to-temp-buffer "*Zippy Apropos*"
- (while l
- (princ (car l))
- (setq l (cdr l))
- (and l (princ "\n\n")))
- (help-print-return-message))))))
- matches))
+ (cookie-apropos regexp yow-file (called-interactively-p 'interactive)))
\f
;; Yowza!! Feed zippy quotes to the doctor. Watch results.
(defun psychoanalyze-pinhead ()
"Zippy goes to the analyst."
(interactive)
- (doctor) ; start the psychotherapy
- (message "")
- (switch-to-buffer "*doctor*")
- (sit-for 0)
- (while (not (input-pending-p))
- (insert (yow))
- (sit-for 0)
- (doctor-ret-or-read 1)
- (doctor-ret-or-read 1)))
+ (cookie-doctor yow-file))
(provide 'yow)
(define-obsolete-function-alias 'shuffle-vector 'cookie-shuffle-vector "24.4")
-(defun cookie-apropos (regexp phrase-file)
+(defun cookie-apropos (regexp phrase-file &optional display)
"Return a list of all entries matching REGEXP from PHRASE-FILE.
Interactively, PHRASE-FILE defaults to `cookie-file', unless that
is nil or a prefix argument is used.
-If called interactively, display a list of matches."
+If called interactively, or if DISPLAY is non-nil, display a list of matches."
(interactive (list (read-regexp "Apropos phrase (regexp): ")
(if (or current-prefix-arg (not cookie-file))
(read-file-name "Cookie file: " nil
(setq i (1+ i))))
(and matches
(setq matches (sort matches 'string-lessp)))
- (and (called-interactively-p 'interactive)
+ (and (or display (called-interactively-p 'interactive))
(cond ((null matches)
(message "No matches found."))
(t