groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Zero Width Space


From: Ingo Schwarze
Subject: Re: Zero Width Space
Date: Mon, 6 Jun 2022 07:55:00 +0200

Hi,

DJ Chase wrote on Sun, Jun 05, 2022 at 09:57:45PM +0000:
> On Sun Jun 5, 2022 at 1:09 PM EDT, Ingo Schwarze wrote:
>> Richard Morse wrote:

>>> How about "non-breaking escape"

>> That's much too broad since most escape sequences are non-breaking.

>>> or "non-printing escape" (not necessarily in that order of preference)?

>> That's also too broad for my taste; here are a few more escape
>> sequences that are non-printing and non-breaking unless i'm
>> missing something: \{ \} \F \f \H \k \M \m \R \S \s \z
>> The difference between \& and the others is that \& is a no-op
>> whereas the others all have some side effect.

> What about "input escape",

I wouldn't consider that helpful terminology.
I would define the term "escape sequence" as "a sequence of
input characters starting with the escape character, which is the
backslash by default."  Usually, every escape sequence is intended
to directly or indirectly affect output, just like any other roff
input including text lines, requests and macros.  In that sense,
every escape sequence is both an "input escape" and and "output
escape": Input and output are merely two complimentary aspects of
the behaviour of any escape sequence.  Even using \& usually intends
to influence output, for example suppress end-of-sentence spacing,
kerning, or ligature building.  So it is hardly more focussed on
the input side than other escape sequences.

> possibly with a comparing it to the intended
> purpose of the ASCII escape character?

I dislike that idea, too.  When i consider terminal control codes
or the use of the escape key in emacs(1) as examples, it seems
to me that the ASCII escape character compares more readily to
the roff(7) escape character (by default the backslash) than to
a complete escape sequence like "\&".  Even if you disregard that
aspect, the \& escape sequence significantly differs from the
ASCII escape character in two important aspects: it is often placed
*after* the thing it is meant to escape rather than before, and
while the ASCII escape character often gives special meaning to
ordinary characters, \& does about the opposite: It takes away
the special meaning that an input character (like '.') intrinsically
has and turns it into an ordinary character, makes it behave like
any other character that has no special meaning.

Yours,
  Ingo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]