* emacs-lisp/lisp-mnt.el (lm-keywords): Allow multi-line keywords.
(lm-keywords-list): Allow comma-only separator like "foo,bar". Ignore trailing spaces by omit-nulls to split-string (fixing regression from Emacs 21 due to the incompatible split-string change). (Bug #4928.)
This commit is contained in:
parent
af42a9cc38
commit
497de631d5
2 changed files with 14 additions and 4 deletions
|
@ -445,16 +445,20 @@ This can be found in an RCS or SCCS header."
|
|||
(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 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)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue