[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Groff] Why does tty-char.tmac not represent meaning?
From: |
Ingo Schwarze |
Subject: |
Re: [Groff] Why does tty-char.tmac not represent meaning? |
Date: |
Sun, 23 Jul 2017 21:01:06 +0200 |
User-agent: |
Mutt/1.6.2 (2016-07-01) |
Hi,
Werner LEMBERG wrote on Sat, Jun 24, 2017 at 09:42:00AM +0200:
> After a quick glance: LGTM. Thanks for working on this.
I just completed this work, handling national language characters
in the same way. Unless there are objections, it would be nice
if somebody with commit access could put it in.
After that, i will change mandoc to match.
For ease of reference, i'm appending the full rationale and the
complete patch to this mail.
Yours,
Ingo
----- 8< ----- schnipp ----- >8 ----- 8< ----- schnapp ----- >8 -----
Since there was positive feedback and no concerns raised, here is
an improved and completed version of the patch.
tty-char_symbols.patch
is a modified version of the original patch with exactly one
change: incorporating Doug McIlroy's suggestion to print "<nabla>"
for \(gr, to avoid possible confusion over the wording "gradient"
when it is used in a scalar product (div) or vector product (rot).
tty-char_letters.patch
addresses national language characters, using the same principle.
Some notes:
1. The bulk of the patch changes the representation of Greek
letters. Neither the old nor the new representation is adequate
for reading Greek text. You *really* have to use -Tutf8 for
Greek text. But the new representation makes mathematical
formulae intelligible.
2. \(ss is represented as simply "ss". As a native German speaker,
i can confirm that this is definitely the right thing to do,
and there is no reasonable alternative.
3. The Spanish inverted exclamation and question marks are
represented by the same characters in upright position.
While that will probably look strange to Spanish readers,
i can think of no better way, and i think everybody will
understand it. The current "i" and "c" is unintelligible.
4. Icelandic Eth is represented as "Dh", Thorn as "Th". If you
have a better idea, that's fine with me; i don't speak Icelandic,
so i may well be wrong in this respect.
tty-char_combined.patch
is a combination of both patches (appended below).
----- 8< ----- schnipp ----- >8 ----- 8< ----- schnapp ----- >8 -----
diff --git a/tmac/tty-char.tmac b/tmac/tty-char.tmac
index 93ca2b7c..943e454f 100644
--- a/tmac/tty-char.tmac
+++ b/tmac/tty-char.tmac
@@ -9,7 +9,8 @@
.\" - work with all of -Tascii, -Tlatin1, -Tutf8, and -Tcp1047.
.\" - work on devices that display only the last overstruck character
.\" as well as on devices that support overstriking
-.\" - represent the character's graphical shape (not its meaning)
+.\" - help understanding the character's meaning, only aiming to imitate
+.\" a particular graphical shape when that doesn't hinder understanding
.\"
.\" Note that the optical appearance of the definitions contained in this
.\" file is inferior compared to that of the replacement characters defined
@@ -30,70 +31,68 @@
.tty-char \[rn] \*[tty-rn]
.tty-char \[ua] \z|^
.tty-char \[da] \z|v
-.tty-char \[sc] S
+.tty-char \[sc] <section>
.tty-char \[ct] \z/c
-.tty-char \[dg] \z|-
-.tty-char \[dd] \z|=
-.tty-char \[ib] (\z=_
-.tty-char \[ip] \z=_)
-.tty-char \[sb] (=
-.tty-char \[sp] =)
-.tty-char \[if] oo
-.tty-char \[pt] oc
+.tty-char \[dg] <*>
+.tty-char \[dd] <**>
+.tty-char \[ib] <subset\~or\~equal>
+.tty-char \[ip] <superset\~or\~equal>
+.tty-char \[sb] <proper\~subset>
+.tty-char \[sp] <proper\~superset>
+.tty-char \[if] <infinity>
+.tty-char \[pt] <proportional\~to>
.tty-char \[es] {}
-.tty-char \[ca] (^)
-.tty-char \[cu] U
-.tty-char \[de] o
-.tty-char \[di] -:-
-.tty-char \[tdi] -:-
+.tty-char \[ca] <intersection>
+.tty-char \[cu] <union>
+.tty-char \[de] <degree>
+.tty-char \[di] /
+.tty-char \[tdi] /
.tty-char \[no] ~
.tty-char \[tno] ~
-.tty-char \[gr] \Z'\*[tty-rn]'V
-.tty-char \[is] \z'\z,I
-.tty-char \[mo] E
-.tty-char \[pd] a
-.tty-char \[sr] \e/
-.tty-char \[*C] \z_H
-.tty-char \[*D] \z_/\z_\e
-.tty-char \[*F] \zIO
-.tty-char \[*G] |\*[tty-rn]
-.tty-char \[*H] \z-O
-.tty-char \[*L] /\e
-.tty-char \[*P] TT
-.tty-char \[*Q] \zIY
-.tty-char \[*S] \z_\Z'\*[tty-rn]'>
-.tty-char \[*W] \z_O
-.if c\[ss] .tty-char \[*b] \[ss]
-.tty-char \[*b] B
-.tty-char \[*a] a
-.tty-char \[*c] \z,E
-.tty-char \[*d] d
-.tty-char \[*e] e
-.tty-char \[+e] e
-.tty-char \[*f] \z|o
-.tty-char \[+f] \z|o
-.tty-char \[*g] y
-.tty-char \[*h] \z-0
-.tty-char \[+h] \z-0
-.tty-char \[*i] i
-.tty-char \[*k] k
-.tty-char \[*l] \z>\e
-.tty-char \[*m] \z,u
-.tty-char \[*n] v
-.tty-char \[*p] \z-n
-.tty-char \[+p] \z-w
-.tty-char \[*q] \z|u
-.tty-char \[*r] p
-.tty-char \[*s] \z-o
-.tty-char \[*t] \z~t
-.tty-char \[*u] u
-.tty-char \[*w] w
-.tty-char \[*x] x
-.tty-char \[*y] n
-.tty-char \[*z] \z,C
-.tty-char \[ts] s
-.\" Definition of \[ss] should follow that of \[*b].
-.tty-char \[ss] B
+.tty-char \[gr] <nabla>
+.tty-char \[is] <integral>
+.tty-char \[mo] <element\~of>
+.tty-char \[pd] <del>
+.tty-char \[sr] <sqrt>
+.tty-char \[*C] <Xi>
+.tty-char \[*D] <Delta>
+.tty-char \[*F] <Phi>
+.tty-char \[*G] <Gamma>
+.tty-char \[*H] <Theta>
+.tty-char \[*L] <Lambda>
+.tty-char \[*P] <Pi>
+.tty-char \[*Q] <Psi>
+.tty-char \[*S] <Sigma>
+.tty-char \[*W] <Omega>
+.tty-char \[*b] <beta>
+.tty-char \[*a] <alpha>
+.tty-char \[*c] <xi>
+.tty-char \[*d] <delta>
+.tty-char \[*e] <epsilon>
+.tty-char \[+e] <epsilon>
+.tty-char \[*f] <phi>
+.tty-char \[+f] <phi>
+.tty-char \[*g] <gamma>
+.tty-char \[*h] <theta>
+.tty-char \[+h] <theta>
+.tty-char \[*i] <iota>
+.tty-char \[*k] <kappa>
+.tty-char \[*l] <lambda>
+.tty-char \[*m] <mu>
+.tty-char \[*n] <nu>
+.tty-char \[*p] <pi>
+.tty-char \[+p] <pi>
+.tty-char \[*q] <psi>
+.tty-char \[*r] <rho>
+.tty-char \[*s] <sigma>
+.tty-char \[*t] <tau>
+.tty-char \[*u] <upsilon>
+.tty-char \[*w] <omega>
+.tty-char \[*x] <chi>
+.tty-char \[*y] <eta>
+.tty-char \[*z] <zeta>
+.tty-char \[ts] <sigma>
+.tty-char \[ss] ss
.tty-char \[c*] \zO\[mu]
.tty-char \[c+] \zO+
.tty-char \[AN] ^
@@ -103,31 +102,31 @@
.if c\[md] .tty-char \[pc] \[md]
.if c\[pc] .tty-char \[md] \[pc]
.if c\[pc] .tty-char \[a.] \[pc]
-.tty-char \[Im] I
-.tty-char \[Re] R
+.tty-char \[Im] <Im>
+.tty-char \[Re] <Re>
.tty-char \[/L] \z/L
.tty-char \[/l] \z/l
-.tty-char \[%0] %o
+.tty-char \[%0] <permille>
.tty-char \[ao] o
.tty-char \[a"] """"
.tty-char \[ab] \z'`
.tty-char \[ah] v
.tty-char \[ho] \[ac]
-.tty-char \[/_] \z_/
+.tty-char \[/_] <angle>
.tty-char \[=~] =~
.tty-char \[|=] -~
-.tty-char \[Ah] N
-.tty-char \[CR] _|
-.tty-char \[fa] \z-V
-.tty-char \[nm] \z/E
-.tty-char \[pp] \z_|
+.tty-char \[Ah] <Aleph>
+.tty-char \[CR] <cr>
+.tty-char \[fa] <for\~all>
+.tty-char \[nm] <not\~element\~of>
+.tty-char \[pp] <perpendicular>
.tty-char \[sd] ''
-.tty-char \[st] -)
-.tty-char \[te] 3
+.tty-char \[st] <such\~that>
+.tty-char \[te] <there\~exists>
.if c\[md] .tty-char \[tf] .\[md].
-.tty-char \[tf] .:.
+.tty-char \[tf] <therefore>
.if c\[md] .tty-char \[3d] .\[md].
-.tty-char \[3d] .:.
+.tty-char \[3d] <therefore>
.tty-char \[wp] p
.tty-char \[~~] ~~
.tty-char \[Fn] \z,f
@@ -144,7 +143,7 @@
.tty-char \[lt] ,-
.tty-char \[rt] -.
.\" Latin characters
-.tty-char \[r!] \z,i
+.tty-char \[r!] !
.tty-char \[Po] \z-L
.tty-char \[Cs] \zox
.tty-char \[Ye] \z=Y
@@ -153,16 +152,16 @@
.tty-char \[Of] \z_a
.tty-char \[Fo] <<
.tty-char \[a-] \*[tty-rn]
-.tty-char \[S2] 2
-.tty-char \[S3] 3
-.tty-char \[ps] 9|
+.tty-char \[S2] ^2
+.tty-char \[S3] ^3
+.tty-char \[ps] <paragraph>
.tty-char \[md] .
.tty-char \[pc] .
.tty-char \[ac] ,
-.tty-char \[S1] 1
+.tty-char \[S1] ^1
.tty-char \[Om] \z_o
.tty-char \[Fc] >>
-.tty-char \[r?] \z'c
+.tty-char \[r?] ?
.tty-char \[`A] \z`A
.tty-char \['A] \z'A
.tty-char \[^A] \z^A
@@ -179,7 +178,7 @@
.tty-char \['I] \z'I
.tty-char \[^I] \z^I
.tty-char \[:I] \z"I
-.tty-char \[-D] \z-D
+.tty-char \[-D] Dh
.tty-char \[~N] \z~N
.tty-char \[`O] \z`O
.tty-char \['O] \z'O
@@ -192,7 +191,7 @@
.tty-char \[^U] \z^U
.tty-char \[:U] \z"U
.tty-char \['Y] \z'Y
-.tty-char \[TP] \zIb
+.tty-char \[TP] Th
.tty-char \[`a] \z`a
.tty-char \['a] \z'a
.tty-char \[^a] \z^a
@@ -209,7 +208,7 @@
.tty-char \['i] \z'i
.tty-char \[^i] \z^i
.tty-char \[:i] \z"i
-.tty-char \[Sd] \z`\z'o
+.tty-char \[Sd] dh
.tty-char \[~n] \z~n
.tty-char \[`o] \z`o
.tty-char \['o] \z'o
@@ -222,7 +221,7 @@
.tty-char \[^u] \z^u
.tty-char \[:u] \z"u
.tty-char \['y] \z'y
-.tty-char \[Tp] \zpb
+.tty-char \[Tp] th
.tty-char \[:y] \z"y
.\" for Turkish
.tty-char "\[G ab]" G
@@ -230,7 +229,7 @@
.tty-char "\[I .]" I
.\"tty-char \[:y] \ij
.tty-char \[arrowvertex] |
-.tty-char \[mc] \z,u
+.tty-char \[mc] <micro>
.cp \n[_C]
.
.ie '\*(.T'cp1047' \
- Re: [Groff] Why does tty-char.tmac not represent meaning?,
Ingo Schwarze <=