unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#4928: 23.1; lm-keywords more flexibility
@ 2009-11-15  0:30 ` Kevin Ryde
  2009-11-15  1:40   ` Stefan Monnier
  2009-11-17  0:30   ` bug#4928: marked as done (23.1; lm-keywords more flexibility) Emacs bug Tracking System
  0 siblings, 2 replies; 3+ messages in thread
From: Kevin Ryde @ 2009-11-15  0:30 UTC (permalink / raw)
  To: bug-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 751 bytes --]

This is a idea to relax/extend lm-keywords to cope with multi-line
keywords, like say Drew's icicles.el,

  ;; Keywords: internal, extensions, help, abbrev, local, minibuffer,
  ;;           keys, apropos, completion, matching, regexp, command

And comma-only separators like say zenirc-color.el,

  ;; Keywords: zenirc,extensions

And trailing-space as in say vm-summary-faces.el, which had been ok in
Emacs 21.

  ;; Keywords:    VM 


2009-11-13  Kevin Ryde  <user42@zip.com.au>

	* 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.)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: lisp-mnt.el.keywords.diff --]
[-- Type: text/x-diff, Size: 1065 bytes --]

--- 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)

[-- Attachment #3: Type: text/plain, Size: 732 bytes --]



In GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.16.5)
 of 2009-09-14 on raven, modified by Debian
configured using `configure  '--build=i486-linux-gnu' '--host=i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.1/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.1/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'host_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS=''

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#4928: 23.1; lm-keywords more flexibility
  2009-11-15  0:30 ` bug#4928: 23.1; lm-keywords more flexibility Kevin Ryde
@ 2009-11-15  1:40   ` Stefan Monnier
  2009-11-17  0:30   ` bug#4928: marked as done (23.1; lm-keywords more flexibility) Emacs bug Tracking System
  1 sibling, 0 replies; 3+ messages in thread
From: Stefan Monnier @ 2009-11-15  1:40 UTC (permalink / raw)
  To: Kevin Ryde; +Cc: 4928

> This is a idea to relax/extend lm-keywords to cope with multi-line
> keywords, like say Drew's icicles.el,

Feel free to install it,


        Stefan





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#4928: marked as done (23.1; lm-keywords more flexibility)
  2009-11-15  0:30 ` bug#4928: 23.1; lm-keywords more flexibility Kevin Ryde
  2009-11-15  1:40   ` Stefan Monnier
@ 2009-11-17  0:30   ` Emacs bug Tracking System
  1 sibling, 0 replies; 3+ messages in thread
From: Emacs bug Tracking System @ 2009-11-17  0:30 UTC (permalink / raw)
  To: Kevin Ryde

[-- Attachment #1: Type: text/plain, Size: 860 bytes --]

Your message dated Tue, 17 Nov 2009 11:21:40 +1100
with message-id <87skce2e7f.fsf@blah.blah>
and subject line Re: bug#4928: 23.1; lm-keywords more flexibility
has caused the Emacs bug report #4928,
regarding 23.1; lm-keywords more flexibility
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@emacsbugs.donarmstrong.com
immediately.)


-- 
4928: http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=4928
Emacs Bug Tracking System
Contact owner@emacsbugs.donarmstrong.com with problems

[-- Attachment #2: Type: message/rfc822, Size: 5043 bytes --]

[-- Attachment #2.1.1: Type: text/plain, Size: 751 bytes --]

This is a idea to relax/extend lm-keywords to cope with multi-line
keywords, like say Drew's icicles.el,

  ;; Keywords: internal, extensions, help, abbrev, local, minibuffer,
  ;;           keys, apropos, completion, matching, regexp, command

And comma-only separators like say zenirc-color.el,

  ;; Keywords: zenirc,extensions

And trailing-space as in say vm-summary-faces.el, which had been ok in
Emacs 21.

  ;; Keywords:    VM 


2009-11-13  Kevin Ryde  <user42@zip.com.au>

	* 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.)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2.1.2: lisp-mnt.el.keywords.diff --]
[-- Type: text/x-diff, Size: 1065 bytes --]

--- 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)

[-- Attachment #2.1.3: Type: text/plain, Size: 732 bytes --]



In GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.16.5)
 of 2009-09-14 on raven, modified by Debian
configured using `configure  '--build=i486-linux-gnu' '--host=i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.1/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.1/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'host_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS=''

[-- Attachment #3: Type: message/rfc822, Size: 1933 bytes --]

From: Kevin Ryde <user42@zip.com.au>
To: 4928-done@emacsbugs.donarmstrong.com
Subject: Re: bug#4928: 23.1; lm-keywords more flexibility
Date: Tue, 17 Nov 2009 11:21:40 +1100
Message-ID: <87skce2e7f.fsf@blah.blah>

Stefan Monnier <monnier@iro.umontreal.ca> writes:
>
> Feel free to install it,

Done.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-11-17  0:30 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <87skce2e7f.fsf@blah.blah>
2009-11-15  0:30 ` bug#4928: 23.1; lm-keywords more flexibility Kevin Ryde
2009-11-15  1:40   ` Stefan Monnier
2009-11-17  0:30   ` bug#4928: marked as done (23.1; lm-keywords more flexibility) Emacs bug Tracking System

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).