From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28325 invoked from network); 17 Mar 2006 19:53:13 -0000 X-Spam-Checker-Version: SpamAssassin 3.1.1 (2006-03-10) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00, FORGED_RCVD_HELO autolearn=ham version=3.1.1 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by ns1.primenet.com.au with SMTP; 17 Mar 2006 19:53:13 -0000 Received: (qmail 26141 invoked from network); 17 Mar 2006 19:53:06 -0000 Received: from sunsite.dk (130.225.247.90) by a.mx.sunsite.dk with SMTP; 17 Mar 2006 19:53:06 -0000 Received: (qmail 2958 invoked by alias); 17 Mar 2006 19:53:03 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 22360 Received: (qmail 2949 invoked from network); 17 Mar 2006 19:53:03 -0000 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by sunsite.dk with SMTP; 17 Mar 2006 19:53:03 -0000 Received: (qmail 25979 invoked from network); 17 Mar 2006 19:53:03 -0000 Received: from cluster-c.mailcontrol.com (168.143.177.190) by a.mx.sunsite.dk with SMTP; 17 Mar 2006 19:52:59 -0000 Received: from exchange03.csr.com (uuk202166.uk.customer.alter.net [62.189.241.194] (may be forged)) by rly19c.srv.mailcontrol.com (MailControl) with ESMTP id k2HJqpP6014172 for ; Fri, 17 Mar 2006 19:52:52 GMT Received: from csr.com ([10.103.143.38]) by exchange03.csr.com with Microsoft SMTPSVC(5.0.2195.6713); Fri, 17 Mar 2006 19:52:51 +0000 To: zsh-workers@sunsite.dk (Zsh hackers list) Subject: Re: documentation update In-reply-to: References: <20060317060309.T16509@dynamite.narpes.com> <060317081120.ZM18164@torch.brasslantern.com> Comments: In-reply-to Peter Stephenson message dated "Fri, 17 Mar 2006 16:34:59 +0000." Date: Fri, 17 Mar 2006 19:52:55 +0000 From: Peter Stephenson Message-ID: X-OriginalArrivalTime: 17 Mar 2006 19:52:51.0226 (UTC) FILETIME=[5FAAE7A0:01C649FC] Content-Type: text/plain MIME-Version: 1.0 X-Scanned-By: MailControl A-06-00-04 (www.mailcontrol.com) on 10.67.0.129 Peter Stephenson wrote: > The new version is 2.01.03. It's pickier about lots of things. > However, the immediate problem is actually solved quite easily by using > IFDEF() internally to test the presence of the new functions. I'm now > dealing with the less immediate but more important problem of trying to > ensure the output is OK with both older and newer versions. I think this is basically working; it's possible I've made the odd typo for which an eye should be kept open. Typos are liable to show up with the old yodl, too; the vast majority of changes are in common, including a large number of extra +'s to separate macros from text---probably too many, though actually in some particular cases it could do with even more---and yet more LPAR() and RPAR() pairs to stop things looking like macros. The new version doesn't produce the large number of .' lines in manuals the old one did. I think this is a feature, but I haven't looked closely at the reason. Also, if you diff the manual page output, you'll see that (real) 's are being quoted as \&': again, I presume this is a feature. I'll probably check this in on Monday. By the way, it's not obvious how you compile the new version of yodl: you need to run a script contrib/build.pl which is mentioned nowhere in the documentation. The "build" script is useless unless you have icmake. Index: README =================================================================== RCS file: /cvsroot/zsh/zsh/README,v retrieving revision 1.31 diff -u -r1.31 README --- README 2 Mar 2006 14:26:20 -0000 1.31 +++ README 17 Mar 2006 19:42:55 -0000 @@ -73,7 +73,7 @@ It is not required by zsh but but it is a nice program so you might want to get it anyway, especially if you are a zsh developer. It can be downloaded from - ftp://ftp.lilypond.org/pub/yodl/ + ftp://yodl.sourceforge.net/ Doc/zsh*.1 Man pages in nroff format. These will be installed by "make install.man" or "make install". By default, Index: Doc/META-FAQ.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/META-FAQ.yo,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 META-FAQ.yo --- Doc/META-FAQ.yo 15 Apr 1999 18:05:36 -0000 1.1.1.1 +++ Doc/META-FAQ.yo 17 Mar 2006 19:42:56 -0000 @@ -1,4 +1,8 @@ +IFDEF(INCWSLEVEL)(\ +INCWSLEVEL()\ +)(\ STARTDEF() +) INCLUDEFILE(zmacros.yo) def(startmenu)(0)(DELLINE) @@ -21,7 +25,7 @@ def(startitem)(0)(NEXTLINE DELLINE) def(enditem)(0)(DELLINE) def(item)(2)( - ARG1+USECHARTABLE(indent2)ARG2 DELLINE USECHARTABLE(standard)) + ARG1+USECHARTABLE(indent2)ARG2 DELLINE +USECHARTABLE(standard)) def(startlist)(0)(DELLINE) def(endlist)(0)(DELLINE) @@ -34,7 +38,11 @@ '\n' = "\n " ) +IFDEF(DECWSLEVEL)(\ +DECWSLEVEL()\ +)(\ ENDDEF()\ +)\ ------------------------ META-FAQ for the Z Shell ------------------------ Index: Doc/zmacros.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/zmacros.yo,v retrieving revision 1.3 diff -u -r1.3 zmacros.yo --- Doc/zmacros.yo 22 Aug 2005 09:27:57 -0000 1.3 +++ Doc/zmacros.yo 17 Mar 2006 19:42:56 -0000 @@ -1,8 +1,12 @@ +IFDEF(INCWSLEVEL)(\ +INCWSLEVEL()\ +)(\ STARTDEF() +) DEFINEMACRO(includefile)(1)(\ TYPEOUT(Including file ARG1)\ - comment(Yodl file: ARG1)NL()\ + comment(Yodl file: ARG1)+NL()\ INCLUDEFILE(ARG1)\ ) @@ -10,10 +14,18 @@ DEFINEMACRO(ARG1)(ARG2)(ARG3)\ ) DEFINEMACRO(undef)(1)(\ + IFDEF(DELETEMACRO)(\ + DELETEMACRO(ARG1)\ + )(\ UNDEFINEMACRO(ARG1)\ + )\ ) DEFINEMACRO(redef)(3)(\ + IFDEF(DELETEMACRO)(\ + DELETEMACRO(ARG1)\ + )(\ UNDEFINEMACRO(ARG1)\ + )\ DEFINEMACRO(ARG1)(ARG2)(ARG3)\ ) @@ -24,12 +36,15 @@ DEFINEMACRO(DASH)(0)(ifztexi(--)ifnztexi(-)) -DEFINEMACRO(NL)(0)( -) +DEFINEMACRO(NL)(0)(CHAR(10)) DEFINEMACRO(ifzman)(1)() DEFINEMACRO(ifnzman)(1)(ARG1) DEFINEMACRO(ifztexi)(1)() DEFINEMACRO(ifnztexi)(1)(ARG1) -ENDDEF() +IFDEF(DECWSLEVEL)(\ +DECWSLEVEL()\ +)(\ +ENDDEF()\ +)\ Index: Doc/zman.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/zman.yo,v retrieving revision 1.2 diff -u -r1.2 zman.yo --- Doc/zman.yo 28 Jun 2001 17:02:57 -0000 1.2 +++ Doc/zman.yo 17 Mar 2006 19:42:56 -0000 @@ -1,7 +1,11 @@ +IFDEF(INCWSLEVEL)(\ +INCWSLEVEL()\ +DEFINESYMBOL(zman)()\ +)(\ STARTDEF() - -TYPEOUT(Zsh Yodl-to-man converter) DEFINESYMBOL(zman) +) +TYPEOUT(Zsh Yodl-to-man converter) INCLUDEFILE(zmacros) redef(ifzman)(1)(ARG1) @@ -25,10 +29,10 @@ COMMENT(--- emphasised text ---) -def(em)(1)(NOTRANS(\fI)ARG1NOTRANS(\fP)) -def(bf)(1)(NOTRANS(\fB)ARG1NOTRANS(\fP)) -def(tt)(1)(NOTRANS(\fB)ARG1NOTRANS(\fP)) -def(var)(1)(NOTRANS(\fI)ARG1NOTRANS(\fP)) +def(em)(1)(NOTRANS(\fI)ARG1+NOTRANS(\fP)) +def(bf)(1)(NOTRANS(\fB)ARG1+NOTRANS(\fP)) +def(tt)(1)(NOTRANS(\fB)ARG1+NOTRANS(\fP)) +def(var)(1)(NOTRANS(\fI)ARG1+NOTRANS(\fP)) COMMENT(--- man page headers ---) @@ -36,7 +40,7 @@ NOTRANS(.TH ")ARG1" "ARG2" "ARG3" "ARG4"\ ) def(manpagename)(2)(\ - sect(NAME)NL()\ + sect(NAME)+NL()\ ARG1 - ARG2\ ) @@ -62,15 +66,19 @@ def(chapter)(1)(CMT()) -COMMENT(--- the "" works around a yodl bug ---) +COMMENT(--- the "" works around a yodl bug in versions before 2 ---) def(sect)(1)(\ - NOTRANS(.SH )UPPERCASE(ARG1)(0)""NL()\ + IFDEF(INCWSLEVEL)(\ + NOTRANS(.SH )"UPPERCASE(ARG1)(0)"+NL()\ + )(\ + NOTRANS(.SH )UPPERCASE(ARG1)(0)""+NL()\ + )\ STDPAR()\ CMT()\ ) def(subsect)(1)(\ - NOTRANS(.SS ")ARG1"NL()\ + NOTRANS(.SS ")ARG1"+NL()\ CMT()\ ) @@ -82,13 +90,13 @@ def(comment)(1)(\ USECHARTABLE(roffcomment)\ NOTRANS(.\" )ARG1\ - USECHARTABLE(standard)\ + +USECHARTABLE(standard)\ ) COMMENT(--- cross-references ---) def(manref)(2)(\ - NOTRANS(\fI)ARG1NOTRANS(\fP)(ARG2)\ + NOTRANS(\fI)ARG1+NOTRANS(\fP)(ARG2)\ ) def(zmanref)(1)(manref(ARG1)(1)) def(noderef)(1)(the section `ARG1') @@ -97,31 +105,31 @@ def(startitem)(0)(\ NOTRANS(.PD 0)\ - redef(ITEM)(0)(NOTRANS(.PD)NL())\ + +redef(ITEM)(0)(NOTRANS(.PD)+NL())\ ) def(enditem)(0)(\ ENDITEM()\ STDPAR()\ - redef(ENDITEM)(0)(NOTRANS(.RE)STDPAR())\ + +redef(ENDITEM)(0)(NOTRANS(.RE)STDPAR())\ ) def(item)(2)(\ - NOTRANS(.TP)NL()\ + NOTRANS(.TP)+NL()\ ITEM()\ - redef(ITEM)(0)()\ + +redef(ITEM)(0)()\ ARG1\ - redef(ENDITEM)(0)(CMT())\ - redef(PARAGRAPH)(0)(\ - NL()NOTRANS(.RS)NL()NOTRANS(.PP)NL()\ + +redef(ENDITEM)(0)(CMT())\ + +redef(PARAGRAPH)(0)(\ + NL()NOTRANS(.RS)+NL()NOTRANS(.PP)+NL()\ STDPAR()\ - redef(ENDITEM)(0)(NOTRANS(.RE)STDPAR())\ + +redef(ENDITEM)(0)(NOTRANS(.RE)STDPAR())\ )\ ARG2\ - ENDITEM()\ + +ENDITEM()\ ) def(xitem)(1)(\ - NOTRANS(.TP)NL()\ - NOTRANS(.PD 0)NL()\ - redef(ITEM)(0)(NOTRANS(.PD)NL())\ + NOTRANS(.TP)+NL()\ + NOTRANS(.PD 0)+NL()\ + +redef(ITEM)(0)(NOTRANS(.PD)+NL())\ ARG1\ ) @@ -132,12 +140,12 @@ NOTRANS(.PD)\ ) def(sitem)(2)(\ - NOTRANS(.TP)NL()\ - ARG1NL()\ + NOTRANS(.TP)+NL()\ + ARG1+NL()\ ARG2\ ) def(sxitem)(1)(\ - NOTRANS(.TP)NL()\ + NOTRANS(.TP)+NL()\ ARG1\ ) @@ -148,7 +156,7 @@ NOTRANS(.PD)\ ) def(list)(1)(\ - NOTRANS(.TP)NL()\ + NOTRANS(.TP)+NL()\ ARG1\ ) @@ -159,27 +167,27 @@ enditem()\ ) def(itemiz)(1)(\ - item(NOTRANS(\)LPAR()NOTRANS(bu))(NL()ARG1NL())\ + item(NOTRANS(\)+LPAR()+NOTRANS(bu))(NL()ARG1+NL())\ ) COMMENT(--- special effects ---) def(example)(1)(\ - NOTRANS(.RS)NL()NOTRANS(.nf)NL()\ - NOTRANS(\fB)ARG1NOTRANS(\fP)\ - NL()NOTRANS(.fi)NL()NOTRANS(.RE)\ + NOTRANS(.RS)+NL()NOTRANS(.nf)+NL()\ + NOTRANS(\fB)ARG1+NOTRANS(\fP)\ + +NL()NOTRANS(.fi)+NL()NOTRANS(.RE)\ ) def(nofill)(1)(\ - NOTRANS(.nf)NL()\ + NOTRANS(.nf)+NL()\ ARG1\ - NL()NOTRANS(.fi)\ + +NL()NOTRANS(.fi)\ ) def(indent)(1)(\ - NOTRANS(.RS)NL()NOTRANS(.nf)NL()\ + NOTRANS(.RS)+NL()NOTRANS(.nf)+NL()\ ARG1\ - NL()NOTRANS(.fi)NL()NOTRANS(.RE)\ + +NL()NOTRANS(.fi)+NL()NOTRANS(.RE)\ ) COMMENT(--- hyperlink menus ---) @@ -197,4 +205,8 @@ def(tindex)(1)(CMT()) def(vindex)(1)(CMT()) +IFDEF(DECWSLEVEL)(\ +DECWSLEVEL()\ +)(\ ENDDEF()\ +)\ Index: Doc/zsh.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/zsh.yo,v retrieving revision 1.9 diff -u -r1.9 zsh.yo --- Doc/zsh.yo 21 Oct 2005 09:51:55 -0000 1.9 +++ Doc/zsh.yo 17 Mar 2006 19:42:56 -0000 @@ -68,7 +68,7 @@ ifnzman(includefile(Zsh/zftpsys.yo)) ifnzman(includefile(Zsh/contrib.yo)) ifzshall(\ -def(source)(1)(NOTRANS(.so )man1/ARG1NOTRANS(.)1)\ +def(source)(1)(NOTRANS(.so )man1/ARG1+NOTRANS(.)1)\ CMT() source(zshroadmap) source(zshmisc) Index: Doc/ztexi.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/ztexi.yo,v retrieving revision 1.4 diff -u -r1.4 ztexi.yo --- Doc/ztexi.yo 28 Jun 2001 17:02:57 -0000 1.4 +++ Doc/ztexi.yo 17 Mar 2006 19:42:56 -0000 @@ -1,7 +1,12 @@ +IFDEF(INCWSLEVEL)(\ +INCWSLEVEL()\ +DEFINESYMBOL(ztexi)()\ +)(\ STARTDEF() +DEFINESYMBOL(ztexi) +) TYPEOUT(Zsh Yodl-to-TeXinfo converter) -DEFINESYMBOL(ztexi) INCLUDEFILE(zmacros) redef(ifztexi)(1)(ARG1) @@ -11,7 +16,7 @@ ATEXIT(\ NL()\ - NOTRANS(@contents)NL()\ + NOTRANS(@contents)+NL()\ NOTRANS(@bye)NL()\ ) @@ -24,17 +29,17 @@ '}' = "@}" ) USECHARTABLE(standard) -SUBST('')(NOTRANS(@value{dsq})) -SUBST(``)(NOTRANS(@value{dsbq})) +SUBST('')(+NOTRANS(@value{dsq})) +SUBST(``)(+NOTRANS(@value{dsbq})) -def(STDPAR)(0)(redef(PARAGRAPH)(0)(NL()NL()NOTRANS(@noindent)NL())) +def(STDPAR)(0)(redef(PARAGRAPH)(0)(NL()NL()NOTRANS(@noindent)+NL())) COMMENT(--- emphasised text ---) -def(em)(1)(NOTRANS(@emph{)ARG1NOTRANS(})) -def(bf)(1)(NOTRANS(@cite{)ARG1NOTRANS(})) -def(tt)(1)(NOTRANS(@t{)ARG1NOTRANS(})) -def(var)(1)(NOTRANS(@var{)ARG1NOTRANS(})) +def(em)(1)(+NOTRANS(@emph{)ARG1+NOTRANS(})) +def(bf)(1)(+NOTRANS(@cite{)ARG1+NOTRANS(})) +def(tt)(1)(+NOTRANS(@t{)ARG1+NOTRANS(})) +def(var)(1)(+NOTRANS(@var{)ARG1+NOTRANS(})) COMMENT(--- man page headers ---) @@ -45,46 +50,46 @@ def(texinfo)(2)(\ STDPAR()\ - NOTRANS(\input texinfo.tex)NL()\ - NOTRANS(@c %**start of header)NL()\ - NOTRANS(@iftex)NL()\ - NOTRANS(@afourpaper)NL()\ - NOTRANS(@setchapternewpage off)NL()\ - NOTRANS(@end iftex)NL()\ - NOTRANS(@setfilename )ARG1NL()\ - NOTRANS(@settitle )ARG2NL()\ - NOTRANS(@c %**end of header)NL()\ - NL()\ - NOTRANS(@ifinfo)NL()\ - NOTRANS(@set dsq '@:')NL()\ - NOTRANS(@set dsbq `@:`)NL()\ - NOTRANS(@end ifinfo)NL()\ - NOTRANS(@iftex)NL()\ - NOTRANS(@set dsq '{}')NL()\ - NOTRANS(@set dsbq `{}`)NL()\ - NOTRANS(@end iftex)NL()\ - NOTRANS(@ifinfo)NL()\ - NOTRANS(@dircategory Utilities)NL()\ - NOTRANS(@direntry)NL()\ - NOTRANS( * ZSH: (zsh). The Z Shell Manual.)NL()\ - NOTRANS(@end direntry)NL()\ - NOTRANS(@end ifinfo)NL()\ + NOTRANS(\input texinfo.tex)+NL()\ + NOTRANS(@c %**start of header)+NL()\ + NOTRANS(@iftex)+NL()\ + NOTRANS(@afourpaper)+NL()\ + NOTRANS(@setchapternewpage off)+NL()\ + NOTRANS(@end iftex)+NL()\ + NOTRANS(@setfilename )ARG1+NL()\ + NOTRANS(@settitle )ARG2+NL()\ + NOTRANS(@c %**end of header)+NL()\ + +NL()\ + NOTRANS(@ifinfo)+NL()\ + NOTRANS(@set dsq '@:')+NL()\ + NOTRANS(@set dsbq `@:`)+NL()\ + NOTRANS(@end ifinfo)+NL()\ + NOTRANS(@iftex)+NL()\ + NOTRANS(@set dsq '{}')+NL()\ + NOTRANS(@set dsbq `{}`)+NL()\ + NOTRANS(@end iftex)+NL()\ + NOTRANS(@ifinfo)+NL()\ + NOTRANS(@dircategory Utilities)+NL()\ + NOTRANS(@direntry)+NL()\ + NOTRANS( * ZSH: (zsh). The Z Shell Manual.)+NL()\ + NOTRANS(@end direntry)+NL()\ + NOTRANS(@end ifinfo)+NL()\ ) def(texiifinfo)(1)(\ - NOTRANS(@ifinfo)NL()\ + NOTRANS(@ifinfo)+NL()\ ARG1\ - NOTRANS(@end ifinfo)NL()\ + +NOTRANS(@end ifinfo)+NL()\ ) def(texiiftex)(1)(\ - NOTRANS(@iftex)NL()\ + NOTRANS(@iftex)+NL()\ ARG1\ - NOTRANS(@end iftex)NL()\ + +NOTRANS(@end iftex)+NL()\ ) def(texiifnottex)(1)(\ - NOTRANS(@ifnottex)NL()\ + NOTRANS(@ifnottex)+NL()\ ARG1\ - NOTRANS(@end ifnottex)NL()\ + +NOTRANS(@end ifnottex)+NL()\ ) def(texipage)(0)(\ @@ -117,19 +122,19 @@ def(chapter)(1)(\ NL()\ - NOTRANS(@chapter )ARG1NL()\ + NOTRANS(@chapter )ARG1+NL()\ NOTRANS(@noindent)\ ) def(sect)(1)(\ NL()\ - NOTRANS(@section )ARG1NL()\ + NOTRANS(@section )ARG1+NL()\ NOTRANS(@noindent)\ ) def(subsect)(1)(\ NL()\ - NOTRANS(@subsection )ARG1NL()\ + NOTRANS(@subsection )ARG1+NL()\ NOTRANS(@noindent)\ ) @@ -141,22 +146,22 @@ def(comment)(1)(\ USECHARTABLE(texicomment)\ NOTRANS(@c )ARG1\ - USECHARTABLE(standard)\ + +USECHARTABLE(standard)\ ) COMMENT(--- cross-references ---) -def(manref)(2)(man page ARG1LPAR()ARG2RPAR()) +def(manref)(2)(man page ARG1+LPAR()ARG2+RPAR()) def(zmanref)(1)(manref(ARG1)(1)) def(noderef)(1)(\ - NOTRANS(@ref{)ARG1NOTRANS(})\ + NOTRANS(@ref{)ARG1+NOTRANS(})\ ) COMMENT(--- lists ---) def(startitem)(0)(\ NOTRANS(@table @asis)\ - redef(ITEMX)(0)()\ + +redef(ITEMX)(0)()\ ) def(enditem)(0)(\ NOTRANS(@end table)\ @@ -164,11 +169,11 @@ def(item)(2)(\ NOTRANS(@item)ITEMX() ARG1\ ARG2\ - redef(ITEMX)(0)()\ + +redef(ITEMX)(0)()\ ) def(xitem)(1)(\ NOTRANS(@item)ITEMX() ARG1\ - redef(ITEMX)(0)(x)\ + +redef(ITEMX)(0)(x)\ ) def(startsitem)(0)(\ @@ -188,7 +193,7 @@ startitem()\ ) def(endlist)(0)(\ - NOTRANS(@item)NL()\ + NOTRANS(@item)+NL()\ enditem()\ ) def(list)(1)(\ @@ -196,7 +201,7 @@ ) def(startitemize)(0)(\ - NOTRANS(@itemize @bullet)NL()\ + NOTRANS(@itemize @bullet)+NL()\ ) def(enditemize)(0)(\ NOTRANS(@end itemize)\ @@ -216,19 +221,19 @@ def(nofill)(1)(\ USECHARTABLE(nofillchars)\ ARG1\ - USECHARTABLE(standard)\ + +USECHARTABLE(standard)\ ) def(example)(1)(\ - NOTRANS(@example)NL()\ + NOTRANS(@example)+NL()\ ARG1\ - NL()NOTRANS(@end example)\ + +NL()NOTRANS(@end example)\ ) def(indent)(1)(\ - NOTRANS(@quotation)NL()\ + NOTRANS(@quotation)+NL()\ ARG1\ - NL()NOTRANS(@end quotation)\ + +NL()NOTRANS(@end quotation)\ ) COMMENT(--- hyperlink menus ---) @@ -240,7 +245,7 @@ NOTRANS(@end menu)\ ) def(menu)(1)(\ - * ARG1NOTRANS(::)\ + * ARG1+NOTRANS(::)\ ) COMMENT(--- indices ---) @@ -269,4 +274,8 @@ NOTRANS(@vindex )ARG1\ ) +IFDEF(DECWSLEVEL)(\ +DECWSLEVEL()\ +)(\ ENDDEF()\ +)\ Index: Doc/Zsh/builtins.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/builtins.yo,v retrieving revision 1.83 diff -u -r1.83 builtins.yo --- Doc/Zsh/builtins.yo 18 Jan 2006 03:38:29 -0000 1.83 +++ Doc/Zsh/builtins.yo 17 Mar 2006 19:43:00 -0000 @@ -1212,7 +1212,7 @@ will print the line number of a command executed after it has run, while -example(TRAPDEBUG() { print $LINENO; }) +example(TRAPDEBUG+LPAR()RPAR() { print $LINENO; }) will always print the number zero. Index: Doc/Zsh/compsys.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/compsys.yo,v retrieving revision 1.185 diff -u -r1.185 compsys.yo --- Doc/Zsh/compsys.yo 7 Mar 2006 12:52:27 -0000 1.185 +++ Doc/Zsh/compsys.yo 17 Mar 2006 19:43:06 -0000 @@ -1308,7 +1308,8 @@ such specifications separated by spaces. The var(pattern) is a pattern that is to be used to generate filenames. -Any occurrence of the sequence `tt(%p)' is replaced by any pattern(s) +Any occurrence of the sequence `tt(%p)' is replaced by any +pattern+LPAR()s+RPAR() passed by the function calling tt(_files). Colons in the pattern must be preceded by a backslash to make them distinguishable from the colon before the var(tag). If more than one pattern is needed, the patterns @@ -2467,7 +2468,7 @@ can be completed without reference to the tt(urls) style. See the description in the function tt(_urls) itself -for more information (e.g. `tt(more $^fpath/_urls(N))'). +for more information (e.g. `tt(more $^fpath/_urls+LPAR()N+RPAR())'). ) kindex(use-cache, completion style) item(tt(use-cache))( @@ -3195,7 +3196,7 @@ arguments. For example, if tt(-a) takes an argument, with no tt(-s) `tt(-ab)' is considered as a single (unhandled) option; with tt(-s) tt(-ab) is an option with the argument `tt(b)'; with both tt(-s) -and tt(-w), tt(-ab) may be the option tt(-a) and the option(-b) with +and tt(-w), tt(-ab) may be the option tt(-a) and the option tt(-b) with arguments still to come. The option tt(-W) takes this a stage further: it is possible to Index: Doc/Zsh/contrib.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/contrib.yo,v retrieving revision 1.54 diff -u -r1.54 contrib.yo --- Doc/Zsh/contrib.yo 18 Dec 2005 20:12:29 -0000 1.54 +++ Doc/Zsh/contrib.yo 17 Mar 2006 19:43:08 -0000 @@ -1032,7 +1032,8 @@ example(print This line contains fan and fond) -and invoking tt(replace-pattern) with the source string `tt(f(?)n)' and +and invoking tt(replace-pattern) with the source string +`tt(f+LPAR()?+RPAR()n)' and the replacment string `tt(c\1r)' produces the not very useful line: example(print This line contains car and cord) Index: Doc/Zsh/expn.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/expn.yo,v retrieving revision 1.62 diff -u -r1.62 expn.yo --- Doc/Zsh/expn.yo 16 Feb 2006 20:24:09 -0000 1.62 +++ Doc/Zsh/expn.yo 17 Mar 2006 19:43:09 -0000 @@ -1507,7 +1507,8 @@ by `tt(#)' or `tt(##)'. Only the last match of the parenthesis is remembered: for example, in `tt([[ abab = (#b)([ab])# ]])', only the final `tt(b)' is stored in tt(match[1]). Thus extra parentheses may be necessary -to match the complete segment: for example, use `tt(X((ab|cd)#)Y)' to match +to match the complete segment: for example, use +`tt(X+LPAR()(ab|cd)#+RPAR()Y)' to match a whole string of either `tt(ab)' or `tt(cd)' between `tt(X)' and `tt(Y)', using the value of tt($match[1]) rather than tt($match[2]). @@ -1561,12 +1562,13 @@ correspond to `tt(^)' and `tt($)' in standard regular expressions. They are useful for matching path segments in patterns other than those in filename generation (where path segments are in any case treated -separately). For example, `tt(*((#s)|/)test((#e)|/)*)' matches a path -segment `tt(test)' in any of the following strings: tt(test), +separately). For example, `tt(*((#s)|/)test+LPAR()(#e)|/+RPAR()*)' matches +a path segment `tt(test)' in any of the following strings: tt(test), tt(test/at/start), tt(at/end/test), tt(in/test/middle). Another use is in parameter substitution; for example -`tt(${array/(#s)A*Z(#e)})' will remove only elements of an array which +`tt(${array/(#s)A*Z+LPAR()#e+RPAR()})' will remove only elements of an +array which match the complete pattern `tt(A*Z)'. There are other ways of performing many operations of this type, however the combination of the substitution operations `tt(/)' and `tt(//)' with the `tt((#s))' and `tt((#e))' flags @@ -1582,7 +1584,8 @@ A `tt(q)' and everything up to the closing parenthesis of the globbing flags are ignored by the pattern matching code. This is intended to support the use of glob qualifiers, see below. The result is that -the pattern `tt((#b)(*).c(#q.))' can be used both for globbing and for +the pattern `tt((#b)(*).c+LPAR()#q.+RPAR())' can be used both for globbing +and for matching against a string. In the former case, the `tt((#q.))' will be treated as a glob qualifier and the `tt((#b))' will not be useful, while in the latter case the `tt((#b))' is useful for backreferences and the @@ -1662,8 +1665,8 @@ tt(LPAR()#a1)tt(RPAR()cat)tt(LPAR()#a0)tt(RPAR()dog)tt(LPAR()#a1)tt(RPAR()fox) is equivalent. Note that the point at which an error is first found is the crucial one for establishing whether to use approximation; for example, -tt((#a1)abc(#a0)xyz) will not match tt(abcdxyz), because the error occurs -at the `tt(x)', where approximation is turned off. +tt((#a1)abc+LPAR()#a0+RPAR()xyz) will not match tt(abcdxyz), because the +error occurs at the `tt(x)', where approximation is turned off. Entire path segments may be matched approximately, so that `tt((#a1)/foo/d/is/available/at/the/bar)' allows one error in any path @@ -1871,7 +1874,7 @@ Typically var(cmd) will be the name of a shell function that contains the appropriate test. For example, -example(nt() { [[ $REPLY -nt $NTREF ]] } +example(nt+LPAR()RPAR() { [[ $REPLY -nt $NTREF ]] } NTREF=reffile ls -l *(+nt)) @@ -2032,7 +2035,7 @@ (but not those starting with a dot, since tt(GLOB_DOTS) is explicitly switched off) except for tt(lex.c), tt(lex.h), tt(parse.c) and tt(parse.h). -example(print b*.pro(#q:s/pro/shmo/)(#q.:s/builtin/shmiltin/)) +example(print b*.pro+LPAR()#q:s/pro/shmo/+RPAR()(#q.:s/builtin/shmiltin/)) demonstrates how colon modifiers and other qualifiers may be chained together. The ordinary qualifier `tt(.)' is applied first, then the colon Index: Doc/Zsh/files.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/files.yo,v retrieving revision 1.4 diff -u -r1.4 files.yo --- Doc/Zsh/files.yo 5 Aug 2002 12:33:28 -0000 1.4 +++ Doc/Zsh/files.yo 17 Mar 2006 19:43:09 -0000 @@ -15,7 +15,8 @@ Subsequent behaviour is modified by the tt(RCS) and tt(GLOBAL_RCS) options; the former affects all startup files, while the second only affects those in the tt(/etc) directory. If one of the options -is unset at any point, any subsequent startup file(s) of the corresponding +is unset at any point, any subsequent startup file+LPAR()s+RPAR() +of the corresponding type will not be read. It is also possible for a file in tt($ZDOTDIR) to re-enable tt(GLOBAL_RCS). Both tt(RCS) and tt(GLOBAL_RCS) are set by default. Index: Doc/Zsh/func.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/func.yo,v retrieving revision 1.11 diff -u -r1.11 func.yo --- Doc/Zsh/func.yo 2 Oct 2005 19:04:35 -0000 1.11 +++ Doc/Zsh/func.yo 17 Mar 2006 19:43:10 -0000 @@ -110,7 +110,7 @@ For example, suppose the autoload file tt(func) contains -example(func() { print This is func; } +example(func+LPAR()RPAR() { print This is func; } print func is initialized ) @@ -125,7 +125,7 @@ `tt(autoload -X)' within a shell function. For example, the following are equivalent: -example(myfunc() { +example(myfunc+LPAR()RPAR() { autoload -X } myfunc args...) @@ -203,7 +203,7 @@ plus the signal number. Hence the following causes the handler for tt(SIGINT) to print a message, then mimic the usual effect of the signal. -example(TRAPINT() { +example(TRAPINT+LPAR()RPAR() { print "Caught SIGINT, aborting." return $(( 128 + $1 )) }) @@ -239,7 +239,7 @@ function environment. Apart from the difference in calling procedure and the fact that the function form appears in lists of functions, the forms -example(TRAPNAL() { +example(TRAPNAL+LPAR()RPAR() { # code }) Index: Doc/Zsh/index.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/index.yo,v retrieving revision 1.3 diff -u -r1.3 index.yo --- Doc/Zsh/index.yo 22 May 2000 15:49:04 -0000 1.3 +++ Doc/Zsh/index.yo 17 Mar 2006 19:43:10 -0000 @@ -1,7 +1,7 @@ ifztexi(\ def(printindex)(2)(\ texipage()NL()\ - NOTRANS(@unnumbered) ARG1NL()\ + NOTRANS(@unnumbered) ARG1+NL()\ NL()\ NOTRANS(@printindex) ARG2\ )\ Index: Doc/Zsh/mod_mathfunc.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/mod_mathfunc.yo,v retrieving revision 1.3 diff -u -r1.3 mod_mathfunc.yo --- Doc/Zsh/mod_mathfunc.yo 15 Nov 2001 12:10:22 -0000 1.3 +++ Doc/Zsh/mod_mathfunc.yo 17 Mar 2006 19:43:10 -0000 @@ -8,7 +8,7 @@ evaluating mathematical formulae. The syntax agrees with normal C and FORTRAN conventions, for example, -example((( f = sin(0.3) ))) +example((( f = sin+LPAR()0.3+RPAR() ))) assigns the sine of 0.3 to the parameter f. @@ -33,8 +33,8 @@ The function tt(signgam) takes no arguments, and returns an integer, which is the C variable of the same name, as described in manref(gamma)(3). Note that it is therefore only useful immediately after a call to tt(gamma) or -tt(lgamma). Note also that `tt(signgam())' and `tt(signgam)' are distinct -expressions. +tt(lgamma). Note also that `tt(signgam+LPAR()RPAR)' and `tt(signgam)' are +distinct expressions. The following functions take two floating point arguments: tt(copysign), tt(fmod), tt(hypot), tt(nextafter). @@ -58,7 +58,8 @@ number between 0 and 1. It takes a single string optional argument. If the argument is not present, the random number seed is initialised by -three calls to the tt(rand(3)) function --- this produces the same random +three calls to the tt(rand+LPAR()3+RPAR()) function --- this produces the +same random numbers as the next three values of tt($RANDOM). If the argument is present, it gives the name of a scalar parameter where @@ -80,7 +81,8 @@ Assuming tt($seed) does not exist, it will be initialised by the first call. In the second call, the default seed is initialised; note, however, -that because of the properties of tt(rand()) there is a correlation between +that because of the properties of tt(rand+LPAR()RPAR()) there is a +correlation between the seeds used for the two initialisations, so for more secure uses, you should generate your own 12-byte seed. The third call returns to the same sequence of random numbers used in the first call, unaffected by the Index: Doc/Zsh/mod_zftp.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/mod_zftp.yo,v retrieving revision 1.3 diff -u -r1.3 mod_zftp.yo --- Doc/Zsh/mod_zftp.yo 1 Apr 2005 12:04:22 -0000 1.3 +++ Doc/Zsh/mod_zftp.yo 17 Mar 2006 19:43:10 -0000 @@ -112,8 +112,9 @@ mechanism, or error messages if the connection closes. There is no network overhead for this test. -The test is only supported on systems with either the tt(select(2)) or -tt(poll(2)) system calls; otherwise the message `tt(not +The test is only supported on systems with either the +tt(select+LPAR()2+RPAR()) or +tt(poll+LPAR()2+RPAR()) system calls; otherwise the message `tt(not supported on this system)' is printed instead. The tt(test) subcommand will automatically be called at the start of any @@ -496,6 +497,6 @@ information. On some operating systems, the control connection is not valid after a -fork(), so that operations in subshells, on the left hand side of a -pipeline, or in the background are not possible, as they should be. This -is presumably a bug in the operating system. +fork+LPAR()RPAR(), so that operations in subshells, on the left hand side +of a pipeline, or in the background are not possible, as they should be. +This is presumably a bug in the operating system. Index: Doc/Zsh/mod_zselect.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/mod_zselect.yo,v retrieving revision 1.3 diff -u -r1.3 mod_zselect.yo --- Doc/Zsh/mod_zselect.yo 1 Apr 2005 12:04:22 -0000 1.3 +++ Doc/Zsh/mod_zselect.yo 17 Mar 2006 19:43:10 -0000 @@ -40,7 +40,8 @@ always 1 for a timeout. The option `tt(-a) var(array)' indicates that tt(array) should be set to -indicate the file descriptor(s) which are ready. If the option is not +indicate the file descriptor+LPAR()s+RPAR() which are ready. If the option +is not given, the array tt(reply) will be used for this purpose. The array will contain a string similar to the arguments for tt(zselect). For example, @@ -51,11 +52,11 @@ operations. The option `tt(-A) var(assoc)' indicates that the associative array -tt(assoc) should be set to indicate the file descriptor(s) which are -ready. This option overrides the option tt(-a), nor will tt(reply) be -modified. The keys of tt(assoc) are the file descriptors, and the -corresponding values are any of the characters `tt(rwe)' to indicate the -condition. +tt(assoc) should be set to indicate the file descriptor+LPAR()s+LPAR() +which are ready. This option overrides the option tt(-a), nor will +tt(reply) be modified. The keys of tt(assoc) are the file descriptors, and +the corresponding values are any of the characters `tt(rwe)' to indicate +the condition. The command returns status 0 if some file descriptors are ready for reading. If the operation timed out, or a timeout of 0 was given and no Index: Doc/Zsh/options.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/options.yo,v retrieving revision 1.44 diff -u -r1.44 options.yo --- Doc/Zsh/options.yo 9 Mar 2006 18:13:47 -0000 1.44 +++ Doc/Zsh/options.yo 17 Mar 2006 19:43:12 -0000 @@ -315,8 +315,8 @@ Make globbing (filename generation) sensitive to case. Note that other uses of patterns are always sensitive to case. If the option is unset, the presence of any character which is special to filename generation -will cause case-insensitive matching. For example, tt(cvs(/)) can -match the directory tt(CVS) owing to the presence of the globbing flag +will cause case-insensitive matching. For example, tt(cvs+LPAR()/+RPAR()) +can match the directory tt(CVS) owing to the presence of the globbing flag (unless the option tt(BARE_GLOB_QUAL) is unset). ) pindex(CSH_NULL_GLOB) @@ -1039,7 +1039,7 @@ example(unsetopt localtraps trap - INT -fn() { setopt localtraps; trap '' INT; sleep 3; }) +fn+LPAR()RPAR() { setopt localtraps; trap '' INT; sleep 3; }) will restore normally handling of tt(SIGINT) after the function exits. ) Index: Doc/Zsh/tcpsys.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/tcpsys.yo,v retrieving revision 1.8 diff -u -r1.8 tcpsys.yo --- Doc/Zsh/tcpsys.yo 24 Apr 2005 18:38:04 -0000 1.8 +++ Doc/Zsh/tcpsys.yo 17 Mar 2006 19:43:13 -0000 @@ -202,8 +202,8 @@ If the parameter tt($TCP_OUTPUT) is a non-empty string and logging is enabled then the data sent to each session will be echoed to the log -file(s) with tt($TCP_OUTPUT) in front where appropriate, much in the manner -of tt($TCP_PROMPT). +file+LPAR()s+RPAR() with tt($TCP_OUTPUT) in front where appropriate, much +in the manner of tt($TCP_PROMPT). ) enditem() Index: Doc/Zsh/zftpsys.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/zftpsys.yo,v retrieving revision 1.10 diff -u -r1.10 zftpsys.yo --- Doc/Zsh/zftpsys.yo 6 Feb 2003 12:21:51 -0000 1.10 +++ Doc/Zsh/zftpsys.yo 17 Mar 2006 19:43:13 -0000 @@ -477,7 +477,7 @@ combined with the function tt(chpwd). In particular, a function of the form -example(chpwd() { +example(chpwd+LPAR()RPAR() { if [[ -n $ZFTP_USER ]]; then zftp_chpwd else Index: Doc/Zsh/zle.yo =================================================================== RCS file: /cvsroot/zsh/zsh/Doc/Zsh/zle.yo,v retrieving revision 1.49 diff -u -r1.49 zle.yo --- Doc/Zsh/zle.yo 28 Jan 2006 15:02:26 -0000 1.49 +++ Doc/Zsh/zle.yo 17 Mar 2006 19:43:17 -0000 @@ -482,7 +482,7 @@ for a failed read. example(if ztcp pwspc 2811; then tcpfd=$REPLY - handler() { + handler+LPAR()RPAR() { zle -I local line if ! read -r line <&$1; then @@ -774,7 +774,7 @@ of input. The following example puts the line editor into vi command mode when it starts up. -example(zle-line-init() { zle -K vicmd; } +example(zle-line-init+LPAR()RPAR() { zle -K vicmd; } zle -N zle-line-init) (The command inside the function sets the keymap directly; it is @@ -1776,7 +1776,7 @@ The following widget, tt(caps-lock), serves as an example. -example(self-insert-ucase() { +example(self-insert-ucase+LPAR()RPAR() { LBUFFER+=${(U)KEYS[-1]} } To access the latest news from CSR copy this link into a web browser: http://www.csr.com/email_sig.php