ChangeLog revision 272461
12005-09-04 Werner LEMBERG <wl@gnu.org> 2 3 * tmac/groff_ms.man, doc/groff.texinfo: Synchronize. 4 5 * doc/webpage.ms: Updated. 6 7 * install-sh, mkinstalldirs: New versions; taken from texinfo CVS. 8 92005-09-04 J�rgen Grahn <jgrahn@algonet.se> 10 11 * tmac/groff_ms.man: Document `PO' better. 12 132005-09-03 Werner LEMBERG <wl@gnu.org> 14 15 * NEWS: Document grotty changes. 16 172005-09-01 Keith Marshall <keith.d.marshall@ntlworld.com> 18 19 Backward compatibility support for `man' program. 20 21 * tmac/an-old.tmac (LL): Initialize it to respect prior LL register 22 assignment, prior `.ll' request and then package defaults, in this 23 specified order of decreasing priority. 24 25 * tmac/groff_man.man, doc/groff.texinfo: Document altered `LL' 26 register initialization priorities. 27 282005-08-29 Gary W. Swearingen <garys@opusnet.com> 29 30 * tmac/groff_mdoc.man: Go into more details how the `AUTHORS' 31 section should look like. 32 332005-08-29 Werner LEMBERG <wl@gnu.org> 34 35 * tmac/groff_mdoc.man: The month's name in a call to .Dd shouldn't 36 be abbreviated. 37 382005-08-27 Bernd Warken 39 40 * tmac/groff_man.man: Add man(7) too SEE ALSO and more minor 41 fixes. 42 432005-08-11 Bernd Warken 44 45 * tmac/www.tmac (URL, MTO): Handle empty \\$1 better. 46 472005-08-09 Bernd Warken 48 49 * tmac/www.tmac (URL, MTO): Use bold series if color support is 50 deactivated. 51 522005-08-02 Bernd Warken 53 54 * doc/Makefile.sub (uninstall_sub): Use --remove, not --delete 55 as argument to $(INSTALL_INFO). The latter isn't portable. 56 Remove $(HTMLEXAMPLEFILES) too. 57 58 * Makefile.in (uninstall_dirs): Remove $(datadir)/doc/groff and 59 $(datadir)/doc too. 60 Suppress warning messages and return always true. 61 62 * tmac/Makefile.sub (uninstall_sub): Remove www.tmac too. 63 642005-07-02 Bernd Warken 65 66 * src/devices/xditview/gxditview.man: Change many `.I' to `.B'. 67 * man/groff_out.man: More markup and minor improvements. 68 * src/roff/groff/groff.man: Minor improvements. 69 702005-06-28 Werner LEMBERG <wl@gnu.org> 71 72 * ChangeLog: Split off older entries into... 73 * ChangeLog.115 ChangeLog.116, ChangeLog.117, ChangeLog.118: New 74 files. 75 762005-06-26 Bernd Warken 77 78 * src/devices/xditview/gxditview.man: More minor fixes. 79 802005-06-24 Werner LEMBERG <wl@gnu.org> 81 82 * src/preproc/pic/troff.cpp (troff_output::set_fill, 83 troff_output::set_color, troff_output::reset_color): Use .bcolor and 84 .fcolor instead of \m and \M, respectively. 85 862005-06-23 Bernd Warken 87 88 * src/devices/xditview/gxditview.man: More minor fixes. 89 * README: Formatting issues. 90 Mention some problems with Debian. 91 922005-06-23 Bernd Warken 93 94 * src/devices/xditview/gxditview.man: Revised and improved. 95 962005-06-22 Werner LEMBERG <wl@gnu.org> 97 98 Another round in fixing getopt problems. Hopefully the last one! 99 This time we use the getopt stuff from gnulib and define a prefix 100 unconditionally so that there are no collisions with any other 101 getopt implementations. This is a slight waste of space in case 102 we already use a GNU getopt implementation, but on 103 the other hand it really simplifies life. 104 105 * src/include/getopt.h: Use gnulib version. 106 107 * src/include/getopt_int.h: Use gnulib version. 108 109 * src/include/groff-getopt.h: Removed. Obsolete now. 110 111 * src/include/lib.h: Regarding getopt, don't handle any platform 112 specially; just include getopt.h. 113 (__GETOPT_PREFIX): Define (before getopt.h). 114 115 * src/include/Makefile.sub (HDRS): Updated. 116 117 * src/libs/libgroff/getopt1.c, src/libs/libgroff/getopt.c: Use 118 gnulib version. 119 120 * src/libs/libgroff/Makefile.sub (EXTRA_CFLAGS): Set 121 __GETOPT_PREFIX. 122 123 * src/utils/pfbtops/pfbtops.c, src/utils/xtotroff/xtotroff.c 124 (__GETOPT_PREFIX): Define (before getopt.h). 125 1262005-06-21 Werner LEMBERG <wl@gnu.org> 127 128 * src/include/lib.h: Provide a fix for Mac OS X to not include 129 groff-getopt.h. 130 1312005-06-20 Denis M. Wilson <dmw@oxytropis.plus.com> 132 133 * font/devps/prologue.ps (EP): Dont' use `bind'. Reason: Using 134 `bind' to define a procedure which contains `showpage' means that an 135 invocation of `showpage' may execute wrongly (the exact effect 136 depending on the interpreter). Not usually a problem except under 137 transformations, such as combining pages. 138 (PEND): Don't call `clear'. Reason: Using `clear' in the definition 139 of /PEND means that stack underflow will occur if the stack is 140 deliberately non-empty before document inclusion. If included 141 files are found to be generally badly behaved, we could replace the 142 `clear' with `mark' in /PBEGIN and `cleartomark' in /PEND (I've 143 never found this necessary). 144 1452005-06-20 J�rgen Grahn <jgrahn@algonet.se> 146 147 * src/preproc/soelim/soelim.cpp (do_file): Append trailing zero 148 earlier to get correct error message. 149 1502005-06-16 Bernd Warken 151 * src/roff/nroff/nroff.sh: Add support for iso-8859-15. 152 1532005-06-15 Werner LEMBERG <wl@gnu.org> 154 155 Another try to update getopt files. This time we add a dummy 156 gettext.h file to satisfy the dependency. 157 158 * src/include/getopt.h, src/libs/libgroff/getopt.c, 159 src/libs/libgroff/getopt1.c: Updated from GNU libc CVS. 160 161 * src/include/getopt_int.h: New file (from GNU libc CVS). 162 163 * src/include/gettext.h: Dummy file which just defines a gettext() 164 macro. 165 166 * src/include/groff-getopt.h: Updated. 167 168 * src/include/Makefile.sub (HDRS): Add getopt_int.h and gettext.h. 169 170 171 * src/libs/libdriver/input.cpp (IntArray): Remove superfluous 172 `const' keywords in return value. 173 174 * src/preproc/html/pushback.cpp (pushBackBuffer::~pushBackBuffer): 175 Remove redundant variable `old'. 176 (pushBackBuffer::skipToNewline): Remove redundant variable `ch'. 177 178 * src/preproc/tbl/main.cpp (process_table): Remove redundant 179 variable `c'. 180 181 182 Fix more friend name injection problems since modern C++ compilers 183 fail otherwise. We simply provide (global) declarations for all 184 functions declared as friends. This is not really necessary but 185 doesn't harm. 186 187 * src/preproc/eqn/lex.cpp: Provide declarations for get_char, 188 peek_char, and get_location. 189 190 * src/preproc/refer/ref.h: Provide declarations for 191 compare_reference, same_reference, same_year, same_date, 192 same_author_last_name, and same_author_name. 193 194 * src/roff/troff/div.h: Provide declarations for do_divert and 195 page_offset. 196 197 * src/roff/troff/env.h: Provide declarations for title_length, 198 space_size, fill, no_fill, adjust, no_adjust, center, right_justify, 199 vertical_spacing, post_vertical_spacing, line_spacing, line_length, 200 indent, temporary_indent, do_underline, do_input_trap, set_tabs, 201 margin_character, no_number, number_lines, leader_character, 202 tab_character, hyphenate_request, no_hyphenate, 203 hyphen_line_max_request, hyphenation_space_request, 204 hyphenation_margin_request, line_width, tabs_save, tabs_restore, 205 line_tabs_request, widow_control_request, and do_divert. 206 207 * src/roff/troff/input.cpp: Provide declaration for chop_macro. 208 209 * src/roff/troff/node.cpp: Provide declarations for class 210 tfont_spec. 211 Provide declaration for make_tfont. 212 2132005-05-29 Werner LEMBERG <wl@gnu.org> 214 215 * doc/fdl.texi: Updated to version 1.2. Reported by Bernd Warken. 216 2172005-05-28 Werner LEMBERG <wl@gnu.org> 218 219 * contrib/pdfmark/Makefile.sub (.ms.pdf): Use `--stylesheet', not 220 `--style'. 221 222 * src/devices/grolbp/lbp.cpp, src/devices/grolbp/lbp.h: Remove 223 redundant semicolons. 224 225 * src/preproc/eqn/Makefile.sub, src/preproc/html/Makefile.sub, 226 src/preproc/soelim/Makefile.sub, src/preproc/tbl/Makefile.sub: 227 Define `MLIB'. Some compilers need this for linking with libgroff. 228 2292005-05-27 Werner LEMBERG <wl@gnu.org> 230 231 * MANIFEST, README, doc/webpage.ms: Updated. 232 2332005-05-26 Werner LEMBERG <wl@gnu.org> 234 235 * All affected files: Update postal address of FSF. 236 2372005-05-25 Keith Marshall <keith.d.marshall@ntlworld.com> 238 Bernd Warken 239 240 * README: More fixes. 241 242 * README.CVS: Removed. Its contents is now part of the README file. 243 2442005-05-21 Werner LEMBERG <wl@gnu.org> 245 246 * README: Updated. Based on a patch from Bernd Warken. 247 2482005-05-16 Keith Marshall <keith.d.marshall@ntlworld.com> 249 250 Miscellaneous script portability enhancements. 251 252 * aclocal.m4: (GROFF_CSH_HACK): Add space in shebang prototype for 253 generated conftest.sh script, conforming to portability 254 recommendation in autoconf docs. 255 * configure: Likewise, for code generated by GROFF_CSH_HACK. 256 * contrib/eqn2graph/eqn2graph.sh: Add space in shebang, conforming 257 to portability recommendation in autoconf docs. 258 * contrib/gdiffmk/gdiffmk.sh: Likewise. 259 * contrib/gdiffmk/tests/runtests.in: Likewise. 260 * contrib/grap2graph/grap2graph.sh: Likewise. 261 * contrib/groffer/groffer.sh: Likewise. 262 * contrib/mm/mmroff.pl: Likewise. 263 * contrib/mom/momdoc/appendices.html: Likewise. 264 * contrib/pic2graph/pic2graph.sh: Likewise. 265 * font/devps/generate/afmname: Likewise. 266 * src/devices/xditview/ad2c: Likewise. 267 * src/preproc/eqn/neqn.sh: Likewise. 268 * src/roff/grog/grog.pl: Likewise. 269 * src/roff/grog/grog.sh: Likewise. 270 * src/roff/nroff/nroff.sh: Likewise. 271 * PROBLEMS: Likewise, in embedded script examples. 272 2732005-05-16 Keith Marshall <keith.d.marshall@ntlworld.com> 274 275 Improve portability of `pdfroff' shell script. 276 277 * arch/misc/shdeps.sh: Add space in shebang, conforming to 278 portability guidelines in `autoconf' docs. 279 (PATH_SEARCH_SETUP): New substitution; emits PATH_SEPARATOR 280 initialization code. Used by contrib/pdfmark/pdfroff.sh's 281 `searchpath' function. 282 2832005-05-14 Werner LEMBERG <wl@gnu.org> 284 285 * contrib/pic2graph/pic2graph.sh, contrib/graph2graph.sh, 286 contrib/eqn2graph.sh: Add option `-trim' to `convert' which is 287 needed for newer ImageMagick versions. 288 2892005-05-07 Werner LEMBERG <wl@gnu.org> 290 291 * src/preproc/refer/refer.man: Many small typographic fixes. 292 2932005-05-06 Jeff Conrad <jeff_conrad@msn.com> 294 295 * src/devices/grohtml/post-html.cpp (assert_state::~assert_state): 296 Use `char *' cast for a_delete. 297 2982005-05-03 Werner LEMBERG <wl@gnu.org> 299 300 * src/libs/libgroff/maxpathname.cpp: Include stdlib.h. 301 src/libs/libgroff/relocate.cpp: Use path_name_max everywhere. 302 3032005-05-03 Jeff Conrad <jeff_conrad@msn.com> 304 305 * src/devices/grohtml/post-html.cpp: Use casts to `char *' if using 306 `a_delete' for `const char *'. 307 3082005-05-03 Werner LEMBERG <wl@gnu.org> 309 310 * src/devices/grohtml/post-html.cpp, 311 src/devices/grohtml/html-table.cpp, 312 src/devices/grohtml/html-text.cpp, src/devices/grohtml/output.cpp: 313 Replace malloc/free with new/delete/a_delete. 314 315 * src/devices/grolbp/lbp.h: Remove superfluous semicolons which 316 are prohibited with ANSI C++. 317 (lbpprintf, vdmprintf): Remove useless `inline' keyword (since the 318 function has a variable number of arguments). 319 320 * src/preproc/grn/main.cpp (doinput): Change return type to `int'. 321 Simplify function and update all callers. 322 3232005-05-02 Werner LEMBERG <wl@gnu.org> 324 325 Undo getopt changes from 2005-04-30. We don't want a dependency 326 on gettext. 327 328 * src/include/getopt_int.h: Removed. 329 330 * src/include/getopt.h, src/include/groff-getopt.h, 331 src/include/Makefile.sub, src/libs/libgroff/getopt.c, 332 src/libs/libgroff/getopt1.c: Revert to previous version. 333 334 335 * src/include/nonposix.h (access) [_MSC_VER]: New macro. 336 337 * src/include/posix.h (F_OK): Define conditionally. 338 339 * src/devices/grotty/tty.cpp (tty_printer::make_underline): Use 340 different variable name in second `for' loop to avoid MSVC compiler 341 problem. 342 3432005-04-30 Werner LEMBERG <wl@gnu.org> 344 345 AC_TYPE_SIGNAL from current autoconf can fail if CC=g++. 346 347 * aclocal.m4 (GROFF_TYPE_SIGNAL): New function. 348 * configure.ac: Use GROFF_TYPE_SIGNAL, not AC_TYPE_SIGNAL. 349 * configure, src/include/config.hin: Regenerated. 350 351 * PROBLEMS: Updated. 352 353 354 Update getopt files. 355 356 * src/include/getopt.h, src/libs/libgroff/getopt.c, 357 src/libs/libgroff/getopt1.c: Updated from GNU libc CVS. 358 359 * src/include/getopt_int.h: New file (from GNU libc CVS). 360 361 * src/include/groff-getopt.h: Updated. 362 363 * src/include/Makefile.sub (HDRS): Add getopt_int.h. 364 365 366 * font/devutf8/NOTES: Updated. 367 3682005-04-28 Werner LEMBERG <wl@gnu.org> 369 370 Bug fix for Win32 relocatable code. Based on a patch from Keith 371 Marshall. 372 373 * src/libs/libgroff/maxpathname.cpp (PATH_MAX): Test for `_MAX_PATH' 374 also. 375 376 * src/libs/libgroff/relocate.c (DEBUG): Define it conditionally. 377 (searchpath) [_WIN32]: Use `_fullpath', not `realpath'. 378 3792005-04-28 Keith Marshall <keith.d.marshall@ntlworld.com> 380 381 Correct `gnu.eps' handling for build from distribution tarball, with 382 separate source and build directories. 383 384 * doc/Makefile.sub: (examples.stamp): New target; forces copy of 385 grnexmpl.g, groff.css and gnu.eps from source to build directory; 386 generate gnu.eps from gnu.xpm if required; touch examples.stamp. 387 (prepare_examples): Make it depend on examples.stamp. 388 (CLEANADD): Add examples.stamp. 389 3902005-04-27 Werner LEMBERG <wl@gnu.org> 391 392 Implement the rule 393 394 position: '(' position ')' 395 396 in pic. 397 398 * src/preproc/pic/pic.y (position, position_not_place): Handle 399 additional parentheses. 400 401 * doc/pic.ms: Updated. 402 4032005-04-23 Larry Jones <lawrence.jones@ugs.com> 404 405 * src/utils/xtotroff/xtotroff.c (MapFont): Fix variable declaration. 406 4072005-04-18 Werner LEMBERG <wl@gnu.org> 408 409 * src/roff/groff/pipeline.c: Don't include ctype.h. 410 4112005-04-13 Werner LEMBERG <wl@gnu.org> 412 413 * src/roff/nroff/nroff.man: Document option `-M'. 414 4152005-04-13 Bruce Lilly <blilly@erols.com> 416 417 * src/roff/nroff/nroff.sh: Make the script accept option `-M'. 418 4192005-04-01 Kees Zeelenberg <kzlg@users.sourceforge.net> 420 Werner LEMBERG <wl@gnu.org> 421 422 Add binary relocation support for Windows platforms. 423 424 * src/include/Makefile.sub (defs.h): Add `INSTALLPATH'. 425 426 * src/include/relocate.h, src/libs/libgroff/relocate.cpp: New files. 427 428 * src/libs/libgroff/searchpath.cpp: Handle `relocate'. 429 (search_path::search_path, search_path::open_file_cautious): Use 430 `relocate'. 431 432 * src/libs/libgroff/Makefile.sub (OBJS, CCSRCS), 433 src/include/Makefile.sub (HDRS): Updated. 434 4352005-04-01 Werner LEMBERG <wl@gnu.org> 436 437 * src/devices/grohtml/post-html.cpp: Don't use strdup/free but 438 strsave/a_delete. 439 440 * src/libs/libgroff/font.cpp: Replace strdup with strsave. 441 442 * src/libs/libgroff/maxfilename.cpp: Don't include limits.h since 443 lib.h already does it. 444 445 * src/libs/libgroff/maxpathname.cpp: New file, defining 446 path_name_max. 447 448 * src/include/lib.h: Add prototype for path_name_max. 449 450 * src/libs/libgroff/Makefile.sub (OBJS, CCSRCS): Updated. 451 452 * src/include/nonposix.h (PATH_EXT): New macro. 453 4542005-03-28 Werner LEMBERG <wl@gnu.org> 455 456 Add support for double- and zero-width characters in grotty. 457 458 * src/devices/grotty/tty.cpp (glyph): Add width. 459 (tty_printer::make_underline, tty_printer::make_bold, 460 tty_printer::add_character): Add parameter to pass character width. 461 Update all callers. 462 (tty_printer::end_page): Increase hpos by actual character width. 463 464 * font/devutf8/R.proto: Specify zero width for non-spacing 465 characters. 466 467 * tmac/unicode.tmac: Remove definitions for non-spacing entities. 468 469 * Makefile.comm (extraclean): Remove more junk files. 470 4712005-03-25 Werner LEMBERG <wl@gnu.org> 472 473 * configure.ac: Undo change from 2005-03-24. 474 * configure: Regenerated. 475 4762005-03-24 Werner LEMBERG <wl@gnu.org> 477 478 * Makefile.in (NOMAKEDIRS): Add contrib/gdiffmk/tests. 479 (dist): Search Makefile while descending into $(EXTRADIRS). 480 481 * doc/Makefile.in (.PHONY): Add. 482 (clean): Don't remove *.png and *.eps. 483 Don't handle *.gif. 484 (realclean): Remove *.png and *.eps. 485 (extraclean): Depend on distclean. 486 487 * configure.ac: Add copyright. 488 Handle contrib/pdfmark/Makefile. 489 490 * configure: Regenerated. 491 4922005-03-18 Larry Kollar <kollar@alltel.net> 493 494 Add numbered and definition lists to www.tmac. 495 496 * tmac/www.tmac (www-ul-level1, www-ul-level2, www-ul-level3, 497 www-ol-level1, www-ol-level2, www-ol-level3, www-ol-tmp): New 498 auxiliary string registers. 499 (www-ul-level, www-ol-level, www-dl-level, www-ol-ctr1, www-ol-ctr2, 500 www-ol-ctr3, www-dl-shift): New auxiliary number registers. 501 (www-level): Removed. 502 (www-level1, www-level2, www-level3): Initialize to empty. 503 (www-level0, www-level4, www-level5, www-level6, www-level7, 504 www-level8, www-level9): New string registers. 505 (www-push-li, www-pop-li): New macros. 506 (www-push-level, www-pop-level): Renamed to... 507 (www-push-ul-level, www-pop-ul-level): This. 508 Updated. 509 (www-push-ol-level, www-pop-ol-level): New macros. 510 (ULS, ULE): Updated. 511 (OLS, OLE, DLS, DLE): New user macros. 512 (LI): Removed. It is aliased to one of... 513 (www-li-ul, www-li-ol, www-li-dl): New macros. 514 515 * tmac/groff_www.man: Document new macros. 516 517 * NEWS: Updated. 518 5192005-03-18 Werner LEMBERG <wl@gnu.org> 520 521 * tmac/doc-common (doc-operating-system-NetBSD-2.0.1, 522 doc-operating-system-NetBSD-2.0.2): New strings. 523 524 * tmac/groff_mdoc.man: Updated. 525 5262005-03-17 Werner LEMBERG <wl@gnu.org> 527 528 * doc/Makefile.sub (CLEANADD): Add `groff.html'. 529 5302005-03-17 Werner LEMBERG <wl@gnu.org> 531 532 * src/libs/libgroff/hypot.c: Renamed to... 533 * src/libs/libgroff/hypot.cpp: This. Updated to C++. 534 535 * src/libs/libgroff/Makefile.sub (CCSRCS, CSRCS): Updated. 536 537 * src/include/lib.h: Updated. 538 5392005-03-16 Werner LEMBERG <wl@gnu.org> 540 541 Add workaround for broken hypot() on Interix. 542 543 * src/libs/libgroff/hypot.c: New wrapper file for `hypot'. 544 545 * src/libs/libgroff/Makefile.sub (OBJS): Add `hypot.o'. 546 (CSRCS): Add `hypot.c'. 547 548 * src/include/lib.h: Declare `groff_hypot'. 549 550 * src/preproc/grn/hgraph.cpp: Don't declare `hypot'. 551 Use `groff_hypot'. 552 553 * src/preproc/pic/pic.h: Don't declare `hypot'. 554 555 * src/preproc/pic/object.cpp (hypot): Use `groff_hypot'. 556 5572005-03-15 Gaius Mulley <gaius@glam.ac.uk> 558 559 * src/devices/grohtml/post-html.cpp 560 (html_printer::lookahead_for_tables): End .ce properly to avoid a 561 segfault. 562 5632005-03-15 Werner LEMBERG <wl@gnu.org> 564 565 makeinfo 4.8 doesn't produce good HTML output from groff.texinfo. 566 567 * doc/fixinfo.sh: New script to postprocess makeinfo's HTML output. 568 569 * doc/Makefile.in (.texinfo.html): Call fixinfo.sh. 570 5712005-03-14 Werner LEMBERG <wl@gnu.org> 572 573 Add Cyrillic support to devutf8 and devhtml. 574 575 * font/devutf8/R.proto, font/devhtml/R.proto: Add Cyrillic blocks. 576 577 * tmac/unicode.tmac: New file. 578 579 * tmac/tty.tmac: Include unicode.tmac if device is utf8. 580 581 * tmac/Makefile.sub (NORMALFILES): Add unicode.tmac. 582 583 * NEWS: Updated. 584 5852005-03-02 Keith Marshall <keith.d.marshall@ntlworld.com> 586 587 * src/libs/libdriver/printer.cpp (check_for_output_error): New 588 function. It has been introduced to catch peculiar error contexts 589 on MS-Windows platforms. 590 5912005-02-28 Werner LEMBERG <wl@gnu.org> 592 593 * src/roff/troff/input.cpp (string_iterator::fill): Protect against 594 null pointer. 595 596 * tmac/papersize.tmac: Convert `paper' string contents to lowercase. 597 598 * configure: Regenerated. 599 600 * NEWS: Updated. 601 6022005-02-28 Keith Marshall <keith.d.marshall@ntlworld.com> 603 604 Integrate `pdfmark' into normal groff build system; 605 install macro `pdfmark' packages, build and install `pdfroff', 606 and PDF format documentation. 607 608 * Makefile.comm: Add PDFDOCDIR. 609 610 * Makefile.in: (MDEFINES) ALT_AWK_PROGS, ALT_GHOSTSCRIPT_PROGS, 611 pdfdocdir, make_pdfdoc, make_install_pdfdoc: New variables. 612 (unstall_dirs): Add pdfdocdir. 613 614 * aclocal.m4: (GROFF_GHOSTSCRIPT_PREFS): New function; support 615 `--with-alt-gs' option, set ALT_GHOSTSCRIPT_PROGS. 616 (GROFF_GHOSTSCRIPT_PATH): Support `--with-gs' option, force use of 617 GROFF_GHOSTSCRIPT_PREFS, set GHOSTSCRIPT. 618 (GROFF_HTML_PROGRAMS): Force use of GROFF_GHOSTSCRIPT_PATH; tidy up. 619 (GROFF_AWK_PREFS): New function; support `--with-alt-awk' option, 620 set ALT_AWK_PROGS. 621 (GROFF_AWK_PATH): New function; support `--with-awk' option, force 622 use of GROFF_AWK_PREFS. 623 (GROFF_PDFDOC_PROGRAMS): New function; force use of GROFF_AWK_PATH 624 and GROFF_GHOSTSCRIPT_PATH, set make_pdfdoc and make_install_pdfdoc. 625 626 * configure.ac: Add AC_PREREQ(2.59), GROFF_PDFDOC_PROGRAMS. 627 Remove GROFF_GHOSTSCRIPT_PATH, (forced by GROFF_PDFDOC_PROGRAMS, and 628 also by modified GROFF_HTML_PROGRAMS). 629 6302005-02-27 Gaius Mulley <gaius@glam.ac.uk> 631 632 * src/devices/grohtml/html-text.cpp (html_text::do_pre): Preserve 633 paragraph spacing. 634 (html_text::done_para): Unset `start_space'. 635 (html_text::remove_para_align): Call `retrieve_para_space' for the 636 spacing. 637 638 * src/devices/grohtml/post-html.cpp (html_printer::emit_raw): Unset 639 `seen_space'. 640 (html_printer::do_check_center): Emit vertical space if necessary. 641 642 * src/roff/troff/env.cpp (environment_switch): Preserve 643 `seen_space', `seen_eol', and `suppress_next_eol' while switching 644 environments. 645 646 * src/roff/troff/node.cpp (suppress_node::suppress_node): Set 647 `is_special'. 648 6492005-02-20 Werner LEMBERG <wl@gnu.org> 650 651 * src/preproc/eqn/eqn.man, NEWS: Document various extensions of 652 eqn. 653 6542005-02-17 Werner LEMBERG <wl@gnu.org> 655 656 * doc/pic.ms, man/groff.man: Fix typos. 657 658 * doc/groff.texinfo: Fix typos. 659 (\LEmacro): Get proper mathematical spacing. 660 6612005-02-16 Werner LEMBERG <wl@gnu.org> 662 663 * aclocal.m4 (GROFF_APPRESDIR_CHECK): Improve warning message. 664 * configure: Regenerated with autoconf 2.59b. 665 6662005-02-16 Gaius Mulley <gaius@glam.ac.uk> 667 668 * src/devices/grohtml/post-html.cpp (html_printer::is_line_start, 669 html_printer::start_font): Fix handling of preformatted text. 670 6712005-02-15 Gaius Mulley <gaius@glam.ac.uk> 672 673 These patches modify the indentation implementation to use `<p 674 style=margin-left: n%>'. Many thanks to Peter and Larry for 675 suggesting this solution. Grohtml only uses tables for `.IP' and 676 related tags when the first operand has a short width. 677 678 Similarly, they modify all vertical space code. By default, grohtml 679 sets up a style sheet which uses no vertical space between `table', 680 `pre', and `p' tags. It forces spaces when it needs them using 681 `style="margin-top: 1em"'. 682 683 * src/devices/grohtml/html-table.cpp: Include `html-text.h'. 684 (html_table::emit_table_header, html_table::emit_new_row): 685 Rewritten. 686 (html_table::set_space): New function. 687 (html_indent::html_indent): Don't set `is_used'. 688 (html_indent::begin): Rewritten. 689 (html_indent::end): Remove code in function. 690 691 * src/devices/grohtml/html-table.h: Updated. 692 (html_table): Make `out' public. 693 694 * src/devices/grohtml/html-text.cpp (html_text::html_text): 695 Initialize `start_space' with FALSE. 696 (html_text::end_tag) <P_TAG, PRE_TAG>: Updated. 697 (html_text::issue_tag): Add argument to handle space style. 698 (html_text::start_tag) <P_TAG, PRE_TAG>: Updated. 699 (html_text::flush_text): Don't set `start_space'. 700 (html_text::push_para): Don't set `p->really_issued'. 701 (html_text::do_emittext): Updated. 702 (html_text::do_para): Add paremeter to handle space. 703 Update all callers. 704 (html_text::retrieve_para_space): New function. 705 706 * src/devices/grohtml/html-text.h (STYLE_VERTICAL_SPACE): New macro. 707 (tag_definition): Remove `really_issued'. 708 (html_text): Updated. 709 710 * src/devices/grohtml/post-html.cpp (html_printer): Add variables 711 `current_column' and `row_space'. 712 Update constructor. 713 (html_printer::emit_raw, html_printer::write_header, 714 html_printer::do_indent, html_printer::do_check_center, 715 html_printer::do_tab_ts): Handle vertical space. 716 (html_printer:do_tab_te, html_printer::do_end_para): Call 717 `remove_para_space'. 718 (html_printer::do_col): Rewritten. 719 (html_printer::flush_globs): Remove debugging code. 720 (html_printer::is_line_start): New function. 721 (html_printer::start_font): Use `is_line_start'. 722 (html_printer::writeHeadMetaStyle): New function. 723 (html_printer::do_file_components, html_printer::~html_printer): 724 Call `writeHeadMetaStyle'. 725 726 * tmac/www.tmac (www-handle-percent): New macro. 727 (MPIMG): Handle percent values for width and height parameters. 728 (DC): Updated. 729 730 * tmac/groff_www.man: Updated. 731 7322005-02-14 Werner LEMBERG <wl@gnu.org> 733 734 * src/utils/afmtodit/afmtodit.pl: Remove an incorrect `my' from 735 $psname and $italic_angle. 736 Immediately restart file input loops if `split' returns an empty 737 array. 738 7392005-02-13 Michail Vidiassov <master@iaas.msu.ru> 740 Werner LEMBERG <wl@gnu.org> 741 742 Update afmtodit to better support Unicode (Michail). 743 Update afmtodit to use Perl 5 syntax (Werner). 744 745 * src/utils/afmtodit/afmtodit.pl: Don't use `getopts.pl' but 746 `Getopts::Std'. 747 Decorate variables with `my' where necessary. 748 Use `defined' where necessary to avoid warnings. 749 Don't use `do' for subroutine calls. 750 Other minor syntax updates. 751 Check for both `uXXXX[X[X]]' and `uniXXXX'. 752 Handle glyph variants properly. 753 (%unicode_decomposed, %AGL_to_unicode): Don't use `u' prefix in 754 strings. 755 756 * src/utils/afmtodit/afmtodit.man: Updated. 757 7582005-02-13 Werner LEMBERG <wl@gnu.org> 759 760 Make groff.texinfo work with texinfo 4.8. 761 762 * doc/groff.texinfo (@Var): Use @r and @slanted. 763 (@defdummy, @Def*): Use @c to avoid empty lines. 764 (\angles): Replaced with... 765 (\Langlemacro, \Ranglemacro): New TeX macros. 766 (@Langlemacro, @Ranglemacro): New variables defined with @set. 767 (@angles): Use @Langlemacro and @Ranglemacro. 768 (\LE): Replaced with... 769 (\LEmacro): New TeX macro. 770 (@LEmacro): New variable defined with @set. 771 (@LE): Use @LEmacro. 772 (@Lparenmacro, @Rparenmacro, @Lbrackmacro, @Rbrackmacro): New 773 variables defined with @set. 774 (@lparen, @rparen, @lbrack, @rbrack): Replaced with... 775 (@Lparen, @Rparen, @Lbrack, @Rbrack): New macros. 776 Update all callers. 777 778 Other minor updates. 779 780 * doc/texinfo.tex: Update to texinfo version 4.8. 781 782 * README.CVS: Updated. 783 7842005-02-09 Alejandro L�pez-Valencia <palopez@etb.net.co> (tiny change) 785 786 * doc/groff.texinfo (ms Document Control Registers): Document `HY' 787 and `FAM' registers. 788 7892005-02-05 Werner LEMBERG <wl@gnu.org> 790 791 * tmac/groff_mdoc.man, tmac/doc-common, tmac/doc-ditroff, 792 tmac/doc-nroff, tmac/doc-old.tmac, tmac/doc-syms, tmac/doc.tmac: 793 Update BSD license. 794 7952005-02-01 Werner LEMBERG <wl@gnu.org> 796 797 * src/roff/groff/groff.man: Add information about paper size. 798 7992005-01-25 Werner LEMBERG <wl@gnu.org> 800 801 * src/roff/nroff/nroff.sh: Handle `*.ISO8859-1' in locale. From 802 NetBSD bin/29114. 803 8042005-01-22 Ruslan Ermilov <ru@FreeBSD.org> 805 806 * tmac/doc.tmac (Sm): Improved. It didn't work properly in many 807 cases. 808 (Re): Emit a warning if called without `.Rs'. 809 (doc-finish-reference): Use parameter for decreasing 810 `doc-reference-count'. 811 (doc-print-reference): Pass specific count parameters to 812 `doc-finish-reference'. 813 8142005-01-21 Werner LEMBERG <wl@gnu.org> 815 816 * src/libs/libdriver/input.cpp (delete_current_env, do_file): 817 Reset pointers to zero after deallocation. This fixes a crash 818 if a driver is called with multiple input files. Reported by 819 Ken Chilton <ken@chiltonfamily.org>. 820 821 * src/devices/grops/grops.man: Add more info on DSC. 822 8232005-01-17 Ruslan Ermilov <ru@FreeBSD.org> 824 825 * tmac/doc-common (Dd), tmac/doc-ditroff (gX, doc-setup-header): 826 Remove dead code. 827 8282005-01-17 Werner LEMBERG <wl@gnu.org> 829 830 * src/roff/troff/div.cpp (top_level_diversion::space): Protect 831 against division by zero. 832 8332005-01-13 Ruslan Ermilov <ru@FreeBSD.org> 834 835 * tmac/doc.tmac (Ef): Restore doc-curr-font and doc-curr-size. 836 8372004-12-19 Werner LEMBERG <wl@gnu.org> 838 839 * install-sh: New version; taken from texinfo CVS. 840 8412004-12-17 Werner LEMBERG <wl@gnu.org> 842 843 * tmac/devtag.tmac: Protect against loading twice. 844 Protect agains compatibility mode. 845 * tmac/www.tmac: Protect against loading twice. 846 Load `devtag.tmac' before switching off compatibility mode. 847 * tmac/an-old.tmac, tmac/s.tmac: Load `devtag.tmac'. 848 8492004-12-16 Mike Bianchi <mbianchi@Foveal.com> 850 851 * configure.ac: Produce `contrib/gdiffmk/tests/runtests'. 852 * configure: Updated. 853 8542004-12-15 Thomas Klausner <wiz@netbsd.org> 855 856 * tmac/doc-syms, tmac/groff_mdoc.man: Add `libpam' library. 857 8582004-12-15 Werner LEMBERG <wl@gnu.org> 859 860 Make `test-groff' work again -- previously, wrong paths have been 861 used. Additionally, it can now be called from anywhere. 862 863 * test-groff.in: Don't test for groff binary. This is no longer 864 necessary since the proper paths are determined by `configure'. 865 (EXEEXT): Removed. No longer used. 866 (srcdir, builddir): Use values provided by the configure script. 867 (XENVIRONMENT): Updated. 868 869 * INSTALL: Updated. 870 8712004-12-14 Gaius Mulley <gaius@glam.ac.uk> 872 873 Make .tag and .taga work for all devices (but only grohtml actually 874 handles them). 875 876 * src/devices/grohtml/post-html.cpp: s/html-tag/devtag/. 877 (text_glob::is_br, page::add_tag, html_printer::troff_tag, 878 html_printer::handle_assertion): Don't use hard-coded string 879 lengths. 880 (html_printer::lookahead_for_table): Reset `tbl' properly if 881 necessary. 882 (html_printer::devtag): New function, handling `devtag'. 883 (html_printer::special): Don't handle `html-tag'. 884 885 * src/include/printer.h, src/libs/libdriver/printer.cpp 886 (printer::devtag): New virtual function. 887 888 * src/libs/libdriver/input.cpp (parse_x_command) <'X'>: Handle 889 `devtag'. 890 891 * src/roff/troff/env.cpp, src/roff/troff/mtsm.cpp, 892 src/roff/troff/node.cpp: s/html-tag/devtag/. 893 894 * src/roff/troff/input.cpp (tag, taga): Always call 895 curenv->add_node. 896 897 * tmac/an-old.tmac, tmac/s.tmac, tmac/troffrc-end: Use DEVTAG* 898 macros instead of HTML-TAG*. 899 900 * tmac/devtag.tmac: New file, defining the DEVTAG-* macros. 901 902 * tmac/www.tmac: Load devtag.tmac. 903 Replace HTML-TAG* macros with DEVTAG* macros. 904 (HTML, HTML-NS): Changed definitions. 905 (URL): Use HTML-NS. 906 (HTML-TAG, HTML-TAG-NS, HTML-TAG-NEXT): Removed. 907 908 * tmac/Makefile.sub (NORMALFILES): Add devtag.tmac. 909 9102004-12-10 Werner LEMBERG <wl@gnu.org> 911 912 Import Mike's `gdiffmk' package. 913 914 * contrib/gdiffmk/*: New files. 915 * Makefile.in (OTHERDIRS): Add contrib/gdiffmk. 916 * NEWS: Updated. 917 9182004-12-08 Werner LEMBERG <wl@gnu.org> 919 920 Import Keith's `pdfmark' package. Integration is very preliminary. 921 922 * contrib/pdfmark/*: New files. 923 * Makefile.in (OTHERDIRS): Add contrib/pdfmark. 924 * NEWS: Updated. 925 9262004-12-07 Gaius Mulley <gaius@glam.ac.uk> 927 928 Fix a bug with title handling in HTML. 929 930 * src/devices/grohtml/post-html.cpp (text_glob::is_nf, 931 text_glob::is_fi, text_glob::is_ce): Use strlen to compute string 932 length. 933 (html_printer::handle_tag_within_title): New function. 934 (html_printer::do_title): Use it. 935 936 * tmac/s.tmac (TL): Don't set `need_eo_tl'. 937 (cov*tl-au-print): Emit `.eo.tl' tag. 938 9392004-12-05 Alejandro L�pez-Valencia <dradul@etb.net.co> 940 941 * man/groff_char.man: Minor imrovements. 942 9432004-12-04 Werner LEMBERG <wl@gnu.org> 944 945 * src/preproc/eqn/eqn.man: Revised. 946 9472004-11-25 Werner LEMBERG <wl@gnu.org> 948 949 * src/utils/xtotroff/xtotroff.c: Reformat to be similar to other 950 groff source files. 951 Include config.h. 952 Include limits.h. 953 Remove X_NOT_STDC_ENV conditional. 954 (Version_string, program_name): New global variables. 955 (groff_flag): Removed. 956 (MapFont): Updated. 957 (usage): Take a stream as argument. 958 Use `program_name'. 959 Update all callers. 960 (main): Add `long_options' array for `--help' and `--version'. 961 Make `-g' a dummy option. 962 Handle `-v' and unknown options. 963 Remove unused `position' variable. 964 965 * src/utils/xtotroff/Makefile.sub (MAN1): Define. 966 (XLIBS): Add LIBGROFF. 967 968 * src/utils/xtotroff/xtotroff.man, src/utils/xtotroff/Makefile.in: 969 New files. 970 971 * src/devices/xditview/Dvi.c (default_font_map): Split into three 972 parts to avoid compiler warning. 973 (resources): Don't initialize with `default_font_map'. 974 (ClassInitialize): Initialize first element of `resources'. 975 976 * src/devices/xditview/Makefile.sub (devdir, xtotroff, DPIS, fonts): 977 Removed. 978 979 * src/utils/lkbib/lkbib.man, src/utils/lookbib/lookbib.man, 980 src/utils/pfbtops/pfbtops.man: Revised, updated. 981 982 * configure.ac: Generate src/utils/xtotroff/Makefile. 983 * configure: Regenerated. 984 9852004-11-24 Werner LEMBERG <wl@gnu.org> 986 987 First fixes to get produce HTML. 988 989 * src/devices/grohtml/post-html.cpp (generate_img_src): Add `alt' 990 attribute. 991 992 * tmac/www.tmac (IMG, PIMG, MPIMG): Add `alt' attribute. 993 (HR, LI): Use `HTML</p>', not `HTML'. 994 995 * doc/webpage.ms: Minor updates. 996 9972004-11-23 Larry Kollar <kollar@alltel.net> 998 999 Add option -S grohtml to determine the file split level. 1000 1001 * src/devices/grohtml/post-html.cpp (split_level): New global 1002 variable. 1003 (html_header::determine_header_level): Use split_level. 1004 (main): Handle `-S' command line option. 1005 Sort options. 1006 1007 * src/preproc/html/pre-html.cpp (scanArguments): Updated. 1008 1009 * src/devices/grohtml/grohtml.man: Document it. 1010 Sort options. 1011 1012 * NEWS: Document it. 1013 10142004-11-23 Y T <doarhop@hotmail.com> 1015 1016 * tmac/s.tmac (ref*add-V, ref*add-N): New macros for handling 1017 the volume and number refer entries. 1018 10192004-11-22 Werner LEMBERG <wl@gnu.org> 1020 1021 * src/devices/grohtml/html-table.cpp 1022 (html_table::emit_table_header): Don't emit `cols' attribute which 1023 doesn't exist in HTML 4.0 and is thus invalid. 1024 1025 * NEWS: More minor fixes and updates. 1026 10272004-11-18 Werner LEMBERG <wl@gnu.org> 1028 1029 * tmac/www.tmac (HTML-NS, HTML-TAG-NS, HTML-TAG-NEXT): Simplified. 1030 (HTML</p>): Minor clean-up. 1031 1032 * tmac/groff_www.man: Updated. 1033 1034 * src/devices/grohtml/grohtml.man: Revised and updated. 1035 1036 * NEWS: Updated. 1037 10382004-11-18 Gaius Mulley <gaius@glam.ac.uk> 1039 1040 * src/devices/grohtml/post-html.cpp (html_printer::do_heading): 1041 Fix space insertion. 1042 (html_printer::do_links): Fix rules generation around automatic 1043 heading links. 1044 1045 * tmac/www.tmac (LK): Use HTML-TAG-NS. 1046 (HR): Simplify. 1047 No longer emit empty line for non-HTML devices. 1048 10492004-11-17 Werner LEMBERG <wl@gnu.org> 1050 1051 * doc/Makefile.in (prepare_examples, webpage.html): Handle 1052 `groff.css'. 1053 1054 * doc/Makefile.sub (EXAMPLEFILES, CLEANNOTSRCDIRADD, 1055 prepare_examples, webpage.html): Handle `groff.css'. 1056 10572004-11-15 Werner LEMBERG <wl@gnu.org> 1058 1059 * NEWS, README, doc/webpage.ms: Updated. 1060 1061 * tmac/www.tmac (HTML, HTML-TAG): Minor clean-ups. 1062 10632004-10-30 Gaius Mulley <gaius@glam.ac.uk> 1064 1065 * src/include/printer.h (printer): Remove virtual function 1066 `round_width'. 1067 Update all source files. 1068 1069 * src/devices/grohtml/post-html.cpp (html_printer): New member 1070 function `round_width'. 1071 10722004-10-20 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de> 1073 1074 * src/preproc/tbl/table.cpp (table::do_row): Fix handling of the `d' 1075 column key letter suffix. 1076 10772004-10-14 Werner LEMBERG <wl@gnu.org> 1078 1079 * Makefile.in (check): Depend on `site.exp' and `docheck'. 1080 (docheck): Run dejagnu's `runtest' if it exists. 1081 (site.exp): Create dejagnu configuration file. 1082 1083 * Makefile.sub (DISTCLEANFILES): Add files related to dejagnu. 1084 10852004-10-13 Werner LEMBERG <wl@gnu.org> 1086 1087 * src/devices/grohtml/html-text.cpp (html_text_get_alignment), 1088 src/devices/grohtml/post-html.cpp (make_val, 1089 html_printer::handle_state_assertion): Fix compiler warnings. 1090 1091 * src/roff/troff/div.cpp: Include `stringclass.h' and `mtsm.h'. 1092 (diversion::diversion): Fix order of initializers. 1093 1094 * src/roff/troff/div.h: Don't include `mtsm.h'. 1095 1096 * src/roff/troff/env.cpp: Include `stringclass.h' and `mtsm.h'. 1097 (environment::environment): Fix order of initializers. 1098 (environment::make_tag, environment::construct_format_state): Fix 1099 compiler warnings. 1100 1101 * src/roff/troff/input.cpp: Include `stringclass.h' and `mtsm.h'. 1102 (input_iterator::input_iterator, macro::macro): Fix order of 1103 initializers. 1104 1105 * src/roff/troff/mtsm.cpp: Include only necessary header files. 1106 (state_set::add, state_set::val): Fix compiler warnings. 1107 1108 * src/roff/troff/mtsm.h: Don't include `stringclass.h'. 1109 (bool_value_state, int_value_state, units_value_state, 1110 string_value_state): Remove comma after last element which causes 1111 an error with g++ 3.3.3. 1112 1113 * src/roff/troff/node.cpp: Include `stringclass.h'. 1114 (hline_node::hline_node, vline_node::vline_node, 1115 space_char_hmotion_node, left_italic_corrected_node): Fix compiler 1116 warnings. 1117 (zero_width_node::zero_width_node): Fix order of initializers. 1118 1119 * src/roff/troff/node.h: Don't include `mtsm.h'. 1120 (hmotion_node): Fix compiler warnings. 1121 1122 * src/roff/troff/number.cpp: Include `stringclass.h' and `mtsm.h'. 1123 11242004-10-12 Gaius Mulley <gaius@glam.ac.uk> 1125 1126 * doc/groff.css: New file. 1127 1128 * doc/webpage.ms: Use `groff.css'. 1129 Other small fixes. 1130 1131 * tmac/an-old.tmac (need_eo_h): New number register. 1132 (TH): Emit `.eo.tl' tag after title. 1133 (SH): Set `need_eo_h'. 1134 (an-trap): Handle `need_eo_h'. 1135 (an-do-tag): s/HTML-TAG-NS/HTML-TAG-NEXT/. 1136 1137 * tmac/s.tmac (need_eo_h, need_eo_tl): New number registers. 1138 (TL): Always start diversion. 1139 Updated. 1140 (@AI): Always call `par@reset'. 1141 (@AB): Update code for -Thtml. 1142 (cov*tl-au-print): Handle -Thtml. 1143 (par@reset): Handle `need_eo_tl', `need_eo_h'. 1144 (@IP): Simplified. 1145 (@IT-html): Removed. 1146 (@SH): Set `need_eo_h' for -Thtml. 1147 (par@TL): s/HTML-TAG/HTMl-TAG-NS/. 1148 Set `need_eo_tl'. 1149 (@NH): s/HTML-TAG/HTMl-TAG-NS/. 1150 Set `need_eo_h' for -Thtml. 1151 (@EQ, @EN): Don't handle -Thtml specially. 1152 (par@load-init): Don't handle -Thtml specially. 1153 1154 * tmac/www.tmac (www:paraspace): New macro. 1155 (HTML-NS, HTML-TAG-NS): Use new `tag' request. 1156 (HTML</p>, HTML-TAG-NEXT): New macros. 1157 (HnE): Emit tag `.eo.h' instead of break. 1158 (HR): s/HTML-NS/HTML/. 1159 (www-end-nowhere): End diversion only if `www-html' not set. 1160 Emit `.eo.tl' tag. 1161 (ULS, ULE): s|HTML|HTML</p>|. 1162 (LI): Call `www:paraspace'. 1163 (HEAD): New macro. 1164 11652004-10-11 Gaius Mulley <gaius@glam.ac.uk> 1166 1167 * src/roff/troff/request.h (macro): Make `p' public. 1168 New variable `is_a_diversion'. 1169 New member function `is_diversion'. 1170 1171 1172 * src/devices/grohtml/html.h (simple_output): New member function 1173 `force_nl'. 1174 1175 * src/devices/grohtml/html-table.cpp (tabs::compatible): Fix 1176 computation of `total'. 1177 (tabs::check_init): New function. 1178 (html_table::emit_table_header): Emit style data. 1179 (html_table::insert_column): Improved. 1180 1181 * src/devices/grohtml/html-table.h: Updated. 1182 1183 * src/devices/grohtml/html-text.cpp (html_text::html_text): 1184 Initialize `start_space' with TRUE. 1185 (html_text::end_tag, html_start_tag): Fix `P_TAG' and `PRE_TAG' 1186 cases. 1187 (html_text::flush_text): Set `start_space' flag. 1188 (html_text::uses_indent, html_text::remove_para_space, 1189 html_text::get_alignment): New functions. 1190 (html_text::push_para): Updated. 1191 (html_text::do_para): Check for empty argument. 1192 Don't set `space_emitted'. 1193 (html_text::do_space, html_text::emit_space): Updated. 1194 1195 * src/devices/grohtml/html-text.h (tag_definition): New variable 1196 `really_issued'. 1197 (html_text): New member function `uses_indent', `remove_para_space', 1198 `get_alignment'. 1199 1200 * src/devices/grohtml/output.cpp (simple_output::force_nl): New 1201 function. 1202 (simple_output:nl): Always emit `\n'. 1203 1204 * src/devices/grohtml/post-html.cpp: Include `string.h'. 1205 (BASE_POINT_SIZE): Removed. 1206 (base_point_size, head_info): New global variables. 1207 (text_glob): New member functions `is_ll', `is_tl', `is_eo_tl', 1208 `is_eo_h'. 1209 (text_glob::is_nf, text_glob::is_fi): Handle `.fi 0' and `.fi 1' 1210 tags, respectively. 1211 (page::add_and_encode): Pass additional parameter for tag flag. 1212 (assert_pos): New structure. 1213 (assert_state): New class. 1214 (html_printer): Remove `indentation', `prev_indent'. 1215 Add variables `troff_indent', `device_indent', `temp_indent'. 1216 Add variables `seen_indent', `next_indent', `seen_pageoffset', 1217 `next_pageoffset', `seen_linelenght', `next_linelength', 1218 `seen_center', `next_center', `seen_space', `seen_break', `as'. 1219 Add member functions `do_check_center', `do_space', `do_head', 1220 `get_troff_indent', `restore_troff_indent', `handle_assertion', 1221 `handle_state_assertion', `do_end_para', `set_char_and_width'. 1222 Change argument to `do_fill' to `char *'. 1223 Update constructor. 1224 (html_printer::emit_raw): Call `shutdown_table'. 1225 Use new functions. 1226 (html_printer::do_center): Simplified. 1227 (html_printer::do_title): Improved. 1228 (html_printer::write_header): Emit one more newline. 1229 Use new functions. 1230 (html_printer::do_heading, html_printer::do_indent, 1231 html_printer::do_eol, html_printer::do_tab_ts, 1232 html_printer::do_tab, html_printer::do_tab0, 1233 html_printer::calc_po_in, html_printer::next_horiz_pos, 1234 html_printer::remove_courier_tabs, 1235 html_printer::insert_tab0_foreach_tab, html_printer::begin_page): 1236 Updated. 1237 (html_printer::do_linelength, html_printer::do_pageoffset, 1238 html_printer::do_indentation, html_printer::do_tempindent, 1239 html_printer::do_tab_te): Simplified. 1240 (html_printer::do_pointsize): Check whether point size is really 1241 associated a `.tl' tag. 1242 (html_printer::do_break): Rewritten. 1243 (html_printer::troff_tag): Improved. 1244 (html_printer::flush_globs): Updated. 1245 (html_printer::lookahead_for_tables): Handle `is_br'. 1246 Use new functions. 1247 (html_printer::set_char): Check `sbuf_style.f'. 1248 (html_printer::write_navigation): Use string comparison. 1249 (html_printer::~html_printer): Emit `head_info'. 1250 (html_printer::special): Rewritten. 1251 (get_str, make_val): New functions. 1252 (main): New option `s' to set the base point size. 1253 1254 * src/preproc/html/pre-html.cpp (scanArguments): Handle option `s'. 1255 12562004-10-10 Gaius Mulley <gaius@glam.ac.uk> 1257 1258 * src/roff/troff/node.cpp: New extern `debug_state'. 1259 Include `stringclass.h' and `mtsm.h'. 1260 Implement new classes and class members from `node.h'. 1261 (real_output_file): Make `fp' public. 1262 (troff_output_file): New variables `cur_div_level' and `tag_list'. 1263 Update constructors. 1264 (troff_output_file::really_print_line): Check whether we should push 1265 the current troff state and use the state at the start of the 1266 invocation of this diversion. 1267 (troff_output_file::add_to_tag_list): New member function. 1268 (node::add_char): Handle `glyph_comp_np'. 1269 1270 * src/roff/troff/node.h: Include `mtsm.h'. 1271 (node): New variables `state', `push_state', `div_nest_level', 1272 `is_special'. Update constructors, all descendants. 1273 Pass additional argument to `add_char' member function. 1274 New virtual member functions `is_tag', `debug_node', 1275 `debug_node_list'. Update all descendants. 1276 (tag_node): New class for handling tags. 1277 (output_file): Add variable `state'. 1278 12792004-10-09 Gaius Mulley <gaius@glam.ac.uk> 1280 1281 * src/roff/troff/mtsm.cpp, src/roff/troff/mtsm.h: New files, 1282 providing a minimal troff state machine to emit meta tags for the 1283 post-grohtml device driver. 1284 1285 * src/roff/troff/Makefile.sub (OBJS, CCSRCS, HDRS): Handle new 1286 files. 1287 12882004-10-09 Werner LEMBERG <wl@gnu.org> 1289 1290 * tmac/trace.tmac: Fix handling of `am' and `am1' calls. 1291 12922004-10-06 Gaius Mulley <gaius@glam.ac.uk> 1293 1294 * src/roff/troff/column.cpp (vjustify_node::copy): Updated. 1295 1296 * src/roff/troff/div.h: Include `mtsm.h'. 1297 (diversion): New variables `any_chars_added', `needs_push', 1298 `saved_seen_break', `saved_seen_space', `saved_seen_eol', 1299 `saved_suppress_next_eol', `modified_tag'. 1300 New virtual member function `is_diversion'. Update all descendants. 1301 1302 * src/roff/troff/div.cpp (diversion::diversion, 1303 macro_diversion::macro_diversion): Updated. 1304 (do_divert): Handle `seen_break', `seen_space', `seen_eol', 1305 `suppress_next_eol'. 1306 (top_level_diversion::space): Handle `curenv->seen_space'. 1307 (page_offset): Update tag handling. 1308 (space_request, blank_line, flush_output): Don't call `add_html_tag'. 1309 1310 * src/roff/troff/env.h (environment): Make `tabs' public. 1311 Remove `ignore_next_eol', `emitted_node'. 1312 Update `output_line', `output'. 1313 New variables `seen_space', `seen_eol', `suppress_next_eol', 1314 `seen_break'. 1315 New member functions `construct_state', `make_tag', 1316 `construct_format_state, `construct_new_line_state, 1317 `dump_troff_state'. 1318 Remove `add_html_tag', `make_html_tag'. 1319 1320 * src/roff/troff/env.cpp: New externs `suppress_push', 1321 `get_diversion_state', `global_diverted_space'. 1322 (pending_output_line): New variable `was_centered'. 1323 Update constructor and all callers. 1324 (pending_output_line::output): Call `curenv->construct_format_state'. 1325 (environment::environment, environment::copy): Updated. 1326 (environment::output): Handle `was_centered'. 1327 (environment::add_char): Handle construct and diversion state. 1328 (environment::add_node): Handle construct state. 1329 (environment::newline): Handle `was_centered'. 1330 (environment::output_line): Updated. 1331 (environment::possibly_break_line): Updated. 1332 Update tag handling. 1333 (environment::add_html_tag): Replaced with... 1334 (environment::make_tag): New function. 1335 (environment::add_html_tag_tabs, environment::make_html_tag): Removed. 1336 (environment::dump_troff_state): New debugging function. 1337 (environment::construct_state, environment::construct_format_state, 1338 environment::construct_new_line_state): New functions. 1339 (environment::do_break): Updated. 1340 Handle `global_diverted_space'. 1341 (environment::handle_tag): Update tag handling. 1342 (point_size, fill, do_break_request): Don't call `add_html_tag'. 1343 (no_fill): Don't call `add_html_tag'. 1344 Set `suppress_next_eol'. 1345 (center, right_justify, line_length, indent, temporary_indent, 1346 set_tabs): 1347 Update tag handling. 1348 1349 * src/roff/troff/input.cpp: Don't include `stringclass.h'. 1350 (input_iterator): New variables `is_diversion', `diversion_state'. 1351 Update constructors. 1352 (input_stack): New member functions `get_div_level', 1353 `get_diversion_state', `check_end_diversion'. 1354 New variables `div_level', `diversion_state'. Initialize them. 1355 (suppress_push, global_diverted_space): New global variables. 1356 (input_stack::finish_get, input_stack::finish_peek, 1357 input_stack::remove_boundary, input_stack::end_file, 1358 input_stack::clear, input_stack::pop_macro): Call 1359 `check_end_diversion'. 1360 (input_stack::push): Handle `div_level' and `diversion_state'. 1361 (get_diversion_state): New function. 1362 (diverted_space_node::reread): Handle `global_diverted_space'. 1363 (macro::macro): Update constructors. 1364 (macro::is_diversion): New function. 1365 (macro::operator=): Set `is_a_diversion'. 1366 (string_iterator): New member function `is_diversion'. 1367 (string_iterator::string_iterator): Update constructors. 1368 (string_iterator::fill): Set `div_nest_level'. 1369 (macro_iterator): New member function `is_diversion'. 1370 (do_if_request): Handle `suppress_push'. 1371 (tag, taga): New functions. 1372 (init_input_requests): Add `tag' and `taga' requests. 1373 13742004-10-05 Gaius Mulley <gaius@glam.ac.uk> 1375 1376 * src/include/font.h (font): New member function 1377 `get_image_generator'. 1378 New variables `unscaled_charwidths' and `image_generator'. 1379 1380 * src/libs/libgroff/font.cpp (font::get_width): Always return the 1381 character's unscaled width if `font::unscaled_charwidths' is set. 1382 (font::get_image_generator): New function. 1383 (font::load_desc): Check the `unscaled_charwidths' and 1384 `image_generator' keywords. 1385 1386 * src/libs/libgroff/fontfile.cpp: Initialize 1387 `font::unscaled_charwidths' and `font::image_generator'. 1388 1389 * font/devhtml/DESC.proto: s/html/unscaled_charwidths/. 1390 1391 * font/devhtml/Makefile.sub (DESC): Set `image_generator' keyword. 1392 1393 * man/groff_font.man: Document `unscaled_charwidths' and 1394 `image_generator'. 1395 1396 * src/preproc/html/pre-html.cpp: Include `device.h'. 1397 (image_gen): New global variable. 1398 (imageList::createPage): Use `image_gen'. 1399 (main): Use `image_generator' keyword. 1400 14012004-10-04 Gaius Mulley <gaius@glam.ac.uk> 1402 1403 * tmac/html.tmac: Handle \[sqrtex]. 1404 14052004-10-04 Gaius Mulley <gaius@glam.ac.uk> 1406 1407 * src/include/printer.h (printer): New virtual method `round_width'. 1408 1409 * src/devices/grodvi/dvi.cpp, src/devices/grolbp/lbp.cpp, 1410 src/devices/grolj4/lj4.cpp, src/devices/grops/ps.cpp, 1411 src/devices/grotty/tty.cpp (printer::round_width): New function 1412 member. 1413 1414 * src/devices/grohtml/post-html.cpp (printer::round_width): New 1415 function member. 1416 (html_printer::set_numbered_char): Use it. 1417 14182004-10-03 Gaius Mulley <gaius@glam.ac.uk> 1419 1420 * aclocal.m4 (GROFF_GHOSTSCRIPT_PATH): New macro. 1421 1422 * configure.ac: Call GROFF_GHOSTSCRIPT_PATH. 1423 1424 * configure: Regenerated. 1425 1426 * Makefile.in (GHOSTSCRIPT): New variable. 1427 (MDEFINES): Add GHOSTSCRIPT. 1428 14292004-10-03 Werner LEMBERG <wl@gnu.org> 1430 1431 * INSTALL.gen: Updated (taken from texinfo CVS). 1432 14332004-09-28 Werner LEMBERG <wl@gnu.org> 1434 1435 * NEWS: Updated. 1436 14372004-09-28 Heinz-J�rgen Oertel <hj.oertel@surfeu.de> 1438 1439 * tmac/groff_www.man: Revised and updated. 1440 14412004-09-26 Werner LEMBERG <wl@gnu.org> 1442 1443 Fix \$@ and \$* to handle any number of arguments. 1444 1445 * src/roff/troff/input.h (BEGIN_QUOTE, END_QUOTE): New special 1446 characters. 1447 1448 * src/roff/troff/input.cpp (input_iterator::internal_level): 1449 Removed. 1450 (input_stack): New member functions `increase_level' and 1451 `decrease_level'. 1452 (input_stack::get_level): Don't use `internal_level'. 1453 (get_copy, token::next): Handle BEGIN_QUOTE and END_QUOTE. 1454 (end_quote_iterator): Completely removed. 1455 (interpolate_arg): Build string for \$@ and \$* which is then 1456 pushed onto the input stack. 1457 14582004-09-23 Keith Marshall <keith.d.marshall@ntlworld.com> 1459 1460 * tmac/groff_ms.man, doc/groff.texinfo: Document changes from 1461 2004-09-19. 1462 14632004-09-23 Werner LEMBERG <wl@gnu.org> 1464 1465 * tmac/an-old.tmac (ne): Using default scaling operator. 1466 14672004-09-19 Keith Marshall <keith.d.marshall@ntlworld.com> 1468 1469 This change implements the following features: 1470 1471 PORPHANS 1472 New numeric register: Defines number of lines following LP, PP, 1473 QP, IP or XP, which must be kept together, before any automatic 1474 page break. If insufficient space remains on the current page, a 1475 page break is forced before the new paragraph begins. 1476 1477 HORPHANS 1478 New numeric register: Sets number of lines of following paragraph 1479 which must be kept with a heading, defined by NH or SH, before any 1480 automatic page break. If insufficient space remains on the 1481 current page, a page break is forced before the heading. 1482 1483 GROWPS 1484 (Thanks to Joerg van den Hoff, for this idea). 1485 1486 New numeric register: Sets the first level of heading (set with 1487 NH), which will keep the same point size as body text; e.g. if 1488 GROWPS is set to 3, .NH 3, .NH 4, ... will produce headings at the 1489 point size specified by \n[PS], but .NH 2 and .NH 1 will have 1490 progressively larger point sizes, determined by \n[PSINCR] (see 1491 below). 1492 1493 PSINCR 1494 New numeric register: Sets the point size increment for each level 1495 of heading, (set with NH), below the threshold level set by 1496 GROWPS; e.g. if \n[PS] = 10, \n[GROWPS] = 3 and \n[PSINCR] = 2.0p, 1497 then .NH 1 will produce 14pt headings, .NH 2 will produce 12pt, 1498 and all other levels will remain at 10pt, (because \n[PS] = 10). 1499 1500 SH 1501 Existing macro now accepts a numeric argument, to make heading 1502 size match that of NH with same argument value, when the 1503 GROWPS/PSINCR feature is enabled. 1504 1505 SN-DOT 1506 New string, set by NH macro, replaces the existing (undocumented) 1507 use of SN, to represent the assigned section number. 1508 1509 SN-NO-DOT 1510 New string, set by NH macro, represents the assigned section 1511 number, but omits the terminal period (periods at intermediate 1512 levels are retained). 1513 1514 SN 1515 String set by NH macro, originally undocumented, now implemented 1516 as an alias for SN-DOT (which reproduces original behaviour). 1517 1518 * tmac/s.tmac (PORPHANS): New register. 1519 (par*start): Use it. 1520 (HORPHANS, GROWPS, PSINCR): New registers. 1521 (SH-NO-TAG, @SH): Use them. 1522 (@NH): Improved. 1523 15242004-09-19 Keith Marshall <keith.d.marshall@ntlworld.com> 1525 1526 * NEWS, doc/groff.texinfo, tmac/groff_ms.man: Document the deletion 1527 of `Ds' and `De' macros. 1528 15292004-09-10 Werner LEMBERG <wl@gnu.org> 1530 1531 In tbl, handle \a as an interpreted leader character if in 1532 compatibility mode. 1533 1534 * src/preproc/tbl/table.h (PREFIX, PREFIX_CHAR, LEADER, 1535 LEADER_CHAR): New macros. 1536 (compatible_flag): New declaration. 1537 1538 * src/preproc/tbl/main.cpp (table_input): Add LEADER_1, LEADER_2, 1539 LEADER_3, and LEADER_4 to `state'. 1540 (table_input::get): Handle `\a'. 1541 1542 * src/preproc/tbl/table.cpp (PREFIX): Removed. 1543 (LEADER_REG): New macro. 1544 (table::init_output): Define LEADER_REG string register if in 1545 compatibility mode. 1546 1547 * src/preproc/tbl/tbl.man: Document it. 1548 15492004-08-18 Werner LEMBERG <wl@gnu.org> 1550 1551 * tmac/doc.tmac (An): Fix error message. 1552 15532004-08-06 Werner LEMBERG <wl@gnu.org> 1554 1555 * src/preproc/tbl/main.cpp (main): Call `fatal' not `error' if a 1556 file can't be opened. UNIX tbl has the same behaviour. 1557 15582004-08-05 Y T <doarhop@hotmail.com> 1559 1560 * src/preproc/grn/hdb.cpp (compatibility_flag): Add declaration. 1561 (DBRead): If in compatibility mode, take into account the text 1562 when computing figure boundaries. 1563 15642004-08-05 Werner LEMBERG <wl@gnu.org> 1565 1566 * src/preproc/soelim/soelim.man: Improved. Based on suggestions 1567 from Tadziu Hoffmann. 1568 15692004-08-03 Werner LEMBERG <wl@gnu.org> 1570 1571 * doc/meref.me: Document `_M' register. 1572 15732004-08-03 Martin Husemann <martin@duskware.de> 1574 1575 Make hpftodit work correctly on big-endian systems. 1576 1577 * src/utils/hpftodit/hpftodit.cpp (File): New method 1578 `get_uint32(char *)'. 1579 (entry): New member `orig_value'. 1580 (read_tags): Use new method. 1581 (output_font_name, read_and_output_pcltypeface, dump_ascii): 1582 Updated. 1583 15842004-08-01 Werner LEMBERG <wl@gnu.org> 1585 1586 * tmac/s.tmac: Undo change 2003-06-29. The proper macro definitions 1587 are already in X11's `macros.t' file. 1588 15892004-08-01 Jeff Conrad <jeff_conrad@msn.com> 1590 1591 * src/utils/hpftodit/hfptodit.cpp (output_font_name, dump_ascii): 1592 Fix casting bug. 1593 (read_and_output_pcltypeface): Handle strings with length <= 4. 1594 15952004-07-27 Egil Kvaleberg <egil@kvaleberg.no> 1596 1597 * tmac/s.tmac (pg@top): Don't save `PO' register. 1598 (pg*end-col, pg*end-page): Directly use `PO' register. 1599 16002004-07-27 Werner LEMBERG <wl@gnu.org> 1601 1602 * man/groff_tmac.man: Mention `trace' and `pic' macro packages. 1603 1604 * src/preproc/refer/refer.cpp (output_references): Check for 1605 empty hash table. 1606 * src/preproc/refer/refer.man: Improve documentation of 1607 `bibliography' command. 1608 16092004-07-26 Werner LEMBERG <wl@gnu.org> 1610 1611 Add requests `fcolor' and `gcolor'. 1612 1613 * src/roff/troff/env.cpp (fill_color_change, glyph_color_change): 1614 New functions. 1615 (init_env_requests): Add `fcolor' and `gcolor'. 1616 1617 * src/roff/troff/input.h: Export do_glyph_color and do_fill_color. 1618 1619 * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: 1620 Document new requests. 1621 16222004-07-24 Werner LEMBERG <wl@gnu.org> 1623 1624 Add support for fractional point sizes in ms macros. A value for 1625 PS, VS, FPS, and FVS greater than or equal to 1000 is always divided 1626 by 1000. For example, `.nr PS 10250' sets the font size to 10.25p. 1627 1628 * tmac/s.tmac (@AU, @AI, par@load-init, par@init, par@reset, NL, 1629 PX): Handle fractional point sizes for PS, VS, FPS, and FVS. 1630 1631 * tmac/groff_ms.man, docs/groff.texinfo, NEWS: Document it. 1632 16332004-07-19 Werner LEMBERG <wl@gnu.org> 1634 1635 * src/preproc/pic/lex.cpp (for_input): Add member `from'. 1636 Update constructor. 1637 (do_for, for_input::get, for_input::peek): Handle negative `by'. 1638 * src/preproc/pic/pic.man, doc/pic.ms, NEWS: Document it. 1639 16402004-07-08 Thomas Klausner <wiz@netbsd.org> 1641 1642 * tmac/doc-syms (doc-str-St--p1003.1-2004): New string. 1643 * tmac/groff_mdoc.man: Updated. 1644 16452004-07-05 Werner LEMBERG <wl@gnu.org> 1646 1647 * doc/groff.texinfo: Further improve documentation of `hcode'. 1648 16492004-07-04 Sang Dae Yu <sdyu@bh.knu.ac.kr> 1650 1651 Improve appearance of arrows in pic. 1652 1653 * src/preproc/pic/object.cpp (draw_arrow): Make outline of filled 1654 arrow head thin. 1655 Use two line segments for drawing non-filled arrow head. 1656 (line_object::print, spline_object::print): Shorten line length to 1657 avoid arrow sticking. 1658 (arc_object::print): Take arrow direction into account. 1659 16602004-07-03 Heinz-J�rgen Oertel <hj.oertel@surfeu.de> 1661 1662 * tmac/groff_www.man: Update documentation of .MPIMG. 1663 16642004-07-03 Werner LEMBERG <wl@gnu.org> 1665 1666 * tmac/an-old.tmac (RI): Always start with font `R'. 1667 (RI, IR): Properly end with font `R'. 1668 16692004-07-02 Paul Eggert <eggert@cs.ucla.edu> 1670 1671 * man/ditroff.man, man/groff_font.man, man/groff_out.man, 1672 src/devices/grohtml/grohtml.man, src/preproc/grn/grn.man, 1673 src/preproc/pic/pic.man, tmac/groff_man.man, tmac/groff_ms.man: 1674 Don't pass more than six arguments to .R, .I, .B, etc., for 1675 compatibility with traditional troff macros. 1676 16772004-07-02 Werner LEMBERG <wl@gnu.org> 1678 1679 * src/roff/troff/input.h: s/COMPATIBLE_SAVE/PUSH_GROFF_MODE/. 1680 s/COMPATIBLE_RESTORE/POP_GROFFCOMP_MODE/. 1681 Update all users. 1682 (PUSH_COMP_MODE): New internal character constant. 1683 Update all users. 1684 1685 * src/roff/troff/input.cpp (get_copy): Handle PUSH_GROFF_MODE, 1686 PUSH_COMP_MODE, and POP_GROFFCOMP_MODE. 1687 (token::next, macro::append): Handle PUSH_COMP_MODE. 1688 (decode_args): Add PUSH_GROFF_MODE or PUSH_COMP_MODE before and 1689 POP_GROFFCOMP after each of the decoded arguments to make them 1690 independent from the compatibility mode status. 1691 (comp_mode): Add `COMP_ENABLE'. 1692 (do_define_string, do_define_macro): Handle COMP_ENABLE. 1693 (define_string, append_string, define_macro, define_indirect_macro, 1694 append_macro, append_indirect_macro): Handle `compatible_flag'. 1695 (chop_macro, substring_request, asciify): Handle PUSH_COMP_MODE. 1696 1697 * man/groff_diff.man, doc/groff.texinfo: Updated. 1698 16992004-07-01 Werner LEMBERG <wl@gnu.org> 1700 1701 * doc/groff.texinfo: Improve documentation of `hcode'. 1702 Use @documentencoding and convert document to latin-1; to do that 1703 make latin characters active and assign proper macros (within a 1704 @tex...@end tex environment). 1705 * doc/Makefile.in (.texinfo.html, groff): Use --enable-encoding. 1706 * doc/Makefile.sub (groff): Ditto. 1707 17082004-06-29 Werner LEMBERG <wl@gnu.org> 1709 1710 Implement two new conditional operators `F <name>' and `S <name>' 1711 which check whether <name> is a valid font or style, respectively. 1712 1713 * src/libs/libgroff/font.cpp (text_file): Add `silent' member. 1714 (text_file::text_file): Updated. 1715 (text_file::error): Don't emit message if `silent' is set. 1716 (font::load_font): Add optional third argument (which is directly 1717 passed to `load'. 1718 (font::load): Add optional second argument to check the header of 1719 a font only, without emitting warning or error messages. 1720 * src/include/font.h (font): Updated. 1721 1722 * src/roff/troff/input.cpp (do_if_request): Implement `S' and `F' 1723 conditionals. 1724 * src/roff/troff/node.cpp (mount_font_no_translate): Add optional 1725 fourth argument to check a font without mounting. 1726 (check_font, check_style): New functions. 1727 * src/roff/troff/node.h: Updated. 1728 1729 * man/groff_diff.man, man/groff.man, NEWS, doc/groff.texinfo: 1730 Updated. 1731 17322004-06-27 Werner LEMBERG <wl@gnu.org> 1733 1734 Implement new string-valued register `.sty' to return the current 1735 style name. 1736 1737 * env.cpp (environment::get_style_name_string): New function. 1738 (init_env_requests): Add `.sty' register. 1739 * env.h (environment): Updated. 1740 * node.cpp (font_info): Make `get_style_name' a friend. 1741 (get_style_name): New function. 1742 * node.h: Updated. 1743 1744 * man/groff_diff.man, man/groff.man, NEWS, doc/groff.texinfo: 1745 Updated. 1746 17472004-06-15 Werner LEMBERG <wl@gnu.org> 1748 1749 * src/preproc/tbl/main.cpp (process_data) <GOT_RIGHT_BRACE>: Handle 1750 `nospaces' option. 1751 17522004-06-10 Colin Percival <colin.percival@wadham.ox.ac.uk> 1753 1754 * doc/meintro.me, doc/meref.me: Don't use \*[td], \n[dy], \*[mo], 1755 and \n[mo] to avoid dependency on current date. 1756 17572004-06-08 Werner LEMBERG <wl@gnu.org> 1758 1759 * Makefile.sub (install_data): New target. 1760 17612004-06-04 Werner LEMBERG <wl@gnu.org> 1762 1763 * src/libs/libxutil/Makefile.sub (EXTRA_CFLAGS): Define. 1764 17652004-06-03 Werner LEMBERG <wl@gnu.org> 1766 1767 * src/devices/xditview/Makefile.sub (EXTRA_LDFLAGS): Fix typo and 1768 order of libraries. 1769 (install_data): Add $(srcdir). 1770 1771 * src/utils/xtotroff/Makefile.sub (EXTRA_LDFLAGS): Fix order of 1772 libraries. 1773 17742004-06-02 Werner LEMBERG <wl@gnu.org> 1775 1776 * aclocal.m4 (GROFF_X11): s/have_no_x/groff_no_x/. 1777 Add X11 stuff to CFLAGS, LDFLAGS, and LIBS temporarily. 1778 Add test for Xmu library. 1779 (GROFF_APPRESDIR_OPTION, GROFF_APPRESDIR_CHECK, 1780 GROFF_APPRESDIR_DEFAULT): New macros. 1781 1782 * configure.ac: Call GROFF_APPRESDIR_OPTION, GROFF_APPRESDIR_CHECK, 1783 and GROFF_APPRESDIR_DEFAULT. 1784 1785 * configure: Regenerated. 1786 1787 * Makefile.in (appresdir): New variable. 1788 (MDEFINES): Add appresdir. 1789 1790 * src/devices/xditview/Makefile.sub (EXTRA_LDFLAGS): Add -Xmu and 1791 -Xt. 1792 (install_data, uninstall_sub): New targets to handle GXditview.ad. 1793 1794 * src/utils/indxbib/Makefiles.ub (install_data): Depend on 1795 `$(srcdir)/eign', not `eign'. 1796 1797 * MANIFEST, INSTALL, NEWS, PROBLEMS: Updated. 1798 1799 * man/groff_out.man, man/roff.man, src/devices/grops/grops.man, 1800 src/devices/xditview/gxditview.man, src/roff/groff/groff.man: 1801 Protect (g)xditview with `\%' to avoid hyphenation. 1802 Other minor formatting. 1803 18042004-06-01 Werner LEMBERG <wl@gnu.org> 1805 1806 Integrate gxditview into groff's standard directory hierarchy. 1807 1808 * src/xditview/*: Moved to ... 1809 * src/devices/xditview/*: Here. 1810 Moved DviChar.h and XFontName.h to src/include. 1811 Moved DviChar.c and XFontName.c to new directory src/libs/libxutil. 1812 Split off `xmalloc' into new file src/libs/libxutil/xmalloc.c. 1813 Moved xtotroff.c to new directory src/utils/xtotroff. 1814 Provide proper Makefile.sub files (reusing the stuff from 1815 Imakefile.in). 1816 DESC renamed to DESC.in. 1817 Removed GXDitview-ad.h, INSTALL, Imakefile.in. 1818 Converted everything from K&R to ANSI C. 1819 Decorated with const where appropriate. 1820 Cast string constants with `String' and `char *' where appropriate. 1821 Made it compile with C++ (used as a C compiler). 1822 Removed other minor compiler warnings. 1823 1824 * src/devices/xditview/device.c: Include config.h, string.h, and 1825 defs.h. 1826 Don't declare `exit', `strtok', `strchr', and `getenv'. 1827 (FONTPATH): Remove. 1828 1829 * src/devices/xditview/font.c: Don't declare `XParseFontName' and 1830 `XFormatFontName'. 1831 1832 * src/devices/xditview/xditview.c: Include config.h. 1833 Include stdio.h earlier. 1834 Protect declaration of `popen' and `pclose' with 1835 NEED_DECLARATION_POPEN and NEED_DECLARATION_PCLOSE. 1836 Replace `caddr_t' with `XtPointer'. 1837 (MakePromptFunc): New typedef. 1838 (DoPrint): Use RETSIGTYPE. 1839 (promptfunction): Change type to MakePromptFunc. 1840 (MakePrompt): Use MakePromptFunc for third argument. 1841 (xmalloc): Removed. 1842 1843 * src/devices/xditview/ad2c: Add casts to `String'. 1844 1845 * src/include/XFontName.h (XFontNameString): Don't use array 1846 notation. 1847 Add prototypes for `XParseFontName', `XFormatFontName', 1848 `XCompareFontName', and `XCopyFontName'. 1849 1850 * src/include/Makefile.sub (HDRS): Add `DviChar.h' and 1851 `XFontName.h'. 1852 1853 * src/utils/xtotroff/xtotroff.c: Include getopt.h. 1854 Don't declare `XParseFontName' and `XFormatFontName'. 1855 (xmalloc): Removed. 1856 (main): Remove `optind' and `optarg'. 1857 1858 * Makefile.in (XDEVDIRS, XPROGDIRS, XLIBDIRS): New variables 1859 (to select programs which need X). 1860 Make XDEVIDIRS depend on `FORCE'. 1861 (X_CFLAGS, X_LIBS, X_EXTRA_LIBS, X_PRE_LIBS): New variables (for 1862 X support). 1863 (MDEFINES): Updated. 1864 (LIBDIRS): Use XLIBDIRS. 1865 (CPROGDIRS): Use XPROGDIRS. 1866 (DEVDIRS): Remove font directories for gxditview. 1867 (ALLDIRS, DISTDIRS): Add XDEVDIRS. 1868 (EXTRADIRS): Remove src/xditview. 1869 1870 * Makefile.sub (DISCLEANFILES): Updated. 1871 1872 * Makefile.comm (LIBXUTIL): New variable. 1873 (.cpp.o, .cpp.obj): Handle EXTRA_CCFLAGS. 1874 (.c.o, .c.obj, .y.o): Handle EXTRA_CFLAGS. 1875 1876 * Makefile.cpg, Makefile.ccpg ($PROG): Handle EXTRA_LDFLAGS. 1877 1878 * aclocal.m4 (GROFF_X11): New function. 1879 1880 * configure.ac: Call GROFF_X11. 1881 Don't create src/xditview/Imakefile. 1882 Don't emit notice how to build gxditview. 1883 1884 * configure: Regenerated. 1885 1886 * test-groff.in (GROFF_BIN_PATH, XENVIRONMENT): Updated. 1887 18882004-05-28 Akihiro Sagawa <sagawa@sohgoh.net> 1889 1890 * Makefile.in (CPPFLAGS): Define. 1891 (MDEFINES): Add CPPFLAGS. 1892 18932004-05-27 Werner LEMBERG <wl@gnu.org> 1894 1895 * arch/misc/Makefile.sub (shdeps.sed): Use $(srcdir). 1896 18972004-05-26 Niklas Edmundsson <nikke@acc.umu.se> 1898 1899 Fix problems with `friend name injections'. 1900 1901 * src/preproc/eqn/box.h (make_mark_box, make_lineup_box, 1902 make_script_box), src/roff/troff/div.h (end_diversions), 1903 src/roff/troff/env.h (title), input.cpp (process_input_stack): Undo 1904 change 2004-04-08. 1905 19062004-05-25 Bernd Warken <bwarken@mayn.de> 1907 1908 * src/preproc/pic/pic.man, doc/pic.ms: Add example for `command'. 1909 19102004-05-25 Werner LEMBERG <wl@gnu.org> 1911 1912 * src/libs/libgroff/cset.cpp, src/libs/libgroff/lf.cpp, 1913 src/libs/libgroff/color.cpp: Include lib.h. 1914 19152004-05-25 Paul Eggert <eggert@cs.ucla.edu> 1916 1917 * PROBLEMS: Update documentation for problems with Sun C++ 5.0 1918 through Forte 6u1, and for how to get GNU make on Solaris. 1919 19202004-05-24 Werner LEMBERG <wl@gnu.org> 1921 1922 * PROBLEMS: Document problems with gcc 3.4.0 on Sun. Reported 1923 by Paul Eggert. 1924 19252004-05-15 Keith Marshall <keith.d.marshall@ntlworld.com> 1926 1927 * arch/misc/Makefile.sub (shdeps.sed): Don't use `$<' in explicit 1928 rule. 1929 19302004-05-14 Werner LEMBERG <wl@gnu.org> 1931 1932 * REVISION: Set to 2. 1933 1934 * aclocal.m4 (GROFF_STDINT_H): Removed. 1935 (GROFF_INTTYPES_H): Define HAVE_CC_INTTYPES_H. 1936 1937 * configure.ac: Updated. 1938 * configure, src/include/config.hin: Regenerated. 1939 1940 * src/libs/libgroff/tmpname.cpp: Don't include stdint.h but 1941 inttypes.h conditionally. 1942 19432004-05-13 Werner LEMBERG <wl@gnu.org> 1944 1945Version 1.19.1 released 1946======================= 1947 19482004-05-10 Stephen Gildea <http://www.gildea.com/stephen> 1949 1950 * src/preproc/refer/label.y (same_author_last_name, 1951 same_author_name): Handle empty sort keys. 1952 19532004-05-10 Werner LEMBERG <wl@gnu.org> 1954 1955 * NEWS, README, TODO, PROJECTS, PROBLEMS, MANIFEST, doc/webpage.ms, 1956 tmac/TODO: Updated. 1957 1958 * tmac/doc-syms (doc-str-Lb-libposix, doc-str-Lb-libpthread, 1959 doc-str-Lb-librt): Reset font. 1960 (Lb): Rename `doc-str-Lb' to `doc-str-Lb1'. 1961 Provide `doc-str-Lb' to reset font. 1962 * tmac/groff_mdoc.man: Updated. 1963 19642004-05-08 Jan Schaumann <jschauma@netmeister.org> 1965 1966 * src/preproc/html/pre-html.cpp (make_message): Make it work for 1967 snprintf versions which don't conform to ANSI C 99 (this is, 1968 counting the string's trailing null byte in the return value). 1969 19702004-05-07 Keith Marshall <keith.d.marshall@ntlworld.com> 1971 1972 * src/roff/troff/node.cpp (suppress_node::tprint): Don't expect 1973 that all implementations of sprintf handle null pointers correctly. 1974 19752004-05-04 Werner LEMBERG <wl@gnu.org> 1976 1977 * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: 1978 Document `.U' register. 1979 1980 * src/roff/troff/env.cpp (environment::mark_last_line) 1981 [WIDOW_CONTROL]: Fix scope of `p' for new C++ compilers. 1982 19832004-05-04 Larry Kollar <kollar@alltel.net> 1984 1985 New read-only register `.U'; it returns 1 in safer mode and 0 1986 otherwise. 1987 1988 * src/roff/troff/input.cpp (init_input_requests): Implement `.U' 1989 register. 1990 19912004-05-03 Werner LEMBERG <wl@gnu.org> 1992 1993 * install-sh, mkinstalldirs: New versions; taken from texinfo CVS. 1994 19952004-04-17 Werner LEMBERG <wl@gnu.org> 1996 1997 * src/include/font.h (font): Use `int' for ch_index. 1998 * src/libs/libgroff/font.cpp (font::alloc_ch_index, 1999 font::compact): Updated. 2000 2001 * src/roff/groff/pipeline.c (run_pipeline) [_WIN32]: Fix compiler 2002 warnings. 2003 2004 * src/roff/troff/div.cpp (begin_page), src/roff/troff/env.cpp 2005 (hyphen_word): Fix compiler warnings. 2006 * src/roff/troff/input.cpp (get_char_for_escape_name): Return 2007 `char'. 2008 Update all callers. 2009 (get_delim_number, get_line_arg): Change second argument type to 2010 `unsigned char'. 2011 (macro_header::copy, token::next, do_define_string, 2012 do_define_character, substring_request, asciify_macro, 2013 unformat_macro, read_size, non_interpreted_node::interpret, 2014 while_request, main: Fix compiler warnings. 2015 (read_color_draw_node): Initialize `col'. 2016 2017 * src/preproc/tbl/table.cpp (horizontal_span, table_entry): Make 2018 `start_col' and `end_col' of type `int'. 2019 (vertical_rule): Make `col' of type `int'. 2020 2021 * src/preproc/grn/hdb.cpp (DBRead): Protect call to getc with check 2022 for EOF. 2023 2024 * src/preproc/refer/label.y (uppercase_array, lowercase_array): 2025 New arrays. 2026 (format_serial): Use them to remove dependency on ASCII. 2027 2028 * src/devices/grops/ps.cpp (ps_printer::define_encoding): Fix 2029 compiler warning. 2030 * src/devices/grops/psrm.cpp (resource_manager::supply_resource): 2031 Ditto. 2032 2033 * src/devices/grotty/tty.cpp (tty_font::load_tty_font): Fix 2034 compiler warnings. 2035 (glyph): Change type of `hpos' to `int'. 2036 2037 * src/devices/lbp/lbp.cpp (strsep): Removed. Unused. 2038 * src/devices/lbp/lbp.h (splinerel): Fix compiler warnings. 2039 2040 * src/utils/tfmtodit.cpp (gf::load): Fix compiler warnings. 2041 2042 * src/utils/pfbtops/pfbtops.c (get_text): Fix compiler warning. 2043 20442004-04-16 Werner LEMBERG <wl@gnu.org> 2045 2046 * src/devices/grolbp/lbp.h, src/preproc/grn/gprint.h, 2047 src/preproc/grn/hgraph.cpp, src/preproc/grn/hpoint.cpp, 2048 src/preproc/html/pushback.cpp, src/preproc/html/pushback.h: Use 2049 `double' instead of `float' everywhere. 2050 * src/preproc/grn/main.cpp: Use `double' instead of `float' 2051 everywhere. 2052 (main): Add return value. 2053 * src/preproc/grn/hdb.cpp: Use `double' instead of `float' 2054 everywhere. 2055 Update all user functions. 2056 2057 * src/include/search.h, src/include/ptable.h, src/include/printer.h, 2058 src/preproc/eqn/box.h, src/preproc/pic/object.h, 2059 src/preproc/refer/refer.h, src/preproc/tbl/table.h, 2060 src/preproc/tbl/table.cpp, src/roff/troff/env.h, 2061 src/roff/troff/div.h, src/roff/troff/token.h, src/roff/troff/node.h, 2062 src/roff/troff/input.cpp, src/roff/troff/request.h, 2063 src/roff/troff/node.cpp: Don't mix `struct' and `class' in forward 2064 declarations. 2065 2066 * src/utils/indxbib/signal.c: Include stdlib.h. 2067 20682004-04-14 Keith Marshall <keith.d.marshall@ntlworld.com> 2069 2070 * tmac/s.tmac (@init, RP): Allow initialization of the PO register 2071 before the first page. 2072 20732004-04-14 Thomas Klausner <wiz@netbsd.org> 2074 2075 * tmac/doc-common (doc-volume-as-*): Use lowercase names. 2076 (doc-operating-system-*): Updated. 2077 * tmac/doc-syms (doc-str-St-*): Various small fixes. 2078 (doc-str-Lb-*): Add more library names. 2079 20802004-04-10 Art Haas <ahaas@airmail.net> 2081 2082 * src/utils/hpftodit/hpuni.cpp (hp_msl_to_unicode_list): Don't 2083 use anonymous type. 2084 20852004-04-09 Art Haas <ahaas@airmail.net> 2086 2087 * src/utils/tfmtodit.cpp (lig_chars): Don't use anonymous type. 2088 20892004-04-09 Keith Marshall <keith.d.marshall@ntlworld.com> 2090 2091 * arch/misc/shdeps.sh: Generate better comment for sed script. 2092 20932004-04-08 Art Haas <ahaas@airmail.net> 2094 2095 * src/libs/libgroff/glyphuni.cpp (glyph_to_unicode_list), 2096 src/libs/libgroff/uniglyph.cpp (unicode_to_glyph_list), 2097 src/libs/libgroff/uniuni.cpp (unicode_decompose_list), 2098 src/preproc/eqn/box.cpp (param_table), src/preproc/grn/hgraph.cpp 2099 (polyfill), src/preproc/grn/main.cpp (polyfill), 2100 src/preproc/refer/command.cpp (command_table), 2101 src/utils/tfmtodit.cpp (lig_table): Don't use anonymous types (which 2102 gcc 3.5 doesn't like). 2103 21042004-04-08 Werner LEMBERG <wl@gnu.org> 2105 2106 Removing many compiler warnings. groff should now compile with 2107 a C++ compiler used for C files also. [Simple variable renamings 2108 to avoid shadowing aren't logged in detail.] 2109 2110 * src/devices/grodvi/dvi.cpp: Some local variable renamings. 2111 (draw_dvi_printer::draw) ['c']: Enclose in block. 2112 2113 * src/devices/grohtml/post-html.cpp: Some local variable renamings. 2114 (page::add_line): Fix typos. 2115 * src/devices/grohtml/html-text.cpp: Some local variable renamings. 2116 2117 * src/devices/grolbp/lbp.cpp: Don't define _GNU_SOURCE. 2118 Some local variable renamings. 2119 * src/devices/grolbp/lbp.h: Some local variable renamings. 2120 2121 * src/devices/grolj4/lj4.cpp, src/devices/grotty/tty.cpp: Some local 2122 variable renamings. 2123 2124 * src/libs/libbib/index.cpp (index_search_item_iterator::get_tag): 2125 Remove redundant local variable declaration. 2126 * src/libs/libbib/map.c (mapread, unmap): Don't use K&R style. 2127 Don't use `caddr_t' but `void *'. 2128 Enclose functions with `extern "C"' for C++. 2129 2130 * src/libs/libdriver/input.cpp (remember_filename, 2131 remember_source_filename): Use cast for string constant. 2132 2133 * src/libs/libgroff/font.cpp, src/libs/libgroff/fontfile.cpp, 2134 src/libs/libgroff/nametoindex.cpp, src/libs/libgroff/paper.cpp, 2135 src/libs/libgroff/geometry.cpp: Some local variable renamings. 2136 * src/libs/libgroff/iftoa.c, src/libs/libgroff/itoa.c: Don't use K&R 2137 style. 2138 Enclose functions with `extern "C"' for C++. 2139 * src/libs/libgroff/quotearg.c (TRUE,FALSE): Define as macros. 2140 (needs_quoting): Return `int'. 2141 (quote_arg): Add proper casts to malloc and realloc. 2142 * src/libs/libgroff/spawnvp.c: Compile code only for MS-DOS and 2143 various MS Windows environments. 2144 (spawnvp_wrapper): Add proper cast to malloc. 2145 2146 * src/preproc/eqn/box.h: Remove redundant declarations of 2147 `make_script_box', `make_mark_box' and `make_lineup_box'. 2148 * src/preproc/eqn/eqn.y: Remove redundant declaration of `strsave'. 2149 * src/preproc/eqn/script.cpp, src/preproc/eqn/pile.cpp: Some local 2150 variable renamings. 2151 2152 * src/preproc/grn/hpoint.cpp: Some local variable renamings. 2153 * src/preproc/grn/hgraph.cpp: Some local variable renamings. 2154 (dx, dy): Renamed functions to... 2155 (deltax, deltay): This. 2156 * src/preproc/grn/main.cpp: Some local variable renamings. 2157 (deffont): Add `const'. 2158 (initpic, conv): Use cast for string constant. 2159 2160 * src/preproc/html/pre-html.cpp: Some local variable renamings. 2161 (makeFileName, alterDeviceTo, addZ): Use cast for string constant. 2162 (char_buffer::run_output_filter): Second argument is unused. 2163 * src/preproc/html/pushback.cpp: Some local variable renamings. 2164 2165 * src/preproc/pic/pic.y: Remove redundant declaration of `do_copy'. 2166 * src/preproc/pic/object.cpp: Some local variable renamings. 2167 2168 * src/preproc/refer/label.y (lookup_label): Remove redundant 2169 declaration of local variable. 2170 2171 * src/preproc/soelim.cpp: Remove redundant declaration of 2172 `interpret_lf_args'. 2173 2174 * src/preproc/tbl/main.cpp: Some local variable renamings. 2175 2176 * src/roff/groff/groff.cpp (main): Use cast for string constant. 2177 * src/roff/groff/pipeline.c: Enclose declarations of `error', 2178 `c_fatal', and `i_to_a' with `extern "C"' for C++. 2179 Don't use C++-style comments. 2180 2181 * src/roff/troff/env.h: Remove redundant declaration of `title'. 2182 * src/roff/troff/node.h, src/roff/troff/env.cpp, 2183 src/roff/troff/div.cpp, src/roff/troff/node.cpp: Some local variable 2184 renamings. 2185 * src/roff/troff/div.h: Remove redundant declaration of 2186 `end_diversions'. 2187 * src/roff/troff/troff.h: Remove redundant declaration of 2188 `cleanup_and_exit' 2189 * src/roff/troff/input.cpp: Remove redundant declaration of 2190 `handle_first_page_transition' and `process_input_stack'. 2191 2192 * src/utils/hpftodit.cpp: Some local variable renamings. 2193 2194 * src/utils/indxbib/signal.c: Enclose functions with `extern "C"' 2195 for C++. 2196 Don't define RETSIGTYPE. 2197 * src/utils/indxbib/indxbib.cpp: Some local variable renamings. 2198 2199 * src/utils/pfbtops/pfbtops.cpp: Don't use K&R style. 2200 (error): Use `const' in argument. 2201 (main): Remove redundant declaration of `optind'. 2202 Move declaration of `Version_string' to top-level. 2203 2204 * PROBLEMS: Document difficulties compiling signal.c if a C++ 2205 compiler is used for C. 2206 22072004-04-07 Werner LEMBERG <wl@gnu.org> 2208 2209 * Makefile.sub (DISTCLEANFILES): Add `test-groff'. 2210 22112004-04-06 Keith Marshall <keith.d.marshall@ntlworld.com> 2212 2213 Make scripts like nroff.sh and neqn.sh portable across various 2214 (Unix-like) shell implementations from Cygwin, MSYS, etc., which use 2215 non-POSIX path separators. The idea is to extend those scripts to 2216 decide at run-time (of the script) which path separator to use. 2217 2218 * arch/misc/Makefile.sub: New file. 2219 * arch/misc/shdeps.sh: New file, generating OS dependency fixups. 2220 This script handles @GROFF_BIN_PATH_SETUP@, replacing it with 2221 a proper definition of the variable `GROFF_RUNTIME'. 2222 2223 * Makefile.in (SH_DEPS_SED_SCRIPT): New variable. 2224 (MDEFINES): Add SH_DEPS_SED_SCRIPT. 2225 (PROGDEPDIRS): New variable. 2226 `FORCE' it. 2227 (PROGDIRS): Add PROGDEPDIRS. 2228 2229 * src/preproc/eqn/Makefile.sub (neqn): Call SH_DEPS_SED_SCRIPT. 2230 Don't substitute @SEP@ and @BINDIR@. 2231 * src/preproc/eqn/neqn.sh: Use @GROFF_BIN_PATH_SETUP@. 2232 (PATH): Use GROFF_RUNTIME. 2233 2234 * src/roff/nroff/Makefile.sub (nroff): Call SH_DEPS_SED_SCRIPT. 2235 Don't substitute @SEP@ and @BINDIR@. 2236 * src/roff/nroff/nroff.sh: Use @GROFF_BIN_PATH_SETUP@. 2237 (PATH): Use GROFF_RUNTIME. 2238 22392004-04-05 Keith Marshall <keith.d.marshall@ntlworld.com> 2240 2241 * src/roff/nroff/nroff.sh: Implement work-around for sh.exe from 2242 Cygwin which doesn't handle stderr correctly. 2243 22442004-03-08 Werner LEMBERG <wl@gnu.org> 2245 2246 * Makefile.comm (install_dev, uninstall_dev): Protect `for' loops 2247 against empty argument. Problem reported by <cgd@broadcom.com>. 2248 22492004-03-05 Keith Marshall <keith.d.marshall@ntlworld.com> 2250 2251 * Makefile.in (SEP): Replaced with... 2252 (RT_SEP, SH_SEP): Separators for the target platform's native path 2253 separator and the build environment, respectively. 2254 (fontpath, tmacpath): Use RT_SEP. 2255 (MDEFINES): Updated. 2256 2257 * contrib/mom/Makefile.sub (GROFF_BIN_PATH): Use SH_SEP. 2258 * doc/Makefile.sub (GROFF_BIN_PATH): Use SH_SEP. 2259 * src/preproc/eqn/Makefile.sub (neqn): Use SH_SEP. 2260 * src/roff/nroff/Makefile.sub (nroff): Use SH_SEP. 2261 22622004-03-05 Werner LEMBERG <wl@gnu.org> 2263 2264 * fonts/devlj4/Makefile.sub (LJ4RES): Set to 1200. This helps to 2265 reduce alignment problems with newer printers which use built-in 2266 TrueType fonts (instead of the older Intellifonts). The ideal 2267 solution is to provide a second set of groff metric files, but this 2268 is extremely time-consuming to produce, given that HP's metric 2269 files are very rudimentary. 2270 22712004-03-01 Werner LEMBERG <wl@gnu.org> 2272 2273 * src/devices/grolj4/lj4.cpp (main): Fix argument of getopt_long. 2274 s/operand/argument/ in error message. 2275 22762004-03-01 Keith Marshall <keith.d.marshall@ntlworld.com> 2277 2278 * src/roff/groff/groff.cpp (main): Don't allow option -o if -Thtml 2279 is in use. 2280 22812004-03-01 Antti Kantee <pooka@netbsd.org> 2282 2283 * tmac/s.tmac (XE): Fix error message. 2284 22852004-02-27 Jeff Conrad <jeff_conrad@msn.com> 2286 2287 * src/include/nonposix.h (write, dup, dup2, close) [_MSC_VER]: 2288 New macros. 2289 2290 * src/roff/groff/pipeline.c: Declare strcasecmp. 2291 (run_pipeline) [_WIN32]: Use function name variants which don't 2292 start with `_'. 2293 Fix stream handling. 2294 22952004-02-27 Keith Marshall <keith.d.marshall@ntlworld.com> 2296 2297 * src/include/nonposix.h: Fix declaration of `system_shell_name'. 2298 Declare `spawnvp_wrapper' and macro definitions of spawnvp only 2299 for platforms which use the native Win32 runtime libraries. 2300 (FLUSH_INPUT_PIPE) [_UWIN]: Provide non-empty version. 2301 2302 * src/libs/libgroff/quotearg.c (QUOTE_ARG_MALLOC_ERROR, 2303 QUOTE_ARG_REALLOC_ERROR): Fix string. 2304 2305 * src/preproc/html/pre-html.cpp: Remove declaration of 2306 `spawnvp_wrapper'. 2307 Don't use __MINGW32__. 2308 s/DEBUG_FILE/DEBUG_FILE_DIR/. 2309 (DEBUG_TEXT, DEBUG_NAME, DEBUG_FILE) [DEBUGGING]: New macros. 2310 (OUTPUT_STREAM, PS_OUTPUT_STREAM, REGION_OUTPUT_STREAM): New macros. 2311 (char_buffer::run_output_filter) [MAY_FORK_CHILD_PROCESS]: Fix 2312 calls to `set_redirection' and `WAIT'. 2313 [MAY_SPAWN_ASYNCHRONOUS_CHILD]: Remove unused variable `i' and `j'. 2314 Fix calls to `set_redirection' and `save_and_redirect'. 2315 (char_buffer::do_html, char_buffer::do_image) [DEBUGGING]: Fix calls 2316 to `set_redirection' and `save_and_redirect'. 2317 (usage): Fix message. 2318 (makeTempFiles, main): Use `DEBUG_FILE'. 2319 23202004-02-21 Werner LEMBERG <wl@gnu.org> 2321 2322 * src/roff/troff/troff.h (WARN_TOTAL): Fix value. 2323 23242004-02-21 Keith Marshall <keith.d.marshall@ntlworld.com> 2325 2326 * src/libs/libgroff/quotearg.c: New file, providing proper argument 2327 quoting for MSVC's spawn* and exec* functions. 2328 * src/libs/libgroff/spawnvp.c: New file, providing a wrapper around 2329 spawnvp with proper quoting for MSVC. 2330 2331 * src/libs/libgroff/assert.cpp (program_name), 2332 src/libs/libgroff/new.cpp (program_name): Declare as `extern "C"'. 2333 * src/libs/libgroff/Makefile.sub (OBJS, CSRCS): Updated. 2334 2335 * src/roff/troff/input.cpp (program_name): Declare as `extern "C"'. 2336 2337 * src/include/error.h (program_name): Declare as `extern "C"'. 2338 * src/include/nonposix.h [__MSDOS__ ...]: Handle spawnvp. 2339 23402004-02-21 Jeff Conrad <jeff_conrad@msn.com> 2341 2342 * src/preproc/html/pre-html.cpp [__CYGWIN__ ...]: Declare 2343 spawnvp_wrapper. 2344 [MAY_SPAWN_ASYNCHRONOUS_CHILD]: Declare i and j. 2345 23462004-02-20 Jeff Conrad <jeff_conrad@msn.com> 2347 2348 * src/roff/groff/pipeline.c (cmd) [__MSDOS__ || ...]: New global 2349 variable. 2350 (sbasename) [__MSDOS__ || ...]: New function. 2351 (system_shell_name) [__MSDOS__ || ...]: Use a different, more 2352 generic algorithm. 2353 (system_shell_dash_c, is_system_shell) [__MSDOS__ || ...]: Updated. 2354 (run_pipeline) [_WIN32]: Use _XXX variants for some macros instead 2355 of XXX. 2356 Use STDOUT_FILENO instead of hardcoded file handle. 2357 (signal_catcher) [__MSDOS__]: Moved to non-_WIN32 section. 2358 23592004-02-19 Werner LEMBERG <wl@gnu.org> 2360 2361 * src/roff/troff/div.cpp: Include nonposix.h after troff.h to 2362 avoid warnings w.r.t. redefinition of P_tmpdir for some compilers. 2363 23642004-02-18 Werner LEMBERG <wl@gnu.org> 2365 2366 * font/devlj4/Makefile.sub (DEVFILES): Updated to contain all 2367 new font and mapping files. 2368 23692004-02-18 Jeff Conrad <jeff_conrad@msn.com> 2370 Keith Marshall <keith.d.marshall@ntlworld.com> 2371 2372 * src/include/nonposix.h (FLUSH_INPUT_PIPE): New macro to empty 2373 an input pipe. This is needed for the MSVC compiler to make troff's 2374 `-o' option work. 2375 2376 * src/roff/troff/div.cpp: Include nonposix.h. 2377 (cleanup_and_exit): Call FLUSH_INPUT_PIPE. 2378 23792004-02-17 Werner LEMBERG <wl@gnu.org> 2380 2381 * font/devlj4/generate/special.awk: New script. 2382 * font/devlj4/generate/Makefile (S): Use special.awk. 2383 * font/devlj4/*: Regenerated, including the following new files: 2384 Arial (AR, AB, AI, ABI), Times New Roman (TNRR, TNRB, TNRI, TNRBI), 2385 MS Symbol (SYMBOL), Wingdings (WINGDINGS). 2386 * NEWS: Document new lj4 fonts and revised hpftodit. 2387 23882004-02-17 Paco Andr�s Verd� <pandres@dragonet.es> 2389 2390 * src/devices/grolbp/lbp.h (vmdvarc): Fix formatting string. 2391 23922004-01-25 Werner LEMBERG <wl@gnu.org> 2393 2394 * src/libs/libgroff/progname.cpp: Replaced with... 2395 * src/libs/libgroff/progname.c: New file. 2396 * src/libs/libgroff/Makefile.sub: Updated accordingly. 2397 23982004-01-17 Werner LEMBERG <wl@gnu.org> 2399 2400 * font/devlj4/generate/Makefile (SYMBOL): Use 9nb28703.tfm. 2401 24022004-01-16 Jeff Conrad <jeff_conrad@msn.com> 2403 2404 * font/devlj4/generate/wingdings.map, 2405 font/devlj4/generate/symbol.map: Include unnamed glyphs. 2406 Use groff glyph names where possible. 2407 * src/devices/grolj4/lj4_font.man: Minor updates. 2408 24092004-01-13 Werner LEMBERG <wl@gnu.org> 2410 2411 * tmac/www.tmac (DC): Handle TTY devices. 2412 2413 * doc/webpage.ms: Document viewCVS from ffii.org. 2414 * NEWS, README: Updated. 2415 2416 * src/roff/groff/groff.man: Mention lj4_font man page. 2417 2418 * font/devlj4/generate/Makefile (SYMBOLMAP, WINGDINGSMAP): New 2419 variables. 2420 (FONTS): Add SYMBOL and WINGDINGS. 2421 (SYMBOL, WINGDINGS): New targets. 2422 24232004-01-13 Jeff Conrad <jeff_conrad@msn.com> 2424 2425 * src/devices/grolj4/lj4_font.man: New man page. 2426 * src/devices/grolj4/Makefile.sub (MAN5): New variable. 2427 * src/devices/grolj4.man: Mention lj4_font man page. 2428 2429 * src/utils/hpftodit/hpftodit.cpp (read_map): Handle line comments. 2430 * src/utils/hpftodit/hpftodit.man: Document it. 2431 (CW): New macro. 2432 Remove details about fonts (which are now in lj4_font.man). 2433 2434 * font/devlj4/generate/symbol.map, 2435 font/devlj4/generate/wingdings.map: New files. 2436 24372004-01-12 Werner LEMBERG <wl@gnu.org> 2438 2439 * README: Mention ffii's viewcvs access. 2440 24412004-01-09 Werner LEMBERG <wl@gnu.org> 2442 2443 * font/devlj4/generate/special.map: Map MSL 228 to U+221F. 2444 24452004-01-09 Jeff Conrad <jeff_conrad@msn.com> 2446 2447 Revert most of the change from 2004-01-03 to better control used 2448 symbol sets. 2449 2450 * src/utils/hpftodit/hpftodit.cpp (symbol_set): New structure. 2451 (text_symbol_sets, special_symbol_sets): New arrays. 2452 (symbol_set_table): New global variable. 2453 (read_symbol_sets): Use search order given in the text_symbol_sets 2454 and special_symbol_sets arrays. If command line flag -a is not 2455 given, search both arrays. 2456 (output_charset): Require x_height_tag only for command line flag -i. 2457 24582004-01-06 Werner LEMBERG <wl@gnu.org> 2459 2460 Implement string-valued registers \n[.m] and \n[.M] to return the 2461 name of the current drawing and background color, respectively. 2462 2463 * src/roff/troff/symbol.h: Moved to... 2464 * src/include/symbol.h: Here. 2465 Small fixes to make it work outside of the `troff' directory. 2466 * src/roff/troff/symbol.cpp: Moved to... 2467 * src/libs/libgroff/symbol.cpp: Here. 2468 Small fixes to make it work outside of the `troff' directory. 2469 2470 * src/include/Makefile.sub (HDRS), src/libs/libgroff/Makefile.sub 2471 (OBJS, CCSRCS), src/roff/troff/Makefile.sub (OBJS, CCSRCS, HDRS): 2472 Updated. 2473 2474 * src/include/color.h: Include symbol.h. 2475 (color): Add new field `nm'. 2476 * src/libs/libgroff/color.cpp (color::color): Updated. 2477 2478 * src/roff/troff/dictionary.cpp, src/roff/troff/div.cpp, 2479 src/roff/troff/node.cpp, src/roff/troff/number.cpp, 2480 src/roff/troff/reg.cpp: Don't include symbol.h. 2481 2482 * src/roff/troff/env.cpp: Don't include symbol.h. 2483 (environment::get_glyph_color_string, 2484 environment_get_fill_color_string): New member functions. 2485 (init_env_requests): Handle `.m' and `.M' registers. 2486 * src/roff/troff/input.cpp: Don't include symbol.h. 2487 (default_symbol): Moved to symbol.cpp/symbol.h. 2488 (do_glyph_color, do_fill_color, define_color): Pass symbol name 2489 to color constructor. 2490 * src/roff/troff/env.h: Updated. 2491 2492 * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: 2493 Document new registers. 2494 24952004-01-05 Werner LEMBERG <wl@gnu.org> 2496 2497 * src/roff/troff/node.cpp (space_node::get_breakpoints, 2498 space_node::nbreaks): Protect against zero `next' field. 2499 25002004-01-03 Jeff Conrad <jeff_conrad@msn.com> 2501 2502 In hpftodit, use the symbol sets offered in the TFM. 2503 2504 * src/utils/hpftodit/hpftodit.cpp (NO_GLYPH): New constant. 2505 (symbol_set, text_symbol_sets, special_symbol_sets, 2506 symbol_set_table): Removed. 2507 (get_printcode): Removed. 2508 (read_symbol_sets): Initialize `symbol_set' field with 2509 `NO_SYMBOL_SET'. 2510 Simplify code to just use the `kind' value. 2511 (output_charset): Improve output formatting. 2512 (dump_symbols): Simplified. 2513 25142004-01-02 Werner LEMBERG <wl@gnu.org> 2515 2516 * font/devlj4/generate/text.map: Add more MSL numbers. 2517 25182004-01-02 Jeff Conrad <jeff_conrad@msn.com> 2519 2520 * src/utils/hpftodit/hpftodit.cpp (is_decomposed): New macro. 2521 (text_symbol_sets): Add more symbol sets. 2522 (debug_flag): New static variable (moved from `main'). 2523 (get_printcode, show_symset): New functions. 2524 (main): Remove `debug_flag'. 2525 (output_charset): Use `show_symset'. 2526 (dump_symbols): Use `show_symset'. 2527 Print symsets for all glyphs. 2528 (read_map): Actually call `unicode_to_ucode_make' but this time 2529 correctly. 2530 25312004-01-01 Werner LEMBERG <wl@gnu.org> 2532 2533 * font/devlj4/generate/text.map, font/devlj4/generate/special.map: 2534 Fix placement of comments. 2535 25362004-01-01 Jeff Conrad <jeff_conrad@msn.com> 2537 2538 * src/utils/hpftodit/hpftodit.cpp (main): Read map file also if 2539 option `-d' is given. 2540 (output_charset): Improve warning messages to give more information. 2541 (dump_symbols): Make information more precise. 2542 (usage): Updated. 2543 (read_map): Don't call unicode_to_ucode_name; the glyph names must 2544 appear as-is and shouldn't be decomposed. 2545 25462003-12-31 Werner LEMBERG <wl@gnu.org> 2547 2548 * src/utils/hpftodit/hpftodit.cpp (dump_tags): Handle posture_tag. 2549 * font/devlj4/generate/Makefile (IFLAG): Updated to new units. 2550 (FONTS): Add TrueType font families Arial and Times New Roman. 2551 (TNRR, TNRB, TNRI, TNRBI, AR, AB, AI, ABI): New targets. 2552 * font/devlj4/generate/text.map: Fix Unicode values of `fi' and 2553 `fl'. 2554 25552003-12-31 Jeff Conrad <jeff_conrad@msn.com> 2556 2557 * test-groff.in (SEP): Quote value. 2558 * src/roff/troff/node.cpp (suppress_node::tprint): Change type of 2559 `tem' to `char*' to avoid deallocation of a pointer to a constant 2560 object which some compilers don't like. 2561 25622003-12-31 Werner LEMBERG <wl@gnu.org> 2563 2564 * font/devlj4/generate (text.map, special.map): Rewritten to work 2565 with the new hpftodit version. 2566 25672003-12-30 Jeff Conrad <jeff_conrad@msn.com> 2568 2569 * src/utils/hpftodit/hpftodit.cpp (output_charset): Emit HP symbol 2570 set and 8bit character code for all glyphs also. 2571 25722003-12-30 Werner LEMBERG <wl@gnu.org> 2573 2574 * src/libs/libgroff/strcasecmp.c: Updated from gnulib. 2575 25762003-12-29 Werner LEMBERG <wl@gnu.org> 2577 2578 More fixes for MSVC compiler. 2579 2580 * doc/Makefile.sub, contrib/mom/Makefile.sub (GROFF_BIN_PATH): Use 2581 $(SEP). 2582 2583 * src/include/nonposix.h (STDIN_FILENO, STDOUT_FILENO, 2584 STDERR_FILENO) [_MSC_VER]: Define conditionally. 2585 (getpid) [_MSC_VER]: Remove. 2586 Include direct.h and process.h conditionally. 2587 2588 * src/roff/troff/node.cpp (suppress_node::tprint): Don't use 2589 parentheses for a_delete. 2590 2591 * src/utils/lookbib/lookbib.cpp: Include nonposix.h. 2592 2593 * test-groff: Replaced with... 2594 * test-groff.in: This new template to handle path separator 2595 properly. 2596 2597 * configure.ac: Check for direct.h and process.h. 2598 Generate test-groff script. 2599 * configure, src/include/config.hin: Regenerated. 2600 26012003-12-28 Werner LEMBERG <wl@gnu.org> 2602 2603 Add integral extension glyph. 2604 Add new option `-x' to afmtodit to suppress use of built-in AGL. 2605 2606 * font/devhtml/R.proto, font/devutf8/R.proto: Add `u23AE'. 2607 2608 * font/devps/generate/textmap: Provide entry for `integralex' to 2609 override (old) PUA value of the AGL. 2610 * font/devps/generate/Makefile (SS): Add afmtodit option `-x'. 2611 * font/devps/*: Regenerated. 2612 2613 * src/utils/afmtodit/afmtodit.pl: Add option `-x'. 2614 * src/utils/afmtodit/afmtodit.man, NEWS: Updated. 2615 26162003-12-27 Werner LEMBERG <wl@gnu.org> 2617 2618 Add forgotten `coproduct' symbol (already available for DVI). 2619 2620 * font/devhtml/R.proto, font/devps/generate/textmap, 2621 font/devps/symbolmap, font/devutf8/R.proto, man/groff_char.man, 2622 src/libs/libgroff/uniglyph.cc, src/libs/libgroff/glyphuni.cpp: Add 2623 U+2210 (\[coproduct]). 2624 26252003-12-26 Jeff Conrad <jeff_conrad@msn.com> 2626 2627 hpftodit has been extended to handle TrueType metric files and 2628 more glyphs. See hpftodit.man for more details. 2629 2630 * src/utils/hpftodit/hpftodit.cpp: Include stdio.h, string.h, 2631 ctype.h, and unicode.h. 2632 s/msl/charcode/ everywhere since we now handle Unicode values also. 2633 (equal, NO, YES, MSL, SYMSET, UNICODE, UNICODE): New macros. 2634 Use it where appropriate. 2635 (MULTIPLIER): Replaced with... 2636 (multiplier): New global static variable. 2637 (scale): Updated. 2638 (tag_type): Add more TFM tags. 2639 (tag_name): New array. 2640 (ENUM_TYPE, FLOAT_TYPE): Removed. 2641 (BYTE_TYPE): New value assigned. 2642 (ASCII_TYPE, RATIONAL_TYPE): New enumeration values. 2643 (text_symbol_sets, special_symbol_sets): Extended to cover more 2644 sets. 2645 (check_type): Add return value. 2646 (check_units): Add parameters to get ppi and upem values. 2647 Handle TrueType TFM data. 2648 (output_font_name): New function. 2649 (output_charset): Add parameter to handle TFM type. 2650 Handle TrueType TFMs also. 2651 (em_fract): New macro. 2652 (dump_tags): Be much more verbose and handle more tags. 2653 (dump_ascii, dump_symbol_sets, dump_symbols): New functions. 2654 (hp_msl_to_ucode_name, unicode_to_ucode_name, is_uname): New 2655 functions. 2656 (read_map): Add parameter to handle TFM type. 2657 Handle both MSL and Unicode mappings. 2658 (main): Add two new command line options `-a' and `-q'. 2659 Updated to make use of new functions. 2660 (usage): Updated. 2661 2662 * src/utils/hpftodit/hpuni.cpp: New file. 2663 2664 * src/utils/hpftodit/Makefile.sub, src/utils/hpftodit/hpftodit.man: 2665 Updated. 2666 26672003-12-25 Werner LEMBERG <wl@gnu.org> 2668 2669 * src/include/nonposix.h (read) [_MSC_VER]: Define. 2670 26712003-12-24 Werner LEMBERG <wl@gnu.org> 2672 2673 * src/utils/afmtodit/afmtodit.man: Some reformulations as suggested 2674 by Michail Vidiassov <master@iaas.msu.ru>. 2675 26762003-12-20 Werner LEMBERG <wl@gnu.org> 2677 2678 * font/devhtml/R.proto: Add u00{47,67}_0306, u00{53,73}_0327, 2679 and u0049_0307. 2680 Add missing latin-2 glyphs. 2681 * font/devutf8/R.proto: Add missing latin-2 glyphs. 2682 2683 * tmac/troffrc: Load `composite.tmac' earlier. 2684 2685 * tmac/dvi.tmac, tmac/ps.tmac, tmac/lbp.tmac: Add u00{47,67}_0306, 2686 u00{53,73}_0327, and u0049_0307. 2687 * tmac/X.tmac: Add u00{47,67}_0306. 2688 * tmac/tty-char.tmac: Use composite glyph names for readability. 2689 2690 * NEWS: Updated. 2691 2692 * src/include/unicode.h: Remove `extern' keywords. 2693 26942003-12-20 Nilg�n Belma Bug�ner <nilgun@superonline.com> 2695 2696 * tmac/latin5.tmac: New file. 2697 26982003-12-19 Werner LEMBERG <wl@gnu.org> 2699 2700 Add some glyphs needed for Turkish. 2701 2702 * font/devutf8/R.proto: Add u00{47,67}_0306, u00{53,73}_0327, 2703 and u0049_0307. 2704 2705 * tmac/composite.tmac: Add `,' as a synonym for `ac' accent. 2706 * tmac/tty-char.tmac: Add representations for u00{47,67}_0306, 2707 u00{53,73}_0327, and u0049_0307. 2708 27092003-12-18 Werner LEMBERG <wl@gnu.org> 2710 2711 * src/devices/grops/ps.cc (ps_output::put_float): Revert change 2712 from 2001-10-04. 2713 Remove trailing zeros. 2714 27152003-12-17 Werner LEMBERG <wl@gnu.org> 2716 2717 Make \? transparent to end-of-sentence recognition. 2718 2719 * src/roff/troff/input.cc (non_interpreted_node): Add 2720 `ends_sentence' member function. 2721 27222003-12-16 Werner LEMBERG <wl@gnu.org> 2723 2724 * doc/groff.texinfo: Document `dt' request correctly. 2725 Other minor typographical improvements. 2726 27272003-12-10 Michail Vidiassov <master@iaas.msu.ru> 2728 2729 * src/utils/afmtodit/Makefile.sub (afmtodit): Fix typo. 2730 27312003-12-10 Richard Stallman <rms@gnu.org> 2732 2733 * LICENSE: Better wording. 2734 27352003-12-09 Werner LEMBERG <wl@gnu.org> 2736 2737 * aclocal.m4 (GROFF_BROKEN_SPOOLER_FLAGS): Set default value to 0. 2738 * configure, NEWS: Updated. 2739 27402003-12-08 Werner LEMBERG <wl@gnu.org> 2741 2742 * FDL: Updated to version 1.2 (from www.gnu.org/copyleft). 2743 27442003-12-07 Bernd Warken <bwarken@mayn.de> 2745 2746 * LICENSE: Updated. 2747 27482003-12-07 Werner LEMBERG <wl@gnu.org> 2749 2750 * INSTALL: Improved. 2751 27522003-12-05 Keith Marshall <keith.d.marshall@ntlworld.com> 2753 2754 Use path separator character of target platform for compiled-in 2755 default paths. 2756 2757 * aclocal.m4 (GROFF_TARGET_PATH_SEPARATOR): New macro. 2758 * configure.ac: Use GROFF_TARGET_PATH_SEPARATOR. 2759 * configure: Regenerated. 2760 * Makefile.in (SEP): Use GROFF_PATH_SEPARATOR. 2761 27622003-12-05 Werner LEMBERG <wl@gnu.org> 2763 2764 * src/include/nonposix.h (PATH_SEP_CHAR): New definition. 2765 Replace `PATH_SEP[0]' with `PATH_SEP_CHAR' everywhere. 2766 27672003-12-04 Bernd Warken <bwarken@mayn.de> 2768 2769 * LICENSE: New file. 2770 27712003-12-03 Werner LEMBERG <wl@gnu.org> 2772 2773 * src/utils/afmtodit/afmtodit.pl: Comment out code which handles 2774 ligatures present in AFM files since groff currently only 2775 understands some standard ligatures and nothing else. 2776 27772003-12-03 Jeff Conrad <jeff_conrad@msn.com> 2778 2779 * src/roff/groff/groff.cpp (main): Don't run the spooler if 2780 option -v is given. 2781 2782 * src/roff/groff/pipeline.c (run_pipeline) [_WIN32]: Fix error 2783 messages. 2784 Close stdout copy. 2785 Don't use Unix wait flags. 2786 27872003-12-02 Werner LEMBERG <wl@gnu.org> 2788 2789 * src/roff/troff/glyphuni.cpp, src/roff/troff/unicode.cpp, 2790 src/roff/troff/unicode.h, src/roff/troff/uniglyph.cpp, 2791 src/roff/troff/uniuni.cpp: Moved to... 2792 * src/libs/libgroff/glyphuni.cpp, src/libs/libgroff/unicode.cpp, 2793 src/libs/libgroff/unicode.h, src/libs/libgroff/uniglyph.cpp, 2794 src/libs/libgroff/uniuni.cpp: Here. 2795 2796 * src/include/Makefile.sub.old (HDRS), 2797 src/libs/libgroff/Makefile.sub (OBJS, CCSRCS), 2798 src/roff/troff/Makefile.sub (HDRS, PBJS, CCSRCS): Updated. 2799 28002003-12-01 Keith Marshall <keith.d.marshall@ntlworld.com> 2801 2802 * src/preproc/htlp/pre-html.cpp (__tmpfile): Renamed to 2803 `DEBUG_FILE'. 2804 Updated all users. 2805 28062003-12-01 Werner LEMBERG <wl@gnu.org> 2807 2808 * groff.texinfo: Document special behaviour of `.vs 0'. 2809 Improve documentation of `cflags' request. 2810 * NEWS: Updated. 2811 28122003-11-29 Werner LEMBERG <wl@gnu.org> 2813 2814 * font/devlj4/generate/Makefile (CORONET): Use correct TFM. 2815 * font/devlj4/CORONET: Regenerated. 2816 28172003-11-24 Werner LEMBERG <wl@gnu.org> 2818 2819 * src/roff/troff/env.cpp (hyphen_trie::read_patterns_file): Fix loop 2820 if processing hyphenation patterns in traditional mode. 2821 Improve error messages. 2822 28232003-11-20 Werner LEMBERG <wl@gnu.org> 2824 2825 * src/roff/troff/node.cpp (troff_output_file::put_char_width, 2826 troff_output_file::put_char): Fix type of local variable `c'. 2827 28282003-11-19 Werner LEMBERG <wl@gnu.org> 2829 2830 * src/roff/groff/pipeline.c (P): Removed. Updated all function 2831 declarations. 2832 (i_to_a): Removed. libgroff already provides this function. 2833 (run_pipeline) [_WIN32]: Don't use itoa but i_to_a. 2834 28352003-11-18 Keith Marshall <keith.d.marshall@ntlworld.com> 2836 2837 * src/roff/groff/pipeline.c (xstrsignal): Fix usage of 2838 HAVE_DECL_SYS_LIST. 2839 28402003-11-17 Werner LEMBERG <wl@gnu.org> 2841 2842 * COPYING: Use correct version. 2843 28442003-11-11 Werner LEMBERG <wl@gnu.org> 2845 2846 LynxOS 4.0.0 doesn't declare vfprintf. 2847 2848 * configure.ac: Check for vfprintf. 2849 * configure: Regenerated. 2850 * src/include/lib.h: Handle `NEED_DECLARATION_VFPRINTF'. 2851 * src/include/config.hin: Regenerated. 2852 28532003-11-10 Werner LEMBERG <wl@gnu.org> 2854 2855 LynxOS 4.0.0 has snprintf (without declaration) but no vsnprintf. 2856 2857 * configure.ac: Check for vsnprintf. 2858 * configure: Regenerated. 2859 * src/include/lib.h: Handle `NEED_DECLARATION_VSNPRINTF' and 2860 `HAVE_VSNPRINTF'. 2861 * src/include/config.hin: Regenerated. 2862 28632003-11-09 Werner LEMBERG <wl@gnu.org> 2864 2865 * aclocal.m4: Updated syntax to autoconf 2.59. 2866 (GROFF_HTML_PROGRAMS): Use AC_FOREACH. 2867 Don't check for gsos2. 2868 (GROFF_SRCDIR, GROFF_BUILDDIR): Removed. autoconf 2.59 provides 2869 working abs_top_srcdir and abs_top_builddir. 2870 2871 * configure.ac: Updated syntax to autoconf 2.59. 2872 Don't call GROFF_SRCDIR and GROFF_BUILDDIR. 2873 Replace call to AC_DECL_SYS_SIGLIST with call to AC_CHECK_DECLS. 2874 * configure: Regenerated. 2875 2876 * Makefile.in, doc/Makefile.in: s/@top_srcdir@/@abs_top_srcdir@/, 2877 s/@groff_top_builddir@/@abs_top_builddir@/. 2878 2879 * src/roff/groff/pipeline.c (xstrsignal): 2880 s/SYS_SIGLIST_DECLARED/HAVE_DECL_SYS_SIGLIST/. 2881 28822003-11-07 Werner LEMBERG <wl@gnu.org> 2883 2884 * src/devices/grodvi/dvi.cpp (draw_dvi_printer::draw) ['a']: Always 2885 make start angle smaller than end angle to circumvent a bug in tpic 2886 handling of some versions of dvipdfm (and dvipdfmx). 2887 28882003-10-30 Werner LEMBERG <wl@gnu.org> 2889 2890 * src/devices/grops/grops.man: Improve section on creating EPS. 2891 28922003-10-29 Werner LEMBERG <wl@gnu.org> 2893 2894 * contrib/pic2graph/pic2graph.sh: Fix typo (-P-letter -> 2895 -P-pletter). 2896 28972003-10-28 Werner LEMBERG <wl@gnu.org> 2898 2899 * doc/groff.texinfo: Fix documentation of `.if'. 2900 29012003-10-27 Michail Vidiassov <master@iaas.msu.ru> 2902 2903 * src/utils/afmtodit/afmtodit.pl: Handle unmapped characters of 2904 the form `uniXXXX' also. 2905 29062003-10-27 Werner LEMBERG <wl@gnu.org> 2907 2908 * contrib/eqn2graph/eqn2graph.sh, contrib/grap2graph/grap2graph.sh, 2909 contrib/pic2graph/pic2graph.sh: Implement secure management of 2910 temporary files. 2911 Pass `-P-pletter' to groff to avoid data outside of the converted 2912 area -- some versions of `convert' (for example 5.3.8) don't check 2913 the bounding box of the image but always use a fixed image size 2914 (letter paper format). 2915 * contrib/eqn2graph/eqn2graph.man, contrib/grap2graph/grap2graph.man, 2916 contrib/pic2graph/pic2graph.man: Updated. 2917 2918 * src/roff/groff/groff.man: Document $TMP and $TEMP. 2919 29202003-10-26 Werner LEMBERG <wl@gnu.org> 2921 2922 * src/preproc/pic/troff.cpp (troff_output::simple_circle, 2923 troff_output::simple_ellipse, troff_output::simple_arc, 2924 troff_output::simple_line, troff_output::simple_spline, 2925 troff_output::simple_polygon): Insert a space before arguments. 2926 (troff_output::set_fill): Emit `\&' before `\D'Fg...' since the 2927 latter doesn't produce a node, so the following `.sp -1' would do 2928 the wrong thing. 2929 Don't emit `.sp -1' after \M. This also doesn't produce a token 2930 (and we don't have to care about compatibility mode). 2931 (troff_output::set_color, troff_output::reset_color): Don't emit 2932 `.sp -1' after \M and \m. 2933 2934 * src/roff/troff/input.cpp (old_have_input): New global variable. 2935 (input_stack::get): Handle `old_have_input'. 2936 (process_input_stack) <token::TOKEN_NEWLINE>: Call 2937 `trapping_blank_line' depending on `old_have_input', not 2938 `have_input'. 2939 29402003-10-20 Keith Marshall <keith.d.marshall@ntlworld.com> 2941 2942 * src/libs/libgroff/tmpfile.cpp [__MSDOS__, _Win32] 2943 (WIN32_TMPDIR_ENVVAR, MSDOS_TMPDIR_ENVVAR): New macros, providing 2944 default directory names for temporary files. 2945 [__MSDOS__, _Win32] (temp_init::temp_init): Use them. 2946 2947 * src/roff/groff/pipeline.c [__MSDOS__]: Include stdlib.h. 2948 [__MSDOS__] (run_pipeline): Honour environment variables. 2949 Don't use `tmpnam' but `tempnam' to work around messy 2950 implementation. 2951 2952 * README.MinGW: New file. 2953 29542003-10-16 Werner LEMBERG <wl@gnu.org> 2955 2956 * src/preproc/html/pre-html.cpp (write_upto_newline): Don't use 2957 `(*t)->next' without testing validity of `*t'. 2958 (usage): Make it more readable. 2959 29602003-10-16 Keith Marshall <keith.d.marshall@ntlworld.com> 2961 2962 Make html device run under both MS-DOS and Win32. 2963 2964 * src/preproc/html/pre-html.cpp (MAY_FORK_CHILD_PROCESS, 2965 MAY_SPAWN_ASYNCHRONOUS_CHILD): New macros to control whether 2966 spawn or fork+exec has to be used, and whether parent must sleep 2967 until the child process terminates. Used in 2968 `char_buffer::run_output_filter'. 2969 (copyofstdoutfd): Removed. 2970 (char_buffer): Replace `write_file_html' and `write_file_troff' 2971 member functions with `emit_troff_output' and `run_output_filter'. 2972 (DEVICE_FORMAT, HTML_OUTPUT_FILTER, IMAGE_OUTPUT_FILTER): New 2973 macros. 2974 (replaceFd): Replaced with... 2975 (set_redirection): New auxiliary function. 2976 (waitForChild): Replaced with... 2977 (save_and_redirect): New auxiliary function for. 2978 2979 (char_buffer::do_html, char_buffer::do_image): Simplified, using new 2980 functions. 2981 29822003-10-14 Keith Marshall <keith.d.marshall@ntlworld.com> 2983 2984 * aclocal.m4 (GROFF_SYS_NERR): Check stdlib.h also. 2985 (GROFF_LIBC): New function. 2986 * configure.ac: Call GROFF_LIBC. 2987 Check for `kill'. 2988 * configure: Regenerated. 2989 2990 * src/include/lib.h: Handle __MINGW32__. 2991 * src/include/nonposix.h [_MSC_VER]: Handle __MINGW32__. 2992 Add macro for `pipe'. 2993 Define P_tmpdir. 2994 2995 * src/roff/groff/pipeline.c (run_pipeline): Handle `no_pipe' 2996 correctly. 2997 2998 * src/utils/indxbib/signal.c (handle_fatal_signal) [!HAVE_KILL]: 2999 Implement. 3000 30012003-10-13 Werner LEMBERG <wl@gnu.org> 3002 3003 Finally fix change 2003-08-26, based on ideas from Chuck Silvers 3004 <chuq@chuq.com>. 3005 3006 * contrib/mom/Makefile.sub: Use a stamp file in the `examples' 3007 directory. 3008 30092003-10-12 Werner LEMBERG <wl@gnu.org> 3010 3011 * src/roff/groff/groff.cpp (help), src/devices/grops/ps.cpp (usage), 3012 src/roff/troff/input.cc (usage): Updated. 3013 3014 * NEWS, doc/groff.texinfo: Updated. 3015 30162003-10-12 Peter Miller <millerp@canb.auug.org.au> 3017 3018 * src/libs/libgroff/searchpath.cpp 3019 (search_path::open_file_cautious): New function which also handles 3020 `-' as stdin and stdout depending on the access mode. 3021 * src/include/searchpath.h (search_path): Updated. 3022 3023 * src/devices/grops/ps.cpp (main): Handle new `-I' switch. 3024 * src/devices/grops/ps.h: Include `searchpath.h'. 3025 * src/devices/grops/psrm.cpp (resource_manager::supply_resource): 3026 Open resource file with `include_search_path.open_file_cautious'. 3027 * src/devices/grops/grops.man: Document new `-I' switch. 3028 3029 * src/devices/grodvi/dvi.cpp (main), src/devices/grolbp/lbp.cpp 3030 (main), src/devices/grolj4/lj4.cpp (main), 3031 src/devices/grotty/tty.cpp (main): Ignore new `-I' switch. 3032 3033 * src/preproc/soelim/soelim.cpp (include_list_length, include_list): 3034 Replaced with... 3035 (include_search_path): New global variable. 3036 (include_path_append): Removed. 3037 (main): Use `include_search_path.command_line_dir' to handle `-I'. 3038 (do_file): Simplify, using new 3039 `include_search_path.open_file_cautious'. 3040 3041 * src/roff/groff/groff.cpp (print_commands): Accept file handle as 3042 parameter. 3043 (main): Pass arguments to `-I' to both troff and devices. 3044 Improve handling of `-V'. 3045 * src/roff/groff/groff.man: Document changes to -I and -V. 3046 3047 * src/roff/troff/input.cpp (include_search_path): New global 3048 variable. 3049 (next_file, source, ps_bbox_request, transparent_file, 3050 process_input_file): Use new 3051 `include_search_path.open_file_cautious'. 3052 (main) Handle `-I' switch. 3053 * src/roff/troff/node.cpp (troff_output_file::really_copy_file): 3054 Use new `include_search_path.open_file_cautious'. 3055 * src/roff/troff/node.h: New extern symbol `include_search_path'. 3056 * src/roff/troff/troff.man: Document new `-I' switch. 3057 30582003-09-15 Ruslan Ermilov <ru@FreeBSD.org> 3059 3060 Support multiple calls of .Lb in LIBRARY section. 3061 3062 * tmac/doc-common (doc-in-library-section): New register. 3063 (doc-section-library): New string. 3064 (Sh): Set `doc-in-library-section'. 3065 (Rd): Updated. 3066 * tmac/doc-syms (Lb): Insert breaks before and after arguments 3067 if in LIBRARY section. 3068 * tmac/doc.tmac (doc-save-global-vars): Updated. 3069 * NEWS, tmac/groff_mdoc.man: Updated. 3070 30712003-09-14 Ruslan Ermilov <ru@FreeBSD.org> 3072 3073 * tmac/doc-common (doc-default-operating-system): New variable. 3074 (Os): Use it. 3075 30762003-09-08 Werner LEMBERG <wl@gnu.org> 3077 3078 * tmac/doc.tmac (doc-reset-reference): Handle data for `%I' also. 3079 30802003-08-31 Werner LEMBERG <wl@gnu.org> 3081 3082 * contrib/mom/Makefile.sub: Fix last change to make it really work. 3083 * Makefile.comm: Use `test ... ||' in favor of `if test ...; then'. 3084 (install_dev, uninstall_dev): Check whether $(DEVSCRIPTS) and 3085 $(DEVFILES) are not empty. 3086 * Makefile.in: Use `test ... ||' in favor of `if test ...; then'. 3087 30882003-08-26 Chuck Silvers <chuq@chuq.com> 3089 3090 * contrib/mom/Makefile.sub (prepare_make_examples): Make it work 3091 with parallel runs of `make'. 3092 30932003-08-23 Stephen Gildea <http://www.gildea.com/stephen> 3094 3095 * src/preproc/ref/ref.cpp (reference::compute_sort_key): Always 3096 insert SORT_SEP. With certain combinations of sort specifications, 3097 refer sorted entries in the wrong order. In particular, entries 3098 with a missing field should be be sorted before all entries that 3099 have that field, before refer looks to the next field. 3100 31012003-08-23 Werner LEMBERG <wl@gnu.org> 3102 3103 * src/utils/pfbtops/Makefile.sub (LINK.c): Define it so that the 3104 g++ linker is used. Reported by Mark J. Reed 3105 <mark.reed@turner.com>. 3106 31072003-08-16 Heinz-J�rgen Oertel <hj.oertel@surfeu.de> 3108 3109 Add key character `x' to tbl which makes tbl call a user-defined 3110 macro on a table cell. 3111 3112 * src/preproc/tbl/table.h (entry_modifier): Add `macro'. 3113 * src/preproc/tbl/table.cpp (block_entry::do_divert): Call 3114 `set_modifier' after printing the compatibility request. 3115 (set_modifier): Print call to `m->macro' if not empty. 3116 * src/preproc/tbl/main.cpp (entry_format::debug_print): Handle 3117 `macro'. 3118 (process_format): Implement cases `x' and `X'. 3119 * src/preproc/tbl/tbl.man, NEWS: Updated. 3120 31212003-08-15 Werner LEMBERG <wl@gnu.org> 3122 3123 * doc/groff.texinfo: Minor fixes. 3124 31252003-08-09 Werner LEMBERG <wl@gnu.org> 3126 3127 * tmac/an-old.tmac [cR]: Fix redefinition of `bp'. 3128 31292003-08-07 Werner LEMBERG <wl@gnu.org> 3130 3131 * doc/Makefile.sub: Not all shells expand wildcards in the `for' 3132 argument list to nothing if there is no file to match. Use `ls' as 3133 a protection, similar to autoconf. 3134 3135 * Makefile.comm (install_dev, uninstall_dev): Protect `for' against 3136 empty argument lists. 3137 3138 * doc/groff.texinfo: Improve documentation how vertical spacing 3139 and line breaks interact. 3140 Other minor fixes. 3141 3142 * tmac/www.tmac: Initialize `www-htmlimage-gap'. 3143 31442003-08-03 Werner LEMBERG <wl@gnu.org> 3145 3146 * NEWS, src/devices/grops/grops.man: -b16 is necessary to produce 3147 EPS (using eps2eps or similar programs to compute the bounding box). 3148 31492003-07-24 Werner LEMBERG <wl@gnu.org> 3150 3151 * doc/groff.texinfo: Use the new @/ command to avoid overlong lines. 3152 * doc/texinfo.tex: Updated from texinfo 4.6. 3153 * README.CVS: From now on we need texinfo 4.6. 3154 31552003-07-23 Werner LEMBERG <wl@gnu.org> 3156 3157 Add requests `dei1' and `ami1' for completeness. 3158 3159 * src/roff/troff/input.cc (calling_mode): Remove 3160 CALLING_DISABLE_COMP. 3161 (comp_mode): New enumeration. 3162 (do_define_string, define_string, define_nocomp_string, 3163 append_string, append_nocomp_string): Updated. 3164 (do_define_macro): Add third parameter. 3165 (define_macro, define_nocomp_macro, define_indirect_macro, 3166 append_macro, append_nocomp_macro, append_indirect_macro): Updated. 3167 (define_indirect_nocomp_macro, append_indirect_nocomp_macro): New 3168 functions. 3169 (ignore): Updated. 3170 (init_input_requests): Add `dei1' and `ami1'. 3171 3172 * tmac/trace.tmac: Handle de1 and am1. 3173 (de): Improve tracing message. 3174 (am): Add missing `do'. 3175 (return): Use de1. 3176 3177 * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: 3178 Document new requests. 3179 31802003-07-22 Heinz-J�rgen Oertel <hj.oertel@surfeu.de> 3181 3182 Add option -G to .MPIMG to insert a gap between text and the image. 3183 3184 * tmac/www.tmac (www-finish-left-po, www-finish-right-ll, 3185 www-finish-left-ll): Updated. 3186 (www-image-just, www-image-gap, www-htmlimage-gap): New variables. 3187 (MPIMG): Make option -L and -R optional. 3188 Implement option -G. 3189 31902003-07-22 Gaius Mulley <gaius@glam.ac.uk> 3191 3192 * src/devices/grohtml/post-html.cpp 3193 (html_printer::do_file_components): Don't use `stdout' as lvalue 3194 since it can be a macro. 3195 31962003-07-22 Werner LEMBERG <wl@gnu.org> 3197 3198 * src/libs/libgroff/strerror.c: Include errno.h to be in sync with 3199 the corresponding test in aclocal.m4. 3200 32012003-07-21 Werner LEMBERG <wl@gnu.org> 3202 3203 * src/preproc/html/pre-html.cpp (TRANSPARENT): Don't use colour 3204 names but RGB values directly. Otherwise pnmtopng depends on 3205 an external file `rgb.txt' which maps colour names to values. 3206 32072003-07-20 Werner LEMBERG <wl@gnu.org> 3208 3209 * aclocal.m4 (GROFF_SYS_ERRLIST): Include stdlib.h for MinGW. 3210 * configure, src/include/config.hin: Regenerated. 3211 3212 * src/libs/libgroff/strerror.c: Include stdlib.h for MinGW. 3213 32142003-07-19 Werner LEMBERG <wl@gnu.org> 3215 3216 * PROBLEMS: Add solution for UTF-8 problem with hyphens. 3217 32182003-07-18 Werner LEMBERG <wl@gnu.org> 3219 3220 * *.man: Switch to non-compatibility mode temporarily if GNU 3221 syntax extensions are used in the particular man page. 3222 3223 * PROBLEMS: Add solutions for SGR problems. 3224 32252003-07-17 Werner LEMBERG <wl@gnu.org> 3226 3227 Don't ignore grotty's command line options if \X'tty: sgr ...' is 3228 used to change the drawing scheme. 3229 3230 * src/devives/grotty/tty.cpp (bold_flag_option, 3231 underline_flag_option, italic_flag_option, reverse_flag_option, 3232 bold_underline_mode_option): New global variables. 3233 (update_options): New function. 3234 (tty_printer::special): Call update_options. 3235 (main): Don't set xxx_flag but xxx_flag_option, then call 3236 update_options. 3237 32382003-07-14 Werner LEMBERG <wl@gnu.org> 3239 3240 Make grotty emit proper Unicode box drawing characters for -Tutf8. 3241 3242 * src/devices/grotty/tty.cpp (START_LINE, END_LINE): New enum 3243 values. 3244 (hline_char, vline_char): New global variables. 3245 (tty_printer::tty_printer): Initialize them. 3246 (tty_printer::draw): Emit START_LINE and END_LINE flags for both 3247 horizontal and vertical lines. 3248 (crossings): New global array. 3249 (tty_printer::end_page): Use it to determine the proper crossing 3250 character for -Tutf8. 3251 32522003-07-12 Werner LEMBERG <wl@gnu.org> 3253 3254 * doc/Makefilesub (HTMLDOCFILESALL): New macro. 3255 (HTMLDOCFILES): Revert to `pic.html'. 3256 (CLEANADD, install_html, uninstall_sub): Use HTMLDOCFILESALL. 3257 32582003-07-11 Werner LEMBERG <wl@gnu.org> 3259 3260 * doc/pic.ms: Improve documentation of absolute coordinates. 3261 Document absolute positioning of pictures. 3262 3263 * NEWS: Add new pic capability. 3264 32652003-07-09 Hartmut Henkel <hartmut_henkel@gmx.de> 3266 3267 * src/libs/libgroff/geometry.cpp (check_output_arc_limits): 3268 Rewritten. 3269 32702003-07-07 Werner LEMBERG <wl@gnu.org> 3271 3272 Implement support for dashed and dotted ellipses in pic. Based on 3273 a patch from Hartmut Henkel <hartmut_henkel@gmx.de>. 3274 3275 * src/preproc/pic/common.cpp (common_output::ellipse_arc, 3276 common_output::dashed_ellipse, common_output::dotted_ellipse): New 3277 functions. Ellipse arcs are approximated with circle arcs. 3278 * src/preproc/pic/common.h (common_output): Updated. 3279 * src/preproc/pic/tex.cpp (tex_output::ellipse): Use new ellipse 3280 functions. 3281 * src/preproc/pic/troff.cpp (simple_output::ellipse): Ditto. 3282 3283 * src/preproc/pic/TODO, src/preproc/pic/pic.man: Updated. 3284 32852003-07-06 Werner LEMBERG <wl@gnu.org> 3286 3287 Make grotty work on platforms which have unsigned char as the 3288 default for char. Based on a patch by Thomas Klausner 3289 <wiz@netbsd.org>. 3290 3291 * src/devices/grotty/tty.cpp (schar): New typedef. 3292 Updated calls to declare_ptable and implement_ptable. 3293 (glyph): Use schar for back_color_idx and fore_color_idx. 3294 (tty_printer): Use schar for curr_fore_idx and curr_back_idx. 3295 (tty_printer::tty_color, tty_printer::tty_printer, 3296 tty_printer::color_to_idx, tty_printer::put_color): Updated. 3297 32982003-07-06 Ruslan Ermilov <ru@FreeBSD.org> 3299 3300 * src/roff/nroff/nroff.sh: Add option -d for completeness. 3301 * src/roff/nroff/nroff.man: Updated. 3302 33032003-07-05 Werner LEMBERG <wl@gnu.org> 3304 3305 * NEWS, tmac/groff_www.man: Updated. 3306 * doc/Makefile.sub: Updated. 3307 33082003-07-05 Gaius Mulley <gaius@glam.ac.uk> 3309 3310 Implement support for multiple HTML output files. 3311 3312 * src/preproc/html/pre-html.cpp (scanArguments): Dummy handling for 3313 -j command line option. 3314 3315 * src/devices/grohtml/post-html.cpp (job_name, multiple_files): New 3316 global variables. 3317 (file): New fields `new_output_file', `require_links', 3318 `output_file_name'. 3319 (file::file): Updated. 3320 (files::set_file_name, files::set_links_required, 3321 files::are_links_required, files::is_new_output_file, 3322 files::file_name, files::next_file_name): New functions. 3323 (header_desc): New fields `no_of_level_one_headings', 3324 `header_filename'. 3325 (header_desc::header_desc): Updated. 3326 (header_desc::write_headings): Handle multiple files. 3327 (html_printer::write_header): Save file name in which header occurs. 3328 (html_printer::determine_header_level): Possibly split files on 3329 level one headings. 3330 (html_printer::do_links, html_printer::troff_tag): Updated. 3331 (html_printer::insert_split_file, html_printer::do_job_name, 3332 html_printer::emit_link, html_printer::write_navigation, 3333 html_printer::do_file_components): New functions. 3334 (html_printer::~html_printer): Handle multiple files. 3335 (main): Handle command line option `-j'. 3336 3337 * src/devices/grohtml/grohtml.man: Updated. 3338 3339 * doc/Makefile.sub (pic.html), doc/Makefile.in (pic.html): New rule 3340 which splits file. 3341 3342 * tmac/www.tmac (JOBNAME): New macro. 3343 * tmac/s.tmac (SH-NO-TAG): New macro. 3344 (@SH): Call SH-NO-TAG. 3345 (@NH): Updated. 3346 33472003-07-05 Ruslan Ermilov <ru@FreeBSD.org> 3348 3349 * tmac/groff_mdoc.man: Improve documentation of punctuation 3350 characters. 3351 33522003-07-04 Ruslan Ermilov <ru@FreeBSD.org> 3353 3354 * tmac/doc.tmac (Bd): Change to doc-Li-font later. 3355 33562003-07-03 Werner LEMBERG <wl@gnu.org> 3357 3358 * tmac/an-old.tmac [cR]: Redefine `bp' to avoid empty lines. 3359 33602003-07-01 Ruslan Ermilov <ru@FreeBSD.org> 3361 3362 * tmac/doc.tmac (doc-do-func, doc-do-func-args): Don't print a comma 3363 after `/*' and `*/'. 3364 Fix spacing. 3365 (Fn, Fo): Reduce indentation in synopsis. 3366 3367 * tmac/doc-common (doc-check-depth): New macro. 3368 (doc-end-macro, Sh, Ss): Use it. 3369 (Cd): Fix behaviour in synopsis. 3370 (In): Make it parsed and callable. 3371 If not in the synopsis, represent the C header file enclosed in 3372 angle brackets. 3373 (doc-str-Rv-std-suffix, doc-str-Rv-stds-suffix, doc-str-Rv-std0): 3374 Use minus, not hyphen. 3375 3376 * tmc/groff_mdoc.man: Updated. 3377 33782003-07-01 Werner LEMBERG <wl@gnu.org> 3379 3380 Integrated grap2graph, contributed by Eric S. Raymond. 3381 3382 * contrib/grap2graph/{Makefile.sub, grap2graph.sh, grap2graph.man}: 3383 New files. 3384 * Makefile.in, NEWS, MANIFEST, contrib/eqn2graph.man, 3385 contrib/pic2graph.man, src/roff/groff/groff.man: Updated. 3386 33872003-07-01 Colin Watson <cjwatson@debian.org> 3388 3389 * src/xditview/*.c: Add prototypes, fix return types, add includes. 3390 Based on work by Fumitoshi UKAI <ukai@debian.or.jp>. 3391 33922003-06-31 Ruslan Ermilov <ru@FreeBSD.org> 3393 3394 * tmac/tty-char.tmac: Provide `lb', `rb', `lk', `rk', `lt', `rt'. 3395 33962003-06-31 Werner LEMBERG <wl@gnu.org> 3397 3398 * doc/Makefile.sub (CLEANADD): Remove all files created by 3399 running `make groff.{pdf,dvi}'. 3400 3401 * Makefile.sub (DISTCLEANFILES): Remove all non-source files from 3402 src/xditview also. 3403 34042003-06-30 Werner LEMBERG <wl@gnu.org> 3405 3406 * Makefile.in (SHELL): Define as @SHELL@. 3407 (mkinstalldirs): Use $(SHELL). 3408 (MDEFINES): Add $(SHELL). 3409 * Makefile.comm (SHELL): Removed. 3410 34112003-06-29 Werner LEMBERG <wl@gnu.org> 3412 3413 * tmac/s.tmac (De, Ds): New aliases for .DE and .DS, respectively. 3414 The X11 documentation files use them. 3415 * tmac/groff_ms.man, doc/groff.texinfo: Document them. 3416 34172003-06-15 Robert Goulding <goulding@Princeton.EDU> 3418 3419 * tmac/e.tmac (@C): Handle .ad also. 3420 34212003-06-12 Werner LEMBERG <wl@gnu.org> 3422 3423 * src/preproc/tbl/tbl.man: Document formatting of text blocks. 3424 3425 * src/roff/troff/input.cc (token::next) <handle_escape_char>: 3426 Assign `n' even here. It is possible to construct a node 3427 immediately following an escape character: 3428 3429 .di xx 3430 \?\\\?a 3431 .br 3432 .di 3433 .xx 3434 34352003-06-10 Werner LEMBERG <wl@gnu.org> 3436 3437 * README.WIN32: Removed. 3438 * MANIFEST: Updated. 3439 34402003-06-07 Werner LEMBERG <wl@gnu.org> 3441 3442 * src/roff/nroff/nroff.sh: Don't emit SGR for option -u. 3443 34442003-06-05 Werner LEMBERG <wl@gnu.org> 3445 3446 * src/preproc/pic/pic.y <sprintf_args>: Implement workaround for bug 3447 in Compaq C++ V6.5-033 for Compaq Tru64 UNIX V5.1A (Rev. 1885). 3448 34492003-06-03 Werner LEMBERG <wl@gnu.org> 3450 3451 * src/preproc/grn/hdb.cpp (DBRead): Don't close file handle; this 3452 is done by the calling function. 3453 34542003-05-22 Ruslan Ermilov <ru@FreeBSD.org> 3455 3456 * tmac/X.tmac: Fix definition of `em'. 3457 34582003-05-22 Werner LEMBERG <wl@gnu.org> 3459 3460 * src/roff/troff/input.cc (return_macro_request): Fix detection of 3461 argument. 3462 34632003-05-18 Werner LEMBERG <wl@gnu.org> 3464 3465 * tmac/doc.tmac (doc-tag-list): Force horizontal mode after tag 3466 to make items work which consist only of a tag. 3467 34682003-05-17 Werner LEMBERG <wl@gnu.org> 3469 3470 * tmac/doc.tmac (doc-tag-list): Don't use \Z to assure that spaces 3471 aren't stretched in a tag (this can fail with unformatted boxes). 3472 Instead, insert a break and go back one line. 3473 34742003-05-16 Werner LEMBERG <wl@gnu.org> 3475 3476 * src/roff/troff/input.cc (return_macro_request): If called with 3477 argument pop macro twice. We need this to trace `return'. 3478 3479 * tmac/trace.tmac: Handle `return'. 3480 Fix typos. 3481 3482 * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: 3483 Document. 3484 34852003-05-15 Larry Kollar <kollar@alltel.net> 3486 3487 * tmac/groff_ms.man, doc/groff.texinfo: Improve documentation of 3488 registers `FPS', `FVS', and `FPD'. 3489 34902003-05-15 Werner LEMBERG <wl@gnu.org> 3491 3492 * src/utils/pfbtops/pfbtops.c (get_text): Handle loop counter 3493 correctly. 3494 34952003-05-03 Ruslan Ermilov <ru@FreeBSD.org> 3496 3497 * tmac/groff_mdoc.man: Slight improvements. 3498 34992003-05-03 Werner LEMBERG <wl@gnu.org> 3500 3501 * tmac/doc-common (doc-header): Emit vertical space of 1v instead of 3502 `doc-header-space' after header line if register `cR' is set. 3503 35042003-05-02 Werner LEMBERG <wl@gnu.org> 3505 3506 * TODO: Updated. 3507 35082003-05-01 Ruslan Ermilov <ru@FreeBSD.org> 3509 3510 * tmac/doc-common (Nd): Use \[em]. 3511 35122003-05-01 Werner LEMBERG <wl@gnu.org> 3513 3514 * tmac/doc-ditroff, tmac/doc-nroff (doc-header-space, 3515 doc-footer-space): Initialize to 0.5i. 3516 (doc-setup-page-layout): Don't set doc-header-space and 3517 doc-footer-space. 3518 35192003-04-30 Werner LEMBERG <wl@gnu.org> 3520 3521 * REVISION: Set to 1. 3522 3523 * doc/pic.ms: Document possible problems with `figname'. 3524 35252003-04-29 Werner LEMBERG <wl@gnu.org> 3526 3527Version 1.19 released 3528===================== 3529 3530 * VERSION: Set to 1.19. 3531 * REVISION: Set to 0. 3532 * doc/groff.texinfo, doc/webpage.ms, NEWS: Updated. 3533 3534 * src/devices/grohtml/post-html.cpp (html_printer::~html_printer): 3535 Define charset as `US-ASCII' in html output. 3536 3537 * tmac/www.tmac (ULE): Add missing scaling indicator. 3538 3539 * win32-diffs: Removed. 3540 35412003-04-28 Werner LEMBERG <wl@gnu.org> 3542 3543 * doc/groff.texinfo: Document `dn' and `dl' registers if used with 3544 `.da' and `.boxa'. 3545 Document how to insert discardable whitespace with `.ss'. 3546 35472003-04-27 Werner LEMBERG <wl@gnu.org> 3548 3549 * src/preproc/pic/tex.cpp (tex_output::start_picture): Make code 3550 work with plain TeX also. 3551 3552 * src/preproc/pic/pic.man, doc/pic.ms: Fix TeX code example. 3553 35542003-04-25 Gaius Mulley <gaius@glam.ac.uk> 3555 3556 * src/devices/grohtml/post-html.cpp (html_printer::~html_printer): 3557 Use a loose DTD. 3558 35592003-04-24 Werner LEMBERG <wl@gnu.org> 3560 3561 * src/preproc/pic/pic.man, doc/pic.ms: Explain how to get a 3562 vbox with positive height and zero depth if in TeX mode. 3563 3564 * NEWS: Document glyph name changes for grodvi and grolj4. 3565 35662003-04-23 Werner LEMBERG <wl@gnu.org> 3567 3568 * src/preproc/pic/tex.cpp (tex_output::start_picture): Fix TeX code. 3569 * doc/pic.ms: Fixed. 3570 35712003-04-21 Werner LEMBERG <wl@gnu.org> 3572 3573 HP-UX 10.20 has `snprintf' but it isn't declared. 3574 3575 * configure.ac: Add declaration test for snprintf. 3576 * configure: Regenerated. 3577 * src/include/lib.h: Handle `NEED_DECLARATION_SNPRINTF'. 3578 * src/include/config.hin: Regenerated. 3579 35802003-04-19 Werner LEMBERG <wl@gnu.org> 3581 3582 Add keyword `figname' to pic, specifying the name of the picture 3583 box in TeX mode. Based on a patch from William J Poser 3584 <wjposer@unagi.cis.upenn.edu>. 3585 3586 * src/preproc/pic/pic.y: New token `FIGNAME'. 3587 (macro_name): New rule of type <str>. 3588 (placeless_element): Handle `FIGNAME'. 3589 * src/preproc/pic/lex.cpp (lookup_keyword): Add `figname'. 3590 * src/preproc/pic/main.cpp (graphname): New global variable. 3591 (do_picture): Initialize `graphname'. 3592 * src/preproc/pic/pic.h: Updated. 3593 * src/preproc/pic/tex.cpp (tex_output::start_picture): Use 3594 `graphname'. 3595 Simplify TeX code. 3596 (tex_output::text): Beautify output. 3597 * src/preproc/pic/object.cpp (object_spec::~object_spec): Deallocate 3598 `shaded' and `outlined' unconditionally. 3599 * NEWS, src/preproc/pic/pic.man, doc/pic.ms: Updated. 3600 Minor improvements. 3601 3602 * PROBLEMS, README.CVS: Mention that bison version 1.875b or 3603 greater is necessary. 3604 36052003-04-17 Hartmut Henkel <hartmut_henkel@gmx.de> 3606 3607 Add option -r to soelim to avoid emission of `.lf' lines. 3608 Add option -t to produces TeX comment lines instead of `.lf' lines. 3609 3610 * src/preproc/soelim/soelim.cpp: New global variables `raw_flag' 3611 and `tex_flag'. 3612 (usage): Updated. 3613 (main): Handle `-r' and `-t'. 3614 (set_location): Handle `raw_flag' and `tex_flag'. 3615 * src/preproc/soelim/soelim.man, NEWS: Updated. 3616 36172003-04-17 Werner LEMBERG <wl@gnu.org> 3618 3619 * tmac/hyphenex.sh: Replaced with... 3620 * tmac/hyphenex.pl: This perl script to avoid sed compatibility 3621 nightmares. 3622 3623 * aclocal.m4 (GROFF_HTML_PROGRAMS): Emit useful warning message 3624 if --quiet is used for the configure script. 3625 * configure: Regenerated. 3626 36272003-04-16 Werner LEMBERG <wl@gnu.org> 3628 3629 * src/devices/grohtml/post-html.cpp (text_glob::text_glob): 3630 Add `const' to second argument. 3631 (html_printer::add_table_end): Add `const' to argument. 3632 * src/devices/grohtml/html-text.cpp (html_text::issue_tag): Add 3633 `const' to arguments. 3634 * src/devices/grohtml/html-text.h: Updated. 3635 3636 * src/devices/grolbp/charset.h (symset): Use `unsigned char'. 3637 * src/devices/grolbp/lbp.h (lbpputc): Use `unsigned char' for 3638 argument. 3639 3640 * src/devices/grotty/tty.cpp (tty_printer::make_rgb_string): Use 3641 cast for integer constant. 3642 3643 * src/preproc/html/pre-html.cpp (image_device): Use `const'. 3644 (writeNbytes): Add `const' to first argument. 3645 (writeString): Add `const' to argument. 3646 (char_buffer::can_see): Add `const' to third argument. 3647 * src/preproc/html/pushback.cpp (pushBackBuffer::isString): Add 3648 `const' to argument. 3649 * src/preproc/html/pushback.h: Updated. 3650 3651 * src/preproc/soelim/soelim.cpp (include_list): Add `const'. 3652 (include_path_append): Add `const' to argument. 3653 (do_file): Updated. 3654 3655 * src/roff/troff/uniglyph.cpp (unicode_to_glyph_list): Use `const' 3656 for `value'. 3657 (unicode_to_glyph_init::unicode_to_glyph_init): Updated. 3658 * src/roff/troff/uniuni.cpp (unicode_decompose_list): Use `const' 3659 for `value'. 3660 (unicode_decompose_init::unicode_decompose_init): Updated. 3661 * src/roff/troff/glyphuni.cpp (glyph_to_unicode_list): Use `const' 3662 for `value'. 3663 (glyph_to_unicode_init::glyph_to_unicode_init): Updated. 3664 * src/roff/troff/input.cc (process_startup_file): Add `const' to 3665 argument. 3666 3667 * tmac/hyphenex.sh: Make script more portable by using a here 3668 document. 3669 36702003-04-15 Werner LEMBERG <wl@gnu.org> 3671 3672 Renamed all `*.cc' files to `*.cpp'. 3673 Updated all configuration files, makefiles, and documentation. 3674 36752003-04-14 Werner LEMBERG <wl@gnu.org> 3676 3677 * tmac/hyphenex.sh: Slight improvements. 3678 36792003-04-13 Werner LEMBERG <wl@gnu.org> 3680 3681 * font/devascii/R.proto, font/devcp1037/R.proto, 3682 font/devlatin1/R.proto, font/devutf8/R.proto: Fill up remaining 3683 character slots with unnamed glyphs. 3684 3685 * tmac/an-old.tmac: Fix hyphenation value if `cR' is active. 3686 (an-first): New global variable. 3687 (an-header): Emit vertical space between multiple man pages. 3688 36892003-04-11 Werner LEMBERG <wl@gnu.org> 3690 3691 * doc/groff.texinfo, man/groff_out.man: \S only accepts integer 3692 values. 3693 36942003-04-10 Werner LEMBERG <wl@gnu.org> 3695 3696 * PROBLEMS: Revised. 3697 36982003-04-10 Bernd Warken <bwarken@mayn.de> 3699 3700 * doc/webpage.ms: Improved. 3701 37022003-04-09 Werner LEMBERG <wl@gnu.org> 3703 3704 Add register \n[.height] which returns the value of \H. 3705 Add register \n[.slant] which returns the value of \S. 3706 3707 * src/roff/troff/env.cc (init_env_requests): Implement. 3708 * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: 3709 Document. 3710 37112003-04-08 Werner LEMBERG <wl@gnu.org> 3712 3713 * tmac/html.tmac: Move some of the data into html-end.tmac. 3714 Remove most of the character translations for eqn since html fonts 3715 now cover those characters. 3716 Load www.tmac. 3717 * tmac/html-end.tmac: New file. 3718 * tmac/troffrc: Load html.tmac not www.tmac for -Thtml. 3719 * tmac/troffrc-end: Load html-end.tmac not html.tmac for -Thtml. 3720 * tmac/Makefile.sub (NORMALFILES): Add html-end.tmac. 3721 37222003-04-07 Werner LEMBERG <wl@gnu.org> 3723 3724 * man/groff_out.man: Document negative values of `N' if -Thtml is 3725 used. 3726 37272003-04-06 Werner LEMBERG <wl@gnu.org> 3728 3729 * Makefile.comm (depend.temp): Check location of YTABC. 3730 37312003-04-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 3732 3733 * contrib/mom/Makefile.sub (GROFFBIN): New variable for groff 3734 binary path. 3735 (groff_bin_path): Rename to GROFF_BIN_PATH. 3736 (GROFF): Use GROFFBIN and GROFF_BIN_PATH. 3737 * doc/Makefile.in (TROFFBIN): New variable for troff 3738 binary path. 3739 (GROFFBIN): New variable for groff binary path. 3740 (groff_bin_path): Rename to GROFF_BIN_PATH. 3741 (TROFF): Use TROFFBIN. 3742 (GROFF): Use GROFFBIN and GROFF_BIN_PATH. 3743 * doc/Makefile.sub (GROFFBIN): New variable for groff 3744 binary path. 3745 (groff_bin_path): Rename to GROFF_BIN_PATH. 3746 (GROFF): Use GROFFBIN and GROFF_BIN_PATH. 3747 3748 * Makefile.comm (install_dev): Install scripts from DEVSCRIPTS 3749 with INSTALL_SCRIPT. 3750 (uninstall_dev): Uninstall scripts from DEVSCRIPTS. 3751 * Makefile.dev (all): Depend on DEVSCRIPTS. 3752 (install_dev): Likewise. 3753 * font/devdvi/Makefile.sub (DEVSCRIPTS): New variable to hold 3754 scripts. 3755 * font/devps/Makefile.sub (DEVSCRIPTS): Likewise. 3756 (DEVGENSCRIPTS): New variable to hold generated scripts. 3757 37582003-04-05 Werner LEMBERG <wl@gnu.org> 3759 3760 * src/libs/libdriver/input.cc (IntArray::operator[], 3761 IntArray::get_data): Remove meaningless `const' in return value. 3762 3763 * README.CVS: New file. 3764 37652003-04-04 Werner LEMBERG <wl@gnu.org> 3766 3767 Check for stdint.h in C++, not in C. 3768 3769 * aclocal.m4 (GROFF_STDINT_H): New function, 3770 * configure.ac: Check for stdint.h with GROFF_STDINT_H instead of 3771 AC_CHECK_HEADERS. 3772 * configure, src/include/config.hin: Regenerated. 3773 * src/libs/libgroff/tmpname.cc: Use HAVE_CC_STDINT_H. 3774 3775 3776 Fix handling of in grohtml. To do this, troff emits `N' 3777 with a negative value, representing the width of the unbreakable 3778 space (only for -Thtml). grohtml then converts this back to 3779 and uses the value of N as its width. 3780 3781 * src/roff/troff/node.cc (space_char_hmotion_node::tprint, 3782 unbreakable_space_node::tprint): Emit `N-<width>'. 3783 * src/include/printer.h (printer::set_numbered_char): Make it 3784 virtual. 3785 Make members `font_table' and `nfonts' protected instead of private. 3786 * src/devices/grohtml/post-html.cc 3787 (html_printer::set_numbered_char): New member function. 3788 3789 3790 * src/libs/libgroff/maxfilename.cc: 3791 s/HAVE_LIMITS_H/HAVE_CC_LIMITS_H/. 3792 3793 * src/roff/troff/node.cc (unbreakable_space_node::tprint): Don't 3794 emit word marker. 3795 37962003-04-03 Sergey A. Osokin <osa@freebsd.org.ru> 3797 3798 * man/roff.man: Small fixes. 3799 38002003-04-03 Werner LEMBERG <wl@gnu.org> 3801 3802 Make groff independent from locale's numeric settings. 3803 3804 * configure.ac: Check for `setlocale'. 3805 * configure, src/include/config.hin: Regenerated. 3806 3807 * src/include/lib.h: Handle HAVE_SETLOCALE. 3808 3809 * src/devices/grodvi/dvi.cc (main), src/devices/grolj4/lj4.cc 3810 (main), src/devices/grops/ps.cc (main), src/preproc/grn/main.cc 3811 (main), src/preproc/pic/main.cc (main): Call `setlocale'. 3812 3813 3814 * doc/groff.texinfo: Change dir category to `Typesetting'. 3815 (Man font macros): Mention that there is no space between arguments 3816 of .BI and friends. 3817 3818 * src/libs/libdriver/printer.cc, src/devices/grotty/tty.cc 3819 (*printer::change_color, *printer::change_fill_color): Add missing 3820 `const'. 3821 38222003-04-02 Werner LEMBERG <wl@gnu.org> 3823 3824 * src/devices/grohtml/html-table.cc (html_table::emit_col, 3825 html_table::is_gap): Compute table widths after converting border 3826 positions to avoid rounding errors. 3827 38282003-04-01 Werner LEMBERG <wl@gnu.org> 3829 3830 * src/devices/grohtml/html-text.cc (html_text::do_space): Handle 3831 `space_emitted' properly. 3832 38332003-03-31 Werner LEMBERG <wl@gnu.org> 3834 3835 * src/devices/grohtml/html-table.cc: Fix column width calculation. 3836 (html_table::set_linelength): Don't add 1. 3837 (html_table::add_indent): Don't subtract 1. 3838 3839 * tmac/html.tmac: Set default page offset to zero. 3840 38412003-03-30 Werner LEMBERG <wl@gnu.org> 3842 3843 Make groff emit ` ' for `\ ' and `\~' if `-Thtml' is used. 3844 3845 * src/roff/troff/node.cc (space_char_hmotion_node::tprint, 3846 unbreakable_space_node::tprint): New functions. 3847 (troff_output_file): Make space_char_hmotion_mode::tprint and 3848 unbreakable_space_node::tprint to friends. 3849 * src/roff/troff/node.h: Updated. 3850 3851 * font/devhtml/R.proto: Add ` ' at position 0xA0 (as defined 3852 in the HTML standard). 3853 38542003-03-29 Werner LEMBERG <wl@gnu.org> 3855 3856 * src/roff/troff/env.cc (point_size): Fix emission of html tag. 3857 Otherwise, the following code 3858 3859 .di xxx 3860 .ps 10 3861 a 3862 .br 3863 .di 3864 x\*[xxx] 3865 3866 produces `x a' instead of `xa'. This is a temporary fix, disabling 3867 font changes in diversions for -Thtml. 3868 3869 * tmac/an-old.tmac (TH, SH): Use `HTML-TAG-NS' instead of 3870 `HTML-TAG'. 3871 (an-do-tag-html): Merge with ... 3872 (an-do-tag): This macro. 3873 Change code slightly to circumvent grohtml bug. 3874 * tmac/troffrc-end: Define dummy for HTML-TAG-NS. 3875 3876 * src/devices/grohtml/html-table.cc (html_table::emit_col, 3877 html_table::is_gap): Round `width' properly. 3878 3879 * tmac/html.tmac: Provide some default layout parameters for 3880 grohtml. 3881 3882 * font/devhtml/DESC.proto: Don't use discrete values for `sizes' 3883 command. 3884 38852003-03-28 Werner LEMBERG <wl@gnu.org> 3886 3887 src/devices/grops/ps.cc (ps_printer::do_import): Fix error message. 3888 38892003-03-27 Werner LEMBERG <wl@gnu.org> 3890 3891 * tmac/an-old.tmac (BT): Don't call .tl if register `ps4html' is 3892 defined. 3893 38942003-03-20 Werner LEMBERG <wl@gnu.org> 3895 3896 * src/roff/troff/env.cc (vertical_spacing): Allow zero value for 3897 `.vs'. 3898 * doc/groff.texinfo: Updated. 3899 39002003-03-19 Werner LEMBERG <wl@gnu.org> 3901 3902 * src/roff/troff/input.cc (process_input_stack) <TOKEN_BEGIN_TRAP, 3903 TOKEN_END_TRAP>: Reset `have_input'. 3904 39052003-03-18 Werner LEMBERG <wl@gnu.org> 3906 3907 * src/roff/groff/groff.man: Mention groff_trace man page. 3908 39092003-03-16 Werner LEMBERG <wl@gnu.org> 3910 3911 * Makefile.in (LIBEXT): New variable to indicate the file extension 3912 of library files. Computed heuristically from $(OBJEXT). 3913 (MDEFINES): Add $(LIBEXT). 3914 * Makefile.lib, Makefile.comm: Use it. 3915 3916 * src/utils/pfbtops/pfbtops.c (get_text): New function. Split 3917 overlong lines into smaller chunks. 3918 (get_binary): New function. 3919 (main): Use them. 3920 * src/utils/pfbtops/pfbtops.man: Updated. 3921 39222003-03-15 Colin Watson <cjwatson@debian.org> 3923 3924 * src/roff/groff/groff.man: Minor syntax fix. 3925 39262003-03-14 Egil Kvaleberg <egil@kvaleberg.no> 3927 3928 * src/devices/grops/ps.cc (ps_printer::media_set, 3929 ps_printer::~ps_printer): Handle zero paper width and length. 3930 39312003-03-13 Werner LEMBERG <wl@gnu.org> 3932 3933 Add options -p and -l to grodvi. 3934 3935 * src/devices/grodvi/dvi.cc: Include paper.h. 3936 (landscape_flag, user_paper_length, user_paper_width): New global 3937 variables. 3938 (dvi_printer::begin_page): Emit `papersize' special. 3939 Set color after initialization of `cur_h' and `cur_v'. 3940 (main): Add options `-l' and `-p'. 3941 * font/devdvi/Makefile.sub (DESC): Set `papersize'. 3942 * src/devices/grodvi/grodvi.man, NEWS: Updated. 3943 3944 * src/devices/grops/psrm.cc (valid_input_table): Fixed. 3945 39462003-03-12 Werner LEMBERG <wl@gnu.org> 3947 3948 * src/devices/grops/grops.man: Move documentation of .PSPIC to... 3949 * man/groff_tmac.man: This man page. 3950 * man/groff_font.man: Declare `paperwidth' and `paperlength' as 3951 deprecated. 3952 3953 * tmac/X.tmac: Don't load pspic.tmac. 3954 39552003-03-11 Werner LEMBERG <wl@gnu.org> 3956 3957 Make variable `pr' local to libdriver/input.cc. Based on a patch 3958 by Bernd Warken <bwarken@mayn.de>. 3959 3960 * src/include/driver.h (pr): Removed. 3961 3962 * src/libs/libdriver/input.cc (pr): New global variable. 3963 (do_file): Deallocate `pr'. 3964 * src/libs/libdriver/printer.cc (pr): Removed. 3965 3966 * src/devices/grodvi/dvi.cc (main), src/devices/grohtml/post-html.cc 3967 (main), src/devices/grolbp/lbp.cc (main), src/devices/grolj4/lj4.cc 3968 (main), src/devices/grops/ps.cc (main), src/devices/grotty/tty.cc 3969 (main): Don't delete `pr'. 3970 39712003-03-10 Werner LEMBERG <wl@gnu.org> 3972 3973 * tmac/a4.tmac, tmac/composite.tmac: Use `.do'. 3974 * tmac/papersize.tmac: New file. 3975 * tmac/troffrc: Include `papersize.tmac'. 3976 * tmac/Makefile.sub (NORMALFILES): Add `papersize.tmac'. 3977 * tmac/an-old.tmac: Set LT to LL by default. 3978 3979 * NEWS, MANIFEST, tmac/groff_man.man, man/groff_tmac.man, 3980 doc/groff.texinfo: Updated. 3981 3982 * src/libs/libgroff/paper.cc (add_iso_paper): Fix very embarassing 3983 bug which caused all odd iso papers to have wrong dimensions. 3984 3985 * src/devices/grops/ps.cc (user_paper_width): New global variable. 3986 (main) <'p'>: Set `user_paper_width' also. 3987 (ps_printer::media_width, ps_printer::media_height): Use values 3988 given with option `-p'. 3989 39902003-03-09 Werner LEMBERG <wl@gnu.org> 3991 3992 * src/include/nonposix.h: Provide default for SET_BINARY. 3993 3994 * src/devices/grodvi/dvi.cc, src/devices/grolbp/lbp.cc, 3995 src/devices/grolj4/lj4.cc, src/devices/grops/ps.cc: Call SET_BINARY 3996 unconditionally. 3997 3998 * src/utils/pfbtops/pfbtops.c: Call SET_BINARY unconditionally. 3999 (main): Treat \r\n as \n. 4000 40012003-03-08 Werner LEMBERG <wl@gnu.org> 4002 4003 * tmac/an-old.tmac: Use register `HY' to control hyphenation. 4004 * NEWS, tmac/groff_man.man, doc/groff.texinfo: Document it. 4005 40062003-03-07 Werner LEMBERG <wl@gnu.org> 4007 4008 Added support to access more than 256 glyphs in Type 1 fonts. 4009 4010 * src/devices/grops/ps.cc (subencoding): New structure. 4011 (style): Add `sub' field. 4012 Updated all users. 4013 (ps_printer): Add `subencodings' and `next_subencoding_index' fields. 4014 Add `set_subencoding', `get_subfont' and `encode_subfont' member 4015 functions. 4016 Updated all users. 4017 (ps_printer::set_char): Use `set_subencoding'. 4018 (make_subencoding_name): New function. 4019 (ps_printer::set_style): Handle case where `sty.sub' is not zero. 4020 (ps_printer::~ps_printer): Emit subencoding definitions. 4021 4022 * src/devices/grops/psrm.cc (valid_input_table): New array to 4023 properly support EBCDIC. 4024 (white_space): Add `\f'. 4025 (ps_get_line): Change first argument to be of type `string &'. 4026 Updated all callers. 4027 This allows to get lines of arbitrary length. 4028 Use `valid_input_table'. 4029 Remove warning about non-conforming PS line length. This seems 4030 not to be of great importance -- for example, dvips don't emit 4031 a warning either. 4032 (PS_LINE_MAX): Removed. 4033 (matches_comment): Change first argument to be of type `string &'. 4034 4035 * src/devices/grops/grops.man, src/devices/grops/TODO: Updated. 4036 4037 * src/utils/afmtodit/afmtodit.pl (%unicode_decomposed, 4038 %AGL_to_unicode, %default_ligatures): New hash tables. 4039 Read all map entries. 4040 Add unencoded characters. 4041 Check for default ligatures if there are no `L' entries. 4042 Print all kern entries. 4043 Print all characters in charset. 4044 * src/utils/afmtodit/afmtodit.man: Updated. 4045 4046 * font/devps/*: Regerated all fonts. 4047 4048 * tmac/latin[129].tmac, tmac/cp1047.tmac: Don't test for existence 4049 of characters, just use `.trin'. Otherwise the mapping depends 4050 on the font encoding. 4051 * tmac/ps.tmac: Add `fi' and `fl'. 4052 Improve `Fi' and `Fl'. 4053 * tmac/X.tmac, tmac/lbp.tmac, tmac/tty.tmac: Improve `Fi' and `Fl'. 4054 * tmac/Xps.tmac: Fix `em'. 4055 4056 * NEWS: Updated. 4057 40582003-03-04 Werner LEMBERG <wl@gnu.org> 4059 4060 * src/roff/troff/input.cc (charinfo_to_node_list): Reset 4061 `have_input'. 4062 40632003-03-03 Werner LEMBERG <wl@gnu.org> 4064 4065 * Makefile.sub (DISTCLEANFILES): Add gxditview._man. 4066 4067 * font/devps/generate/textmap: Remove entry `similarequal'. 4068 * font/devps/symbolmap: Updated. 4069 40702003-03-02 Werner LEMBERG <wl@gnu.org> 4071 4072 * src/libs/libgroff/font.cc (font::load): Fix error message for 4073 bad character type. 4074 4075 * src/devices/grops/grops.man: Improve documentation of the -b 4076 flag. 4077 4078 * tmac/tty.tmac: Load latin1.tmac for all TTY devices except 4079 `ascii' and `cp1047'. 4080 40812003-03-01 Werner LEMBERG <wl@gnu.org> 4082 4083 Document composite glyphs and the `composite' request. 4084 4085 * man/groff.man, man/groff_diff.man, doc/groff.texinfo: Do it. 4086 40872003-02-28 Werner LEMBERG <wl@gnu.org> 4088 4089 * font/devdvi/generate/ec.map: Add some more Unicode entities. 4090 * font/devdvi/*EC: Updated. 4091 4092 * tmac/composite.tmac, tmac/latin2.tmac, tmac/latin9.tmac: New files. 4093 * tmac/latin1 (latin1-tr): Undo any previous mapping. 4094 * tmac/troffrc: Load `composite.tmac'. 4095 * tmac/Makefile.sub (NORMALFILES): Updated. 4096 4097 * doc/groff.texinfo (Input Encodings): New section. 4098 * NEWS: Updated. 4099 41002003-02-27 Werner LEMBERG <wl@gnu.org> 4101 4102 * doc/texinfo.tex: New version 2003-02-11.06. 4103 4104 * tmac/doc-common (Dt): Don't emit warning for unknown section. 4105 * tmac/groff_mdoc.man: Fix description of `Dt'. 4106 41072003-02-26 Egil Kvaleberg <egil@kvaleberg.no> 4108 4109 * font/devps/prologue.ps: Fix for included Postscript that does 4110 a setpagedevice -- which is now safely ignored. 4111 4112 * NEWS: Updated. 4113 4114 * src/devices/grops/ps.cc: Now sets the page size in the generated 4115 document. This is done in two ways: Via a %%-comment for gv and 4116 the like, and via a PageSize and setpagedevice for programs that 4117 understands Postscript proper, like ps2pdf. 4118 4119 * src/devices/grops/ps.h: New broken-flag to avoid page size 4120 definition, if required. 4121 4122 * src/devices/grops/grops.man: New broken-flag 16 mentioned. 4123 4124 * doc/Makefile.in: Added -nosetpage flag (via @pnmtops_nosetpage@). 4125 Not really necessary due to the fix in prologue.ps, but cleaner: 4126 Such information does not belong in an .eps file. 4127 4128 * doc/Makefile.sub: See doc/Makefile.in. 4129 41302003-02-26 Ralph Corderoy <ralph@inputplus.co.uk> 4131 4132 * aclocal.m4 (GROFF_PNMTOPS_NOSETPAGE): Use P2 format for testing 4133 instead of P1 since the latter is broken in some versions of netpbm. 4134 * configure: Updated. 4135 41362003-02-26 Larry Kollar <kollar@alltel.net> 4137 4138 Make man pages more customizable. 4139 4140 * tmac/an-old.tmac (FT): New register holding footer distance from 4141 bottom. 4142 (HF): New string holding the default heading font. 4143 (TH): Handle registers `IN' and `SN' set on the command line. 4144 Use `FT'. 4145 (PT, BT): New strings to customize header and footer lines. 4146 (an-header, an-footer): Use them. 4147 (SH, SS): Use `HF'. 4148 * tmac/groff_man.man: Document changes. 4149 4150 * doc/groff.texinfo: Document man changes. 4151 Document Ultrix extensions of man. 4152 41532003-02-26 Werner LEMBERG <wl@gnu.org> 4154 4155 * src/roff/troff/input.cc (do_width, do_if_request): Reset 4156 `have_input' after changing back to old environment. 4157 4158 * src/devices/grolbp/lbp.cc (lbp_printer::set_line_thickness): Move 4159 function up to be defined before first call. This is necessary to 4160 avoid a compilation problem with Sun's WorkShop 6 C++ compiler. 4161 4162 * src/utils/afmtodit/afmtodit.pl: Make script search for files in 4163 the default font directory also. Based on a patch from James 4164 J. Ramsey <jjramsey_6x9eq42@yahoo.com>. 4165 * src/utils/afmtodit/Makefile.sub (afmtodit): Handle @FONTDIR@. 4166 * src/utils/afmtodit/afmtodit.man: Document it. 4167 4168 * NEWS: Updated. 4169 4170 * tmac/groff_man.man, doc/groff.texinfo: Many minor fixes. 4171 41722003-02-25 Gaius Mulley <gaius@glam.ac.uk> 4173 4174 * aclocal.m4 (GROFF_HTML_PROGRAMS): Add test for pnmtops. 4175 (GROFF_PNMTOPS_NOSETPAGE): New macro. 4176 * configure.ac: Use it. 4177 * configure: Regenerated. 4178 * Makefile.in: Updated. 4179 4180 * tmac/Makefile.sub (NORMALFILES): Remove www.tmac. 4181 (CLEANADD): Add www.tmac-sed. 4182 (pnmtops_nosetpage): Define default. 4183 (install_data): Handle www.tmac-sed and substitute 4184 @PNMTOPS_NOSETPAGE@. 4185 (stamp-sed): Add www.tmac. 4186 * tmac/www.tmac: Rewritten, based on a patch by Bernd Warken. 4187 It now breaks URLs at suitable places. 4188 (www:substring_ok): New register set by... 4189 (www:@test_substring): New macro. 4190 (www:error): New alias to www-error. 4191 (www:lenstr, www:splitstr, www:url_breaks, www:url_breaks_splitted): 4192 New macros. 4193 (URL): Use www:url_breaks. 4194 (PIMG, MPIMG): Use @PNMTOPS_NOSETPAGE@. 4195 (CDS, CDE): New macros. 4196 41972003-02-25 Werner LEMBERG <wl@gnu.org> 4198 4199 * src/devices/grops/ps.cc (ps_printer::define_encoding): Avoid 4200 buffer overflow. 4201 42022003-02-24 Werner LEMBERG <wl@gnu.org> 4203 4204 Contrary to the PCL5 Developer's Guide, the ascenders in TFM files 4205 can be negative also. 4206 4207 * src/utils/hpftodit/hpftodit.cc (char_info): `ascent' must be 4208 `int16'. 4209 (read_char_table): Avoid negative ascenders. 4210 (output_charset): Add cast. 4211 * font/devlj4/*: Regenerated. 4212 4213 Replace unnamed glyphs for DVI fonts with `uXXXX' glyph names where 4214 possible. 4215 4216 * font/devdvi/generate/{tc,texttt,ec,texmi,texsy,textex}.map: Do it. 4217 * font/devdvi/generate/textex.map: Map glyph 23 to `u21C6' instead 4218 of `<>'. 4219 * font/devdvi/*: Regenerated. 4220 4221 Map `la' and `ra' to U+27E8 and U+27E9. These two characters have 4222 normal width, while the previously used characters (U+2329 and 4223 U+232A) are classified as wide due to canonical equivalence with the 4224 CJK punctuation characters U+3008 and U+3009. 4225 4226 * font/devutf8/R.proto: Updated. 4227 * src/roff/troff/uniglyph.cc, src/roff/troff/glyphuni.cc: Ditto. 4228 4229 * man/groff_char.man: Simplify handling of table traps by 4230 introducing `start block' and `end block' macros. 4231 (Ns, Ne, 2s, 2e, Ds, De): New macros. 4232 (DL): Make it work with Unix troff also. 4233 Fix code values of `la' and `ra'. 4234 4235 * tmac/dvi.tmac: Define `<>' for CW and CWI. 4236 42372003-02-23 Gaius Mulley <gaius@glam.ac.uk> 4238 4239 * src/devices/grohtml/post-html.cc (element_list::~element_list): 4240 New destructor, fixing a major memory leak. 4241 42422003-02-22 Werner LEMBERG <wl@gnu.org> 4243 4244 * font/devhtml/R.proto, font/devutf8/R.proto: Flip `*f' and `+f' 4245 to be in conformance with Unicode 3.0 and newer. 4246 4247 * font/devlj4/generate/text.map: Add `Eu'. 4248 * font/devlj4/generate/special.map: Flip `*e' and `+e'. 4249 * font/devlj4/S: Regenerated. 4250 4251 * man/groff_char.man: Completely rewritten. 4252 4253 * doc/groff.texinfo: Fix description of request and macro arguments. 4254 42552003-02-20 Gaius Mulley <gaius@glam.ac.uk> 4256 4257 Valgrind fixes. 4258 4259 * src/devices/grohtml/html-table.cc (html_table::~html_table): 4260 Deallocate `columns' list. 4261 * src/devices/grohtml/post-html.cc (char_block::~char_block): 4262 New destructor. 4263 (text_glob::text_glob_html, text_glob::text_glob_special, 4264 text_glob::text_glob_line, text_glob::text_glob_auto_image, 4265 text_glob::text_glob_tag): Avoid memory leaks. 4266 (text_glob::remember_table): Free memory before reassigning. 4267 42682003-02-19 Werner LEMBERG <wl@gnu.org> 4269 4270 Add glyph `+e', greek lunate epsilon symbol, and `-h' (with the 4271 alias `hbar'), the Planck constant over two pi. 4272 4273 * font/devdvi/generate/texmi.map: Use `*e' for position 15 and 4274 `+e' for position 34. 4275 * font/devdvi/generate/texsy.map: Replace `DI' and `HE' with 4276 `u2662' and `u2661'. 4277 * font/devdvi/{MI,S}: Regenerated. 4278 * font/devhtml/R.proto, font/devutf8/R.proto: Add `+e', `-h', `hbar'. 4279 * font/devlbp/*: Add `hbar' alias. 4280 * font/devlj4/generate/special.map: Ditto. 4281 * font/devlj4/S: Regenerated. 4282 * font/devps/generate/symbolchars: Add `+e'. 4283 * font/devps/generate/textmap: Fix PS name for `-h'. 4284 Add `hbar' alias. 4285 * font/devps/symbolmap: Regenerated. 4286 4287 * src/devices/grops/ps.cc (transform_fill): Removed since unused. 4288 4289 * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Add `+e', 4290 `-h', `hbar'. 4291 * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Add `+e', 4292 `-h'. 4293 4294 * tmac/X.tmac, tmac/ps.tmac: Provide definitions for `-h' and 4295 `hbar'. 4296 * tmac/tty-char.tmac: Add `+e'. 4297 42982003-02-17 Werner LEMBERG <wl@gnu.org> 4299 4300 Another round trying to really fix problems with `have_input'. 4301 4302 * src/roff/troff/input.cc (input_stack::get): Handle `have_input'. 4303 (token::next) <'\n'>, <\'\n'>: Don't handle `have_input'. 4304 4305 * src/devices/grotty/tty.cc (tty_printer::put_color): Fix color 4306 handling if both foreground and background colors are default. 4307 4308 * doc/groff.texinfo (Debugging): Document .lf differences to 4309 AT&T troff. 4310 43112003-02-16 Werner LEMBERG <wl@gnu.org> 4312 4313 * src/devices/grotty/tty.cc (tty_printer::make_rgb_string): Avoid 4314 null-bytes in created string. 4315 4316 * src/roff/troff/input.cc (lookup_color, interpolate_macro, 4317 alias_macro, lookup_request): Improve warning messages. 4318 4319 * src/roff/troff/node.cc (suppress_node::tprint): Use `strsave', 4320 not `strdup'. 4321 Free `last_image_filename'. 4322 4323 * src/preproc/html/pre-html.cc (char_block::char_block): Initialize 4324 `buffer'. 4325 (imageList::createPage, imageList::createImage): Use `free', not 4326 `a_delete'. 4327 (imageItem::~imageItem): Free `imageName'. 4328 (addRegDef): Use `strsave', not `strdup'. 4329 (get_resolution): Free `pathp'. 4330 43312003-02-15 Werner LEMBERG <wl@gnu.org> 4332 4333 * src/devices/grotty/tty.cc (tty_printer::tty_printer): Fix pointer 4334 to `dummy'. 4335 43362003-02-14 Werner LEMBERG <wl@gnu.org> 4337 4338 Add memory management for colors to deallocate unnamed colors 4339 properly. 4340 4341 * src/include/color.h (color): New members `free_list' and `next'. 4342 New member functions `new' and `delete'. 4343 Add destructor. 4344 * src/libs/libgroff/color.cc: Implement it. 4345 4346 * src/libs/libgroff/font.cc (font::add_kern): Use integer cast 4347 for array size of new operator. 4348 4349 * src/libs/libdriver/input.cc (IntArray::operator[]): Remove 4350 redundant comparison. 4351 4352 * src/roff/troff/input.cc (word_space_node::reread, 4353 hmotion_node::reread): Avoid warning about unused parameter. 4354 (reset_output_registers): Remove redundant parameter. 4355 (define_color): Undo change 2003-02-12. 4356 4357 * src/roff/troff/reg.h: Updated. 4358 4359 * src/roff/troff/node.cc (troff_output_file::really_print_line, 4360 output_file::put_filename, real_output_file::really_put_filename, 4361 ascii_output_file::really_print_line, 4362 break_char_node::get_hyphen_list): Avoid warning about unused 4363 parameter. 4364 (suppress_node::tprint): Updated. 4365 4366 * configure.ac: Check declaration for rand() and srand(). 4367 * configure: Regenerated. 4368 4369 * src/preproc/pic/pic.h: Declare fmod(), rand(), and srand() 4370 conditionally. 4371 * src/preproc/pic/pic.y: Remove declaration of fmod(), rand(), 4372 and srand(). 4373 4374 * src/preproc/eqn/delim.cc (delim_table): Add missing initializers 4375 to avoid compiler warnings. 4376 4377 * src/preproc/grn/hgraph.cc (HGPrintElt): Second parameter is 4378 unused. 4379 4380 * src/devices/grops/ps.cc (ps_printer::set_char): Last parameter 4381 is unused. 4382 * src/devices/grops/psrm.cc (skip_possible_newline): Remove first 4383 (unused) parameter. 4384 Updated all callers. 4385 4386 * src/devices/grotty/tty.cc (tty_printer::set_char): Last parameter 4387 is unused. 4388 * src/devices/grodvi/dvi.cc (dvi_printer::set_char): Ditto. 4389 * src/devices/grolj4/lj4.cc (lj4_printer::set_char): Ditto. 4390 4391 * src/devices/grohtml/post-html.cc (html_printer::emit_line): 4392 Parameter is unused. 4393 (html_printer::add_table_end): Define parameter conditionally. 4394 * src/devices/grohtml/output.cc (simple_output::special): Parameter 4395 is unused. 4396 4397 * src/devices/grolbp/lbp.cc: Define _GNU_SOURCE conditionally. 4398 (lbp_printer::set_char): Last parameter is unused. 4399 4400 * src/utils/indxbib/indxbib.cc (main): Remove redundant comparison. 4401 44022003-02-13 Werner LEMBERG <wl@gnu.org> 4403 4404 New commands \D'Fr ...', \D'Fc ...', etc. for orthogonality. 4405 Make \D'f ...' move horizontally again for backwards compatibility. 4406 Replace it with \D'Fg ...' where appropriate to avoid dependency 4407 on horizontal resolution. 4408 4409 * src/roff/troff/input.cc (do_get_long_name): New function. 4410 (get_long_name): Call it. 4411 4412 (read_draw_node): Handle `\D'Fx ...' by calling ... 4413 (read_color_draw_node): New function. 4414 4415 (read_rgb, read_cmy, read_cmyk, read_gray): New optional argument 4416 `end'. 4417 Pass it to `do_get_long_name' which is used instead of 4418 `get_long_name'. 4419 4420 * src/libs/libdriver/input.cc (color_from_Df_command): Remove 4421 unnecessary value guard. 4422 (parse_D_command) <'f'>: Add horizontal shift. 4423 4424 * src/preproc/grn/hgraph.cc (HGPrintElt) <POLYGON>: Use \D'Fg ...'. 4425 * src/preproc/pic/troff.cc (troff_output::set_fill): Ditto. 4426 (FILL_MAX): Removed. 4427 4428 * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: 4429 Updated. 4430 44312003-02-12 Werner LEMBERG <wl@gnu.org> 4432 4433 * src/roff/troff/input.cc (do_name_test, do_expr_test, 4434 do_zero_width): Push `\n' if closing delimiter is missing. 4435 4436 (token::next) <ESCAPE_NEWLINE>, <'\n'>, <\'\n'>: Reset `have_input'. 4437 <'F'>: Make \F non-transparent at the beginning of line. 4438 (process_input_stack) <token::TOKEN_CHAR, token::TOKEN_NEWLINE, 4439 token::TOKEN_REQUEST, token::TOKEN_BEGIN_TRAP>: Don't handle 4440 `have_input'. 4441 4442 (define_color): Free color in case of reassignment. 4443 4444 * doc/groff.texinfo (@Defesc, @DefescList, @DefescItem, 4445 @DefescListEnd): Use @Var, not @var. 4446 Fix all calls. 4447 4448 * src/preproc/grn/hgraph.cc (HGPrintElt): Fix typo. 4449 4450 * src/preproc/pic/object.cc (object_spec::~object_spec): Free 4451 `shaded' and `outlined' arrays. 4452 (object_spec::object_spec): Initialize `shaded' and `outlined'. 4453 (graphic_object::set_fill_color, graphic_object::set_outline_color): 4454 Use strsave. 4455 (closed_object::set_fill_color): Ditto. 4456 * src/preproc/pic/troff.cc (troff_output::set_color): Use strsave 4457 instead of strdup. 4458 (troff_output::reset_color): Use a_delete instead of free. 4459 * src/preproc/pic/main.cc (do_file): Free `out' in case of error. 4460 44612003-02-11 Werner LEMBERG <wl@gnu.org> 4462 4463 * doc/groff.texinfo: Improve documentation of `ad'. 4464 Document that \D'f...' is dependent on the horizontal resolution. 4465 * man/groff_diff.man: Improve documentation of \D'f...'. 4466 4467 * src/preproc/grn/hgraph.cc (HGPrintElt) <POLYGON>: Don't emit 4468 compensating \h'...' for \D'f ...' since the latter no longer moves 4469 current position. 4470 * src/preproc/pic/troff.cc (troff_output::set_fill): Ditto. 4471 44722003-02-10 Werner LEMBERG <wl@gnu.org> 4473 4474 Improve error messages for `x F' (and `F') commands. 4475 4476 * src/include/error.h: Add declaration for 4477 `current_source_filename'. 4478 * src/libs/libgroff/filename.cc: Add `current_source_filename'. 4479 * src/libs/libgroff/error.cc (do_error_with_file_and_line): Add 4480 parameter for source file string. 4481 Updated all callers. 4482 4483 * src/libs/libdriver/input.cc: Add `current_source_filename'. 4484 (remember_source_filename): New function. 4485 (parse_x_command <'F'>, do_file <'F'>): Use it. 4486 44872003-02-09 Werner LEMBERG <wl@gnu.org> 4488 4489 Make grotty not emit warnings about unknown colors more than 4490 necessary. 4491 4492 * src/devices/grotty/tty.cc: Include `ptable.h'. 4493 (TTY_MAX_COLORS): Removed. 4494 (DEFAULT_COLOR_IDX): Defined to -1. 4495 (glyph): Change `back_color_idx' and `fore_color_idx' to `char'. 4496 (tty_printer): Change `curr_back_idx' and `curr_fore_idx' to `char'. 4497 Change `tty_colors' to be a ptable. 4498 First arg of `put_color' is now `char'. 4499 New functions `make_rgb_string' and `tty_color'. 4500 (tty_printer::tty_printer): Use `tty_color'. 4501 (tty_printer::color_to_idx): Return value is now `char'. 4502 Use `tty_color'. 4503 4504 * src/include/color.h (color): Add `print_color' member function. 4505 * src/libs/libgroff/color.cc (color::print_color): Implement it. 4506 45072003-02-08 Werner LEMBERG <wl@gnu.org> 4508 4509 Valgrind fixes. 4510 4511 * src/devices/grops/ps.cc (ps_printer::define_encoding): Close 4512 encoding file. 4513 4514 * src/include/ptable.h (PTABLE::~PTABLE, PTABLE::define): Always 4515 assume that value has been allocated with `new[]', thus use 4516 `a_delete' for deallocation. 4517 4518 * src/libs/libdriver/input.cc (get_integer_arg, 4519 get_possibly_int_args, parse_x_command, do_file): Use `a_delete' 4520 where appropriate. 4521 4522 * src/libs/libgroff/new.cc (delete) [!COOKIE_BUG]: Define. 4523 * src/libs/libgroff/nametoindex.cc 4524 (character_indexer::named_char_index): Use `new <type>[1]'. 4525 4526 * src/preproc/eqn/lex.cc (init_table, do_definition): Use `new 4527 <type>[1]'. 4528 * src/preproc/eqn/text.cc (set_special_char_type): Ditto. 4529 (split_text): Use `a_delete'. 4530 4531 * src/preproc/pic/pic.y (define_label, define_variable): Use `new 4532 <type>[1]'. 4533 4534 * src/roff/troff/env.cc (environment::choose_breakpoint): Avoid 4535 harmless memory leak. 4536 (hyphen_trie::read_patterns_file): Initialize `buf'. 4537 * src/roff/troff/node.cc (troff_output_file::troff_output_file): 4538 Initialize `current_fill_color'and `current_glyph_color'. 4539 * src/roff/troff/glyphuni.cc 4540 (glyph_to_unicode_init::glyph_to_unicode_init): Use `new <type>[1]'. 4541 * src/roff/troff/uniuni.cc 4542 (unicode_decompose_init::unicode_decompose_init): Ditto. 4543 * src/roff/troff/uniglyph.cc 4544 (unicode_to_glyph_init::unicode_to_glyph_init): Ditto. 4545 45462003-01-26 Werner LEMBERG <wl@gnu.org> 4547 4548 * src/utils/indxbib/indxbib.cc (main) [__EMX__]: Check with 4549 `access' before calling `unlink'. 4550 (do_file): Handle __EMX__. 4551 4552 * src/include/nonposix.h: Handle __EMX__. 4553 4554 * Makefile.in (SEP): New variable; set to @PATH_SEPARATOR@. 4555 (fontpath,tmacpath): Use it. 4556 (MDEFINES): Add it. 4557 Sorted alphabetically. 4558 4559 * src/preproc/eqn/neqn.sh, src/roff/nroff/nroff.sh: Use 4560 @SEP@. 4561 * src/preproc/eqn/Makefile.sub, src/roff/nroff/Makefile.sub: Handle 4562 @SEP@. 4563 45642003-01-27 Werner LEMBERG <wl@gnu.org> 4565 4566 * src/libs/libgroff/strcasecmp.c, src/libs/libgroff/strncasecmp.c: 4567 New files, copied from gnulib. 4568 * src/libs/libgroff/Makefile.sub (CSRCS): Add them. 4569 * configure.ac: Updated. 4570 * configure: Regenerated. 4571 4572 * src/include/config.hin: Regenerated. 4573 * src/include/lib.h [!HAVE_STRCASECMP]: Declare `strcasecmp'. 4574 Don't define `strcasecmp' as `strcmp'. 4575 [!HAVE_STRNCASECMP]: Declare `strncasecmp'. 4576 Dont define `strncasecmp' as `strncmp'. 4577 4578 * src/roff/groff/pipeline.c [!HAVE_STRCASECMP, !HAVE_STRNCASECMP]: 4579 Removed. 4580 45812003-01-26 Werner LEMBERG <wl@gnu.org> 4582 4583 * src/utils/indxbib/indxbib.cc (main) [__EMX__]: Fix typo: 4584 s/unline/unlink/. 4585 45862003-01-25 Werner LEMBERG <wl@gnu.org> 4587 4588 * doc/groff.texinfo (Ligatures and Kerning): Mention limitations. 4589 45902003-01-24 Werner LEMBERG <wl@gnu.org> 4591 4592 Add US-english hyphenation exceptions (converted from Barbara 4593 Beeton's hyphenation exception log reports which appear irregularly 4594 in TUGBoat). 4595 4596 * tmac/hyphen.us: Updated to latest version. 4597 * tmac/README: Updated. 4598 * tmac/hyphenex.us, tmac/hyphenex.sh: New files. 4599 * tmac/troffrc: Load `hyphenex.us'. 4600 * tmac/Makefile.sub (NORMALFILES): Add `hyphenex.us'. 4601 * doc/groff.texinfo: Updated. 4602 46032003-01-23 Werner LEMBERG <wl@gnu.org> 4604 4605 Improve hyphenation slightly. This is a first step in redesigning 4606 the hyphenation algorithm to make it more flexible (e.g. allowing 4607 kerns and ligatures between the hyphenation character and the 4608 following character -- while not used normally in English, other 4609 languages like German would benefit). 4610 4611 * src/roff/troff/env.cc (environment::hyphenate_line): Use 4612 assertion instead of if-clause. 4613 Let `get_hyphen_list' return the number of involved characters in 4614 the hyphenation pattern instead of computing it directly (which 4615 often yields too small values). 4616 * src/roff/troff/node.h (*::get_hyphen_list): Add second parameter. 4617 * src/roff/troff/node.cc (*::get_hyphen_list): Handle new second 4618 parameter. 4619 46202003-01-22 Werner LEMBERG <wl@gnu.org> 4621 4622 Fixing a bug which caused groff to hang if the hyphenation exception 4623 dictionary tried to grow. 4624 4625 * src/roff/troff/env.cc (hyphen_trie::insert_hyphenation, 4626 hyphen_trie::read_patterns_file, do_hyphenation_patterns_file): Use 4627 pointer to dictionary. 4628 46292003-01-20 Werner LEMBERG <wl@gnu.org> 4630 4631 * src/utils/afmtodit/afmtodit.pl: Add switch `-m' to suppress 4632 negative left italic correction. 4633 * src/utils/afmtodit/afmtodit.man: Document it. 4634 4635 * font/devps/generate/Makefile (RFLAG): Add `-m'. 4636 * font/devps/{AB,AR,BMB,BMR,CB,CR,EURO,HB,HR,HNB,HNR,NB,NR,PB,PR, 4637 S,TB,TR,ZD,ZDR}: Regenerated with afmtodit options `-i 0 -m'. 4638 4639 * NEWS: Updated. 4640 46412003-01-16 Werner LEMBERG <wl@gnu.org> 4642 4643 * NEWS: Updated. 4644 46452003-01-16 J�rgen Grahn <jgrahn@algonet.se> 4646 4647 * src/preproc/refer/refer.man: Mention REFER environment variable. 4648 46492003-01-05 Werner LEMBERG <wl@gnu.org> 4650 4651 Similar to \[is], the square root glyph (\[sr]) and the square root 4652 extension glyph (\[radicalex]) are now text symbols. The new 4653 mathematical versions are called \[sqrt] and \[sqrtex], 4654 respectively. 4655 4656 * font/devX*/S: Regenerated. 4657 * font/devdvi/generate/texex.map: Rename `sr[0123]' to `sqrt[0123]'. 4658 * font/devdvi/generate/texsy.map: Rename `sr' to `sqrt'. 4659 * font/devdvi/EX, font/devdvi/S: Regenerated. 4660 * font/devhtml/R.proto, font/devutf8/R.proto: Add `sqrt'. 4661 * font/devlj4/generate/special.map: Add `sqrt'. 4662 * font/devlj4/S: Regenerated. 4663 * font/devps/generate/textmap: Add `sqrt'. 4664 * font/devps/S, font/devps/symbolmap: Regenerated. 4665 4666 * src/preproc/eqn/sqrt.cc (SQRT_CHAR, RADICAL_EXTENSION_CHAR, 4667 SQRT_CHAIN, BAR_CHAIN): Use `sqrt*' and `sqrtex*'. 4668 * src/roff/troff/input.cc (init_charset_table): Make `sqrtex' 4669 overlap horizontally. 4670 4671 * tmac/X.tmac, tmac/ps.tmac, tmac/lj4.tmac: Add `sqrtex'. 4672 * tmac/dvi.tmac: Add `sr', and `sqrtex'. 4673 Fix `radicalex'. 4674 4675 * doc/groff.texinfo, man/groff_diff.man: Document that `radicalex' 4676 and `sqrtex' are overlapping glyphs. 4677 46782003-01-04 Werner LEMBERG <wl@gnu.org> 4679 4680 * font/devdvi/generate/texsy.map: Add `is'. 4681 * font/devps/symbolmap: Regenerated. 4682 * font/devdvi/*TC, MI, S: Regenerated. 4683 4684 * tmac/dvi.tmac: Remove `is'. 4685 46862003-01-03 Werner LEMBERG <wl@gnu.org> 4687 4688 `is' is now a text symbol (only relevant for dvi). The math variant 4689 can be accessed with `integral'. 4690 4691 * font/devX*/S: Regenerated. 4692 * font/devdvi/generate/texex.map: Remove `is'. 4693 * font/devdvi/EX: Updated. 4694 * font/devhtml/R.proto, font/devutf8/R.proto: Add `integral'. 4695 * font/devlj4/generate/special.map: Ditto. 4696 * font/devlj4/S: Regenerated. 4697 * font/devps/generate/textmap: Add `integral'. 4698 * font/devps/S: Regenerated. 4699 4700 * tmac/dvi.tmac: Define `is'. 4701 4702 * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Add `integral'. 4703 4704 * src/preproc/tbl/main.cc (process_format): Fix error message. 4705 47062003-01-02 Werner LEMBERG <wl@gnu.org> 4707 4708 * font/devhtml/R.proto, font/devutf8/R.proto: Add `ne' and `nc'. 4709 * font/devps/textmap: Fix entries for `ne' and `nc'. 4710 * font/devps/symbolmap: Regenerated. 4711 4712 * src/roff/troff/glyphuni.cc (glyph_to_unicode_list), 4713 src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Add `18', 4714 `38', `58', `78', `-+', `|=', `nc', `ne'. 4715 4716 * tmac/dvi.tmac: Add `nm', `ne', `nc'. 4717 Use `schar' for `aq'. 4718 * tmac/ps.tmac, tmac/X.tmac: Add `nc' and `ne'. 4719 * tmac/ec.tmac: Add `SC' to special fonts for `CW' and `CWI'. 4720 * tmac/tty.tmac: Add `ne'. 4721 4722 * src/roff/troff/node.cc (make_glyph_node): Test with `get_macro' 4723 for fallback glyphs. 4724 47252002-12-29 Werner LEMBERG <wl@gnu.org> 4726 4727 Add glyph `|='. 4728 4729 * font/devX*/*: Regenerated. 4730 * font/devdvi/generate/ec.map: Remove `eq'. 4731 * font/devdvi/generate/texsy.map: Make `~=' the same as `~~'. 4732 Assign `|=' to position 39. 4733 * font/devdvi/*EC, S: Regenerated. 4734 * font/devhtml/R.proto, font/devutf8/R.proto: Add `|='. 4735 * font/devlj4/generate/special.map: Make `~=' the same as `~~'. 4736 Assign `|=' to position 549. 4737 * font/devps/generate/textmap, font/devps/enerate/symbolmap: Remove 4738 `equalmath'. 4739 Add `uni2243' for `|='. 4740 4741 * tmac/ec.tmac: Add `eq'. 4742 * tmac/dvi.tmac: Add `=~'. 4743 * tmac/tty-char.tmac, tmac/ps.tmac, tmac/X.tmac, tmac/lbp.tmac: Add 4744 `|='. 4745 47462002-12-21 Werner LEMBERG <wl@gnu.org> 4747 4748 * font/devdvi/generate/tc.map: Remove `**'. 4749 * font/devdvi/*TC: Regenerated. 4750 * font/devhtml/R.proto, font/devutf8/R.proto: Add `18', `38', `58', 4751 `78', `<<', `>>'. 4752 * font/devutf8/NOTES: Updated. 4753 4754 * src/roff/troff/charinfo.h (charinfo): Add `setx_macro' function. 4755 Don't give default parameter to `set_macro'. 4756 * src/roff/troff/input.cc (do_define_character): Use `setx_macro' 4757 instead of `set_macro'. 4758 (charinfo::setx_macro): Implement it. 4759 (charinfo::set_macro): Don't change `mode'. 4760 4761 * tmac/tty.tmac: Add `18', `38', `58', `78', `<<', `>>'. 4762 * tmac/ps.tmac, tmac/X.tmac: Add `<<', `>>'. 4763 * tmac/dvi.tmac: Define `!=' with `.schar'. 4764 47652002-12-20 Werner LEMBERG <wl@gnu.org> 4766 4767 * font/devX*/S: Regenerated. 4768 * font/devdvi/generate/ec.map: Remove `pl'. 4769 * font/devdvi/generate/tc.map: Remove `mi', `14', `12', `34'. 4770 * font/devdvi/*{TC,EC}: Regenerated. 4771 * font/devhtml/R.proto: Add `-+'. 4772 Remove double entries for `rk', `lk', `lt', `rt', `rb', `lb'. 4773 * font/devlbp/*: Remove `or'. 4774 * font/devlj4/generate/special.map: Remove `or'. 4775 * font/devlj4/S: Regenerated. 4776 * font/devps/generate/textmap: Add `fiveeighths', `oneeighth', 4777 `seveneighths', `threeeighths'. 4778 Remove `plusmath'. 4779 Replace `minusplus' with `uni2213'. 4780 * font/devps/symbolmap: Regenerated. 4781 * font/devutf8/R.proto: Replace `shc' with unnamed glyph. 4782 Add `-+'. 4783 4784 * src/roff/troff/charinfo.h (charinfo): Add `is_normal' inline 4785 function. 4786 * src/roff/troff/node.cc (troff_output_file::put_char_width): 4787 Call glyph_color and fill_color even if tcommand_flag isn't set. 4788 (make_node, node::add_char): Check not ci->is_fallback but 4789 ci->is_normal. 4790 4791 * tmac/lj4.tmac, tmac/lbp.tmac: Define `or'. 4792 * tmac/ec.tmac: Add .rchar entry for `f/'. 4793 Don't remove `12', `14', `34'. 4794 Define `pl' to be always roman. 4795 * tmac/ps.tmac (ps-frac, ps-frac-mono): New macros. 4796 Define `18', `38', `58', `78'. 4797 * tmac/tty.tmac: Add `-+'. 4798 * tmac/dvi.tmac: Define `f/'. 4799 (dvi-frac): Use `f/'. 4800 * tmac/X.tmac (X-frac, X-frac-mono): New macros. 4801 Define `18', `38', `58', `78'. 4802 48032002-12-15 Colin Watson <cjwatson@debian.org> 4804 4805 * contrib/pic2graph/pic2graph.sh: Add missing `;;'. 4806 48072002-12-10 Werner LEMBERG <wl@gnu.org> 4808 4809 Add glyph `tno', a textual variant of `no'. 4810 4811 * font/devX*/*: Regenerated. 4812 * font/{devcp1047,devlatin1,devutf8,devhtml}/R.proto: Add `tno'. 4813 * font/devdvi/generate/{tc.map: Replace `no' with `tno'. 4814 * font/devdvi/generated/{texsy,textex}.map: Add `tno'. 4815 * font/devdvi/*: Regenerated. 4816 * font/devlbp/*: Add `tno'. 4817 * font/devlj4/generate/tex.map: Replace `no' with `tno'. 4818 * font/devlj4/*: Regenerated. 4819 * font/devps/generate/textmap: Replace `no' with `tno'. 4820 * font/devps/generate/symbolchars: Add `no'. 4821 * font/devps/*: Regenerated. 4822 4823 * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Add `tno'. 4824 4825 * tmac/cp1047.tmac, tmac/latin1.tmac: Replace `no' with `tno'. 4826 * tmac/tty-char.tmac: Add entry for `tno' and `3d'. 4827 4828 * NEWS: Updated. 4829 4830 * tmac/dvi.tmac: Replace most `\\' with `\E'. 4831 Add definition for `sd'. 4832 * tmac/X.tmac, tmac/ps.tmac: Replace most `\\' with `\E'. 4833 4834 * tmac/eqnrc <dvi>: Use `integral' instead of `is' glyph. 4835 48362002-12-08 Werner LEMBERG <wl@gnu.org> 4837 4838 * tmac/an-old.tmac (TH): Use integer value for `IN' if in nroff 4839 mode to avoid rounding errors. 4840 (an-do-tag, an-do-tag-html, RS, RE): Remove redundant `.br'. 4841 4842 * src/roff/groff/groff.man, src/roff/nroff/nroff.man, 4843 src/roff/troff/troff.man: Improve documentation of -T. 4844 48452002-12-07 Jeff Conrad <jeff_conrad@msn.com> 4846 4847 * src/roff/groff/pipeline.c: Don't define `const' for _WIN32. 4848 (run_pipeline) [_WIN32]: Provide working function without `fork'. 4849 48502002-12-06 Werner LEMBERG <wl@gnu.org> 4851 4852 * font/devps/generate/freeeuro.sfd: Make dimensions of Euro.symbol 4853 glyphs compatible to Adobe's Euro fonts (scaling them down a bit). 4854 Scaling Euro.sansserif glyphs down to have the same height as 4855 digits. 4856 Removed unnecessary points; added some extrema. 4857 4858 * font/devps/EURO, font/devps/freeeuro.afm, font/devps/freeeuro.pfa: 4859 Regenerated. 4860 48612002-12-04 Werner LEMBERG <wl@gnu.org> 4862 4863 * font/devps/generate/freeeuro.sfd: Add glyphs `Euro.symbol.slanted' 4864 and `Euro.symbol.bold.slanted'. 4865 Improve some glyph offsets and widths. 4866 * font/devps/EURO, font/devps/freeeuro.afm, font/devps/freeeuro.pfa: 4867 Regenerated. 4868 * font/devps/generate/Makefile (freeeuro.afm freeeuro.pfa): Fix 4869 typo. 4870 * font/devps/generate/sfdtopfa.pe: Generate PFA in current 4871 direcory. 4872 4873 * tmac/europs.tmac: Updated to new glyph indices. 4874 Use Euro.symbol for font familiy `A'. 4875 4876 * doc/groff.texinfo: Minor improvements. 4877 48782002-12-02 Werner LEMBERG <wl@gnu.org> 4879 4880 * font/devdvi/generate.tc.map: s/%O/%0/. 4881 * font/devdvi/*TC: Regenerated. 4882 4883 * src/roff/troff/div.cc (init_div_requests): Sorted. 4884 4885 * tmac/dvi.tmac: Remove `Ye'. 4886 * tmac/ec.tmac: Remove `Ye'. 4887 Add .rchar entry for `de'. 4888 4889 * man/groff.man, man/groff_diff.man: Document register `.pe'. 4890 * doc/groff.texinfo: Document registers `.pe', `.n', and `.w'. 4891 * NEWS: Updated. 4892 48932002-11-30 Werner LEMBERG <wl@gnu.org> 4894 4895 Add PS font for various Euro glyphs. 4896 4897 * font/devps/generate/freeeuro.sfd: New master font file for 4898 pfaedit. 4899 * font/devps/generate/sfdtopfa.pe: New conversion script for 4900 pfaedit. 4901 * font/devps/generate/Makefile (FONTS): Add `EURO'. 4902 (EURO, freeeuro.afm, freeeuro.pfa): New rules. 4903 * font/devps/freeeuro.pfa, font/devps/freeeuro.afm: Generated from 4904 `freeeuro.sfd'. 4905 * font/devps/EURO: Generated from `freeeuro.afm'. 4906 * font/devps/download: Add `freeuro.pfa'. 4907 * font/devps/Makefile.sub (NORMALFILES): Adde `EURO' and 4908 `freeeuro.pfa'. 4909 4910 * tmac/europs.tmac: New file. 4911 * tmac/ps.tmac: Include `europs.tmac'. 4912 * tmac/Makefile.sub (DISTFILES): Add `europs.tmac'. 4913 49142002-11-29 Werner LEMBERG <wl@gnu.org> 4915 4916 * font/devdvi/generate/texsy.map: Remove `lh' and `rh'. 4917 * font/devdvi/S: Regenerated. 4918 * font/devhtml/R.proto: Fix `CR' and `ci'. 4919 Add `OK'. 4920 * font/devps/generate/textmap: Fix `lh', `rh', and `sq'. 4921 Remove `bs'. 4922 * font/devps/symbolmap: Regenerated. 4923 * font/devutf8/R.proto: Fix `CR' and `ci'. 4924 Add `OK'. 4925 * font/devutf8/NOTES: Updated. 4926 4927 * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Fix `CR' and 4928 `ci'. 4929 Add `OK'. 4930 * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Ditto. 4931 4932 * tmac/dvi.tmac: Add `lh' and `rh'. 4933 * tmac/Xps.tmac: Fix `lh' and `rh'. 4934 * tmac/X.tmac: Add `OK'. 4935 * tmac/lj4.tmac: Ditto. 4936 49372002-11-24 Werner LEMBERG <wl@gnu.org> 4938 4939 * font/devX*/S: Regenerated. 4940 * font/devascii/R.proto, font/devcp1047/R.proto: Remove glyphs `lb', 4941 `lc', `lf', `lk', `lt', `rb', `rc', `rf', `rk', and `rt'. 4942 * font/devdvi/generate/texsy.map: Remove `or' glyph. 4943 * font/devdvi/S: Regenerated. 4944 * font/devhtml/R.proto, font/devutf8/R.proto: Add/fix glyphs 4945 `parenlefttp', `parenleftex', `parenleftbt', `parenrighttp', 4946 `parenrightex', `parenrightbt', `bracketlefttp', `bracketleftex', 4947 `bracketleftbt', `bracketrighttp', `bracketrightex', 4948 `bracketrightbt', `bracelefttp', `braceleftmid', `braceleftbt', 4949 `braceex', `braceleftex', `bracerightex', `bracerighttp', 4950 `bracerightmid', `bracerightbt', `lt', `lk', `lb', `rt', `rk', 4951 `rb', and `bv'. 4952 * src/roff/troff/glyphuni.cc, src/roff/troff/uniglyph.cc: Ditto. 4953 * font/devutf8/NOTES: Updated. 4954 * font/devlj4/generate/special.map: Add glyph `braceex'. 4955 * font/devlj4/S: Regenerated. 4956 4957 * tmac/tty-char.tmac: Add glyphs `lf', `rf', `lc', and `rc'. 4958 49592002-11-14 Werner LEMBERG <wl@gnu.org> 4960 4961 * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Add `va' 4962 and `vA'. 4963 Fix code for `an'. 4964 * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Ditto. 4965 4966 * doc/texinfo.tex: New version from texinfo 4.3. 4967 * doc/groff.texinfo: Updated for texinfo 4.3. 4968 Use @tie{} where appropriate. 4969 * font/devdvi/generate/ec.map: Don't include `or' and `bv'. 4970 * font/devdvi/generate/tc.map: Remove `rn'. 4971 * font/devdvi/*TC, font/devdvi/*EC: Regenerated. 4972 * font/devhtml/R.proto, font/devutf8/R.proto: Add `vA'. 4973 Fix code for `an'. 4974 * font/devX100/*, font/devX100-12/*, font/devX75/*, 4975 font/devX75-12/*: Regenerated. 4976 4977 * tmac/dvi.tmac: Add special fonts `SA' and `SB'. 4978 Use .char (again) for `br', `ul', `rn', `or', and `ru'. 4979 Improve definition of `an'. 4980 * tmac/ps.tmac: Use .char (again) for `br', `ul', `rn', `or', and 4981 `ru'. 4982 * tmac/lj4.tmac: Use .char (again) for `br', `ul', `rn', and `ru'. 4983 * tmac/X.tmac: Add definition for `or'. 4984 * tmac/Xps.tmac: Undo change 2002-11-05. 4985 * tmac/lbp.tmac: Add definitions for `br', `rn', `ul', and `ru'. 4986 49872002-11-11 Werner LEMBERG <wl@gnu.org> 4988 4989 * src/roff/troff/node.cc (troff_output_file::put_char): Always 4990 call flush_tbuf. 4991 49922002-11-10 Werner LEMBERG <wl@gnu.org> 4993 4994 Added three new requests `schar', `fschar', and `rfschar'. `schar' 4995 defines a glyph which is searched after the check for fonts declared 4996 with `.special' (and before the check for all mounted special 4997 fonts). `fschar' defines a glyph for a particular font which is 4998 searched after the check for fonts declared with `.fspecial' (and 4999 before the check for fonts declared with `.special'). `rfschar' 5000 removes glyphs defined with `fschar'. 5001 5002 * src/roff/troff/token.h (char_mode): New enum. 5003 Declare do_define_character. 5004 * src/roff/troff/charinfo.h (charinfo): Replace `fallback' with 5005 `mode'. 5006 (charinfo::is_fallback): Updated. 5007 (charinfo::is_special): New method. 5008 * src/roff/troff/input.cc (do_define_character): Add and use 5009 optional second parameter used as a prefix for font-specific glyph 5010 names. 5011 (define_character, define_fallback_character): Updated. 5012 (define_special_character): New function. 5013 (init_input_requests): Add `schar'. 5014 (charinfo::charinfo, charinfo::set_macro): Updated. 5015 * src/roff/troff/node.cc: Include `stringclass.h'. 5016 (make_glyph_node): Handle special glyphs defined with `.schar' and 5017 `.fschar'. 5018 (define_font_special_character, remove_font_special_character): New 5019 functions. 5020 (init_node_requests): Sorted. 5021 Add `fschar' and `rfschar'. 5022 * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: 5023 Document new requests. 5024 5025 * font/devhtml/R.proto, font/devutf8/R.proto: Add `va'. 5026 * tmac/dvi.tmac: Add `va' for CW and CWI (using `.fschar'). 5027 50282002-11-08 Werner LEMBERG <wl@gnu.org> 5029 5030 Added new font `SC' (cmtex10) to devdvi. 5031 5032 * devdvi/generate/Makefile (FONTS): Add `SC'. 5033 (SC): New rule. 5034 * devdvi/generate/textex.map: New map file for cmtex. 5035 * devdvi/SC: New. 5036 * devdvi/Makefile.sub (DEVFILES): Updated. 5037 * tmac/dvi.tmac: Add fspecial entries for SC. 5038 Add `MI', `S' and `CW' to the `special' call. Otherwise, `SC' is 5039 found before `S' since the font position of `SC' is lower due to the 5040 gaps in DESC's `font' line. 5041 * tmac/ec.tmac: Add a `special' call. 5042 * NEWS: Updated. 5043 5044 * font/devhtml/R.proto: Remove double entry for `ti'. 5045 * tmac/tty.tmac: Add entries for `IJ', `ij', and `bq'. 5046 * tmac/tty-char.tmac: Remove entry for `bq'. 5047 * tmac/lbp.tmac: Add entries for `lq', `rq', `fo', `fc', and `em'. 5048 * tmac/ec.tmac: Don't remove `aq' glyph. 5049 * tmac/X.tmac: Fix entry for `em'. 5050 Add entries for `fo' and `fc'. 5051 * tmac/dvi.tmac: Add entries for `em', `en', `hy', `fo', and `fc'. 5052 5053 * doc/groff.texinfo, man/groff.man, man/groff_diff.man: Fix 5054 documentation of `special' and `fspecial' requests. 5055 50562002-11-05 Werner LEMBERG <wl@gnu.org> 5057 5058 * font/devascii/R.proto, font/devcp1047/R.proto, 5059 font/devlatin1/R.proto: Remove entry for `.i'. 5060 * font/devdvi/generate/textt.map: Add entry for `ad'. 5061 * font/devdvi/generate/texr.map, font/devdvi/generate/texb.map, 5062 font/devdvi/generate/texi.map: Add dummy glyph name `slash@for@l'. 5063 We need this for getting kerning values to compose `/l' and `/L'. 5064 * font/devdvi: Regenerated font definition files for CM fonts. 5065 * font/devhtml/R.proto: Add entries for "'C", "'c", `IJ', and `ij'. 5066 * font/devutf8/R.proto: Ditto. 5067 Remove double entry for `ti'. 5068 5069 * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Fix entries 5070 for (groff) ligatures, `la', and `ra'. 5071 Add "'C", "'c", `IJ', and `ij'. 5072 Remove double entry for `ti'. 5073 * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Remove all 5074 double entries. 5075 Add "'C", "'c", `IJ', and `ij'. 5076 Fix entries for (groff) ligatures, `la', and `ra'. 5077 5078 * tmac/ps.tmac (ps-achar): New macro. 5079 Define "'c" and "'C". 5080 * tmac/tty.tmac: Add entry for `.i'. 5081 * tmac/X.tmac (X-achar): New macro. 5082 Define "'c", "'C", and `:Y'. 5083 Add entries for `IJ' and `ij'. 5084 * tmac/Xps.tmac (Xps-achar): New macro. 5085 Define "'c" and "'C". 5086 Add entries for `IJ' and `ij'. 5087 * tmac/lbp.tmac (lbp-achar): New macro. 5088 Add fallback characters for all groff ligatures and many other 5089 glyphs. 5090 * tmac/dvi.tmac: Fix definitions of `_' and `ul'. 5091 Add entries for `/l' and `/L'. 5092 Define "'c" and "'C". 5093 Add entries for `IJ' and `ij'. 5094 50952002-11-02 Larry Kollar <kollar@alltel.net> 5096 5097 * PROBLEMS: Document how to solve Mac OS X compilation problems. 5098 50992002-11-02 Werner LEMBERG <wl@gnu.org> 5100 5101 Adding support for composite glyphs: \[xxx yyy ...] and the 5102 `composite' request. 5103 5104 * src/roff/troff/glyphuni.cc: New file for mapping groff glyph names 5105 to Unicode-based glyph names. 5106 * src/roff/troff/uniglyph.cc: New file for mapping Unicode-based 5107 glyph names to groff glyph names. 5108 * src/roff/troff/uniuni.cc: New file for canonically decomposing 5109 Unicode-based glyph names. 5110 * src/roff/troff/unicode.cc, src/roff/troff/unicode.h: New files 5111 for handling Unicode glyph names. 5112 * src/roff/troff/input.cc: Include unicode.h. 5113 (composite_glyph_name): New function. 5114 (token::next) <'['>: Handle Unicode glyph names and composite 5115 glyphs. 5116 (composite_dictionary): New dictionary for the `composite' request. 5117 (composite_request): Implement `composite' request. 5118 (init_input_requests): Add `composite'. 5119 Alphabetically sorted. 5120 * src/roff/troff/env.cc (tabs_save, tabs_restore): Removed (already 5121 commented out). 5122 (init_env_requests): Alphabetically sorted. 5123 Removed `tas' and `tar' (already commented out). 5124 * src/roff/troff/Makefile.sub: Updated. 5125 51262002-10-31 Ruslan Ermilov <ru@FreeBSD.org> 5127 5128 * src/roff/nroff/nroff.man, src/roff/nroff/nroff.sh: Fix description 5129 of options. 5130 51312002-10-29 Werner LEMBERG <wl@gnu.org> 5132 5133 Fix computation of .trunc register. Additionally, its value (and 5134 the value of the .ne register) is now always set before entering the 5135 trap. 5136 5137 * src/roff/troff/div.cc (diversion::need): Set `truncated_space' and 5138 `needed_space' before calling `space'. 5139 (top_level_diversion::space): Remove special code for 'sp before the 5140 first page. 5141 Call `begin_page' with the discarded space as a parameter. 5142 (top_level_diversion::begin_page): Add optional parameter to set 5143 `truncated_space'. 5144 * src/roff/troff/div.h: Updated. 5145 5146 * doc/groff.texinfo: Improve documentation of .sp, \n[.trunc], and 5147 \n[.ne]. 5148 5149 * tmac/an-old.tmac (SH, SS, TP, IP, HP, TS): Undo change 2002-10-26. 5150 (LP): Remove superfluous call to `br'. 5151 * tmac/doc-common (doc-paragraph): Undo change 2002-10-26. 5152 * tmac/doc.tmac (Bd, Bl, doc-set-vertical-and-indent): Ditto. 5153 51542002-10-26 Werner LEMBERG <wl@gnu.org> 5155 5156 * tmac/doc-ditroff: Remove useless switch/variable -rC. 5157 (doc-setup-header): Don't set page register `%'. 5158 * tmac/doc-nroff: Remove variable `C'. 5159 (doc-setup-page-layout): Set doc-header-space to .5i unconditionally. 5160 (doc-setup-header): Don't set page register `%'. 5161 Don't call `bp'. 5162 * tmac/doc-common (doc-header): Call `ns'. 5163 (doc-paragraph): Protect .sp with .br so that it survives traps 5164 possibly set by the user. 5165 * tmac/doc.tmac (Bd, Bl, doc-set-vertical-and-indent): Ditto. 5166 5167 * tmac/doc*: Replace ' with . for consistency if no effect. 5168 51692002-10-26 Werner LEMBERG <wl@gnu.org> 5170 5171 * tmac/an-old.tmac (SH, SS, TP, IP, HP, TS): Protect .sp with .br 5172 so that it survives traps possibly set by the user. 5173 5174 * src/roff/troff/node.cc: Fix the changes from 2002-10-23. 5175 (troff_output_file::set_font): Call flush_tbuf if necessary. 5176 (troff_output_file::fill_color, troff_output_file::glyph_color): Call 5177 flush_tbuf and do_motion only if necessary. 5178 (troff_output_file::start_special, 5179 troff_output_file::put_char_width, troff_output_file::put_char, 5180 troff_output_file::draw): Updated. 5181 (word_space_node::tprint, space_node::tprint, hmotion_node::tprint, 5182 vmotion_node::tprint): Undo change 2002-10-23. 5183 51842002-10-25 Werner LEMBERG <wl@gnu.org> 5185 5186 * tmac/www.tmac (DC): Fix case of overlapping images. 5187 51882002-10-23 Werner LEMBERG <wl@gnu.org> 5189 5190 * src/roff/troff/node.cc (troff_output_file::fill_color, 5191 troff_output_file::glyph_color): Set current color before testing 5192 color_flag. 5193 (troff_output_file::put_char_width, troff_output_file::put_char, 5194 troff_output_file::draw): Don't call flush_tbuf and/or do_motion 5195 before glyph_color. 5196 (troff_output_file::file_color, troff_output_file::glyph_color): 5197 Call do_motion. 5198 (word_space_node::tprint, space_node::tprint, hmotion_node::tprint, 5199 vmotion_node::tprint): Move first, then call fill_color. 5200 52012002-10-20 Werner LEMBERG <wl@gnu.org> 5202 5203 * doc/groff.texinfo, man/groff_tmac.man: Document that it is not 5204 possible to use multiple main macro packages. 5205 52062002-10-19 Werner LEMBERG <wl@gnu.org> 5207 5208 * src/devices/grops/ps.cc (cmyk_flag): New global variable. 5209 (ps_printer::set_color): Set `cmyk_flag' for CMY and CMYK colors. 5210 (ps_printer::~ps_printer): Emit `%%Extensions: CMYK' if `cmyk_flag' 5211 is set. 5212 * font/devps/prologue.ps (Fk, Ck): Enclose definitions with a 5213 `where' construction since `cmyksetcolor' is a PS Level 2 operator. 5214 52152002-10-16 Werner LEMBERG <wl@gnu.org> 5216 5217 * NEWS, doc/webpage.ms: Updated. 5218 52192002-10-14 Werner LEMBERG <wl@gnu.org> 5220 5221 * src/roff/troff/node.cc (troff_output_file::put_char_width, 5222 troff_output_file::put_char, troff_output_file::fill_color, 5223 troff_output_file::glyph_color): Handle case where color pointer 5224 is null. 5225 52262002-10-13 Ruslan Ermilov <ru@FreeBSD.org> 5227 5228 Add the new -r option to grotty. It is similar to the -i option 5229 except it tells grotty(1) to use the "reverse video" attribute to 5230 render italic fonts. 5231 5232 * src/devices/grotty/tty.cc (reverse_flag): New global variable. 5233 (SGR_REVERSE, SGR_NO_REVERSE): New macros. 5234 (tty_printer::make_underline, tty_printer::put_color, 5235 tty_printer::end_page): Use it. 5236 (main): Add -r switch. 5237 (usage): Updated. 5238 * src/devices/grotty/grotty.man: Document it. 5239 52402002-10-11 Ruslan Ermilov <ru@FreeBSD.org> 5241 5242 * src/roff/troff/env.cc (hyphen_trie::read_patterns_file): Add 5243 cast to `unsigned char' to properly read patterns with 8bit 5244 characters. 5245 52462002-10-08 Werner LEMBERG <wl@gnu.org> 5247 5248 * REVISION: Increased to 2. 5249 5250Local Variables: 5251version-control: never 5252coding: latin-1 5253End: 5254