From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Undocumented %-constructs (was: memory consumption with pure-space-overflow) Date: Fri, 12 May 2006 02:01:45 +0300 Organization: JURTA Message-ID: <87ejz088tn.fsf_-_@jurta.org> References: <34e52d434e5685.34e568534e52d4@net.lu.se> <87y7xv5qv7.fsf@pacem.orebokech.com> <87u082yov0.fsf@jurta.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1147389157 21979 80.91.229.2 (11 May 2006 23:12:37 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 11 May 2006 23:12:37 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri May 12 01:12:31 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1FeKKd-0004ff-AS for ged-emacs-devel@m.gmane.org; Fri, 12 May 2006 01:12:31 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FeKKc-000743-MA for ged-emacs-devel@m.gmane.org; Thu, 11 May 2006 19:12:30 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1FeKKS-00073x-8f for emacs-devel@gnu.org; Thu, 11 May 2006 19:12:20 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1FeKKP-00073j-AI for emacs-devel@gnu.org; Thu, 11 May 2006 19:12:19 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FeKKP-00073g-1j for emacs-devel@gnu.org; Thu, 11 May 2006 19:12:17 -0400 Original-Received: from [217.25.160.1] (helo=relay1.binet.com.ua) by monty-python.gnu.org with esmtp (Exim 4.52) id 1FeKLy-0001iA-P3; Thu, 11 May 2006 19:13:55 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by relay1.binet.com.ua (Postfix) with ESMTP id C512777D3E; Fri, 12 May 2006 02:12:12 +0300 (EEST) Original-Received: from mail.binet.com.ua (i30.dialup.binet.com.ua [217.25.161.94]) by relay1.binet.com.ua (Postfix) with ESMTP id 5888A77D3A; Fri, 12 May 2006 02:12:09 +0300 (EEST) Original-To: rms@gnu.org In-Reply-To: (Richard Stallman's message of "Wed, 10 May 2006 23:44:29 -0400") User-Agent: Gnus/5.110004 (No Gnus v0.4) Emacs/22.0.50 (gnu/linux) X-Virus-Scanned: by ClamAv at binet.com.ua 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:54292 Archived-At: > Below is a list of options currently documented in Info and docstring, > and really implemented options (thus spaces denote undocumented options): > > In the node (info "(elisp)%-Constructs"): bc fFiIlmMnpPst *+&[]-% > In the docstring of `mode-line-format': bc fFiIlm npPs zZ*+&[]-% > Really implemented in `decode_mode_spec': bcefFiIlm npPstzZ*+&[]-% > > Would someone please write the missing documentation for options > e, t, z, Z, then ack? Below is a patch with the missing documentation based on the source code. Please correct me if I misinterpreted the meaning of these constructs. I removed %M from Info because it is not supported, while %m is supported, albeit obsolete. Index: lispref/modes.texi =================================================================== RCS file: /sources/emacs/emacs/lispref/modes.texi,v retrieving revision 1.139 diff -c -r1.139 modes.texi *** lispref/modes.texi 30 Apr 2006 02:35:35 -0000 1.139 --- lispref/modes.texi 11 May 2006 23:03:59 -0000 *************** *** 1927,1932 **** --- 1931,1939 ---- @item %c The current column number of point. + @item %e + The error message if Emacs is close to out of memory for Lisp objects. + @item %f The visited file name, obtained with the @code{buffer-file-name} function. @xref{Buffer File Name}. *************** *** 1972,1977 **** --- 1979,1990 ---- meaningful distinction only on certain operating systems (@pxref{MS-DOS File Types}). + @item %z + The mnemonics of buffer, terminal, and keyboard coding systems. + + @item %Z + Like @samp{%z}, but including the end-of-line format. + @item %* @samp{%} if the buffer is read only (see @code{buffer-read-only}); @* @samp{*} if the buffer is modified (see @code{buffer-modified-p}); @* *************** *** 2003,2018 **** string in which @code{%}-constructs are allowed. @end table ! The following two @code{%}-constructs are still supported, but they are ! obsolete, since you can get the same results with the variables ! @code{mode-name} and @code{global-mode-string}. @table @code @item %m The value of @code{mode-name}. - - @item %M - The value of @code{global-mode-string}. @end table @node Properties in Mode --- 2016,2028 ---- string in which @code{%}-constructs are allowed. @end table ! The following @code{%}-construct is still supported, but it is ! obsolete, since you can get the same result with the variable ! @code{mode-name}. @table @code @item %m The value of @code{mode-name}. @end table @node Properties in Mode Index: src/buffer.c =================================================================== RCS file: /sources/emacs/emacs/src/buffer.c,v retrieving revision 1.501 diff -c -r1.501 buffer.c *** src/buffer.c 25 Feb 2006 23:33:57 -0000 1.501 --- src/buffer.c 11 May 2006 23:06:16 -0000 *************** *** 5440,5447 **** --- 5440,5449 ---- or print Bottom or All. %m -- print the mode name. %n -- print Narrow if appropriate. + %t -- visited file is text or binary (if OS supports this distinction). %z -- print mnemonics of buffer, terminal, and keyboard coding systems. %Z -- like %z, but including the end-of-line format. + %e -- print error message about full memory. %[ -- print one [ for each recursive editing level. %] similar. %% -- print %. %- -- print infinitely many dashes. Decimal digits after the % specify field width to which to pad. */); -- Juri Linkov http://www.jurta.org/emacs/