--- lisp-mnt.el.~1.63.~ 2009-10-08 11:00:31.000000000 +1100 +++ lisp-mnt.el 2009-11-15 11:27:05.000000000 +1100 @@ -445,16 +445,20 @@ (match-string-no-properties 1))))))) (defun lm-keywords (&optional file) - "Return the keywords given in file FILE, or current buffer if FILE is nil." + "Return the keywords given in file FILE, or current buffer if FILE is nil. +The return value is a `downcase'-ed string, or nil if no keywords +header. Multi-line keywords are joined up with a space between +each line." (lm-with-file file - (let ((keywords (lm-header "keywords"))) - (and keywords (downcase keywords))))) + (let ((keywords (lm-header-multiline "keywords"))) + (and keywords + (mapconcat 'downcase keywords " "))))) (defun lm-keywords-list (&optional file) "Return list of keywords given in file FILE." (let ((keywords (lm-keywords file))) (if keywords - (split-string keywords ",?[ \t]")))) + (split-string keywords "[, \t\n]+" t)))) (defvar finder-known-keywords) (defun lm-keywords-finder-p (&optional file)