From: schwarze Date: Thu, 15 Jul 2010 20:04:35 +0000 (+0000) Subject: When the first argument or arguments of a macro are opening delimiters X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=68c43a93eac1d1e96f3b8ce1499ce1bdf3b65730;p=openbsd When the first argument or arguments of a macro are opening delimiters (parentheses and/or square brackets), both modern groff and mandoc first output those leading delimiters as plain text, then start the macro scope after these opening delimiters. This is similar to printing trailing punctuation and trailing closing delimiters on a macro line outside and after the macro scope. For example, ".Sq ( text )" is "(`text')", not "`(text)'". Thus, we now need to quote leading opening delimiters when we want them inside the macro scope. These are the cases in src/bin. "makes sense" jmc@ --- diff --git a/bin/csh/csh.1 b/bin/csh/csh.1 index 079470dc668..28495a509c1 100644 --- a/bin/csh/csh.1 +++ b/bin/csh/csh.1 @@ -1,4 +1,4 @@ -.\" $OpenBSD: csh.1,v 1.63 2010/01/10 10:53:33 jmc Exp $ +.\" $OpenBSD: csh.1,v 1.64 2010/07/15 20:04:35 schwarze Exp $ .\" $NetBSD: csh.1,v 1.10 1995/03/21 09:02:35 cgd Exp $ .\" .\" Copyright (c) 1980, 1990, 1993 @@ -30,7 +30,7 @@ .\" .\" @(#)csh.1 8.2 (Berkeley) 1/21/94 .\" -.Dd $Mdocdate: January 10 2010 $ +.Dd $Mdocdate: July 15 2010 $ .Dt CSH 1 .Os .Sh NAME @@ -214,7 +214,7 @@ The characters .Ql \&; , .Ql < , .Ql > , -.Ql ( , +.Ql \&( , and .Ql \&) form separate words. @@ -277,7 +277,7 @@ waiting for it to terminate by following it with a .Ql & . .Pp Any of the above may be placed in -.Ql ( +.Ql \&( .Ql \&) to form a simple command (that may be a component of a pipeline, for example). @@ -576,7 +576,7 @@ character is passed unchanged when it is followed by a blank, tab, newline, .Ql = or -.Ql ( . +.Ql \&( . (History substitutions also occur when an input line begins with .Ql ^ . This special abbreviation will be described later.) @@ -1105,7 +1105,7 @@ only part of a word, even if the command outputs a complete line. If a word contains any of the characters .Ql * , .Ql \&? , -.Ql [ , +.Ql \&[ , or .Ql { , or begins with the character @@ -1122,7 +1122,7 @@ Only the metacharacters .Ql * , .Ql \&? , and -.Ql [ +.Ql \&[ imply pattern matching, the characters .Ql ~ @@ -1431,7 +1431,7 @@ are syntactically significant to the parser .Ql | , .Ql < , .Ql > , -.Ql ( , +.Ql \&( , and .Ql \&) .Pc , @@ -2323,7 +2323,7 @@ or .Ql | then at least this part of the expression must be placed within -.Ql ( +.Ql \&( .Ql \&) . The third form assigns the value of .Ar expr diff --git a/bin/ksh/ksh.1 b/bin/ksh/ksh.1 index 0df0b61b94d..3b852493779 100644 --- a/bin/ksh/ksh.1 +++ b/bin/ksh/ksh.1 @@ -1,8 +1,8 @@ -.\" $OpenBSD: ksh.1,v 1.135 2010/07/12 16:26:45 jmc Exp $ +.\" $OpenBSD: ksh.1,v 1.136 2010/07/15 20:04:35 schwarze Exp $ .\" .\" Public Domain .\" -.Dd $Mdocdate: July 12 2010 $ +.Dd $Mdocdate: July 15 2010 $ .Dt KSH 1 .Os .Sh NAME @@ -211,7 +211,7 @@ characters (space, tab, and newline) or meta-characters .Ql \*(Gt , .Ql \*(Ba , .Ql \&; , -.Ql ( , +.Ql \&( , .Ql \&) , and .Ql & @@ -274,7 +274,7 @@ shell and must be quoted if they are to represent themselves: .Ql * , .Ql \&? , and -.Ql [ . +.Ql \&[ . The first three of these are the above mentioned quoting characters (see .Sx Quoting below); @@ -307,7 +307,7 @@ and finally, .Ql * , .Ql \&? , and -.Ql [ +.Ql \&[ are used in file name generation (see .Sx File name patterns below). @@ -496,7 +496,7 @@ and .Ql } are reserved words, not meta-characters. .It Xo case Ar word No in -.Oo Op ( +.Oo Op \&( .Ar \ pattern .Op \*(Ba Ar pattern .No ... No ) @@ -5157,7 +5157,7 @@ or follows one of the characters .Ql \&; , .Ql | , .Ql & , -.Ql ( , +.Ql \&( , or .Ql \&) , and does not contain a slash diff --git a/bin/ksh/sh.1 b/bin/ksh/sh.1 index c14bad901e8..8632519361d 100644 --- a/bin/ksh/sh.1 +++ b/bin/ksh/sh.1 @@ -1,8 +1,8 @@ -.\" $OpenBSD: sh.1,v 1.86 2010/07/12 16:26:45 jmc Exp $ +.\" $OpenBSD: sh.1,v 1.87 2010/07/15 20:04:35 schwarze Exp $ .\" .\" Public Domain .\" -.Dd $Mdocdate: July 12 2010 $ +.Dd $Mdocdate: July 15 2010 $ .Dt SH 1 .Os .Sh NAME @@ -182,7 +182,7 @@ characters (space, tab, and newline) or meta-characters .Ql \*(Gt , .Ql \*(Ba , .Ql \&; , -.Ql ( , +.Ql \&( , .Ql \&) , and .Ql & @@ -239,7 +239,7 @@ shell and must be quoted if they are to represent themselves: .Ql * , .Ql \&? , and -.Ql [ . +.Ql \&[ . The first three of these are the above mentioned quoting characters (see .Sx Quoting below); @@ -264,7 +264,7 @@ and finally, .Ql * , .Ql \&? , and -.Ql [ +.Ql \&[ are used in file name generation (see .Sx File name patterns below). @@ -447,7 +447,7 @@ and .Ql } are reserved words, not meta-characters. .It Xo case Ar word No in -.Oo Op ( +.Oo Op \&( .Ar \ pattern .Op \*(Ba Ar pattern .No ... No )