Added TeX Mathematics Notation option
This commit is contained in:
parent
014b212e3e
commit
e86e7cfb42
12 changed files with 908 additions and 865 deletions
|
@ -413,8 +413,12 @@ VMETHOD_TYPE(COMMENTARY_TEXT_FOR_MTID, weave_format *wf, text_stream *OUT,
|
|||
void Formats::text_fragment(OUTPUT_STREAM, weave_target *wv, text_stream *fragment) {
|
||||
weave_format *wf = wv->format;
|
||||
TEMPORARY_TEXT(matter);
|
||||
int rv = FALSE;
|
||||
IMETHOD_CALL(rv, wf, PRESERVE_MATH_MODE_FOR_MTID, matter, fragment);
|
||||
int rv = TRUE;
|
||||
if (Str::eq_wide_string(
|
||||
Bibliographic::get_datum(wv->weave_web->md, I"TeX Mathematics Notation"), L"On")) {
|
||||
rv = FALSE;
|
||||
IMETHOD_CALL(rv, wf, PRESERVE_MATH_MODE_FOR_MTID, matter, fragment);
|
||||
}
|
||||
if (rv == FALSE) TeX::remove_math_mode(matter, fragment);
|
||||
else Str::copy(matter, fragment);
|
||||
VMETHOD_CALL(wf, COMMENTARY_TEXT_FOR_MTID, OUT, wv, matter);
|
||||
|
|
|
@ -367,3 +367,9 @@ the weave is to TeX, but a few very approximate attempts are made by Inweb
|
|||
so that the HTML version may also make sense. For example, |$x \leq y$| would
|
||||
be rendered in HTML as |x <= y|.
|
||||
|
||||
In some webs, this will be inconvenient, because the dollar sign is wanted
|
||||
for something else (such as money, or hexadecimal). So this feature can be
|
||||
deactivated by writing the following in the Contents section of a web:
|
||||
= (text as Inweb)
|
||||
TeX Mathematics Notation: Off
|
||||
=
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Inweb 7
|
||||
|
||||
v7-alpha.1+1A13 'Escape to Danger' (7 April 2020)
|
||||
v7-alpha.1+1A14 'Escape to Danger' (8 April 2020)
|
||||
|
||||
## About Inweb
|
||||
|
||||
|
|
1720
Tangled/inweb.c
1720
Tangled/inweb.c
File diff suppressed because it is too large
Load diff
|
@ -1,3 +1,3 @@
|
|||
Prerelease: alpha.1
|
||||
Build Date: 7 April 2020
|
||||
Build Number: 1A13
|
||||
Build Date: 8 April 2020
|
||||
Build Number: 1A14
|
||||
|
|
|
@ -663,7 +663,7 @@ impaired people.
|
|||
<span class="identifier">toc</span><span class="plain">);</span>
|
||||
|
||||
<span class="identifier">WRITE</span><span class="plain">(</span><span class="string">"<?xml version='1.0' encoding='utf-8'?>\n"</span><span class="plain">);</span>
|
||||
<span class="identifier">WRITE</span><span class="plain">(</span><span class="string">"<!DOCTYPE ncx PUBLIC \"-//NISO//DTD ncx 2005-1</span><span class="comment">EN\"\n");</span>
|
||||
<span class="identifier">WRITE</span><span class="plain">(</span><span class="string">"<!DOCTYPE ncx PUBLIC \"-</span><span class="comment">NISO//DTD ncx 2005-1//EN\"\n");</span>
|
||||
<span class="string">WRITE("</span><span class="plain"> \</span><span class="string">"http:</span><span class="comment">www.daisy.org/z3986/2005/ncx-2005-1.dtd\">\n");</span>
|
||||
<span class="string">WRITE("</span><span class="plain"><</span><span class="identifier">ncx</span><span class="plain"> </span><span class="identifier">xmlns</span><span class="plain">=\</span><span class="string">"http:</span><span class="comment">www.daisy.org/z3986/2005/ncx/\" version=\"2005-1\">\n");</span>
|
||||
|
||||
|
|
|
@ -268,11 +268,11 @@ of which are variadic and have to be written out the old-fashioned way:
|
|||
<span class="reserved">void</span><span class="plain"> </span><span class="functiontext">HTML::begin_head</span><span class="plain">(</span><span class="constant">OUTPUT_STREAM</span><span class="plain">, </span><span class="reserved">filename</span><span class="plain"> *</span><span class="identifier">CSS_file</span><span class="plain">) {</span>
|
||||
<span class="reserved">HTML_file_state</span><span class="plain"> *</span><span class="identifier">hs</span><span class="plain"> = </span><span class="functiontext">Streams::get_HTML_file_state</span><span class="plain">(</span><span class="identifier">OUT</span><span class="plain">);</span>
|
||||
<span class="reserved">if</span><span class="plain"> ((</span><span class="identifier">hs</span><span class="plain">) && (</span><span class="identifier">hs</span><span class="plain">-></span><span class="element">XHTML_flag</span><span class="plain">)) {</span>
|
||||
<span class="identifier">WRITE</span><span class="plain">(</span><span class="string">"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1</span><span class="comment">EN\" ");</span>
|
||||
<span class="identifier">WRITE</span><span class="plain">(</span><span class="string">"<!DOCTYPE html PUBLIC \"-</span><span class="comment">W3C//DTD XHTML 1.1//EN\" ");</span>
|
||||
<span class="string">WRITE("</span><span class="plain">\</span><span class="string">"http:</span><span class="comment">www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">\n");</span>
|
||||
<span class="string">HTML_OPEN_WITH("</span><span class="identifier">html</span><span class="string">", "</span><span class="identifier">xmlns</span><span class="plain">=\</span><span class="string">"http:</span><span class="comment">www.w3.org/1999/xhtml\"");</span>
|
||||
<span class="string">} else {</span>
|
||||
<span class="string">WRITE("</span><span class="plain"><!</span><span class="identifier">DOCTYPE</span><span class="plain"> </span><span class="identifier">html</span><span class="plain"> </span><span class="identifier">PUBLIC</span><span class="plain"> \</span><span class="string">"-//W3C//DTD HTML 4.01 Transitional</span><span class="comment">EN\" ");</span>
|
||||
<span class="string">WRITE("</span><span class="plain"><!</span><span class="identifier">DOCTYPE</span><span class="plain"> </span><span class="identifier">html</span><span class="plain"> </span><span class="identifier">PUBLIC</span><span class="plain"> \</span><span class="string">"-</span><span class="comment">W3C//DTD HTML 4.01 Transitional//EN\" ");</span>
|
||||
<span class="string">WRITE("</span><span class="plain">\</span><span class="string">"http:</span><span class="comment">www.w3.org/TR/html4/loose.dtd\">\n");</span>
|
||||
<span class="string">HTML_OPEN("</span><span class="identifier">html</span><span class="string">");</span>
|
||||
<span class="string">}</span>
|
||||
|
|
|
@ -108,6 +108,8 @@ convenient to store them directly here than to use a dictionary.
|
|||
<span class="identifier">bd</span><span class="plain"> = </span><span class="functiontext">Bibliographic::set_datum</span><span class="plain">(</span><span class="identifier">Wm</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"Declare Section Usage"</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"Off"</span><span class="plain">); </span><span class="identifier">bd</span><span class="plain">-></span><span class="element">on_or_off</span><span class="plain"> = </span><span class="constant">TRUE</span><span class="plain">;</span>
|
||||
<span class="identifier">bd</span><span class="plain"> = </span><span class="functiontext">Bibliographic::set_datum</span><span class="plain">(</span><span class="identifier">Wm</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"Namespaces"</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"Off"</span><span class="plain">); </span><span class="identifier">bd</span><span class="plain">-></span><span class="element">on_or_off</span><span class="plain"> = </span><span class="constant">TRUE</span><span class="plain">;</span>
|
||||
<span class="identifier">bd</span><span class="plain"> = </span><span class="functiontext">Bibliographic::set_datum</span><span class="plain">(</span><span class="identifier">Wm</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"Strict Usage Rules"</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"Off"</span><span class="plain">); </span><span class="identifier">bd</span><span class="plain">-></span><span class="element">on_or_off</span><span class="plain"> = </span><span class="constant">TRUE</span><span class="plain">;</span>
|
||||
<span class="identifier">bd</span><span class="plain"> = </span><span class="functiontext">Bibliographic::set_datum</span><span class="plain">(</span><span class="identifier">Wm</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"TeX Mathematics Notation"</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"On"</span><span class="plain">); </span><span class="identifier">bd</span><span class="plain">-></span><span class="element">on_or_off</span><span class="plain"> = </span><span class="constant">TRUE</span><span class="plain">;</span>
|
||||
<span class="identifier">bd</span><span class="plain"> = </span><span class="functiontext">Bibliographic::set_datum</span><span class="plain">(</span><span class="identifier">Wm</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"Code In Commentary Notation"</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"|"</span><span class="plain">);</span>
|
||||
<span class="identifier">bd</span><span class="plain"> = </span><span class="functiontext">Bibliographic::set_datum</span><span class="plain">(</span><span class="identifier">Wm</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"Web Syntax Version"</span><span class="plain">, </span><span class="identifier">NULL</span><span class="plain">);</span>
|
||||
<span class="plain">}</span>
|
||||
</pre>
|
||||
|
|
|
@ -76,7 +76,7 @@ each of which has a list of <code class="display"><span class="extract">section<
|
|||
|
||||
<p class="inwebparagraph"></p>
|
||||
|
||||
<p class="endnote">The structure web is accessed in 1/pc, 1/ptt, 2/tp, 2/pn, 3/ta, 3/ts, 3/ti, 3/tw, 3/tt, 4/pl, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 6/mkf, 6/rw and here.</p>
|
||||
<p class="endnote">The structure web is accessed in 1/pc, 1/ptt, 2/tp, 2/pn, 3/ta, 3/ts, 3/ti, 3/tw, 3/tt, 4/pl, 4/cl, 4/is, 5/wf, 5/ptf, 5/tf, 5/hf, 6/mkf, 6/rw and here.</p>
|
||||
|
||||
<p class="inwebparagraph"><a id="SP2"></a><b>§2. </b>And for a chapter:
|
||||
</p>
|
||||
|
@ -96,7 +96,7 @@ each of which has a list of <code class="display"><span class="extract">section<
|
|||
|
||||
<p class="inwebparagraph"></p>
|
||||
|
||||
<p class="endnote">The structure chapter is accessed in 1/pc, 1/ptt, 2/tp, 2/pn, 3/ta, 3/ts, 3/ti, 3/tw, 3/tt, 4/pl, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 6/mkf, 6/rw and here.</p>
|
||||
<p class="endnote">The structure chapter is accessed in 1/pc, 1/ptt, 2/tp, 2/pn, 3/ta, 3/ts, 3/ti, 3/tw, 3/tt, 4/pl, 4/cl, 4/is, 5/wf, 5/ptf, 5/tf, 5/hf, 6/mkf, 6/rw and here.</p>
|
||||
|
||||
<p class="inwebparagraph"><a id="SP3"></a><b>§3. </b>And lastly for a section.
|
||||
</p>
|
||||
|
@ -134,7 +134,7 @@ each of which has a list of <code class="display"><span class="extract">section<
|
|||
|
||||
<p class="inwebparagraph"></p>
|
||||
|
||||
<p class="endnote">The structure section is accessed in 1/pc, 1/ptt, 2/tp, 2/pm, 2/tgs, 2/pn, 3/ta, 3/ts, 3/ti, 3/tw, 3/tt, 4/pl, 4/lm, 4/as, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 6/mkf, 6/rw and here.</p>
|
||||
<p class="endnote">The structure section is accessed in 1/pc, 1/ptt, 2/tp, 2/pm, 2/tgs, 2/pn, 3/ta, 3/ts, 3/ti, 3/tw, 3/tt, 4/pl, 4/lm, 4/as, 4/cl, 4/is, 5/wf, 5/ptf, 5/tf, 5/hf, 6/mkf, 6/rw and here.</p>
|
||||
|
||||
<p class="inwebparagraph"><a id="SP4"></a><b>§4. </b>The following routine makes the <code class="display"><span class="extract">web</span></code>-<code class="display"><span class="extract">chapter</span></code>-<code class="display"><span class="extract">section</span></code> tree out of a
|
||||
<code class="display"><span class="extract">web_md</span></code>-<code class="display"><span class="extract">chapter_md</span></code>-<code class="display"><span class="extract">section_md</span></code> tree:
|
||||
|
|
|
@ -648,8 +648,12 @@ format does, because it wants to keep the formulae in all their glory.)
|
|||
<span class="reserved">void</span><span class="plain"> </span><span class="functiontext">Formats::text_fragment</span><span class="plain">(</span><span class="constant">OUTPUT_STREAM</span><span class="plain">, </span><span class="reserved">weave_target</span><span class="plain"> *</span><span class="identifier">wv</span><span class="plain">, </span><span class="reserved">text_stream</span><span class="plain"> *</span><span class="identifier">fragment</span><span class="plain">) {</span>
|
||||
<span class="reserved">weave_format</span><span class="plain"> *</span><span class="identifier">wf</span><span class="plain"> = </span><span class="identifier">wv</span><span class="plain">-></span><span class="element">format</span><span class="plain">;</span>
|
||||
<span class="identifier">TEMPORARY_TEXT</span><span class="plain">(</span><span class="identifier">matter</span><span class="plain">);</span>
|
||||
<span class="reserved">int</span><span class="plain"> </span><span class="identifier">rv</span><span class="plain"> = </span><span class="constant">FALSE</span><span class="plain">;</span>
|
||||
<span class="identifier">IMETHOD_CALL</span><span class="plain">(</span><span class="identifier">rv</span><span class="plain">, </span><span class="identifier">wf</span><span class="plain">, </span><span class="constant">PRESERVE_MATH_MODE_FOR_MTID</span><span class="plain">, </span><span class="identifier">matter</span><span class="plain">, </span><span class="identifier">fragment</span><span class="plain">);</span>
|
||||
<span class="reserved">int</span><span class="plain"> </span><span class="identifier">rv</span><span class="plain"> = </span><span class="constant">TRUE</span><span class="plain">;</span>
|
||||
<span class="reserved">if</span><span class="plain"> (</span><span class="functiontext">Str::eq_wide_string</span><span class="plain">(</span>
|
||||
<span class="functiontext">Bibliographic::get_datum</span><span class="plain">(</span><span class="identifier">wv</span><span class="plain">-></span><span class="element">weave_web</span><span class="plain">-></span><span class="element">md</span><span class="plain">, </span><span class="identifier">I</span><span class="string">"TeX Mathematics Notation"</span><span class="plain">), </span><span class="identifier">L</span><span class="string">"On"</span><span class="plain">)) {</span>
|
||||
<span class="identifier">rv</span><span class="plain"> = </span><span class="constant">FALSE</span><span class="plain">;</span>
|
||||
<span class="identifier">IMETHOD_CALL</span><span class="plain">(</span><span class="identifier">rv</span><span class="plain">, </span><span class="identifier">wf</span><span class="plain">, </span><span class="constant">PRESERVE_MATH_MODE_FOR_MTID</span><span class="plain">, </span><span class="identifier">matter</span><span class="plain">, </span><span class="identifier">fragment</span><span class="plain">);</span>
|
||||
<span class="plain">}</span>
|
||||
<span class="reserved">if</span><span class="plain"> (</span><span class="identifier">rv</span><span class="plain"> == </span><span class="constant">FALSE</span><span class="plain">) </span><span class="functiontext">TeX::remove_math_mode</span><span class="plain">(</span><span class="identifier">matter</span><span class="plain">, </span><span class="identifier">fragment</span><span class="plain">);</span>
|
||||
<span class="reserved">else</span><span class="plain"> </span><span class="functiontext">Str::copy</span><span class="plain">(</span><span class="identifier">matter</span><span class="plain">, </span><span class="identifier">fragment</span><span class="plain">);</span>
|
||||
<span class="identifier">VMETHOD_CALL</span><span class="plain">(</span><span class="identifier">wf</span><span class="plain">, </span><span class="constant">COMMENTARY_TEXT_FOR_MTID</span><span class="plain">, </span><span class="identifier">OUT</span><span class="plain">, </span><span class="identifier">wv</span><span class="plain">, </span><span class="identifier">matter</span><span class="plain">);</span>
|
||||
|
|
|
@ -529,6 +529,15 @@ so that the HTML version may also make sense. For example, <code class="display"
|
|||
be rendered in HTML as <code class="display"><span class="extract">x <= y</span></code>.
|
||||
</p>
|
||||
|
||||
<p class="inwebparagraph">In some webs, this will be inconvenient, because the dollar sign is wanted
|
||||
for something else (such as money, or hexadecimal). So this feature can be
|
||||
deactivated by writing the following in the Contents section of a web:
|
||||
</p>
|
||||
|
||||
<pre class="display">
|
||||
<span class="element">TeX Mathematics Notation</span><span class="plain">:</span><span class="string"> Off</span>
|
||||
</pre>
|
||||
|
||||
<p class="inwebparagraph"></p>
|
||||
|
||||
<hr class="tocbar">
|
||||
|
|
|
@ -67,6 +67,8 @@ void Bibliographic::initialise_data(web_md *Wm) {
|
|||
bd = Bibliographic::set_datum(Wm, I"Declare Section Usage", I"Off"); bd->on_or_off = TRUE;
|
||||
bd = Bibliographic::set_datum(Wm, I"Namespaces", I"Off"); bd->on_or_off = TRUE;
|
||||
bd = Bibliographic::set_datum(Wm, I"Strict Usage Rules", I"Off"); bd->on_or_off = TRUE;
|
||||
bd = Bibliographic::set_datum(Wm, I"TeX Mathematics Notation", I"On"); bd->on_or_off = TRUE;
|
||||
bd = Bibliographic::set_datum(Wm, I"Code In Commentary Notation", I"|");
|
||||
bd = Bibliographic::set_datum(Wm, I"Web Syntax Version", NULL);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue