/contrib/groff/ChangeLog

https://bitbucket.org/freebsd/freebsd-head/ · #! · 5253 lines · 3763 code · 1490 blank · 0 comment · 0 complexity · ae2fa7f9f0bc4256c543a88a085551af MD5 · raw file

Large files are truncated click here to view the full file

  1. 2005-09-04 Werner LEMBERG <wl@gnu.org>
  2. * tmac/groff_ms.man, doc/groff.texinfo: Synchronize.
  3. * doc/webpage.ms: Updated.
  4. * install-sh, mkinstalldirs: New versions; taken from texinfo CVS.
  5. 2005-09-04 Jörgen Grahn <jgrahn@algonet.se>
  6. * tmac/groff_ms.man: Document `PO' better.
  7. 2005-09-03 Werner LEMBERG <wl@gnu.org>
  8. * NEWS: Document grotty changes.
  9. 2005-09-01 Keith Marshall <keith.d.marshall@ntlworld.com>
  10. Backward compatibility support for `man' program.
  11. * tmac/an-old.tmac (LL): Initialize it to respect prior LL register
  12. assignment, prior `.ll' request and then package defaults, in this
  13. specified order of decreasing priority.
  14. * tmac/groff_man.man, doc/groff.texinfo: Document altered `LL'
  15. register initialization priorities.
  16. 2005-08-29 Gary W. Swearingen <garys@opusnet.com>
  17. * tmac/groff_mdoc.man: Go into more details how the `AUTHORS'
  18. section should look like.
  19. 2005-08-29 Werner LEMBERG <wl@gnu.org>
  20. * tmac/groff_mdoc.man: The month's name in a call to .Dd shouldn't
  21. be abbreviated.
  22. 2005-08-27 Bernd Warken
  23. * tmac/groff_man.man: Add man(7) too SEE ALSO and more minor
  24. fixes.
  25. 2005-08-11 Bernd Warken
  26. * tmac/www.tmac (URL, MTO): Handle empty \\$1 better.
  27. 2005-08-09 Bernd Warken
  28. * tmac/www.tmac (URL, MTO): Use bold series if color support is
  29. deactivated.
  30. 2005-08-02 Bernd Warken
  31. * doc/Makefile.sub (uninstall_sub): Use --remove, not --delete
  32. as argument to $(INSTALL_INFO). The latter isn't portable.
  33. Remove $(HTMLEXAMPLEFILES) too.
  34. * Makefile.in (uninstall_dirs): Remove $(datadir)/doc/groff and
  35. $(datadir)/doc too.
  36. Suppress warning messages and return always true.
  37. * tmac/Makefile.sub (uninstall_sub): Remove www.tmac too.
  38. 2005-07-02 Bernd Warken
  39. * src/devices/xditview/gxditview.man: Change many `.I' to `.B'.
  40. * man/groff_out.man: More markup and minor improvements.
  41. * src/roff/groff/groff.man: Minor improvements.
  42. 2005-06-28 Werner LEMBERG <wl@gnu.org>
  43. * ChangeLog: Split off older entries into...
  44. * ChangeLog.115 ChangeLog.116, ChangeLog.117, ChangeLog.118: New
  45. files.
  46. 2005-06-26 Bernd Warken
  47. * src/devices/xditview/gxditview.man: More minor fixes.
  48. 2005-06-24 Werner LEMBERG <wl@gnu.org>
  49. * src/preproc/pic/troff.cpp (troff_output::set_fill,
  50. troff_output::set_color, troff_output::reset_color): Use .bcolor and
  51. .fcolor instead of \m and \M, respectively.
  52. 2005-06-23 Bernd Warken
  53. * src/devices/xditview/gxditview.man: More minor fixes.
  54. * README: Formatting issues.
  55. Mention some problems with Debian.
  56. 2005-06-23 Bernd Warken
  57. * src/devices/xditview/gxditview.man: Revised and improved.
  58. 2005-06-22 Werner LEMBERG <wl@gnu.org>
  59. Another round in fixing getopt problems. Hopefully the last one!
  60. This time we use the getopt stuff from gnulib and define a prefix
  61. unconditionally so that there are no collisions with any other
  62. getopt implementations. This is a slight waste of space in case
  63. we already use a GNU getopt implementation, but on
  64. the other hand it really simplifies life.
  65. * src/include/getopt.h: Use gnulib version.
  66. * src/include/getopt_int.h: Use gnulib version.
  67. * src/include/groff-getopt.h: Removed. Obsolete now.
  68. * src/include/lib.h: Regarding getopt, don't handle any platform
  69. specially; just include getopt.h.
  70. (__GETOPT_PREFIX): Define (before getopt.h).
  71. * src/include/Makefile.sub (HDRS): Updated.
  72. * src/libs/libgroff/getopt1.c, src/libs/libgroff/getopt.c: Use
  73. gnulib version.
  74. * src/libs/libgroff/Makefile.sub (EXTRA_CFLAGS): Set
  75. __GETOPT_PREFIX.
  76. * src/utils/pfbtops/pfbtops.c, src/utils/xtotroff/xtotroff.c
  77. (__GETOPT_PREFIX): Define (before getopt.h).
  78. 2005-06-21 Werner LEMBERG <wl@gnu.org>
  79. * src/include/lib.h: Provide a fix for Mac OS X to not include
  80. groff-getopt.h.
  81. 2005-06-20 Denis M. Wilson <dmw@oxytropis.plus.com>
  82. * font/devps/prologue.ps (EP): Dont' use `bind'. Reason: Using
  83. `bind' to define a procedure which contains `showpage' means that an
  84. invocation of `showpage' may execute wrongly (the exact effect
  85. depending on the interpreter). Not usually a problem except under
  86. transformations, such as combining pages.
  87. (PEND): Don't call `clear'. Reason: Using `clear' in the definition
  88. of /PEND means that stack underflow will occur if the stack is
  89. deliberately non-empty before document inclusion. If included
  90. files are found to be generally badly behaved, we could replace the
  91. `clear' with `mark' in /PBEGIN and `cleartomark' in /PEND (I've
  92. never found this necessary).
  93. 2005-06-20 Jörgen Grahn <jgrahn@algonet.se>
  94. * src/preproc/soelim/soelim.cpp (do_file): Append trailing zero
  95. earlier to get correct error message.
  96. 2005-06-16 Bernd Warken
  97. * src/roff/nroff/nroff.sh: Add support for iso-8859-15.
  98. 2005-06-15 Werner LEMBERG <wl@gnu.org>
  99. Another try to update getopt files. This time we add a dummy
  100. gettext.h file to satisfy the dependency.
  101. * src/include/getopt.h, src/libs/libgroff/getopt.c,
  102. src/libs/libgroff/getopt1.c: Updated from GNU libc CVS.
  103. * src/include/getopt_int.h: New file (from GNU libc CVS).
  104. * src/include/gettext.h: Dummy file which just defines a gettext()
  105. macro.
  106. * src/include/groff-getopt.h: Updated.
  107. * src/include/Makefile.sub (HDRS): Add getopt_int.h and gettext.h.
  108. * src/libs/libdriver/input.cpp (IntArray): Remove superfluous
  109. `const' keywords in return value.
  110. * src/preproc/html/pushback.cpp (pushBackBuffer::~pushBackBuffer):
  111. Remove redundant variable `old'.
  112. (pushBackBuffer::skipToNewline): Remove redundant variable `ch'.
  113. * src/preproc/tbl/main.cpp (process_table): Remove redundant
  114. variable `c'.
  115. Fix more friend name injection problems since modern C++ compilers
  116. fail otherwise. We simply provide (global) declarations for all
  117. functions declared as friends. This is not really necessary but
  118. doesn't harm.
  119. * src/preproc/eqn/lex.cpp: Provide declarations for get_char,
  120. peek_char, and get_location.
  121. * src/preproc/refer/ref.h: Provide declarations for
  122. compare_reference, same_reference, same_year, same_date,
  123. same_author_last_name, and same_author_name.
  124. * src/roff/troff/div.h: Provide declarations for do_divert and
  125. page_offset.
  126. * src/roff/troff/env.h: Provide declarations for title_length,
  127. space_size, fill, no_fill, adjust, no_adjust, center, right_justify,
  128. vertical_spacing, post_vertical_spacing, line_spacing, line_length,
  129. indent, temporary_indent, do_underline, do_input_trap, set_tabs,
  130. margin_character, no_number, number_lines, leader_character,
  131. tab_character, hyphenate_request, no_hyphenate,
  132. hyphen_line_max_request, hyphenation_space_request,
  133. hyphenation_margin_request, line_width, tabs_save, tabs_restore,
  134. line_tabs_request, widow_control_request, and do_divert.
  135. * src/roff/troff/input.cpp: Provide declaration for chop_macro.
  136. * src/roff/troff/node.cpp: Provide declarations for class
  137. tfont_spec.
  138. Provide declaration for make_tfont.
  139. 2005-05-29 Werner LEMBERG <wl@gnu.org>
  140. * doc/fdl.texi: Updated to version 1.2. Reported by Bernd Warken.
  141. 2005-05-28 Werner LEMBERG <wl@gnu.org>
  142. * contrib/pdfmark/Makefile.sub (.ms.pdf): Use `--stylesheet', not
  143. `--style'.
  144. * src/devices/grolbp/lbp.cpp, src/devices/grolbp/lbp.h: Remove
  145. redundant semicolons.
  146. * src/preproc/eqn/Makefile.sub, src/preproc/html/Makefile.sub,
  147. src/preproc/soelim/Makefile.sub, src/preproc/tbl/Makefile.sub:
  148. Define `MLIB'. Some compilers need this for linking with libgroff.
  149. 2005-05-27 Werner LEMBERG <wl@gnu.org>
  150. * MANIFEST, README, doc/webpage.ms: Updated.
  151. 2005-05-26 Werner LEMBERG <wl@gnu.org>
  152. * All affected files: Update postal address of FSF.
  153. 2005-05-25 Keith Marshall <keith.d.marshall@ntlworld.com>
  154. Bernd Warken
  155. * README: More fixes.
  156. * README.CVS: Removed. Its contents is now part of the README file.
  157. 2005-05-21 Werner LEMBERG <wl@gnu.org>
  158. * README: Updated. Based on a patch from Bernd Warken.
  159. 2005-05-16 Keith Marshall <keith.d.marshall@ntlworld.com>
  160. Miscellaneous script portability enhancements.
  161. * aclocal.m4: (GROFF_CSH_HACK): Add space in shebang prototype for
  162. generated conftest.sh script, conforming to portability
  163. recommendation in autoconf docs.
  164. * configure: Likewise, for code generated by GROFF_CSH_HACK.
  165. * contrib/eqn2graph/eqn2graph.sh: Add space in shebang, conforming
  166. to portability recommendation in autoconf docs.
  167. * contrib/gdiffmk/gdiffmk.sh: Likewise.
  168. * contrib/gdiffmk/tests/runtests.in: Likewise.
  169. * contrib/grap2graph/grap2graph.sh: Likewise.
  170. * contrib/groffer/groffer.sh: Likewise.
  171. * contrib/mm/mmroff.pl: Likewise.
  172. * contrib/mom/momdoc/appendices.html: Likewise.
  173. * contrib/pic2graph/pic2graph.sh: Likewise.
  174. * font/devps/generate/afmname: Likewise.
  175. * src/devices/xditview/ad2c: Likewise.
  176. * src/preproc/eqn/neqn.sh: Likewise.
  177. * src/roff/grog/grog.pl: Likewise.
  178. * src/roff/grog/grog.sh: Likewise.
  179. * src/roff/nroff/nroff.sh: Likewise.
  180. * PROBLEMS: Likewise, in embedded script examples.
  181. 2005-05-16 Keith Marshall <keith.d.marshall@ntlworld.com>
  182. Improve portability of `pdfroff' shell script.
  183. * arch/misc/shdeps.sh: Add space in shebang, conforming to
  184. portability guidelines in `autoconf' docs.
  185. (PATH_SEARCH_SETUP): New substitution; emits PATH_SEPARATOR
  186. initialization code. Used by contrib/pdfmark/pdfroff.sh's
  187. `searchpath' function.
  188. 2005-05-14 Werner LEMBERG <wl@gnu.org>
  189. * contrib/pic2graph/pic2graph.sh, contrib/graph2graph.sh,
  190. contrib/eqn2graph.sh: Add option `-trim' to `convert' which is
  191. needed for newer ImageMagick versions.
  192. 2005-05-07 Werner LEMBERG <wl@gnu.org>
  193. * src/preproc/refer/refer.man: Many small typographic fixes.
  194. 2005-05-06 Jeff Conrad <jeff_conrad@msn.com>
  195. * src/devices/grohtml/post-html.cpp (assert_state::~assert_state):
  196. Use `char *' cast for a_delete.
  197. 2005-05-03 Werner LEMBERG <wl@gnu.org>
  198. * src/libs/libgroff/maxpathname.cpp: Include stdlib.h.
  199. src/libs/libgroff/relocate.cpp: Use path_name_max everywhere.
  200. 2005-05-03 Jeff Conrad <jeff_conrad@msn.com>
  201. * src/devices/grohtml/post-html.cpp: Use casts to `char *' if using
  202. `a_delete' for `const char *'.
  203. 2005-05-03 Werner LEMBERG <wl@gnu.org>
  204. * src/devices/grohtml/post-html.cpp,
  205. src/devices/grohtml/html-table.cpp,
  206. src/devices/grohtml/html-text.cpp, src/devices/grohtml/output.cpp:
  207. Replace malloc/free with new/delete/a_delete.
  208. * src/devices/grolbp/lbp.h: Remove superfluous semicolons which
  209. are prohibited with ANSI C++.
  210. (lbpprintf, vdmprintf): Remove useless `inline' keyword (since the
  211. function has a variable number of arguments).
  212. * src/preproc/grn/main.cpp (doinput): Change return type to `int'.
  213. Simplify function and update all callers.
  214. 2005-05-02 Werner LEMBERG <wl@gnu.org>
  215. Undo getopt changes from 2005-04-30. We don't want a dependency
  216. on gettext.
  217. * src/include/getopt_int.h: Removed.
  218. * src/include/getopt.h, src/include/groff-getopt.h,
  219. src/include/Makefile.sub, src/libs/libgroff/getopt.c,
  220. src/libs/libgroff/getopt1.c: Revert to previous version.
  221. * src/include/nonposix.h (access) [_MSC_VER]: New macro.
  222. * src/include/posix.h (F_OK): Define conditionally.
  223. * src/devices/grotty/tty.cpp (tty_printer::make_underline): Use
  224. different variable name in second `for' loop to avoid MSVC compiler
  225. problem.
  226. 2005-04-30 Werner LEMBERG <wl@gnu.org>
  227. AC_TYPE_SIGNAL from current autoconf can fail if CC=g++.
  228. * aclocal.m4 (GROFF_TYPE_SIGNAL): New function.
  229. * configure.ac: Use GROFF_TYPE_SIGNAL, not AC_TYPE_SIGNAL.
  230. * configure, src/include/config.hin: Regenerated.
  231. * PROBLEMS: Updated.
  232. Update getopt files.
  233. * src/include/getopt.h, src/libs/libgroff/getopt.c,
  234. src/libs/libgroff/getopt1.c: Updated from GNU libc CVS.
  235. * src/include/getopt_int.h: New file (from GNU libc CVS).
  236. * src/include/groff-getopt.h: Updated.
  237. * src/include/Makefile.sub (HDRS): Add getopt_int.h.
  238. * font/devutf8/NOTES: Updated.
  239. 2005-04-28 Werner LEMBERG <wl@gnu.org>
  240. Bug fix for Win32 relocatable code. Based on a patch from Keith
  241. Marshall.
  242. * src/libs/libgroff/maxpathname.cpp (PATH_MAX): Test for `_MAX_PATH'
  243. also.
  244. * src/libs/libgroff/relocate.c (DEBUG): Define it conditionally.
  245. (searchpath) [_WIN32]: Use `_fullpath', not `realpath'.
  246. 2005-04-28 Keith Marshall <keith.d.marshall@ntlworld.com>
  247. Correct `gnu.eps' handling for build from distribution tarball, with
  248. separate source and build directories.
  249. * doc/Makefile.sub: (examples.stamp): New target; forces copy of
  250. grnexmpl.g, groff.css and gnu.eps from source to build directory;
  251. generate gnu.eps from gnu.xpm if required; touch examples.stamp.
  252. (prepare_examples): Make it depend on examples.stamp.
  253. (CLEANADD): Add examples.stamp.
  254. 2005-04-27 Werner LEMBERG <wl@gnu.org>
  255. Implement the rule
  256. position: '(' position ')'
  257. in pic.
  258. * src/preproc/pic/pic.y (position, position_not_place): Handle
  259. additional parentheses.
  260. * doc/pic.ms: Updated.
  261. 2005-04-23 Larry Jones <lawrence.jones@ugs.com>
  262. * src/utils/xtotroff/xtotroff.c (MapFont): Fix variable declaration.
  263. 2005-04-18 Werner LEMBERG <wl@gnu.org>
  264. * src/roff/groff/pipeline.c: Don't include ctype.h.
  265. 2005-04-13 Werner LEMBERG <wl@gnu.org>
  266. * src/roff/nroff/nroff.man: Document option `-M'.
  267. 2005-04-13 Bruce Lilly <blilly@erols.com>
  268. * src/roff/nroff/nroff.sh: Make the script accept option `-M'.
  269. 2005-04-01 Kees Zeelenberg <kzlg@users.sourceforge.net>
  270. Werner LEMBERG <wl@gnu.org>
  271. Add binary relocation support for Windows platforms.
  272. * src/include/Makefile.sub (defs.h): Add `INSTALLPATH'.
  273. * src/include/relocate.h, src/libs/libgroff/relocate.cpp: New files.
  274. * src/libs/libgroff/searchpath.cpp: Handle `relocate'.
  275. (search_path::search_path, search_path::open_file_cautious): Use
  276. `relocate'.
  277. * src/libs/libgroff/Makefile.sub (OBJS, CCSRCS),
  278. src/include/Makefile.sub (HDRS): Updated.
  279. 2005-04-01 Werner LEMBERG <wl@gnu.org>
  280. * src/devices/grohtml/post-html.cpp: Don't use strdup/free but
  281. strsave/a_delete.
  282. * src/libs/libgroff/font.cpp: Replace strdup with strsave.
  283. * src/libs/libgroff/maxfilename.cpp: Don't include limits.h since
  284. lib.h already does it.
  285. * src/libs/libgroff/maxpathname.cpp: New file, defining
  286. path_name_max.
  287. * src/include/lib.h: Add prototype for path_name_max.
  288. * src/libs/libgroff/Makefile.sub (OBJS, CCSRCS): Updated.
  289. * src/include/nonposix.h (PATH_EXT): New macro.
  290. 2005-03-28 Werner LEMBERG <wl@gnu.org>
  291. Add support for double- and zero-width characters in grotty.
  292. * src/devices/grotty/tty.cpp (glyph): Add width.
  293. (tty_printer::make_underline, tty_printer::make_bold,
  294. tty_printer::add_character): Add parameter to pass character width.
  295. Update all callers.
  296. (tty_printer::end_page): Increase hpos by actual character width.
  297. * font/devutf8/R.proto: Specify zero width for non-spacing
  298. characters.
  299. * tmac/unicode.tmac: Remove definitions for non-spacing entities.
  300. * Makefile.comm (extraclean): Remove more junk files.
  301. 2005-03-25 Werner LEMBERG <wl@gnu.org>
  302. * configure.ac: Undo change from 2005-03-24.
  303. * configure: Regenerated.
  304. 2005-03-24 Werner LEMBERG <wl@gnu.org>
  305. * Makefile.in (NOMAKEDIRS): Add contrib/gdiffmk/tests.
  306. (dist): Search Makefile while descending into $(EXTRADIRS).
  307. * doc/Makefile.in (.PHONY): Add.
  308. (clean): Don't remove *.png and *.eps.
  309. Don't handle *.gif.
  310. (realclean): Remove *.png and *.eps.
  311. (extraclean): Depend on distclean.
  312. * configure.ac: Add copyright.
  313. Handle contrib/pdfmark/Makefile.
  314. * configure: Regenerated.
  315. 2005-03-18 Larry Kollar <kollar@alltel.net>
  316. Add numbered and definition lists to www.tmac.
  317. * tmac/www.tmac (www-ul-level1, www-ul-level2, www-ul-level3,
  318. www-ol-level1, www-ol-level2, www-ol-level3, www-ol-tmp): New
  319. auxiliary string registers.
  320. (www-ul-level, www-ol-level, www-dl-level, www-ol-ctr1, www-ol-ctr2,
  321. www-ol-ctr3, www-dl-shift): New auxiliary number registers.
  322. (www-level): Removed.
  323. (www-level1, www-level2, www-level3): Initialize to empty.
  324. (www-level0, www-level4, www-level5, www-level6, www-level7,
  325. www-level8, www-level9): New string registers.
  326. (www-push-li, www-pop-li): New macros.
  327. (www-push-level, www-pop-level): Renamed to...
  328. (www-push-ul-level, www-pop-ul-level): This.
  329. Updated.
  330. (www-push-ol-level, www-pop-ol-level): New macros.
  331. (ULS, ULE): Updated.
  332. (OLS, OLE, DLS, DLE): New user macros.
  333. (LI): Removed. It is aliased to one of...
  334. (www-li-ul, www-li-ol, www-li-dl): New macros.
  335. * tmac/groff_www.man: Document new macros.
  336. * NEWS: Updated.
  337. 2005-03-18 Werner LEMBERG <wl@gnu.org>
  338. * tmac/doc-common (doc-operating-system-NetBSD-2.0.1,
  339. doc-operating-system-NetBSD-2.0.2): New strings.
  340. * tmac/groff_mdoc.man: Updated.
  341. 2005-03-17 Werner LEMBERG <wl@gnu.org>
  342. * doc/Makefile.sub (CLEANADD): Add `groff.html'.
  343. 2005-03-17 Werner LEMBERG <wl@gnu.org>
  344. * src/libs/libgroff/hypot.c: Renamed to...
  345. * src/libs/libgroff/hypot.cpp: This. Updated to C++.
  346. * src/libs/libgroff/Makefile.sub (CCSRCS, CSRCS): Updated.
  347. * src/include/lib.h: Updated.
  348. 2005-03-16 Werner LEMBERG <wl@gnu.org>
  349. Add workaround for broken hypot() on Interix.
  350. * src/libs/libgroff/hypot.c: New wrapper file for `hypot'.
  351. * src/libs/libgroff/Makefile.sub (OBJS): Add `hypot.o'.
  352. (CSRCS): Add `hypot.c'.
  353. * src/include/lib.h: Declare `groff_hypot'.
  354. * src/preproc/grn/hgraph.cpp: Don't declare `hypot'.
  355. Use `groff_hypot'.
  356. * src/preproc/pic/pic.h: Don't declare `hypot'.
  357. * src/preproc/pic/object.cpp (hypot): Use `groff_hypot'.
  358. 2005-03-15 Gaius Mulley <gaius@glam.ac.uk>
  359. * src/devices/grohtml/post-html.cpp
  360. (html_printer::lookahead_for_tables): End .ce properly to avoid a
  361. segfault.
  362. 2005-03-15 Werner LEMBERG <wl@gnu.org>
  363. makeinfo 4.8 doesn't produce good HTML output from groff.texinfo.
  364. * doc/fixinfo.sh: New script to postprocess makeinfo's HTML output.
  365. * doc/Makefile.in (.texinfo.html): Call fixinfo.sh.
  366. 2005-03-14 Werner LEMBERG <wl@gnu.org>
  367. Add Cyrillic support to devutf8 and devhtml.
  368. * font/devutf8/R.proto, font/devhtml/R.proto: Add Cyrillic blocks.
  369. * tmac/unicode.tmac: New file.
  370. * tmac/tty.tmac: Include unicode.tmac if device is utf8.
  371. * tmac/Makefile.sub (NORMALFILES): Add unicode.tmac.
  372. * NEWS: Updated.
  373. 2005-03-02 Keith Marshall <keith.d.marshall@ntlworld.com>
  374. * src/libs/libdriver/printer.cpp (check_for_output_error): New
  375. function. It has been introduced to catch peculiar error contexts
  376. on MS-Windows platforms.
  377. 2005-02-28 Werner LEMBERG <wl@gnu.org>
  378. * src/roff/troff/input.cpp (string_iterator::fill): Protect against
  379. null pointer.
  380. * tmac/papersize.tmac: Convert `paper' string contents to lowercase.
  381. * configure: Regenerated.
  382. * NEWS: Updated.
  383. 2005-02-28 Keith Marshall <keith.d.marshall@ntlworld.com>
  384. Integrate `pdfmark' into normal groff build system;
  385. install macro `pdfmark' packages, build and install `pdfroff',
  386. and PDF format documentation.
  387. * Makefile.comm: Add PDFDOCDIR.
  388. * Makefile.in: (MDEFINES) ALT_AWK_PROGS, ALT_GHOSTSCRIPT_PROGS,
  389. pdfdocdir, make_pdfdoc, make_install_pdfdoc: New variables.
  390. (unstall_dirs): Add pdfdocdir.
  391. * aclocal.m4: (GROFF_GHOSTSCRIPT_PREFS): New function; support
  392. `--with-alt-gs' option, set ALT_GHOSTSCRIPT_PROGS.
  393. (GROFF_GHOSTSCRIPT_PATH): Support `--with-gs' option, force use of
  394. GROFF_GHOSTSCRIPT_PREFS, set GHOSTSCRIPT.
  395. (GROFF_HTML_PROGRAMS): Force use of GROFF_GHOSTSCRIPT_PATH; tidy up.
  396. (GROFF_AWK_PREFS): New function; support `--with-alt-awk' option,
  397. set ALT_AWK_PROGS.
  398. (GROFF_AWK_PATH): New function; support `--with-awk' option, force
  399. use of GROFF_AWK_PREFS.
  400. (GROFF_PDFDOC_PROGRAMS): New function; force use of GROFF_AWK_PATH
  401. and GROFF_GHOSTSCRIPT_PATH, set make_pdfdoc and make_install_pdfdoc.
  402. * configure.ac: Add AC_PREREQ(2.59), GROFF_PDFDOC_PROGRAMS.
  403. Remove GROFF_GHOSTSCRIPT_PATH, (forced by GROFF_PDFDOC_PROGRAMS, and
  404. also by modified GROFF_HTML_PROGRAMS).
  405. 2005-02-27 Gaius Mulley <gaius@glam.ac.uk>
  406. * src/devices/grohtml/html-text.cpp (html_text::do_pre): Preserve
  407. paragraph spacing.
  408. (html_text::done_para): Unset `start_space'.
  409. (html_text::remove_para_align): Call `retrieve_para_space' for the
  410. spacing.
  411. * src/devices/grohtml/post-html.cpp (html_printer::emit_raw): Unset
  412. `seen_space'.
  413. (html_printer::do_check_center): Emit vertical space if necessary.
  414. * src/roff/troff/env.cpp (environment_switch): Preserve
  415. `seen_space', `seen_eol', and `suppress_next_eol' while switching
  416. environments.
  417. * src/roff/troff/node.cpp (suppress_node::suppress_node): Set
  418. `is_special'.
  419. 2005-02-20 Werner LEMBERG <wl@gnu.org>
  420. * src/preproc/eqn/eqn.man, NEWS: Document various extensions of
  421. eqn.
  422. 2005-02-17 Werner LEMBERG <wl@gnu.org>
  423. * doc/pic.ms, man/groff.man: Fix typos.
  424. * doc/groff.texinfo: Fix typos.
  425. (\LEmacro): Get proper mathematical spacing.
  426. 2005-02-16 Werner LEMBERG <wl@gnu.org>
  427. * aclocal.m4 (GROFF_APPRESDIR_CHECK): Improve warning message.
  428. * configure: Regenerated with autoconf 2.59b.
  429. 2005-02-16 Gaius Mulley <gaius@glam.ac.uk>
  430. * src/devices/grohtml/post-html.cpp (html_printer::is_line_start,
  431. html_printer::start_font): Fix handling of preformatted text.
  432. 2005-02-15 Gaius Mulley <gaius@glam.ac.uk>
  433. These patches modify the indentation implementation to use `<p
  434. style=margin-left: n%>'. Many thanks to Peter and Larry for
  435. suggesting this solution. Grohtml only uses tables for `.IP' and
  436. related tags when the first operand has a short width.
  437. Similarly, they modify all vertical space code. By default, grohtml
  438. sets up a style sheet which uses no vertical space between `table',
  439. `pre', and `p' tags. It forces spaces when it needs them using
  440. `style="margin-top: 1em"'.
  441. * src/devices/grohtml/html-table.cpp: Include `html-text.h'.
  442. (html_table::emit_table_header, html_table::emit_new_row):
  443. Rewritten.
  444. (html_table::set_space): New function.
  445. (html_indent::html_indent): Don't set `is_used'.
  446. (html_indent::begin): Rewritten.
  447. (html_indent::end): Remove code in function.
  448. * src/devices/grohtml/html-table.h: Updated.
  449. (html_table): Make `out' public.
  450. * src/devices/grohtml/html-text.cpp (html_text::html_text):
  451. Initialize `start_space' with FALSE.
  452. (html_text::end_tag) <P_TAG, PRE_TAG>: Updated.
  453. (html_text::issue_tag): Add argument to handle space style.
  454. (html_text::start_tag) <P_TAG, PRE_TAG>: Updated.
  455. (html_text::flush_text): Don't set `start_space'.
  456. (html_text::push_para): Don't set `p->really_issued'.
  457. (html_text::do_emittext): Updated.
  458. (html_text::do_para): Add paremeter to handle space.
  459. Update all callers.
  460. (html_text::retrieve_para_space): New function.
  461. * src/devices/grohtml/html-text.h (STYLE_VERTICAL_SPACE): New macro.
  462. (tag_definition): Remove `really_issued'.
  463. (html_text): Updated.
  464. * src/devices/grohtml/post-html.cpp (html_printer): Add variables
  465. `current_column' and `row_space'.
  466. Update constructor.
  467. (html_printer::emit_raw, html_printer::write_header,
  468. html_printer::do_indent, html_printer::do_check_center,
  469. html_printer::do_tab_ts): Handle vertical space.
  470. (html_printer:do_tab_te, html_printer::do_end_para): Call
  471. `remove_para_space'.
  472. (html_printer::do_col): Rewritten.
  473. (html_printer::flush_globs): Remove debugging code.
  474. (html_printer::is_line_start): New function.
  475. (html_printer::start_font): Use `is_line_start'.
  476. (html_printer::writeHeadMetaStyle): New function.
  477. (html_printer::do_file_components, html_printer::~html_printer):
  478. Call `writeHeadMetaStyle'.
  479. * tmac/www.tmac (www-handle-percent): New macro.
  480. (MPIMG): Handle percent values for width and height parameters.
  481. (DC): Updated.
  482. * tmac/groff_www.man: Updated.
  483. 2005-02-14 Werner LEMBERG <wl@gnu.org>
  484. * src/utils/afmtodit/afmtodit.pl: Remove an incorrect `my' from
  485. $psname and $italic_angle.
  486. Immediately restart file input loops if `split' returns an empty
  487. array.
  488. 2005-02-13 Michail Vidiassov <master@iaas.msu.ru>
  489. Werner LEMBERG <wl@gnu.org>
  490. Update afmtodit to better support Unicode (Michail).
  491. Update afmtodit to use Perl 5 syntax (Werner).
  492. * src/utils/afmtodit/afmtodit.pl: Don't use `getopts.pl' but
  493. `Getopts::Std'.
  494. Decorate variables with `my' where necessary.
  495. Use `defined' where necessary to avoid warnings.
  496. Don't use `do' for subroutine calls.
  497. Other minor syntax updates.
  498. Check for both `uXXXX[X[X]]' and `uniXXXX'.
  499. Handle glyph variants properly.
  500. (%unicode_decomposed, %AGL_to_unicode): Don't use `u' prefix in
  501. strings.
  502. * src/utils/afmtodit/afmtodit.man: Updated.
  503. 2005-02-13 Werner LEMBERG <wl@gnu.org>
  504. Make groff.texinfo work with texinfo 4.8.
  505. * doc/groff.texinfo (@Var): Use @r and @slanted.
  506. (@defdummy, @Def*): Use @c to avoid empty lines.
  507. (\angles): Replaced with...
  508. (\Langlemacro, \Ranglemacro): New TeX macros.
  509. (@Langlemacro, @Ranglemacro): New variables defined with @set.
  510. (@angles): Use @Langlemacro and @Ranglemacro.
  511. (\LE): Replaced with...
  512. (\LEmacro): New TeX macro.
  513. (@LEmacro): New variable defined with @set.
  514. (@LE): Use @LEmacro.
  515. (@Lparenmacro, @Rparenmacro, @Lbrackmacro, @Rbrackmacro): New
  516. variables defined with @set.
  517. (@lparen, @rparen, @lbrack, @rbrack): Replaced with...
  518. (@Lparen, @Rparen, @Lbrack, @Rbrack): New macros.
  519. Update all callers.
  520. Other minor updates.
  521. * doc/texinfo.tex: Update to texinfo version 4.8.
  522. * README.CVS: Updated.
  523. 2005-02-09 Alejandro López-Valencia <palopez@etb.net.co> (tiny change)
  524. * doc/groff.texinfo (ms Document Control Registers): Document `HY'
  525. and `FAM' registers.
  526. 2005-02-05 Werner LEMBERG <wl@gnu.org>
  527. * tmac/groff_mdoc.man, tmac/doc-common, tmac/doc-ditroff,
  528. tmac/doc-nroff, tmac/doc-old.tmac, tmac/doc-syms, tmac/doc.tmac:
  529. Update BSD license.
  530. 2005-02-01 Werner LEMBERG <wl@gnu.org>
  531. * src/roff/groff/groff.man: Add information about paper size.
  532. 2005-01-25 Werner LEMBERG <wl@gnu.org>
  533. * src/roff/nroff/nroff.sh: Handle `*.ISO8859-1' in locale. From
  534. NetBSD bin/29114.
  535. 2005-01-22 Ruslan Ermilov <ru@FreeBSD.org>
  536. * tmac/doc.tmac (Sm): Improved. It didn't work properly in many
  537. cases.
  538. (Re): Emit a warning if called without `.Rs'.
  539. (doc-finish-reference): Use parameter for decreasing
  540. `doc-reference-count'.
  541. (doc-print-reference): Pass specific count parameters to
  542. `doc-finish-reference'.
  543. 2005-01-21 Werner LEMBERG <wl@gnu.org>
  544. * src/libs/libdriver/input.cpp (delete_current_env, do_file):
  545. Reset pointers to zero after deallocation. This fixes a crash
  546. if a driver is called with multiple input files. Reported by
  547. Ken Chilton <ken@chiltonfamily.org>.
  548. * src/devices/grops/grops.man: Add more info on DSC.
  549. 2005-01-17 Ruslan Ermilov <ru@FreeBSD.org>
  550. * tmac/doc-common (Dd), tmac/doc-ditroff (gX, doc-setup-header):
  551. Remove dead code.
  552. 2005-01-17 Werner LEMBERG <wl@gnu.org>
  553. * src/roff/troff/div.cpp (top_level_diversion::space): Protect
  554. against division by zero.
  555. 2005-01-13 Ruslan Ermilov <ru@FreeBSD.org>
  556. * tmac/doc.tmac (Ef): Restore doc-curr-font and doc-curr-size.
  557. 2004-12-19 Werner LEMBERG <wl@gnu.org>
  558. * install-sh: New version; taken from texinfo CVS.
  559. 2004-12-17 Werner LEMBERG <wl@gnu.org>
  560. * tmac/devtag.tmac: Protect against loading twice.
  561. Protect agains compatibility mode.
  562. * tmac/www.tmac: Protect against loading twice.
  563. Load `devtag.tmac' before switching off compatibility mode.
  564. * tmac/an-old.tmac, tmac/s.tmac: Load `devtag.tmac'.
  565. 2004-12-16 Mike Bianchi <mbianchi@Foveal.com>
  566. * configure.ac: Produce `contrib/gdiffmk/tests/runtests'.
  567. * configure: Updated.
  568. 2004-12-15 Thomas Klausner <wiz@netbsd.org>
  569. * tmac/doc-syms, tmac/groff_mdoc.man: Add `libpam' library.
  570. 2004-12-15 Werner LEMBERG <wl@gnu.org>
  571. Make `test-groff' work again -- previously, wrong paths have been
  572. used. Additionally, it can now be called from anywhere.
  573. * test-groff.in: Don't test for groff binary. This is no longer
  574. necessary since the proper paths are determined by `configure'.
  575. (EXEEXT): Removed. No longer used.
  576. (srcdir, builddir): Use values provided by the configure script.
  577. (XENVIRONMENT): Updated.
  578. * INSTALL: Updated.
  579. 2004-12-14 Gaius Mulley <gaius@glam.ac.uk>
  580. Make .tag and .taga work for all devices (but only grohtml actually
  581. handles them).
  582. * src/devices/grohtml/post-html.cpp: s/html-tag/devtag/.
  583. (text_glob::is_br, page::add_tag, html_printer::troff_tag,
  584. html_printer::handle_assertion): Don't use hard-coded string
  585. lengths.
  586. (html_printer::lookahead_for_table): Reset `tbl' properly if
  587. necessary.
  588. (html_printer::devtag): New function, handling `devtag'.
  589. (html_printer::special): Don't handle `html-tag'.
  590. * src/include/printer.h, src/libs/libdriver/printer.cpp
  591. (printer::devtag): New virtual function.
  592. * src/libs/libdriver/input.cpp (parse_x_command) <'X'>: Handle
  593. `devtag'.
  594. * src/roff/troff/env.cpp, src/roff/troff/mtsm.cpp,
  595. src/roff/troff/node.cpp: s/html-tag/devtag/.
  596. * src/roff/troff/input.cpp (tag, taga): Always call
  597. curenv->add_node.
  598. * tmac/an-old.tmac, tmac/s.tmac, tmac/troffrc-end: Use DEVTAG*
  599. macros instead of HTML-TAG*.
  600. * tmac/devtag.tmac: New file, defining the DEVTAG-* macros.
  601. * tmac/www.tmac: Load devtag.tmac.
  602. Replace HTML-TAG* macros with DEVTAG* macros.
  603. (HTML, HTML-NS): Changed definitions.
  604. (URL): Use HTML-NS.
  605. (HTML-TAG, HTML-TAG-NS, HTML-TAG-NEXT): Removed.
  606. * tmac/Makefile.sub (NORMALFILES): Add devtag.tmac.
  607. 2004-12-10 Werner LEMBERG <wl@gnu.org>
  608. Import Mike's `gdiffmk' package.
  609. * contrib/gdiffmk/*: New files.
  610. * Makefile.in (OTHERDIRS): Add contrib/gdiffmk.
  611. * NEWS: Updated.
  612. 2004-12-08 Werner LEMBERG <wl@gnu.org>
  613. Import Keith's `pdfmark' package. Integration is very preliminary.
  614. * contrib/pdfmark/*: New files.
  615. * Makefile.in (OTHERDIRS): Add contrib/pdfmark.
  616. * NEWS: Updated.
  617. 2004-12-07 Gaius Mulley <gaius@glam.ac.uk>
  618. Fix a bug with title handling in HTML.
  619. * src/devices/grohtml/post-html.cpp (text_glob::is_nf,
  620. text_glob::is_fi, text_glob::is_ce): Use strlen to compute string
  621. length.
  622. (html_printer::handle_tag_within_title): New function.
  623. (html_printer::do_title): Use it.
  624. * tmac/s.tmac (TL): Don't set `need_eo_tl'.
  625. (cov*tl-au-print): Emit `.eo.tl' tag.
  626. 2004-12-05 Alejandro López-Valencia <dradul@etb.net.co>
  627. * man/groff_char.man: Minor imrovements.
  628. 2004-12-04 Werner LEMBERG <wl@gnu.org>
  629. * src/preproc/eqn/eqn.man: Revised.
  630. 2004-11-25 Werner LEMBERG <wl@gnu.org>
  631. * src/utils/xtotroff/xtotroff.c: Reformat to be similar to other
  632. groff source files.
  633. Include config.h.
  634. Include limits.h.
  635. Remove X_NOT_STDC_ENV conditional.
  636. (Version_string, program_name): New global variables.
  637. (groff_flag): Removed.
  638. (MapFont): Updated.
  639. (usage): Take a stream as argument.
  640. Use `program_name'.
  641. Update all callers.
  642. (main): Add `long_options' array for `--help' and `--version'.
  643. Make `-g' a dummy option.
  644. Handle `-v' and unknown options.
  645. Remove unused `position' variable.
  646. * src/utils/xtotroff/Makefile.sub (MAN1): Define.
  647. (XLIBS): Add LIBGROFF.
  648. * src/utils/xtotroff/xtotroff.man, src/utils/xtotroff/Makefile.in:
  649. New files.
  650. * src/devices/xditview/Dvi.c (default_font_map): Split into three
  651. parts to avoid compiler warning.
  652. (resources): Don't initialize with `default_font_map'.
  653. (ClassInitialize): Initialize first element of `resources'.
  654. * src/devices/xditview/Makefile.sub (devdir, xtotroff, DPIS, fonts):
  655. Removed.
  656. * src/utils/lkbib/lkbib.man, src/utils/lookbib/lookbib.man,
  657. src/utils/pfbtops/pfbtops.man: Revised, updated.
  658. * configure.ac: Generate src/utils/xtotroff/Makefile.
  659. * configure: Regenerated.
  660. 2004-11-24 Werner LEMBERG <wl@gnu.org>
  661. First fixes to get produce HTML.
  662. * src/devices/grohtml/post-html.cpp (generate_img_src): Add `alt'
  663. attribute.
  664. * tmac/www.tmac (IMG, PIMG, MPIMG): Add `alt' attribute.
  665. (HR, LI): Use `HTML</p>', not `HTML'.
  666. * doc/webpage.ms: Minor updates.
  667. 2004-11-23 Larry Kollar <kollar@alltel.net>
  668. Add option -S grohtml to determine the file split level.
  669. * src/devices/grohtml/post-html.cpp (split_level): New global
  670. variable.
  671. (html_header::determine_header_level): Use split_level.
  672. (main): Handle `-S' command line option.
  673. Sort options.
  674. * src/preproc/html/pre-html.cpp (scanArguments): Updated.
  675. * src/devices/grohtml/grohtml.man: Document it.
  676. Sort options.
  677. * NEWS: Document it.
  678. 2004-11-23 Y T <doarhop@hotmail.com>
  679. * tmac/s.tmac (ref*add-V, ref*add-N): New macros for handling
  680. the volume and number refer entries.
  681. 2004-11-22 Werner LEMBERG <wl@gnu.org>
  682. * src/devices/grohtml/html-table.cpp
  683. (html_table::emit_table_header): Don't emit `cols' attribute which
  684. doesn't exist in HTML 4.0 and is thus invalid.
  685. * NEWS: More minor fixes and updates.
  686. 2004-11-18 Werner LEMBERG <wl@gnu.org>
  687. * tmac/www.tmac (HTML-NS, HTML-TAG-NS, HTML-TAG-NEXT): Simplified.
  688. (HTML</p>): Minor clean-up.
  689. * tmac/groff_www.man: Updated.
  690. * src/devices/grohtml/grohtml.man: Revised and updated.
  691. * NEWS: Updated.
  692. 2004-11-18 Gaius Mulley <gaius@glam.ac.uk>
  693. * src/devices/grohtml/post-html.cpp (html_printer::do_heading):
  694. Fix space insertion.
  695. (html_printer::do_links): Fix rules generation around automatic
  696. heading links.
  697. * tmac/www.tmac (LK): Use HTML-TAG-NS.
  698. (HR): Simplify.
  699. No longer emit empty line for non-HTML devices.
  700. 2004-11-17 Werner LEMBERG <wl@gnu.org>
  701. * doc/Makefile.in (prepare_examples, webpage.html): Handle
  702. `groff.css'.
  703. * doc/Makefile.sub (EXAMPLEFILES, CLEANNOTSRCDIRADD,
  704. prepare_examples, webpage.html): Handle `groff.css'.
  705. 2004-11-15 Werner LEMBERG <wl@gnu.org>
  706. * NEWS, README, doc/webpage.ms: Updated.
  707. * tmac/www.tmac (HTML, HTML-TAG): Minor clean-ups.
  708. 2004-10-30 Gaius Mulley <gaius@glam.ac.uk>
  709. * src/include/printer.h (printer): Remove virtual function
  710. `round_width'.
  711. Update all source files.
  712. * src/devices/grohtml/post-html.cpp (html_printer): New member
  713. function `round_width'.
  714. 2004-10-20 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de>
  715. * src/preproc/tbl/table.cpp (table::do_row): Fix handling of the `d'
  716. column key letter suffix.
  717. 2004-10-14 Werner LEMBERG <wl@gnu.org>
  718. * Makefile.in (check): Depend on `site.exp' and `docheck'.
  719. (docheck): Run dejagnu's `runtest' if it exists.
  720. (site.exp): Create dejagnu configuration file.
  721. * Makefile.sub (DISTCLEANFILES): Add files related to dejagnu.
  722. 2004-10-13 Werner LEMBERG <wl@gnu.org>
  723. * src/devices/grohtml/html-text.cpp (html_text_get_alignment),
  724. src/devices/grohtml/post-html.cpp (make_val,
  725. html_printer::handle_state_assertion): Fix compiler warnings.
  726. * src/roff/troff/div.cpp: Include `stringclass.h' and `mtsm.h'.
  727. (diversion::diversion): Fix order of initializers.
  728. * src/roff/troff/div.h: Don't include `mtsm.h'.
  729. * src/roff/troff/env.cpp: Include `stringclass.h' and `mtsm.h'.
  730. (environment::environment): Fix order of initializers.
  731. (environment::make_tag, environment::construct_format_state): Fix
  732. compiler warnings.
  733. * src/roff/troff/input.cpp: Include `stringclass.h' and `mtsm.h'.
  734. (input_iterator::input_iterator, macro::macro): Fix order of
  735. initializers.
  736. * src/roff/troff/mtsm.cpp: Include only necessary header files.
  737. (state_set::add, state_set::val): Fix compiler warnings.
  738. * src/roff/troff/mtsm.h: Don't include `stringclass.h'.
  739. (bool_value_state, int_value_state, units_value_state,
  740. string_value_state): Remove comma after last element which causes
  741. an error with g++ 3.3.3.
  742. * src/roff/troff/node.cpp: Include `stringclass.h'.
  743. (hline_node::hline_node, vline_node::vline_node,
  744. space_char_hmotion_node, left_italic_corrected_node): Fix compiler
  745. warnings.
  746. (zero_width_node::zero_width_node): Fix order of initializers.
  747. * src/roff/troff/node.h: Don't include `mtsm.h'.
  748. (hmotion_node): Fix compiler warnings.
  749. * src/roff/troff/number.cpp: Include `stringclass.h' and `mtsm.h'.
  750. 2004-10-12 Gaius Mulley <gaius@glam.ac.uk>
  751. * doc/groff.css: New file.
  752. * doc/webpage.ms: Use `groff.css'.
  753. Other small fixes.
  754. * tmac/an-old.tmac (need_eo_h): New number register.
  755. (TH): Emit `.eo.tl' tag after title.
  756. (SH): Set `need_eo_h'.
  757. (an-trap): Handle `need_eo_h'.
  758. (an-do-tag): s/HTML-TAG-NS/HTML-TAG-NEXT/.
  759. * tmac/s.tmac (need_eo_h, need_eo_tl): New number registers.
  760. (TL): Always start diversion.
  761. Updated.
  762. (@AI): Always call `par@reset'.
  763. (@AB): Update code for -Thtml.
  764. (cov*tl-au-print): Handle -Thtml.
  765. (par@reset): Handle `need_eo_tl', `need_eo_h'.
  766. (@IP): Simplified.
  767. (@IT-html): Removed.
  768. (@SH): Set `need_eo_h' for -Thtml.
  769. (par@TL): s/HTML-TAG/HTMl-TAG-NS/.
  770. Set `need_eo_tl'.
  771. (@NH): s/HTML-TAG/HTMl-TAG-NS/.
  772. Set `need_eo_h' for -Thtml.
  773. (@EQ, @EN): Don't handle -Thtml specially.
  774. (par@load-init): Don't handle -Thtml specially.
  775. * tmac/www.tmac (www:paraspace): New macro.
  776. (HTML-NS, HTML-TAG-NS): Use new `tag' request.
  777. (HTML</p>, HTML-TAG-NEXT): New macros.
  778. (HnE): Emit tag `.eo.h' instead of break.
  779. (HR): s/HTML-NS/HTML/.
  780. (www-end-nowhere): End diversion only if `www-html' not set.
  781. Emit `.eo.tl' tag.
  782. (ULS, ULE): s|HTML|HTML</p>|.
  783. (LI): Call `www:paraspace'.
  784. (HEAD): New macro.
  785. 2004-10-11 Gaius Mulley <gaius@glam.ac.uk>
  786. * src/roff/troff/request.h (macro): Make `p' public.
  787. New variable `is_a_diversion'.
  788. New member function `is_diversion'.
  789. * src/devices/grohtml/html.h (simple_output): New member function
  790. `force_nl'.
  791. * src/devices/grohtml/html-table.cpp (tabs::compatible): Fix
  792. computation of `total'.
  793. (tabs::check_init): New function.
  794. (html_table::emit_table_header): Emit style data.
  795. (html_table::insert_column): Improved.
  796. * src/devices/grohtml/html-table.h: Updated.
  797. * src/devices/grohtml/html-text.cpp (html_text::html_text):
  798. Initialize `start_space' with TRUE.
  799. (html_text::end_tag, html_start_tag): Fix `P_TAG' and `PRE_TAG'
  800. cases.
  801. (html_text::flush_text): Set `start_space' flag.
  802. (html_text::uses_indent, html_text::remove_para_space,
  803. html_text::get_alignment): New functions.
  804. (html_text::push_para): Updated.
  805. (html_text::do_para): Check for empty argument.
  806. Don't set `space_emitted'.
  807. (html_text::do_space, html_text::emit_space): Updated.
  808. * src/devices/grohtml/html-text.h (tag_definition): New variable
  809. `really_issued'.
  810. (html_text): New member function `uses_indent', `remove_para_space',
  811. `get_alignment'.
  812. * src/devices/grohtml/output.cpp (simple_output::force_nl): New
  813. function.
  814. (simple_output:nl): Always emit `\n'.
  815. * src/devices/grohtml/post-html.cpp: Include `string.h'.
  816. (BASE_POINT_SIZE): Removed.
  817. (base_point_size, head_info): New global variables.
  818. (text_glob): New member functions `is_ll', `is_tl', `is_eo_tl',
  819. `is_eo_h'.
  820. (text_glob::is_nf, text_glob::is_fi): Handle `.fi 0' and `.fi 1'
  821. tags, respectively.
  822. (page::add_and_encode): Pass additional parameter for tag flag.
  823. (assert_pos): New structure.
  824. (assert_state): New class.
  825. (html_printer): Remove `indentation', `prev_indent'.
  826. Add variables `troff_indent', `device_indent', `temp_indent'.
  827. Add variables `seen_indent', `next_indent', `seen_pageoffset',
  828. `next_pageoffset', `seen_linelenght', `next_linelength',
  829. `seen_center', `next_center', `seen_space', `seen_break', `as'.
  830. Add member functions `do_check_center', `do_space', `do_head',
  831. `get_troff_indent', `restore_troff_indent', `handle_assertion',
  832. `handle_state_assertion', `do_end_para', `set_char_and_width'.
  833. Change argument to `do_fill' to `char *'.
  834. Update constructor.
  835. (html_printer::emit_raw): Call `shutdown_table'.
  836. Use new functions.
  837. (html_printer::do_center): Simplified.
  838. (html_printer::do_title): Improved.
  839. (html_printer::write_header): Emit one more newline.
  840. Use new functions.
  841. (html_printer::do_heading, html_printer::do_indent,
  842. html_printer::do_eol, html_printer::do_tab_ts,
  843. html_printer::do_tab, html_printer::do_tab0,
  844. html_printer::calc_po_in, html_printer::next_horiz_pos,
  845. html_printer::remove_courier_tabs,
  846. html_printer::insert_tab0_foreach_tab, html_printer::begin_page):
  847. Updated.
  848. (html_printer::do_linelength, html_printer::do_pageoffset,
  849. html_printer::do_indentation, html_printer::do_tempindent,
  850. html_printer::do_tab_te): Simplified.
  851. (html_printer::do_pointsize): Check whether point size is really
  852. associated a `.tl' tag.
  853. (html_printer::do_break): Rewritten.
  854. (html_printer::troff_tag): Improved.
  855. (html_printer::flush_globs): Updated.
  856. (html_printer::lookahead_for_tables): Handle `is_br'.
  857. Use new functions.
  858. (html_printer::set_char): Check `sbuf_style.f'.
  859. (html_printer::write_navigation): Use string comparison.
  860. (html_printer::~html_printer): Emit `head_info'.
  861. (html_printer::special): Rewritten.
  862. (get_str, make_val): New functions.
  863. (main): New option `s' to set the base point size.
  864. * src/preproc/html/pre-html.cpp (scanArguments): Handle option `s'.
  865. 2004-10-10 Gaius Mulley <gaius@glam.ac.uk>
  866. * src/roff/troff/node.cpp: New extern `debug_state'.
  867. Include `stringclass.h' and `mtsm.h'.
  868. Implement new classes and class members from `node.h'.
  869. (real_output_file): Make `fp' public.
  870. (troff_output_file): New variables `cur_div_level' and `tag_list'.
  871. Update constructors.
  872. (troff_output_file::really_print_line): Check whether we should push
  873. the current troff state and use the state at the start of the
  874. invocation of this diversion.
  875. (troff_output_file::add_to_tag_list): New member function.
  876. (node::add_char): Handle `glyph_comp_np'.
  877. * src/roff/troff/node.h: Include `mtsm.h'.
  878. (node): New variables `state', `push_state', `div_nest_level',
  879. `is_special'. Update constructors, all descendants.
  880. Pass additional argument to `add_char' member function.
  881. New virtual member functions `is_tag', `debug_node',
  882. `debug_node_list'. Update all descendants.
  883. (tag_node): New class for handling tags.
  884. (output_file): Add variable `state'.
  885. 2004-10-09 Gaius Mulley <gaius@glam.ac.uk>
  886. * src/roff/troff/mtsm.cpp, src/roff/troff/mtsm.h: New files,
  887. providing a minimal troff state machine to emit meta tags for the
  888. post-grohtml device driver.
  889. * src/roff/troff/Makefile.sub (OBJS, CCSRCS, HDRS): Handle new
  890. files.
  891. 2004-10-09 Werner LEMBERG <wl@gnu.org>
  892. * tmac/trace.tmac: Fix handling of `am' and `am1' calls.
  893. 2004-10-06 Gaius Mulley <gaius@glam.ac.uk>
  894. * src/roff/troff/column.cpp (vjustify_node::copy): Updated.
  895. * src/roff/troff/div.h: Include `mtsm.h'.
  896. (diversion): New variables `any_chars_added', `needs_push',
  897. `saved_seen_break', `saved_seen_space', `saved_seen_eol',
  898. `saved_suppress_next_eol', `modified_tag'.
  899. New virtual member function `is_diversion'. Update all descendants.
  900. * src/roff/troff/div.cpp (diversion::diversion,
  901. macro_diversion::macro_diversion): Updated.
  902. (do_divert): Handle `seen_break', `seen_space', `seen_eol',
  903. `suppress_next_eol'.
  904. (top_level_diversion::space): Handle `curenv->seen_space'.
  905. (page_offset): Update tag handling.
  906. (space_request, blank_line, flush_output): Don't call `add_html_tag'.
  907. * src/roff/troff/env.h (environment): Make `tabs' public.
  908. Remove `ignore_next_eol', `emitted_node'.
  909. Update `output_line', `output'.
  910. New variables `seen_space', `seen_eol', `suppress_next_eol',
  911. `seen_break'.
  912. New member functions `construct_state', `make_tag',
  913. `construct_format_state, `construct_new_line_state,
  914. `dump_troff_state'.
  915. Remove `add_html_tag', `make_html_tag'.
  916. * src/roff/troff/env.cpp: New externs `suppress_push',
  917. `get_diversion_state', `global_diverted_space'.
  918. (pending_output_line): New variable `was_centered'.
  919. Update constructor and all callers.
  920. (pending_output_line::output): Call `curenv->construct_format_state'.
  921. (environment::environment, environment::copy): Updated.
  922. (environment::output): Handle `was_centered'.
  923. (environment::add_char): Handle construct and diversion state.
  924. (environment::add_node): Handle construct state.
  925. (environment::newline): Handle `was_centered'.
  926. (environment::output_line): Updated.
  927. (environment::possibly_break_line): Updated.
  928. Update tag handling.
  929. (environment::add_html_tag): Replaced with...
  930. (environment::make_tag): New function.
  931. (environment::add_html_tag_tabs, environment::make_html_tag): Removed.
  932. (environment::dump_troff_state): New debugging function.
  933. (environment::construct_state, environment::construct_format_state,
  934. environment::construct_new_line_state): New functions.
  935. (environment::do_break): Updated.
  936. Handle `global_diverted_space'.
  937. (environment::handle_tag): Update tag handling.
  938. (point_size, fill, do_break_request): Don't call `add_html_tag'.
  939. (no_fill): Don't call `add_html_tag'.
  940. Set `suppress_next_eol'.
  941. (center, right_justify, line_length, indent, temporary_indent,
  942. set_tabs):
  943. Update tag handling.
  944. * src/roff/troff/input.cpp: Don't include `stringclass.h'.
  945. (input_iterator): New variables `is_diversion', `diversion_state'.
  946. Update constructors.
  947. (input_stack): New member functions `get_div_level',
  948. `get_diversion_state', `check_end_diversion'.
  949. New variables `div_level', `diversion_state'. Initialize them.
  950. (suppress_push, global_diverted_space): New global variables.
  951. (input_stack::finish_get, input_stack::finish_peek,
  952. input_stack::remove_boundary, input_stack::end_file,
  953. input_stack::clear, input_stack::pop_macro): Call
  954. `check_end_diversion'.
  955. (input_stack::push): Handle `div_level' and `diversion_state'.
  956. (get_diversion_state): New function.
  957. (diverted_space_node::reread): Handle `global_diverted_space'.
  958. (macro::macro): Update constructors.
  959. (macro::is_diversion): New function.
  960. (macro::operator=): Set `is_a_diversion'.
  961. (string_iterator): New member function `is_diversion'.
  962. (string_iterator::string_iterator): Update constructors.
  963. (string_iterator::fill): Set `div_nest_level'.
  964. (macro_iterator): New member function `is_diversion'.
  965. (do_if_request): Handle `suppress_push'.
  966. (tag, taga): New functions.
  967. (init_input_requests): Add `tag' and `taga' requests.
  968. 2004-10-05 Gaius Mulley <gaius@glam.ac.uk>
  969. * src/include/font.h (font): New member function
  970. `get_image_generator'.
  971. New variables `unscaled_charwidths' and `image_generator'.
  972. * src/libs/libgroff/font.cpp (font::get_width): Always return the
  973. character's unscaled width if `font::unscaled_charwidths' is set.
  974. (font::get_image_generator): New function.
  975. (font::load_desc): Check the `unscaled_charwidths' and
  976. `image_generator' keywords.
  977. * src/libs/libgroff/fontfile.cpp: Initialize
  978. `font::unscaled_charwidths' and `font::image_generator'.
  979. * font/devhtml/DESC.proto: s/html/unscaled_charwidths/.
  980. * font/devhtml/Makefile.sub (DESC): Set `image_generator' keyword.
  981. * man/groff_font.man: Document `unscaled_charwidths' and
  982. `image_generator'.
  983. * src/preproc/html/pre-html.cpp: Include `device.h'.
  984. (image_gen): New global variable.
  985. (imageList::createPage): Use `image_gen'.
  986. (main): Use `image_generator' keyword.
  987. 2004-10-04 Gaius Mulley <gaius@glam.ac.uk>
  988. * tmac/html.tmac: Handle \[sqrtex].
  989. 2004-10-04 Gaius Mulley <gaius@glam.ac.uk>
  990. * src/include/printer.h (printer): New virtual method `round_width'.
  991. * src/devices/grodvi/dvi.cpp, src/devices/grolbp/lbp.cpp,
  992. src/devices/grolj4/lj4.cpp, src/devices/grops/ps.cpp,
  993. src/devices/grotty/tty.cpp (printer::round_width): New function
  994. member.
  995. * src/devices/grohtml/post-html.cpp (printer::round_width): New
  996. function member.
  997. (html_printer::set_numbered_char): Use it.
  998. 2004-10-03 Gaius Mulley <gaius@glam.ac.uk>
  999. * aclocal.m4 (GROFF_GHOSTSCRIPT_PATH): New macro.
  1000. * configure.ac: Call GROFF_GHOSTSCRIPT_PATH.
  1001. * configure: Regenerated.
  1002. * Makefile.in (GHOSTSCRIPT): New variable.
  1003. (MDEFINES): Add GHOSTSCRIPT.
  1004. 2004-10-03 Werner LEMBERG <wl@gnu.org>
  1005. * INSTALL.gen: Updated (taken from texinfo CVS).
  1006. 2004-09-28 Werner LEMBERG <wl@gnu.org>
  1007. * NEWS: Updated.
  1008. 2004-09-28 Heinz-Jürgen Oertel <hj.oertel@surfeu.de>
  1009. * tmac/groff_www.man: Revised and updated.
  1010. 2004-09-26 Werner LEMBERG <wl@gnu.org>
  1011. Fix \$@ and \$* to handle any number of arguments.
  1012. * src/roff/troff/input.h (BEGIN_QUOTE, END_QUOTE): New special
  1013. characters.
  1014. * src/roff/troff/input.cpp (input_iterator::internal_level):
  1015. Removed.
  1016. (input_stack): New member functions `increase_level' and
  1017. `decrease_level'.
  1018. (input_stack::get_level): Don't use `internal_level'.
  1019. (get_copy, token::next): Handle BEGIN_QUOTE and END_QUOTE.
  1020. (end_quote_iterator): Completely removed.
  1021. (interpolate_arg): Build string for \$@ and \$* which is then
  1022. pushed onto the input stack.
  1023. 2004-09-23 Keith Marshall <keith.d.marshall@ntlworld.com>
  1024. * tmac/groff_ms.man, doc/groff.texinfo: Document changes from
  1025. 2004-09-19.
  1026. 2004-09-23 Werner LEMBERG <wl@gnu.org>
  1027. * tmac/an-old.tmac (ne): Using default scaling operator.
  1028. 2004-09-19 Keith Marshall <keith.d.marshall@ntlworld.com>
  1029. This change implements the following features:
  1030. PORPHANS
  1031. New numeric register: Defines number of lines following LP, PP,
  1032. QP, IP or XP, which must be kept together, before any automatic
  1033. page break. If insufficient space remains on the current page, a
  1034. page break is forced before the new paragraph begins.
  1035. HORPHANS
  1036. New numeric register: Sets number of lines of following paragraph
  1037. which must be kept with a heading, defined by NH or SH, before any
  1038. automatic page break. If insufficient space remains on the
  1039. current page, a page break is forced before the heading.
  1040. GROWPS
  1041. (Thanks to Joerg van den Hoff, for this idea).
  1042. New numeric register: Sets the first level of heading (set with
  1043. NH), which will keep the same point size as body text; e.g. if
  1044. GROWPS is set to 3, .NH 3, .NH 4, ... will produce headings at the
  1045. point size specified by \n[PS], but .NH 2 and .NH 1 will have
  1046. progressively larger point sizes, determined by \n[PSINCR] (see
  1047. below).
  1048. PSINCR
  1049. New numeric register: Sets the point size increment for each level
  1050. of heading, (set with NH), below the threshold level set by
  1051. GROWPS; e.g. if \n[PS] = 10, \n[GROWPS] = 3 and \n[PSINCR] = 2.0p,
  1052. then .NH 1 will produce 14pt headings, .NH 2 will produce 12pt,
  1053. and all other levels will remain at 10pt, (because \n[PS] = 10).
  1054. SH
  1055. Existing macro now accepts a numeric argument, to make heading
  1056. size match that of NH with same argument value, when the
  1057. GROWPS/PSINCR feature is enabled.
  1058. SN-DOT
  1059. New string, set by NH macro, replaces the existing (undocumented)
  1060. use of SN, to represent the assigned section number.
  1061. SN-NO-DOT
  1062. New string, set by NH macro, represents the assigned section
  1063. number, but omits the terminal period (periods at intermediate
  1064. levels are retained).
  1065. SN
  1066. String set by NH macro, originally undocumented, now implemented
  1067. as an alias for SN-DOT (which reproduces original behaviour).
  1068. * tmac/s.tmac (PORPHANS): New register.
  1069. (par*start): Use it.
  1070. (HORPHANS, GROWPS, PSINCR): New register…