From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from sdaoden.eu (sdaoden.eu [217.144.132.164]) by fantadrom.bsd.lv (OpenSMTPD) with ESMTP id e5c1fa2e for ; Thu, 31 Mar 2016 12:11:12 -0500 (EST) Received: by sdaoden.eu (Postfix, from userid 1000) id BA9C116045; Thu, 31 Mar 2016 19:11:11 +0200 (CEST) Date: Thu, 31 Mar 2016 19:11:14 +0200 From: Steffen Nurpmeso To: Ingo Schwarze Cc: tech@mdocml.bsd.lv Subject: Re: Fwd: Small fixes for ssh.1 and ssh_config.5, OpenSSH_7.2p2 Message-ID: <20160331171114.eOBzGfOWc%steffen@sdaoden.eu> References: <20160329192536.QChwcJaIo%steffen@sdaoden.eu> <20160331162003.GF22000@athene.usta.de> In-Reply-To: <20160331162003.GF22000@athene.usta.de> Mail-Followup-To: tech@mdocml.bsd.lv, Ingo Schwarze User-Agent: s-nail v14.8.8-183-gdd8bc83 OpenPGP: id=95F382CE; url=https://www.sdaoden.eu/openpgp.pub X-Mailinglist: mdocml-tech Reply-To: tech@mdocml.bsd.lv Hallo Ingo, Ingo Schwarze wrote: |Steffen Nurpmeso wrote on Tue, Mar 29, 2016 at 09:25:36PM +0200: |> i've just recognized a syntax error in some OpenSSH manuals, | |That's not a syntax error. It cannot be one. The esacape sequence |"\&" can be used at any place where any other character can be used. |At the worst, it could be a semantic error, but it is not even that. I still haven't checked the OpenBSD version of OpenSSH, but i have seen your message on their ML (via Gmane) and there you correctly state what \& is far, it is used to avoid (mis)interpretation of "!". So it should be before that, not thereafter. |> and that mandoc falsely does the correct thing, if that is possible. | |Mandoc correctly does the correct thing. The CVS version now does. | |I'm also appending my response to your patch. That one i meant. Let's see.. |> -.Ic !\& Ns Ar command |> +.Ic \&! Ns Ar command |> -.Ic !\& Ns Ar command |> +.Ic \&! Ns Ar command |This patch is bogus. Both versions are completely correct. | |The purpose of escaping in this context is to prevent mdoc(7) |from treating the exclamation mark as a delimiter, which can |influence spacing and end of sentence detection. | |The mdoc(7) language treats the argument of an mdoc macro |as a delimiter if both of the following conditions hold: | | 1. The macro argument consists of exactly one input character. | 2. That character is anyone from the following set: | - opening delimiters: ([ | - middle delimiters: | | - closing delimiters: .,:;)]?! | |The usual way to escape an argument such that it isn't taken as |a delimiter is to add a zero-width space "\&" such that condition 1 |no longer holds. See the mdoc(7) manual, subsection "Delimiters", |for a full discussion. Later again. |I admit that i usually put the "\&" in front of the character rather |than after it, and so do the examples in the mdoc(7) manual. But Fantastic. |some people find it more intuitive to put the "\&" afterwards to |express that the character is not ending a sentence (i.e. is not a |delimiter). A bug. |I don't see the point in enforcing either style, it seems like |useless churn and wasted time. The visible flyspeck in the manuals of the portable version springs into the eye and drives you up the wall. Bah. Ciao, --steffen -- To unsubscribe send an email to tech+unsubscribe@mdocml.bsd.lv