From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Kevin Rodgers Newsgroups: gmane.emacs.devel Subject: Re: [drew.adams@oracle.com: links in Help buffer aren'talwayscorrect] Date: Fri, 16 Dec 2005 11:53:40 -0700 Message-ID: References: NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------090807070708040105060300" X-Trace: sea.gmane.org 1134768735 10475 80.91.229.2 (16 Dec 2005 21:32:15 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 16 Dec 2005 21:32:15 +0000 (UTC) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Dec 16 22:32:12 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1EnNBQ-0008Sa-Vt for ged-emacs-devel@m.gmane.org; Fri, 16 Dec 2005 22:32:09 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EnNC8-0003BB-SV for ged-emacs-devel@m.gmane.org; Fri, 16 Dec 2005 16:32:52 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1EnKmz-0004aW-IP for emacs-devel@gnu.org; Fri, 16 Dec 2005 13:58:45 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1EnKmw-0004Yn-8d for emacs-devel@gnu.org; Fri, 16 Dec 2005 13:58:44 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EnKmv-0004YU-Hz for emacs-devel@gnu.org; Fri, 16 Dec 2005 13:58:41 -0500 Original-Received: from [80.91.229.2] (helo=ciao.gmane.org) by monty-python.gnu.org with esmtp (TLS-1.0:RSA_AES_128_CBC_SHA:16) (Exim 4.34) id 1EnKpO-0008PG-4v for emacs-devel@gnu.org; Fri, 16 Dec 2005 14:01:14 -0500 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1EnKjl-0005qH-1e for emacs-devel@gnu.org; Fri, 16 Dec 2005 19:55:25 +0100 Original-Received: from 207.167.42.60 ([207.167.42.60]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 16 Dec 2005 19:55:25 +0100 Original-Received: from ihs_4664 by 207.167.42.60 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 16 Dec 2005 19:55:25 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-To: emacs-devel@gnu.org Original-Lines: 135 Original-X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: 207.167.42.60 User-Agent: Mozilla Thunderbird 0.9 (X11/20041105) X-Accept-Language: en-us, en In-Reply-To: X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:47891 Archived-At: This is a multi-part message in MIME format. --------------090807070708040105060300 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit Richard M. Stallman wrote: > describe-frame-parameter seems to work usefully, but it has one > problem: its completion list is incomplete. > > Do you mean because it iterates only over the parameters of the selected > frame? > > I wasn't sure exactly what it does, but it certainly omits many > standard frame parameter names. I don't think whether the selected > frame has a setting for a particular frame parameter ought to affect > whether I can complete its name. > > It might also include user-defined parameters that won't be documented in > Info. Perhaps it should instead iterate over an explicit list of all of the > Info-documented (built-in) frame parameters. > > I think that is the best thing to do. Or else get that from the > manual too. OK, the attached version addresses all the points that have been raised: * It defines a global list of documented frame parameters, which is initialized from the manual (using info, not Info-goto-node), and which can be augmented with user-defined parameters. * The global list is actually an alist mapping parameters to their doc strings, so the doc strings are only extracted once from the manual and cached there. * Completion uses the union of the documented frame parameters and any other parameters set in the selected frame. The symbol at point is only provided as a default if it's a member of that union. * The Info xrefs and indentation have been removed from the doc string, and it's been reformatted (filled) to account for that. * Like variables, undocumented frame parameters are described as "not documented" and there's no link to the manual. Enjoy! -- Kevin --------------090807070708040105060300 Content-Type: application/emacs-lisp; name="describe-frame-parameter.el" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="describe-frame-parameter.el" KGRlZmNvbnN0IGZyYW1lLXBhcmFtZXRlci1kb2NzdHJpbmctYWxpc3QKICAoc2F2ZS1leGN1 cnNpb24KICAgIChzYXZlLXdpbmRvdy1leGN1cnNpb24KICAgICAgKGxldCAoKGFsaXN0ICco KSkKICAgICAgICAgICAgKHBvcC11cC1mcmFtZXMgbmlsKSkKICAgICAgICAoaW5mbyAiKGVs aXNwKVdpbmRvdyBGcmFtZSBQYXJhbWV0ZXJzIikKICAgICAgICAoZ290by1jaGFyIChwb2lu dC1taW4pKQogICAgICAgICh3aGlsZSAocmUtc2VhcmNoLWZvcndhcmQgIl5gXFwoXFxzd1xc KD86XFxzd1xcfFxcc19cXCkqXFwpJyQiIG5pbCB0KQogICAgICAgICAgKGxldCogKChwYXJh bWV0ZXIgKGludGVybiAobWF0Y2gtc3RyaW5nIDEpKSkKICAgICAgICAgICAgICAgICAoaW5m b3N0cmluZwogICAgICAgICAgICAgICAgICAoYnVmZmVyLXN1YnN0cmluZyAoMSsgKHBvaW50 KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDEtIChvciAocmUtc2Vh cmNoLWZvcndhcmQgIl5gIiBuaWwgdCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAocG9pbnQtbWF4KSkpKSkKICAgICAgICAgICAgICAgICAoY2FzZS1m b2xkLXNlYXJjaCB0KQogICAgICAgICAgICAgICAgIChkb2NzdHJpbmcKICAgICAgICAgICAg ICAgICAgOzsgZGVsZXRlIEluZm8geHJlZnMgYW5kIGluZGVudGF0aW9uLCB0aGVuIHJlZm9y bWF0OgogICAgICAgICAgICAgICAgICAod2l0aC10ZW1wLWJ1ZmZlcgogICAgICAgICAgICAg ICAgICAgIChpbnNlcnQgaW5mb3N0cmluZykKICAgICAgICAgICAgICAgICAgICAocmVwbGFj ZS1yZWdleHAKICAgICAgICAgICAgICAgICAgICAgIlxcKCAoXFx8OyBzZWUgXFwpP1xcKm5v dGVbIFx0XG5dKlxcKFteOl0qXFwpOjpbKS5dIgogICAgICAgICAgICAgICAgICAgICAiIgog ICAgICAgICAgICAgICAgICAgICBuaWwgKHBvaW50LW1pbikgKHBvaW50LW1heCkpCiAgICAg ICAgICAgICAgICAgICAgKHJlcGxhY2UtcmVnZXhwICJcbiArIiAiXG4iIG5pbCAocG9pbnQt bWluKSAocG9pbnQtbWF4KSkKICAgICAgICAgICAgICAgICAgICAoZmlsbC1yZWdpb24gKHBv aW50LW1pbikgKHBvaW50LW1heCkpCiAgICAgICAgICAgICAgICAgICAgKGJ1ZmZlci1zdHJp bmcpKSkpCiAgICAgICAgICAgIChzZXRxIGFsaXN0CiAgICAgICAgICAgICAgICAgIChjb25z IChjb25zIHBhcmFtZXRlciBkb2NzdHJpbmcpCiAgICAgICAgICAgICAgICAgICAgICAgIGFs aXN0KSkKICAgICAgICAgICAgOzsgbW92ZSB0byBtYXRjaGVkIGJhY2txdW90ZSBhdCBib2w6 CiAgICAgICAgICAgIChiYWNrd2FyZC1jaGFyIDEpKSkKICAgICAgICAobnJldmVyc2UgYWxp c3QpKSkpCiAgIkxpc3Qgb2YgKFBBUkFNRVRFUiAuIERPQy1TVFJJTkcpIGFzc29jaWF0aW9u cy4iKQoKCihkZWZ1biBkZXNjcmliZS1mcmFtZS1wYXJhbWV0ZXIgKHBhcmFtZXRlciAmb3B0 aW9uYWwgZnJhbWUpCiAgIkRpc3BsYXkgdGhlIGZ1bGwgZG9jdW1lbnRhdGlvbiBvZiBmcmFt ZSBQQVJBTUVURVIgKGEgc3ltYm9sKSBpbiBGUkFNRS4KSWYgRlJBTUUgaXMgbmlsLCBkZXNj cmliZSB0aGUgc2VsZWN0ZWQgZnJhbWUncyBwYXJhbWV0ZXIgdmFsdWUuIgogIChpbnRlcmFj dGl2ZQogICAobGV0KiAoKGVuYWJsZS1yZWN1cnNpdmUtbWluaWJ1ZmZlcnMgdCkKICAgICAg ICAgIChkZWZhdWx0LXBhcmFtIChzeW1ib2wtYXQtcG9pbnQpKQogICAgICAgICAgKHBhcmFt LWFsaXN0IChmcmFtZS1wYXJhbWV0ZXJzIG5pbCkpCiAgICAgICAgICAocGFyYW0tbmFtZQog ICAgICAgICAgIChwcm9nbgogICAgICAgICAgICAgOzsgbWFrZSBzdXJlIHRoZSBkZWZhdWx0 IGlzIGEgZnJhbWUgcGFyYW1ldGVyOgogICAgICAgICAgICAgKHNldHEgZGVmYXVsdC1wYXJh bQogICAgICAgICAgICAgICAgICAgKG9yIChjYXIgKGFzc3EgZGVmYXVsdC1wYXJhbQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWUtcGFyYW1ldGVyLWRvY3N0cmlu Zy1hbGlzdCkpCiAgICAgICAgICAgICAgICAgICAgICAgKGNhciAoYXNzcSBkZWZhdWx0LXBh cmFtIHBhcmFtLWFsaXN0KSkpKQogICAgICAgICAgICAgOzsgY29tcGxldGUgb24gYm90aCBk b2N1bWVudGVkIGZyYW1lIHBhcmFtZXRlcnMgYW5kCiAgICAgICAgICAgICA7OyB1c2VyLWRl ZmluZWQgcGFyYW1ldGVycyB0aGF0IG1heSBiZSBzZXQ6CiAgICAgICAgICAgICAoY29tcGxl dGluZy1yZWFkIChpZiBkZWZhdWx0LXBhcmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAoZm9ybWF0ICJEZXNjcmliZSBwYXJhbWV0ZXIgKGRlZmF1bHQgJXMpOiAiCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQtcGFyYW0p CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkRlc2NyaWJlIHBhcmFtZXRlcjog IikKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5jb25jIChtYXBjYXIgKGxhbWJk YSAoYXNzb2MpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKGxpc3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKHN5bWJvbC1uYW1lIChjYXIgYXNzb2MpKSkpCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGZyYW1lLXBhcmFtZXRlci1kb2NzdHJpbmctYWxpc3Qp CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY2FyIChsYW1iZGEg KGFzc29jKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IChvciAoYXNzcQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKGNhciBhc3NvYykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGZyYW1lLXBhcmFtZXRlci1kb2NzdHJpbmctYWxpc3QpCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo c3ltYm9sLW5hbWUgKGNhciBhc3NvYykpKSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHBhcmFtLWFsaXN0KSkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgbmlsIHQgbmlsIG5pbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo aWYgZGVmYXVsdC1wYXJhbSAoc3ltYm9sLW5hbWUgZGVmYXVsdC1wYXJhbSkpKSkpKQogICAg IChsaXN0IChpZiAoZXF1YWwgcGFyYW0tbmFtZSAiIikKICAgICAgICAgICAgICAgZGVmYXVs dC1wYXJhbQogICAgICAgICAgICAgKGludGVybiBwYXJhbS1uYW1lKSkpKSkKICAoaWYgKG51 bGwgZnJhbWUpCiAgICAgIChzZXRxIGZyYW1lIChzZWxlY3RlZC1mcmFtZSkpKQogIChpZiAo bnVsbCBwYXJhbWV0ZXIpCiAgICAgIChtZXNzYWdlICJZb3UgZGlkIG5vdCBzcGVjaWZ5IGEg ZnJhbWUgcGFyYW1ldGVyIikKICAgIChsZXQgKCh2YWx1ZSAoZnJhbWUtcGFyYW1ldGVyIGZy YW1lIHBhcmFtZXRlcikpCiAgICAgICAgICAoZG9jc3RyaW5nIChjZHIgKGFzc3EgcGFyYW1l dGVyIGZyYW1lLXBhcmFtZXRlci1kb2NzdHJpbmctYWxpc3QpKSkpCiAgICAgICh3aXRoLW91 dHB1dC10by10ZW1wLWJ1ZmZlciAiKkhlbHAqIgogICAgICAgIChwcmluMSBwYXJhbWV0ZXIp CiAgICAgICAgKHByaW5jICIncyB2YWx1ZSBpcyAiKQogICAgICAgICh0ZXJwcmkpCiAgICAg ICAgKHdpdGgtY3VycmVudC1idWZmZXIgc3RhbmRhcmQtb3V0cHV0CiAgICAgICAgICAobGV0 ICgoZnJvbSAocG9pbnQpKSkKICAgICAgICAgICAgKHBwIHZhbHVlKQogICAgICAgICAgICA7 OyAoaGVscC14cmVmLW9uLXBwIGZyb20gKHBvaW50KSkKICAgICAgICAgICAgKGlmICg8IChw b2ludCkgKCsgZnJvbSAyMCkpCiAgICAgICAgICAgICAgICAoc2F2ZS1leGN1cnNpb24KICAg ICAgICAgICAgICAgICAgKGdvdG8tY2hhciBmcm9tKQogICAgICAgICAgICAgICAgICAoZGVs ZXRlLWNoYXIgLTEpKSkpKQogICAgICAgICh0ZXJwcmkpCiAgICAgICAgKHRlcnByaSkKICAg ICAgICAocHJpbmMgIkRvY3VtZW50YXRpb246IikKICAgICAgICAodGVycHJpKQogICAgICAg IChpZiBkb2NzdHJpbmcKICAgICAgICAgICAgKHByaW5jIGRvY3N0cmluZykKICAgICAgICAg IChwcmluYyAibm90IGRvY3VtZW50ZWQgYXMgYSBmcmFtZSBwYXJhbWV0ZXIuIikpKSkpKQo= --------------090807070708040105060300 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel --------------090807070708040105060300--