CVS log for mandoc/eqn_html.c

[BACK] Up to [cvsweb.bsd.lv] / mandoc

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.19 / (download) - annotate - [select for diffs], Sun Mar 17 18:21:45 2019 UTC (5 years ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_6, HEAD
Changes since 1.18: +2 -1 lines
Diff to previous 1.18 (colored) to selected 1.8 (colored)

The header file "html.h" uses enum roff_tok,
so "roff.h" must be included before it.
Diff from bcallah@ tweaked by me;
he found the bug by compiling with pcc.

Revision 1.18 / (download) - annotate - [select for diffs], Thu Dec 13 05:23:38 2018 UTC (5 years, 3 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_5
Changes since 1.17: +2 -1 lines
Diff to previous 1.17 (colored) to selected 1.8 (colored)

Cleanup, no functional change:
No need to expose the eqn(7) syntax tree data structures everywhere.
Move them to their own include file, "eqn.h".
While here, delete the unused enum eqn_pilet.

Revision 1.17 / (download) - annotate - [select for diffs], Fri Jul 14 13:32:35 2017 UTC (6 years, 8 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_4, VERSION_1_14_3, VERSION_1_14_2
Changes since 1.16: +4 -1 lines
Diff to previous 1.16 (colored) to selected 1.8 (colored)

do not print <math class="eqn"><mrow></mrow></math> for empty .EQ;
issue reported by bentley@

Revision 1.16 / (download) - annotate - [select for diffs], Sat Jul 8 14:51:04 2017 UTC (6 years, 8 months ago) by schwarze
Branch: MAIN
Changes since 1.15: +3 -3 lines
Diff to previous 1.15 (colored) to selected 1.8 (colored)

1. Eliminate struct eqn, instead use the existing members
of struct roff_node which is allocated for each equation anyway.
2. Do not keep a list of equation parsers, one parser is enough.
Minus fifty lines of code, no functional change.

Revision 1.15 / (download) - annotate - [select for diffs], Wed Jul 5 15:03:27 2017 UTC (6 years, 8 months ago) by schwarze
Branch: MAIN
Changes since 1.14: +7 -4 lines
Diff to previous 1.14 (colored) to selected 1.8 (colored)

The EQN_LISTONE box type is pointless.
Simplify by just using EQN_LIST with expectargs = 1.
Noticed while investigating a bug report from bentley@.
No functional change.

Revision 1.14 / (download) - annotate - [select for diffs], Fri Jun 23 23:00:01 2017 UTC (6 years, 9 months ago) by schwarze
Branch: MAIN
Changes since 1.13: +15 -9 lines
Diff to previous 1.13 (colored) to selected 1.8 (colored)

Consistently treat character escape sequences as operators,
not as letters, even if their names contain letters.

This is certainly not perfect, but code to recognize that \(*a is
not an operator but a letter would need a huge table, or Unicode
character property support, which won't happen at this time.

Revision 1.13 / (download) - annotate - [select for diffs], Fri Jun 23 02:32:12 2017 UTC (6 years, 9 months ago) by schwarze
Branch: MAIN
Changes since 1.12: +50 -4 lines
Diff to previous 1.12 (colored) to selected 1.8 (colored)

Write text boxes as <mi>, <mn>, or <mo> as appropriate,
and write fontstyle or fontweight attributes where required.
Missing features reported by bentley@.

Revision 1.12 / (download) - annotate - [select for diffs], Tue Jun 20 17:24:35 2017 UTC (6 years, 9 months ago) by schwarze
Branch: MAIN
Changes since 1.11: +9 -9 lines
Diff to previous 1.11 (colored) to selected 1.8 (colored)

KNF: remove parentheses from switch case labels; no binary change

Revision 1.11 / (download) - annotate - [select for diffs], Tue Jan 17 01:47:51 2017 UTC (7 years, 2 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_1, VERSION_1_13
Changes since 1.10: +29 -35 lines
Diff to previous 1.10 (colored) to selected 1.8 (colored)

Simplify the usage of print_otag() by making it accept a variable
number of arguments.

Delete struct htmlpair and all the PAIR_*() macros.
Delete enum htmlattr, handle that in print_otag() instead.

Minus 190 lines of code; no functional change except better ordering
of attributes (class before style) in three cases.

Revision 1.10 / (download) - annotate - [select for diffs], Sun Oct 12 19:31:41 2014 UTC (9 years, 5 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_13_4, VERSION_1_13_3, VERSION_1_13_2
Changes since 1.9: +9 -5 lines
Diff to previous 1.9 (colored) to selected 1.8 (colored)

Improve error handling in the eqn(7) parser.
Get rid of the first fatal error, MANDOCERR_EQNSYNT.
In eqn(7), there is no need to be bug-compatible with groff, so there
is no need to abondon the whole equation in case of a syntax error.

In particular:
* Skip "back", "delim", "down", "fwd", "gfont", "gsize", "left",
  "right", "size", and "up" without arguments.
* Skip "gsize" and "size" with a non-numeric argument.
* Skip closing delimiters that are not open.
* Skip "above" outside piles.
* For diacritic marks and binary operators without a left operand,
  default to an empty box.
* Let piles and matrices take one argument rather than insisting
  on a braced list.  Let HTML output handle that, too.
* When rewinding, if the root box is guaranteed to match
  the termination condition, no error handling is needed.

Revision 1.9 / (download) - annotate - [select for diffs], Fri Oct 10 14:27:46 2014 UTC (9 years, 5 months ago) by schwarze
Branch: MAIN
Changes since 1.8: +10 -10 lines
Diff to previous 1.8 (colored)

Drop trailing whitespace, adjust a few indentations,
and update Copyright year while here; no code change.

Revision 1.8 / (download) - annotate - [selected], Fri Oct 10 08:44:24 2014 UTC (9 years, 5 months ago) by kristaps
Branch: MAIN
Changes since 1.7: +112 -145 lines
Diff to previous 1.7 (colored)

Re-write of eqn(7) parser and MathML output.
This adds parser-level support for the grammar described by the eqn
second-edition technical paper, "Typesetting Mathematics — User's Guide"
(Kernighan, Cherry).
The reason for this re-write is the grouping rules, which were not
possible given the existing implementation.
The re-write has also considerably simplified the HTML (and, if it ever
is completed, terminal) front-end.

Revision 1.7 / (download) - annotate - [select for diffs], Sun Sep 28 20:14:20 2014 UTC (9 years, 6 months ago) by kristaps
Branch: MAIN
Changes since 1.6: +8 -5 lines
Diff to previous 1.6 (colored) to selected 1.8 (colored)

Change "to" and "from" commands to use munder, mover, and munderover.

Revision 1.6 / (download) - annotate - [select for diffs], Sun Sep 28 14:06:09 2014 UTC (9 years, 6 months ago) by kristaps
Branch: MAIN
Changes since 1.5: +10 -1 lines
Diff to previous 1.5 (colored) to selected 1.8 (colored)

Crudely accomodate for matrices by way of adjacent tables.  We don't do this
nicely right now because eqn uses column ordering.
Also add from/to support and to support.

Revision 1.5 / (download) - annotate - [select for diffs], Sun Sep 28 13:34:15 2014 UTC (9 years, 6 months ago) by kristaps
Branch: MAIN
Changes since 1.4: +155 -27 lines
Diff to previous 1.4 (colored) to selected 1.8 (colored)

Support a decent subset of eqn(7) in MathML.
This has basic support for positions (under, sup, sub, sub/sup) and piles.
It *does not* support right-left grouping (among many other things), e.g.,

  a sub b over c sub d

Which it will interpret, for the time being, as

  a sub { b over { c sub d } }

instead of

  { a sub b } over { c sub d }

However, left-right grouping works fine.

Revision 1.4 / (download) - annotate - [select for diffs], Sun Aug 10 23:54:41 2014 UTC (9 years, 7 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_12_4, VERSION_1_12
Changes since 1.3: +3 -3 lines
Diff to previous 1.3 (colored) to selected 1.8 (colored)

Get rid of HAVE_CONFIG_H, it is always defined; idea from libnbcompat.
Include <sys/types.h> where needed, it does not belong in config.h.
Remove <stdio.h> from config.h; if it is missing somewhere, it should
be added, but i cannot find a *.c file where it is missing.

Revision 1.3 / (download) - annotate - [select for diffs], Sun Apr 20 16:46:04 2014 UTC (9 years, 11 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_13_1
Changes since 1.2: +5 -5 lines
Diff to previous 1.2 (colored) to selected 1.8 (colored)

KNF: case (FOO):  ->  case FOO:, remove /* LINTED */ and /* ARGSUSED */,
remove trailing whitespace and blanks before tabs, improve some indenting;
no functional change

Revision 1.2 / (download) - annotate - [select for diffs], Sun Jul 24 10:09:03 2011 UTC (12 years, 8 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_12_3, VERSION_1_12_2, VERSION_1_12_1, VERSION_1_12_0, VERSION_1_11_7, VERSION_1_11_6, VERSION_1_11_5
Changes since 1.1: +22 -30 lines
Diff to previous 1.1 (colored) to selected 1.8 (colored)

Tuned the initial eqn output, making it completely simple.  This
completes a full initial eqn system, so I'm tagging a release on it.

Revision 1.1 / (download) - annotate - [select for diffs], Sat Jul 23 22:57:13 2011 UTC (12 years, 8 months ago) by kristaps
Branch: MAIN
Diff to selected 1.8 (colored)

Flip on equation printing for -T[x]html.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb