/contrib/groff/ChangeLog.118

https://bitbucket.org/freebsd/freebsd-head/ · Unknown · 3794 lines · 2794 code · 1000 blank · 0 comment · 0 complexity · 1769b737e87bfacd5259f7c0267c0183 MD5 · raw file

Large files are truncated click here to view the full file

  1. Version 1.18.1 released
  2. =======================
  3. 2002-10-08 Werner LEMBERG <wl@gnu.org>
  4. * doc/webpage.ms, NEWS: Updated.
  5. 2002-10-07 Werner LEMBERG <wl@gnu.org>
  6. * tmac/doc-common (Ss): Add final `.ns' (similar to `.Sh') to
  7. suppress additional whitespace after the header.
  8. * tmac/doc-ditroff, tmac/doc-nroff (Am): New string to be in sync
  9. with NetBSD.
  10. * src/preproc/grn/grn.man, tmac/groff_mdoc.man, NEWS: Updated.
  11. 2002-10-07 Ruslan Ermilov <ru@FreeBSD.org>
  12. * tmac/doc-common(doc-volume-operating-system-ateol): New flag.
  13. (Dt): Use it to improve language localization (especially Russian
  14. and French).
  15. 2002-10-07 Daniel Senderowicz <daniel@synchrods.com>
  16. * src/preproc/grn/gprint.h (BSPLINE, BEZIER): New macros.
  17. * src/preproc/grn/hdb.cc (DBGetType): Parse spline and bezier
  18. drawing commands.
  19. * src/preproc/grn/hgraph.cc (drawwig): Add parameter to control
  20. curve type.
  21. Call `picurve' for BSPLINE.
  22. (HGPrintElt): Handle BSPLINE.
  23. * src/preproc/grn/README: Document it.
  24. 2002-10-03 Werner LEMBERG <wl@gnu.org>
  25. * src/roff/troff/node.cc (break_char_node::col): New variable.
  26. Updated constructor.
  27. (space_node::tprint, word_space_node::tprint): Call `fill_color'
  28. unconditionally.
  29. (space_node::space_node): Remove assertion.
  30. (break_char_node::add_self): Pass color argument to space node.
  31. * src/roff/troff/input.cc (token::add_to_node_list, token::process):
  32. Ditto.
  33. * src/roff/troff/env.cc (environment::do_break,
  34. environment::add_padding): Ditto.
  35. 2002-10-02 Werner LEMBERG <wl@gnu.org>
  36. Redesigning color support in troff. Colors are no longer
  37. represented as separate nodes but are now part of glyph nodes and
  38. friends. This fixes the current formatting misbehaviour due to the
  39. changes introduced on 2002-09-20. Some extra code is necessary for
  40. proper grotty support: Without adding color variables to
  41. space-related nodes, the background color would be changed too late.
  42. * src/roff/troff/node.h, src/roff/troff/node.cc:
  43. s/current_pagecolor/current_fill_color/.
  44. s/current_glyphcolor/current_glyph_color/.
  45. (glyph_color_node, fill_color_node): Removed.
  46. (node::get_glyph_color, node::get_fill_color): New virtual member
  47. functions.
  48. (space_node::col): New variable.
  49. Updated constructors of space_node and derived classes accordingly.
  50. (hmotion_node::col): New variable.
  51. Updated constructors of hmotion_node and space_char_hmotion_node
  52. accordingly.
  53. (vmotion_node::col): New variable.
  54. Updated constructor accordingly.
  55. (draw_node::gcol, draw_node::fcol): New variables.
  56. Updated constructor accordingly.
  57. (special_node::gcol, special_node::fcol): New variables.
  58. Updated constructors accordingly.
  59. (troff_output_file::put_char, troff_output_file::put_charwidth,
  60. troff_output_file::draw): Set glyph and fill color.
  61. (troff_output_file::start_special): Set glyph and fill color.
  62. Always set current font.
  63. (troff_output_file::fill_color, troff_output_file::glyph_color):
  64. Don't call `do_motion'.
  65. (glyph_node::gcol, glyph_node::fcol): New variables.
  66. Updated constructors of glyph_node and ligature_node accordingly.
  67. (glyph_node::get_glyph_color, glyph_node::get_fill_color): New
  68. member functions.
  69. (glyph_node::merge_glyph_node,
  70. kern_pair_node::add_discretionary_hyphen,
  71. node::add_discretionary_hyphen): Updated.
  72. (break_char_node::merge_self): Updated.
  73. (word_space_node::tprint, space_node::tprint, hmotion_node::tprint,
  74. vmotion_node::tprint): Handle color.
  75. (make_glyph_node, make_node, node::add_char): Updated.
  76. * src/roff/troff/env.cc (environment::space_newline,
  77. environment::space, environment::output_line, environment::do_break,
  78. environment::make_tab_node, environment::add_padding, title):
  79. Updated.
  80. (environment_switch, environment_copy): Don't add color nodes.
  81. * src/roff/troff/input.cc (do_glyph_color, do_fill_color): Return
  82. nothing.
  83. (token::next): Updated.
  84. \m and \M now are as transparent as \s.
  85. (process_input_stack, token::add_to_node_list, token::process,
  86. read_draw_node): Updated.
  87. (charinfo_to_node_list): Don't add color nodes.
  88. * doc/groff.texinfo: Updated.
  89. 2002-09-27 Ruslan Ermilov <ru@FreeBSD.org>
  90. * tmac/doc-common (ds-operating-system-FreeBSD-4.*): New version
  91. strings.
  92. 2002-09-27 Colin Watson <cjwatson@debian.org>
  93. * src/roff/troff/node.cc (bracket_node::copy): Check `list' != 0.
  94. 2002-09-23 Werner LEMBERG <wl@gnu.org>
  95. * src/devices/grolbp/lbp.cc: Replace `300' with `font::res' where
  96. appropriate.
  97. (DEFAULT_LINEWIDTH_FACTOR): New macro.
  98. (linewidth_factor): New global variable.
  99. (lbp_printer::set_line_thickness): Fix case for size < 0, using
  100. linewidth_factor.
  101. (long_options): Add -w/--linewidth option.
  102. (usage): Updated.
  103. (main): Handle -w option to set linewidth_factor.
  104. (lbp_printer::lbp_printer): Initialize req_linethickness, not
  105. line_thickness.
  106. * src/devices/grolbp/grolbp.man, NEWS, doc/webpage.ms: Updated.
  107. 2002-09-22 Paco Andrés Verdú <pandres@dragonet.es>
  108. Fixed a bug in the line thickness setting code.
  109. * src/devices/grolbp/lbp.cc (lbp_printer::req_linethickness): New
  110. variable.
  111. (lbp_printer::set_line_thickness): Pass environment as second
  112. parameter.
  113. Implement it actually.
  114. (lpb_printer::set_char, lbp_printer::draw): Use `req_linethickness'
  115. and `set_line_thickness, depending on the current font size.
  116. 2002-09-21 Werner LEMBERG <wl@gnu.org>
  117. Some Debian patches.
  118. * src/roff/groff/pipeline.h (MAX_COMMANDS): Increase to 12.
  119. * src/roff/troff/node.cc (bracket_node::copy): Initialize
  120. `list->last'.
  121. 2002-09-20 Werner LEMBERG <wl@gnu.org>
  122. * configure: Regenerated with autoconf 2.54.
  123. 2002-09-20 Werner LEMBERG <wl@gnu.org>
  124. * src/roff/troff/env.h (environment): Rename cur_glyph_color to
  125. glyph_color.
  126. Rename cur_fill_color to fill_color.
  127. * src/roff/troff/env.cc: Updated.
  128. 2002-09-20 Werner LEMBERG <wl@gnu.org>
  129. * src/roff/troff/env.cc (title): Copy color status after processing
  130. title.
  131. * src/roff/troff/input.cc (charinfo_to_node_list): Emit glyph and
  132. fill color nodes to reset colors properly.
  133. * tmac/www.tmac (DC): Fix color handling.
  134. * src/preproc/pic/pic.man, doc/pic.ms: Document some color issues.
  135. * doc/groff.texinfo: Fixing documentation of `tl' request.
  136. * doc/webpage.ms: Updated.
  137. 2002-09-19 Werner LEMBERG <wl@gnu.org>
  138. * src/roff/troff/env.cc (environent_switch, environment_copy):
  139. Emit glyph and fill color nodes to initialize colors properly.
  140. 2002-09-17 Colin Watson <cjwatson@debian.org>
  141. * src/roff/troff/env.cc (environment::set_glyph_color,
  142. environment::set_fill_color): Fix typo which prevented \m[] work
  143. correctly.
  144. 2002-09-17 Werner LEMBERG <wl@gnu.org>
  145. Add left and right italic correction to non-slanted PS fonts. This
  146. is an experimental feature to improve image rendering of grohtml.
  147. * font/devps/generate/Makefile (RFLAG): New variable, set to `-i 0'.
  148. ({T,H,C,P,N,BM,A,HN}{R,B}, ZD, S, ZDR): Use it.
  149. * font/devps/*: All non-slanted fonts regenerated.
  150. * NEWS: Updated.
  151. 2002-09-16 Werner LEMBERG <wl@gnu.org>
  152. Add a site-specific font directory.
  153. * Makefile.in (localfontdir, legacyfontdir): New variables.
  154. (fontpath): Use them.
  155. (MDEFINES, uninstall_dirs): Updated.
  156. * Makefile.comm (.man.n): Add `LOCALFONTDIR' and `LEGACYFONTDIR'.
  157. Remove `FONTPATH' and `MACROPATH'.
  158. * src/roff/troff/troff.man, NEWS: Updated.
  159. * doc/groff.texinfo (Font Directories): New section.
  160. Other minor fixes.
  161. * src/devices/grodvi/grodvi.man, src/devices/grohtml/grohtml.man,
  162. src/devices/grolbp/grolbp.man, src/devices/grolj4/grolj4.man,
  163. src/preproc/grn/grn.man: Minor fixes.
  164. * src/devices/grohtml/post-html.cc (html_printer::do_tab_ts):
  165. Remove unused variable.
  166. 2002-09-11 Werner LEMBERG <wl@gnu.org>
  167. * doc/groff.texinfo, man/groff_font.man: Clarify argument of \N.
  168. * man/groff_out.man: Fix documentation of 'N'.
  169. 2002-09-09 Gaius Mulley <gaius@glam.ac.uk>
  170. * doc/Makefile.in (webpage.html): Depend on gnu.eps also.
  171. * src/roff/troff/env.cc (indent): Emit html tag only if break_flag is
  172. set.
  173. * src/devices/grohtml/post-html.cc (text_glob::is_br_ni): Removed.
  174. (text_glob::is_br, html_printer::lookahead_for_tables): Updated.
  175. (html_printer::do_tab_ts): Call `emit_table_header' with `FALSE'.
  176. * src/devices/grohtml/html-text.cc (html_text::start_tag) <P_TAG,
  177. PRE_TAG>: Call `begin' with `FALSE'.
  178. 2002-09-09 Ralph Corderoy <ralph@inputplus.demon.co.uk>
  179. * src/libs/libgroff/string.cc (string::extract): Fix position of
  180. terminating null byte.
  181. 2002-09-08 Werner LEMBERG <wl@gnu.org>
  182. Add global option `nospaces' to tbl so that leading and trailing
  183. spaces in data items are ignored.
  184. * src/libs/libgroff/string.cc (string::remove_spaces): New member
  185. function to remove leading and trailing spaces.
  186. * src/include/stringclass.h: Updated.
  187. * src/preproc/tbl/table.h (table): Add flag `NOSPACES'.
  188. * src/preproc/tbl/main.cc (process_options): Handle `nospaces'
  189. option.
  190. Fix typo in error messages.
  191. (process_data): Implement `nospaces' option.
  192. * src/preproc/tbl/tbl.man, NEWS, doc/webpage.ms: Updated.
  193. 2002-09-07 Werner LEMBERG <wl@gnu.org>
  194. * src/include/config.hin: Add `HAVE_ISATTY'.
  195. * src/libs/libgroff/tmpfile.cc (xtmpfile_list): Drop `const' for
  196. `fname' member.
  197. * src/libs/libgroff/tmpname.cc: Include `time.h'.
  198. * src/libs/libdriver/input.cc (Char): Add `operator==' and
  199. `operator!=' for `char'.
  200. * doc/groff.texinfo: Replace @ifnottex block for top node with
  201. @ifhtml block.
  202. 2002-09-06 Werner LEMBERG <wl@gnu.org>
  203. * doc/Makefile.in (.texinfo.html): Add -I switch.
  204. * doc/groff.texinfo: Add @ifnottex block for top node to make
  205. translation to HTML work.
  206. 2002-09-05 Gaius Mulley <gaius@glam.ac.uk>
  207. * src/preproc/html/pre-html.cc (LETTER_LENGTH): Removed.
  208. (get_papersize, determine_vertical_offset): Removed.
  209. (char_buffer::do_image): Always specify letter size.
  210. (main): Updated.
  211. (imageList::createPage): Use -dDEVICEHEIGHTPOINTS instead of
  212. -sPAPERSIZE.
  213. 2002-09-05 Werner LEMBERG <wl@gnu.org>
  214. * doc/groff.texinfo, tmac/groff_man.man: Improve documentation of
  215. default indentation.
  216. 2002-09-04 Gaius Mulley <gaius@glam.ac.uk>
  217. * src/preproc/html/pre-html.cc (imageList::createPage): Use
  218. -sPAPERSIZE for gs.
  219. (generateImages): Clean up push-back buffer.
  220. 2002-09-04 Ralph Corderoy <ralph@inputplus.demon.co.uk>
  221. * doc/groff.texinfo: Minor fixes.
  222. 2002-08-21 Gaius Mulley <gaius@glam.ac.uk>
  223. * src/preproc/html/pre-html.cc (DEFAULT_LINE_LENGTH): New macro.
  224. (MAX_WIDTH, A4_LENGTH, A4_OFFSET, LETTER_OFFSET): Removed.
  225. (gsPaper): Removed.
  226. (determine_vertical_offset): Use LETTER_LENGTH.
  227. (createPage): Moved to ...
  228. (imageList::createPage): This.
  229. Call gs with -dDEVICEWIDTHPOINTS to avoid cropping.
  230. (imageList::getMaxX): New function.
  231. (createImage): Moved to ...
  232. (imageList::createImage): This.
  233. (imageList::createImages): New function.
  234. (generateImages): Read `maxx' directly.
  235. Updated.
  236. (scanArguments): Don't specify `gsPaper' for `-o'.
  237. (makeTempFiles): Call `xtmpfile' with the last argument set to
  238. `TRUE'.
  239. 2002-08-24 Werner LEMBERG <wl@gnu.org>
  240. * src/include/nonposix.h (mkdir, WAIT, creat) [_MSC_VER]: Define.
  241. (WAIT, _WAIT_CHILD) [!_MSC_VER]: Define.
  242. * src/preproc/html/pre-html.cc (waitForChild): Use WAIT.
  243. * src/preproc/html/pushback.cc: Include nonposix.h.
  244. * src/roff/groff/pipeline.c: Define strcasecmp and strncasecmp
  245. conditionally.
  246. 2002-08-23 Werner LEMBERG <wl@gnu.org>
  247. Use $(OBJEXT) for the object file extension.
  248. * Makefile.comm (.SUFFIXES): Add .obj.
  249. (.cc.obj, .c.obj): New implicit rules.
  250. * Makefile.in (OBJEXT): New variable, initialized from autoconf.
  251. (MDEFINES): Add EXEEXT and OBJEXT.
  252. * */Makefile.sub: s/.o/.$(OBJEXT)/.
  253. 2002-08-22 Werner LEMBERG <wl@gnu.org>
  254. * INSTALL: Mention texinfo 4.2 as a prerequisite.
  255. 2002-08-21 Gaius Mulley <gaius@glam.ac.uk>
  256. * src/devices/grohtml/post-html.cc (colType): Make enum global to
  257. the file.
  258. (html_printer::update_min_max, html_printer::add_table_end): New
  259. methods.
  260. (html_printer::lookahead_for_tables): Use them.
  261. Reset page offset correctly.
  262. (html_printer::~html_printer): Add creation of creator comment up.
  263. 2002-08-20 Werner LEMBERG <wl@gnu.org>
  264. * tmac/an-old.tmac (T&): New dummy macro to avoid warning.
  265. * man/groff_tmac.man: Fix typos.
  266. * man/groff_font.man: Minor reordering.
  267. * contrib/eqn2graph/eqn2graph.man (Tp): New macro.
  268. 2002-08-18 Gaius Mulley <gaius@glam.ac.uk>
  269. Avoid endless loops while scanning for tables.
  270. * src/devices/grohtml/post-html.cc (list::insert): Set
  271. ptr->right->left.
  272. (html_printer::next_horiz_pos): Add `text_glob' argument; update
  273. all callers.
  274. Return immediately if that argument is NULL.
  275. (html_printer::calc_nf): Don't test if `g' is NULL.
  276. (html_printer::lookahead_for_tables): Use
  277. `glyphs.move_right_get_data'.
  278. Don't test if `g' is NULL.
  279. 2002-08-18 Gaius Mulley <gaius@glam.ac.uk>
  280. A better fix, replacing fix 2002-08-15, for increasing SIZE.
  281. * src/devices/grohtml/post-html.cc (char_block): Make `buffer'
  282. a pointer.
  283. (char_block::char_block): Allocate `buffer'.
  284. (char_buffer::add_string): Use it.
  285. 2002-08-15 Werner LEMBERG <wl@gnu.org>
  286. * src/devices/grops/grops.man, src/devices/grolj4/grolj4.man,
  287. src/devices/grodvi/grodvi.man: Document default line thickness.
  288. 2002-08-15 Gaius Mulley <gaius@glam.ac.uk>
  289. * src/devices/grohtml/post-html.cc (char_block): Increase SIZE to
  290. 8192.
  291. 2002-08-14 Werner LEMBERG <wl@gnu.org>
  292. * doc/webpage.ms: Updated.
  293. 2002-08-09 Werner LEMBERG <wl@gnu.org>
  294. * src/roff/troff/node.cc (node::add_char): Call `freeze_space' for
  295. unbreakable space.
  296. 2002-08-08 Aaron Campbell <aaron@monkey.org>
  297. * src/preproc/pic/object.cc (object_spec::make_move): Fix typo
  298. (&& -> &).
  299. 2002-08-08 Werner LEMBERG <wl@gnu.org>
  300. * src/roff/troff/input.cc (read_rgb, read_cmy, read_cmyk): Call
  301. tok.next().
  302. (read_gray): Ditto.
  303. Don't push back a space but a newline onto the stack.
  304. 2002-08-07 Gaius Mulley <gaius@glam.ac.uk>
  305. Add fonts `CI', `CB', and `CBI' to grohtml which have been omitted
  306. inadvertently.
  307. * src/devices/grohtml/post-html.cc (html_printer::end_font,
  308. html_printer::start_font): Handle them.
  309. * src/devices/grohtml/html-text.cc (html_text::do_italic): Don't
  310. reset bold and tt.
  311. (html_text::do_bold): Don't reset italic and tt.
  312. (html_text::do_tt, html_text::do_pre): Don't reset bold and italic.
  313. * font/devhtml/DESC.proto: Add those fonts.
  314. * font/devhtml/Makefile.sub (PROTOFONTS): Updated.
  315. 2002-08-07 Werner LEMBERG <wl@gnu.org>
  316. * MORE.STUFF: Added gpresent.
  317. * tmac/trace.tmac: Show nesting level by a corresponding amount of
  318. whitespace before printing the logging message.
  319. 2002-07-31 Colin Watson <cjwatson@debian.org>
  320. * src/devices/grohtml/html-table.cc (html_table::finish_row):
  321. Initialize `n' to zero. This fixes a segfault on ARM.
  322. 2002-07-30 Werner LEMBERG <wl@gnu.org>
  323. * doc/grnexmpl.me: Remove calls to .st and .sc which are undefined.
  324. 2002-07-29 Werner LEMBERG <wl@gnu.org>
  325. * src/preproc/pic/pic.y (print_arg, relative_path): Add missing
  326. final semicolon.
  327. 2002-07-28 Colin Watson <cjwatson@debian.org>
  328. * src/devices/grohtml/post-html (html_printer::troff_tag): Handle
  329. `.ps'.
  330. (html_printer::html_printer): Initialize `pointsize'.
  331. 2002-07-26 Werner LEMBERG <wl@gnu.org>
  332. * doc/Makefile.sub (PROCESSEDEXAMPLEFILES): Remove gnu.eps and
  333. gnu.png.
  334. (CLEANNOTSRCDIRADD): Add gnu.eps and gnu.png.
  335. (gnu.eps): Add -rle switch to pnmtops.
  336. (distfiles): Add gnu.eps and gnu.png.
  337. 2002-07-25 Petter Reinholdtsen <pere@hungry.com>
  338. * src/libs/libdriver/input.cc (Char): Add const to `operator=='.
  339. Add `operator!='.
  340. 2002-07-24 Werner LEMBERG <wl@gnu.org>
  341. * doc/Makefile.in, doc/Makefile.sub (groff_bin_path): Don't use
  342. ' \+' but ' *' for sed.
  343. (GROFF): Set GROFF_COMMAND_PREFIX to empty value.
  344. 2002-07-23 Werner LEMBERG <wl@gnu.org>
  345. * doc/groff.texinfo: Document `papersize' keyword.
  346. * NEWS, man/groff_font.man: Updated.
  347. 2002-07-23 Colin Watson <cjwatson@debian.org>
  348. Extend papersize keyword to accept more than a single entry. The
  349. first valid will be used.
  350. * src/libs/libgroff/font.cc (font::load_desc): Implement it.
  351. (font::scan_papersize): Really skip final newline.
  352. * src/preproc/html/pre-html.cc (get_papersize): Ditto.
  353. 2002-07-23 Werner LEMBERG <wl@gnu.org>
  354. * configure.ac: Test for isatty.
  355. * configure: Regenerated.
  356. * src/include/posix.h: Check HAVE_ISATTY.
  357. * src/roff/troff/input.cc [ISATTY_MISSING]: Removed.
  358. * src/utils/lookbib/lookbib.cc: Include posix.h.
  359. Don't declare isatty.
  360. 2002-07-21 Werner LEMBERG <wl@gnu.org>
  361. * NEWS: Add `output' request.
  362. * REVISION: Increased to 1.
  363. Version 1.18.0 released
  364. =======================
  365. 2002-07-19 Gaius Mulley <gaius@glam.ac.uk>
  366. Allow internal glyph indices > 0xFF in grohtml for input characters.
  367. * src/devices/grohtml/post-html.cc (to_unicode): Use `unsigned int'
  368. as parameter.
  369. (html_printer::add_to_sbuf): Use `unsigned int' as first parameter.
  370. Updated all callers.
  371. (html_printer::sbuf_continuation, html_printer::overstrike): Ditto.
  372. (html_printer): Updated.
  373. 2002-07-19 Werner LEMBERG <wl@gnu.org>
  374. * font/devhtml/R.proto: Updated to HTML 4, adding many glyphs.
  375. * font/devutf8/R.proto: Adding some missing glyphs.
  376. * font/devutf8/NOTES: Updated.
  377. * tmac/dvi.tmac: Add more composite glyphs.
  378. * tmac/html.tmac: Updated.
  379. * man/groff_char.man: Add `sum' and `product' entities.
  380. * NEWS: Updated.
  381. 2002-07-18 Gaius Mulley <gaius@glam.ac.uk>
  382. Improved table, tab, and indenting support.
  383. * src/roff/troff/input.cc (file_iterator::suppress_newline_flag,
  384. string_iterator::suppress_newline_flag): Removed. Updated all
  385. function which have used it.
  386. * src/roff/troff/env.cc: Include `input.h'.
  387. (environment::add_node): Accept 0 as parameter.
  388. (environment::add_html_tag): Add `force' parameter.
  389. Updated all callers.
  390. (environment::add_html_tag_tabs): Ditto.
  391. For the moment, support left-aligned tabs only.
  392. (environment::make_html_tag): New function.
  393. (fill, no_fill): Set .br html tag additionally.
  394. (environment::newline): Emit `eol.ce' or `eol' tag for html.
  395. (environment::add_html_tag_eol): Removed.
  396. (tab_stops::distance_to_next_tab): Add variant for handling
  397. nextpos'.
  398. (environment::distance_to_next_tab): Ditto.
  399. Updated all callers.
  400. (environment::handle_tab): Handle tabs for html.
  401. * src/roff/troff/env.h: Updated.
  402. * src/roff/troff/div.cc: Updated all callers of
  403. `environment::add_html_tag'.
  404. * src/devices/grohtml/html-table.cc,
  405. src/devices/grohtml/html-table.h: New files.
  406. * src/devices/grohtml/html-text.cc (html_text): New members
  407. `blank_para' and `start_space'.
  408. (html_text::issue_tag): Don't emit TABLE_TAG.
  409. Handle indentation for PRE_TAG and P_TAG.
  410. (html_text::end_tag): Updated.
  411. (html_text::table_is_void, html_text::issue_table_begin,
  412. html_text::issue_table_end): Removed.
  413. (html_text::do_push): Simplified.
  414. [DEBUGGING]: Small fix.
  415. (html_text::push_para): Add new parameter for indentation; updated
  416. all callers.
  417. Handle PRE_TAG.
  418. (html_text::do_indent, html_text::do_table, html_text::done_table,
  419. html_text::is_in_table): Removed.
  420. (html_text::do_pre): Handle P_TAG also.
  421. (html_text::shutdown): Handle p->indent.
  422. (html_text::check_emit_text): Simplified.
  423. (html_text::do_emittext): Reset `blank_para'.
  424. (html_text::do_para): Add new parameter for indentation; updated
  425. all callers.
  426. (html_text::remove_indent): New function.
  427. (html_text::do_space): Handle verbatim text properly.
  428. (html_text::ever_emitted_text, html_text::starts_with_space,
  429. html_text::remove_para_align): New functions.
  430. (html_text::dump_stack_element, html_text::dump_stack): Updated.
  431. * src/devices/grohtml/html_text.h (HTML_TAG): Remove TABLE_TAG.
  432. Updated.
  433. * src/devices/grohtml/post-html.cc: Include html-table.h.
  434. (INDENTATION): Removed.
  435. (text_glob): Added many `is_<foo>' functions.
  436. Added table description `tab'.
  437. Added `get_arg',`get_tab_args', `remember_table', and `get_table'
  438. member functions.
  439. (list): Add `insert' and `move_to' member functions.
  440. (page): Add `insert_tag' member function.
  441. (page::dump_page) [DEBUG_TABLES]: Improved.
  442. (html_printer): Add `table' and `max_linelength' elements.
  443. Add many `do_<foo>', `insert_<foo>', `next_horiz_pos',
  444. `lookahead_for_tables', `shutdown_table', `calc_nf', `calc_po_in',
  445. `remove_tabs', `remove_courier_tabs'.
  446. (html_printer::emit_raw): Handle indentation.
  447. (html_printer::do_center, html_printer::write_header): Updated.
  448. (html_printer::is_courier_until_eol): Check for tag.
  449. (html_printer::do_linelength): Handle max_linelength.
  450. (html_printer::do_page_offset, html_printer::do_indentation): Handle
  451. fill_on.
  452. (html_printer::do_tempindent): Updated.
  453. (html_printer::do_indentedparagraph): Removed.
  454. (html_printer::do_indent): Simplified.
  455. (html_printer::do_eol): Use `ever_emitted_text'.
  456. (html_printer::do_flush, html_printer::do_links): Don't call
  457. done_table.
  458. (html_printer::do_break): Handle end_tempindent.
  459. (html_printer::troff_tag): Get argument.
  460. Don't handle `.ip'.
  461. Handle `.tab-ts', `.tab-te', `.col', `tab', and `tab0' tags.
  462. (html_printer::flush_page): Call `lookahead_for_tables'.
  463. Don't call `done_table'.
  464. (html_printer::add_to_sbuf): Always call do_indent.
  465. * src/devices/grohtml/Makefile.sub: Updated.
  466. * tmac/an-old.tmac (TP): Don't handle html device specially.
  467. (an-do-tag-html): New function which will be used instead of
  468. `an-do-tag' if html device is used.
  469. * tmac/html.tmac: Call .po to pass default page offset to grohtml.
  470. * tmac/s.tmac (@IP): Don't handle html device specially.
  471. (@IP-html): New function which will be used instead of `@IP' if
  472. html device is used.
  473. * tmac/www.tmac (HTML-NS, HTML-TAG-NS): New auxiliary macros -- this
  474. is a hack which will eventually vanish again.
  475. (PIMG): Handle `-C' option correctly if not html.
  476. (HR): Use HTML-NS.
  477. 2002-07-17 Werner LEMBERG <wl@gnu.org>
  478. * src/utils/afmtodit/afmtodit.pl: Don't use `-P-' for invoking perl.
  479. 2002-07-14 Eric S. Raymond <esr@thyrsus.com>
  480. * contrib/pic2graph/pic2graph.*: Use convert(1).
  481. * contrib/eqn2graph/eqn2graph.*: Minor fixes.
  482. 2002-07-14 Bernd Warken <bwarken@mayn.de>
  483. * tmac/groff_trace.man: New file.
  484. * tmac/Makefile.sub: Updated.
  485. * NEWS: Updated.
  486. 2002-07-13 Werner LEMBERG <wl@gnu.org>
  487. * src/roff/groff/groff.man: Add some cross references.
  488. 2002-07-12 Werner LEMBERG <wl@gnu.org>
  489. * src/roff/troff/input.cc (substring_request): Add warnings for
  490. string indices out of range.
  491. 2002-07-11 Werner LEMBERG <wl@gnu.org>
  492. * font/devdvi/generate/ec.map: Fix typo (`(l' -> `/l').
  493. * font/devdvi/*EC: Regenerated.
  494. 2002-07-10 Bernd Warken <bwarken@mayn.de>
  495. * man/groff_char.man: Updated and extended.
  496. 2002-07-10 Werner LEMBERG <wl@gnu.org>
  497. * src/roff/troff/input.cc (length_macro): Renamed to...
  498. (length_request): This.
  499. Move call of `tok.next()' to the very end, otherwise the register
  500. value hasn't been updated yet.
  501. (init_input_requests): Updated.
  502. 2002-07-09 Werner LEMBERG <wl@gnu.org>
  503. * src/roff/troff/input.cc (substring_macro): Renamed to...
  504. (substring_request): This.
  505. (init_input_requests): Updated.
  506. * src/roff/troff/request.h: Updated.
  507. 2002-07-08 Robert D. Goulding <goulding@Princeton.EDU>
  508. * src/roff/grog/grog.sh: Fix typo.
  509. 2002-07-08 Werner LEMBERG <wl@gnu.org>
  510. * win32-diffs: Updated.
  511. Handle `papersize' keyword properly in DESC.
  512. * src/libs/libgroff/font.cc (font::scan_papersize): Fix argument
  513. type.
  514. Updated all callers.
  515. * src/libs/libgroff/paper.cc: Add four more paper formats used by
  516. grolj4.
  517. * src/include/paper.h: Updated.
  518. * src/devices/grolbp/lbp.cc: Remove unnecessary semicolons.
  519. Other minor C syntax fixes.
  520. (papersize, paperlength, paperwidth): Renamed to `user_*'.
  521. (lbp_printer): Add `papersize', `paperlength', and `paperwidth'
  522. members.
  523. (lbp_printer::lbp_printer): Pass three arguments.
  524. Set paper dimensions properly.
  525. (make_printer, main): Updated.
  526. (handle_unknown_desc_command): Fix error messages.
  527. (main): Handle papersize keyword in DESC properly.
  528. * src/devices/grolj4/lj4.cc (paper_size): Renamed to
  529. `user_paper_size'.
  530. (lbp_printer::lbp_printer): Pass an argument.
  531. Set paper_size properly.
  532. (handle_unknown_desc_command): Removed.
  533. (make_printer, main): Updated.
  534. * src/devices/grolj4/grolj4.man: Minor documentation fix.
  535. * man/groff_font.man, NEWS: Updated.
  536. 2002-07-07 Werner LEMBERG <wl@gnu.org>
  537. Integrated eqn2graph, contributed by Eric S. Raymond.
  538. * contrib/eqn2graph/{Makefile.sub, eqn2graph.sh, eqn2graph.man}: New
  539. files.
  540. * Makefile.in, NEWS: Updated.
  541. 2002-06-04 Werner LEMBERG <wl@gnu.org>
  542. Changing the substring request to make it fit better with other
  543. string manipulation functions in other programming languages:
  544. Index 0 is now the first character in the string, and index -1
  545. indicates the last character. Since this request didn't work
  546. properly anyway in the last release, it doesn't harm too much to
  547. change the syntax.
  548. * src/roff/troff/input.cc (substring_macro): Use loops to get
  549. the real string length (ignoring COMPATIBLE_SAVE and
  550. COMPATIBLE_RESTORE) and offsets.
  551. Implement change described above.
  552. * man/groff_char.man, tmac/doc-common (doc-header), tmac/doc.tmac
  553. (doc-do-Bd-args, doc-do-Bl-args): Changed accordingly.
  554. * NEWS, doc/groff.texinfo, man/groff_diff.man: Updated.
  555. 2002-06-03 Werner LEMBERG <wl@gnu.org>
  556. Make .chop work with .de1 and friends. COMPATIBLE_SAVE and
  557. COMPATIBLE_RESTORE are completely ignored.
  558. * src/roff/troff/input.cc (char_list::set, char_list::get): New
  559. functions.
  560. (macro): `length' field renamed to `len'.
  561. Added new field `empty_macro' (1 if macro is empty), to be used
  562. instead of checking `len'.
  563. Updated all callers.
  564. (macro::empty): Updated.
  565. (macro::length, macro::set, macro::get): New functions.
  566. (macro::append): Ignore COMPATIBLE_SAVE and COMPATIBLE_RESTORE.
  567. Set `empty_macro'.
  568. (chop_macro): Check and remove trailing COMPATIBLE_SAVE/
  569. COMPATIBLE_RESTORE pairs.
  570. (asciify): Ignore COMPATIBLE_SAVE and COMPATIBLE_RESTORE.
  571. * src/roff/troff/request.h: Updated.
  572. * doc/groff.texinfo: Document .chop's behaviour better.
  573. 2002-06-02 Werner LEMBERG <wl@gnu.org>
  574. * doc/pic.ms: Fix documentation for the addition of positions.
  575. * tmac/doc.tmac, tmac/an-old.tmac: Need groff version 1.18.
  576. 2002-06-29 Werner LEMBERG <wl@gnu.org>
  577. Implementation of string arguments of the form \*[foo arg1 arg2 ...]
  578. * src/roff/troff/input.cc (have_string_arg): New global variable.
  579. (read_mode): New enumeration.
  580. (read_escape_name): Use it. Update all calls.
  581. (read_long_escape_name): Use it. Update all calls.
  582. Set have_string_arg if appropriate.
  583. (get_char_for_escape_name): Add parameter for handling space
  584. character.
  585. (interpolate_string_with_args, decode_string_args): New functions.
  586. (get_copy, token::next): Call it if necessary.
  587. (interpolate_string): Fix error message.
  588. * NEWS, doc/groff.texinfo, man/groff.man, man/groff_diff.man:
  589. Document it.
  590. 2002-06-24 Bernd Warken <bwarken@mayn.de>
  591. * man/groff_tmac.man: Updated and extended.
  592. 2002-06-24 Werner LEMBERG <wl@gnu.org>
  593. * doc/pic.ms, src/preproc/pic/pic.man: Fix description of `:='.
  594. 2002-06-23 Werner LEMBERG <wl@gnu.org>
  595. * doc/pic.ms: Improve documentation of composite block objects.
  596. 2002-06-22 Werner LEMBERG <wl@gnu.org>
  597. * src/roff/troff/input.cc (init_registers): Add three registers
  598. `seconds', `minutes', and `hours' to hold the current time.
  599. * NEWS, doc/groff.texinfo, man/groff.man, man/groff_diff.man:
  600. Updated.
  601. 2002-06-20 Werner LEMBERG <wl@gnu.org>
  602. Make \X accept both `\ ' and `\~', converting them to single space
  603. characters.
  604. * src/roff/troff/token.h (token): Add TOKEN_UNSTRETCHABLE_SPACE.
  605. (token::unstretchable_space): New inline function.
  606. * src/roff/troff/input.cc (token::next, token::delimiter,
  607. token::description, token::add_to_node_list, token::process): Handle
  608. TOKEN_UNSTRETCHABLE_NODE.
  609. (encode_char): Handle tok.stretchable_space and
  610. tok.unstretchable_space.
  611. * NEWS, doc/groff.texinfo: Document it..
  612. 2002-06-19 Werner LEMBERG <wl@gnu.org>
  613. * src/devices/grops/ps.cc (ps_printer::special): Fix error message.
  614. * src/devices/grotty/tty.cc (tty_printer::special): Add `sgr'
  615. keyword to enable/disable SGR output.
  616. (tty_printer::change_fill_color): New function.
  617. * NEWS, src/devices/grotty/grotty.man: Document `sgr' special.
  618. * src/roff/troff/input.cc (output_request): Add missing `tok.next()'
  619. call.
  620. 2002-06-18 Werner LEMBERG <wl@gnu.org>
  621. Add a `color' request and a `.color' register to control usage of
  622. colours.
  623. * src/roff/troff/input.cc (disable_color_flag): Replaced with...
  624. (color_flag): This (which is the inverse).
  625. (activate_color): New function.
  626. (main, init_input_requests): Updated.
  627. * src/roff/troff/troff.h, src/roff/troff/node.cc
  628. (troff_output_file::fill_color, troff_output_file::glyph_color):
  629. Updated.
  630. * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man:
  631. Document the changes.
  632. 2002-06-17 Colin Watson <cjwatson@debian.org>
  633. Circumvent bug in autoconf 2.53 regarding top_builddir.
  634. * aclocal.m4 (GROFF_BUILDDIR): s/top_builddir/groff_top_builddir/.
  635. * Makefile.in, doc/Makefile.in:
  636. s/@top_builddir@/@groff_top_builddir@/.
  637. * configure: Regenerated (with autoconf 2.53).
  638. 2002-06-17 Werner LEMBERG <wl@gnu.org>
  639. * src/libs/libgroff/font.cc (font::load_desc): Fix computation of
  640. `paperwidth' and `paperlength' for the `papersize' keyword.
  641. 2002-06-16 P. Alejandro Lopez-Valencia <dradul@007mundo.com>
  642. * src/devices/grops/grops.man: Add info about Type 42 fonts.
  643. 2002-06-15 Gaius Mulley <gaius@glam.ac.uk>
  644. * src/devices/grohtml/post-html.cc (html_printer::emit_raw,
  645. html_printer::do_linelength, html_printer::do_pageoffset,
  646. html_printer::do_indentation, html_printer::do_tempindent,
  647. html_printer::do_break, html_printer::begin_page): Clear indented
  648. text.
  649. * tmac/html.tmac: Disable hyphenation.
  650. 2002-06-15 Werner LEMBERG <wl@gnu.org>
  651. Don't produce HTML files if utility programs are missing.
  652. * Makefile.in (make_html, make_install_html): New variables.
  653. (MDEFINES): Updated.
  654. * aclocal.m4 (GROFF_HTML_PROGRAMS): New function to test for HTML
  655. utility programs.
  656. * configure.ac: Use it.
  657. * configure: Regenerated.
  658. * doc/Makefile.sub (PROCESSEDEXAMPLEFILES): Move webpage.html to...
  659. (HTMLEXAMPLESFILES): This new variable.
  660. (EXAMPLESIMAGEFILES): Renamed to...
  661. (HTMLEXAMPLEIMAGEFILES): This.
  662. (CLEANADD): Add HTMLEXAMPLEFILES.
  663. (all): Use `make_html'.
  664. (html): New target.
  665. (install_data): Use `make_install_html'.
  666. Move html stuff to...
  667. (install_html): This new target.
  668. (uninstall_sub): Updated.
  669. 2002-06-14 Bernd Warken <bwarken@mayn.de>
  670. * src/roff/grog/Makefile.sub (grog): Renamed to...
  671. (grog.old): This.
  672. (grog): New rule to always install grog.sh as grog.
  673. 2002-06-08 Bernd Warken <bwarken@mayn.de>
  674. * src/roff/grog/grog.pl: Fix typo.
  675. 2002-06-07 Werner LEMBERG <wl@gnu.org>
  676. * doc/groff.texinfo: Add more info on .tr arguments.
  677. 2002-06-05 Werner LEMBERG <wl@gnu.org>
  678. * NEWS, src/roff/grog/grog.man, doc/groff.texinfo: Updated.
  679. * aclocal.m4 (GROFF_MKSTEMP): Include unistd.h.
  680. * configure: Regenerated.
  681. 2002-06-05 Ralph Corderoy <ralph@inputplus.demon.co.uk>
  682. * src/roff/troff/symbol.cc (table_sizes): Add more values.
  683. * src/roff/grog/grog.pl, src/roff/grog/grog.sh: Recognize mom.
  684. 2002-06-04 Werner LEMBERG <wl@gnu.org>
  685. * aclocal.m4 (GROFF_PAGE): Don't use `prefix' directly since it
  686. is not initialized at the time we need it in case `--prefix' hasn't
  687. been set. Check for `ac_default_prefix' also.
  688. Test for `papersize' keyword also and generalize allowed whitespace.
  689. * configure: Regenerated.
  690. * font/devps/Makefile.sub (DESC): Use `papersize' instead of
  691. `paperlength'.
  692. * src/libs/libgroff/Makefile.sub (version, revision): Replaced
  693. with...
  694. (src_version, src_revision): New variables to avoid overwriting
  695. from parent make process.
  696. (version.cc): Updated.
  697. * src/preproc/html/pre-html.cc: Include paper.h and font.h.
  698. (linebuf, linebufsize): New global variables.
  699. (sys_fatal): Use `fatal' to abort properly.
  700. (get_line): New function.
  701. (get_resolution): Use it.
  702. Improve error messages.
  703. (get_papersize): Check `papersize' also.
  704. Use `get_line'.
  705. Improve error messages.
  706. 2002-06-03 Werner LEMBERG <wl@gnu.org>
  707. * Makefile.comm (CLEANNOTSRCDIRADD): New target for files which
  708. should be removed only if builddir is not srcdir.
  709. (mostlyclean): Handle `CLEANNOTSRCDIRADD'.
  710. (clean): Depend on `mostlyclean'.
  711. (distclean): Depend on `clean'.
  712. (realclean, extraclean): Depend on `distclean'.
  713. (.y.cc, .y.o): Simplified. The output files are no longer written
  714. to srcdir but to builddir.
  715. * Makefile.in (MDEFINES): Add `version' and `revision'.
  716. (uninstall_dirs): Fix order of directories.
  717. * doc/Makefile.sub (version, revision): Removed.
  718. (CLEANADD): Removed grnexmpl.g, groff, groff-*.
  719. Added `HTMLDOCFILES'.
  720. (CLEANNOTSRCDIRADD): New target for grnexmpl.h, groff, groff-*.
  721. * src/preproc/eqn/Makefile.sub, src/preproc/pic/Makefile.sub,
  722. src/preproc/refer/Makefile.sub (YTABC, YTABH): Don't use `srcdir'
  723. as prefix.
  724. * doc/texinfo.tex (\authortt): New macro.
  725. (\shortcontt): Define.
  726. (\titlepage): Set \tt to \authortt while defining \authorfont.
  727. (\appendixbox): New macro.
  728. (\chapmacro, \appendixentry): Use \appendixbox to get even
  729. indentation for letters.
  730. (\summarycontents): Set \tt.
  731. (\internalpagesize): Add two arguments for real paper width and
  732. height as needed by pdfTeX.
  733. (\letterpaper, \smallbook, \afourpaper, \afivepaper, \afourlatex):
  734. Updated.
  735. (\tempdima, \tempdimb): New temporary dimensions.
  736. (\pagesizesyyy): Updated.
  737. 2002-06-02 Werner LEMBERG <wl@gnu.org>
  738. Adding a new keyword `papersize' to the DESC file format (similar
  739. but not completely identical to grolbp's extension). grops now has
  740. a -p command line option to override `papersize'. Finally, grolbp
  741. has been adapted to the new syntax.
  742. * src/libs/libgroff/paper.cc, src/include/paper.h: New files. It
  743. defines and initializes the `papersizes[]' array with NUM_PAPERSIZES
  744. elements.
  745. * src/libs/libgroff/Makefile.sub (OBJS): Add `paper.o'.
  746. (CCSRCS): Add `paper.cc'.
  747. * src/include/font.h (font): Add `papersize' element.
  748. * src/libs/libgroff/font.cc (font::unit_scale): New helper function.
  749. (font::scan_papersize): New function.
  750. (font::load_desc): Use it for handling `papersize' keyword.
  751. * src/libs/libgroff/fontfile.cc: Initialize `font::papersize'.
  752. * src/devices/grops/ps.cc: Include paper.h.
  753. (user_paper_length): New global variable.
  754. (ps_printer): Use paper length as initializer.
  755. (make_printer): Updated.
  756. (main): Handle new `-p' option.
  757. * src/devices/grops/grops.man: Updated.
  758. * src/devices/grolbp/lbp.cc: Include paper.h.
  759. s/papersizes/lbp_papersizes/.
  760. (set_papersize): Use new `papersizes' array.
  761. (handle_unknown_desc_command): Don't handle `papersize'.
  762. (main): Use `font::scan_papersize' for handling `-p' option.
  763. * src/devices/grolbp/grolbp.man: Updated.
  764. * man/groff_font.man: Document `papersize'.
  765. * NEWS: Updated.
  766. 2002-05-30 Werner LEMBERG <wl@gnu.org>
  767. * src/devices/grops/TODO: Updated.
  768. * src/devices/grops/grops.man: More info on paper formats.
  769. * man/groff_font.man: Document `paperheight' and `paperwidth'.
  770. 2002-05-29 Werner LEMBERG <wl@gnu.org>
  771. * doc/Makefile.sub (CLEANADD): Add grnexmpl.g, groff, and groff-*
  772. to list only if srcdir != currdir.
  773. (distfiles): New target.
  774. * Makefile.in (EXTRADIRS): Add font/devlj4/generate.
  775. (NOMAKEDIRS): New variable.
  776. (DISTDIRS): Use it.
  777. 2002-05-26 Werner LEMBERG <wl@gnu.org>
  778. Add .output request, similar to \! at top-level.
  779. * src/roff/troff/input.cc (transparent): Remove unused declaration.
  780. (output_request): New function.
  781. (init_input_requests): Add it.
  782. Sorted.
  783. * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man:
  784. Document it.
  785. * Makefile.in (MDEFINES): Add INSTALL_INFO.
  786. (prepare_examples): Fix typo.
  787. * doc/groff.texinfo (@direntry): Fix it.
  788. 2002-05-25 Werner LEMBERG <wl@gnu.org>
  789. Including the doc subdir into groff's Makefile system.
  790. * aclocal.m4 (GROFF_INSTALL_INFO): New function.
  791. * configure.ac: Use it.
  792. Generate `doc/Makefile'.
  793. * configure: Regenerated.
  794. * Makefile.in (infodir, INSTALL_INFO): New variables.
  795. (MDEFINES, uninstall_dirs): Updated.
  796. (OTHERDIRS): Add `doc'.
  797. * Makefile.comm (CLEANDIRADD): New variable.
  798. (mostlyclean): Use it.
  799. * doc/Makefile.sub, doc/Makefile.in: New files.
  800. * doc/Makefile: Removed.
  801. * NEWS, INSTALL: Updated.
  802. 2002-05-24 Werner LEMBERG <wl@gnu.org>
  803. * doc/homepage.ms: Renamed to ...
  804. * doc/webpage.ms: This.
  805. Use `.NHR'.
  806. 2002-05-23 Werner LEMBERG <wl@gnu.org>
  807. Integrating the `mom' macro package, contributed by Peter Schaffter
  808. <df191@ncf.ca>.
  809. * contrib/mom/*: New subdirectory tree.
  810. * Makefile.in (docdir, exampledir, htmldocdir): New variables to
  811. be used for documentation files.
  812. (MDEFINES, uninstall_dirs): Use them.
  813. (OTHERDIRS): Add contrib/mom.
  814. * Makefile.comm (.man.n): Add @DOCDIR@, @EXAMPLEDIR@, and
  815. @HTMLDOCDIR@.
  816. * MANIFEST, NEWS: Updated.
  817. 2002-05-22 Gaius Mulley <gaius@glam.ac.uk>
  818. Change syntax of \O: \O[0] suppresses output, \O[1] enables output
  819. if at outer level; at start-up we are at outer level.
  820. * src/roff/troff/input.cc (do_suppress): Implement it.
  821. Simplify \O[3].
  822. Add option -p to show progress information.
  823. pre-grohtml will now render only one page at a time, reducing the
  824. size of needed disk resources enormously.
  825. * src/preproc/html/pre-html.cc (imagePageStem): Replaced with...
  826. (imagePageName): New global variable.
  827. (psPageName, show_progress, currentPageNo): New global variables.
  828. (html_system): Close saved stderr and stdout handles.
  829. (write_end_image): Accept a parameter to control \O escape.
  830. (write_start_image): Adapted to new \O meaning.
  831. (char_buffer::write_upto_newline): Updated.
  832. (createAllPages): Replaced with...
  833. (createPage): This new function to create a single page for images.
  834. It uses `psselect' from the psutils package.
  835. (removeAllPages): Removed.
  836. (createImage): Updated.
  837. Handle progress display.
  838. (char_buffer::do_html, char_buffer::do_image) [DEBUGGING]: Removed.
  839. (scanArguments): Add option -p.
  840. (makeTempFiles): Updated to create temp files for psPageName and
  841. imagePageName.
  842. (removeTempFiles): Removed.
  843. (main): Updated.
  844. * src/devices/grohtml/post-html.cc (header_desc::write_headings,
  845. html_printer::write_header): Append `\0' to `buffer'.
  846. (html_printer::do_eol): Depend on `current_paragraph->emitted_text'.
  847. (main): Handle -p.
  848. * src/devices/grohtml/html-text.cc (html_text::dump_stack_element):
  849. Handle `text_emitted'.
  850. (html_text::table_is_void): Slightly rewritten.
  851. (stop): New external symbol.
  852. (html_text::do_push) [DEBUGGING]: Use it and simplify.
  853. (html_text::shutdown): Call `dump_stack'.
  854. (html_text::do_space): Rewritten.
  855. * src/devices/grohtml/grohtml.man: Document -p and the need of
  856. `psselect'.
  857. * tmac/www.tmac (DC, HTML-DO-IMAGE, HTML-IMAGE-END): Updated to
  858. new \O syntax.
  859. Call \O[0] if `ps4html' is active.
  860. * tmac/s.tmac (@EQ, @EN): Handle html better.
  861. (@TS, TE): Ditto.
  862. * tmac/html.tmac: Don't use black for background colour.
  863. * src/roff/troff/node.cc: Include `div.h'.
  864. (troff_output_file::really_print_line): Don't use `is_on'.
  865. (troff_output_file::word_marker, troff_output_file::flush_tbuf
  866. troff_output_file::check_charinfo,
  867. troff_output_file::put_char_width, troff_output_file::put_char,
  868. troff_output_file::determine_line_limits, troff_output_file::draw,
  869. real_output_file::begin_page, glyph_color_node::tprintf,
  870. fill_color_node::tprint, hline_node::tprint, vline_node::tprint):
  871. Use `is_on'.
  872. (troff_output_file::really_on): Call `do_motion'.
  873. (suppress_node::tprint): Use `get_page_number' instead of `%'
  874. register.
  875. Call `reset_output_registers' conditionally on `is_on'.
  876. * doc/groff.texinfo: Document new syntax of \O.
  877. * NEWS, man/groff_diff.man: Updated.
  878. 2002-05-22 Werner LEMBERG <wl@gnu.org>
  879. * MORE.STUFF: Add info about David Frey's deroff implementation.
  880. Mention troff.org.
  881. 2002-05-16 Werner LEMBERG <wl@gnu.org>
  882. Pic's `with' attribute now accepts positions.
  883. * src/preproc/pic/pic.y: Make `.', BOX, CIRCLE, ELLIPSE, ARC, LINE,
  884. ARROW, SPLINE, and `[' left-associative tokens to fix shift/reduce
  885. conflicts.
  886. (object_spec): Add rule for `WITH' and `position'.
  887. (relative_path): Give `corner' the precedence of `CHOP'.
  888. * src/preproc/pic/object.h (path): New members `pos' and
  889. `is_position'.
  890. * src/preproc/pic/object.cc: Updated initializers of `path'.
  891. (path::follow): Handle `is_position'.
  892. * doc/pic.ms: Completely updated grammar description.
  893. Many typographical improvements.
  894. 2002-05-15 Werner LEMBERG <wl@gnu.org>
  895. * src/roff/troff/env.cc(hyphen_trie::hpf_getc): Accept ^^x (char
  896. code of x in range 0-127) also.
  897. * doc/groff.texinfo, man/groff_diff.man: Updated.
  898. Added keywords `north', `south', `east', and `west' for corners
  899. in pic.
  900. * src/preproc/pic/lex.cc (lookup_keyword): Add NORTH, SOUTH, EAST,
  901. and WEST.
  902. (yylex): Handle them.
  903. * src/preproc/pic/pic.y: Add tokens NORTH, SOUTH, EAST, and WEST.
  904. (corner): Handle them.
  905. 2002-05-14 Werner LEMBERG <wl@gnu.org>
  906. * src/devices/grops/grops.man: Clarify handling of `download' file.
  907. 2002-05-11 Werner LEMBERG <wl@gnu.org>
  908. Adding `warnscale' and `spreadwarn' requests, based on a patch from
  909. Jeffrey Friedl <jfriedl@yahoo.com>.
  910. * src/roff/troff/input.cc (spread_limit, warn_scale,
  911. warn_scaling_indicator): New global variables.
  912. (warnscale_request, spreadwarn_requests): New functions.
  913. (main): Initialize `warn_scale' and `warn_scaling_indicator'.
  914. (init_input_requests): Updated.
  915. (error_type): Add `OUTPUT_WARNING'.
  916. (do_error): Handle it.
  917. (output_warning): New warning function which shows output location.
  918. * src/roff/troff/env.h (spread_limit): New external variable.
  919. * src/roff/troff/env.cc (environment::choose_breakpoint): Use
  920. `output_warning'.
  921. (distribute_space): Emit warning if added space is larger than
  922. `spread_limit'.
  923. (environment::possibly_break_line): Emit warning if a line can't
  924. be adjusted on both sides.
  925. * doc/groff.texinfo, man/groff_diff.man, man/groff.man: Document it.
  926. 2002-05-08 Werner LEMBERG <wl@gnu.org>
  927. * src/roff/troff/node.cc (special_node::special_node): Use
  928. env_definite_font(curenv) instead of curenv->get_font(). Otherwise
  929. \X''\% crashes, for example.
  930. * doc/groff.texinfo: Document \! and \? used at top-level.
  931. 2002-05-06 Werner LEMBERG <wl@gnu.org>
  932. * src/preproc/pic/pic.man: Fix some keyword syntax.
  933. Other minor typographical fixes.
  934. * src/roff/groff/groff.man: Fix typos.
  935. 2002-05-04 Werner LEMBERG <wl@gnu.org>
  936. * src/roff/groff/groff.man ([ShortOpt]): Renamed to...
  937. (ShortOpt[]): This to avoid problems with refer.
  938. * doc/pic.ms: Fix typo.
  939. Fix pic grammar description.
  940. * tmac/an-old.tmac (ne): Use de1, not de.
  941. 2002-05-03 Werner LEMBERG <wl@gnu.org>
  942. * doc/groff.texinfo: Finished separation of glyphs and characters.
  943. Don't use the string `Appendix' for appendix headers (both in
  944. the text and the table of contents).
  945. * man/groff_tmac.man, src/roff/troff/troff.man: Fix order of tmac
  946. directories.
  947. Use registers LL and LT (similar to -ms) for controlling the
  948. length of title and line, respectively, in the -man and -mdoc
  949. macro packages.
  950. * tmac/doc-ditroff (doc-setup-page-layout), tmac/doc-nroff
  951. (doc-setup-page-layout): Use \n[LL] and \n[LT].
  952. * tmac/an-old.tmac: Set \n[LL] and \n[LT] if not defined.
  953. (TH): Use \n[LL].
  954. (an-header, an-p-footer): Use \n[LT].
  955. * NEWS, tmac/groff_man.man, tmac/groff_mdoc.man,
  956. doc/groff.texinfo: Document it.
  957. 2002-05-02 Werner LEMBERG <wl@gnu.org>
  958. * doc/fdl.texi: New file.
  959. * doc/groff.texinfo: Include it.
  960. Define and use @copying.
  961. Starting with separating glyph, symbol, and character.
  962. 2002-04-27 Werner LEMBERG <wl@gnu.org>
  963. * Makefile.in (EXEEXT): Set it.
  964. * src/*/Makefile.sub (PROG): Add $(EXEEXT) for all non-script
  965. programs.
  966. * src/include/nonposix.h: Define GS_NAME.
  967. * src/preproc/html/pre-html.cc (createAllPages): Use GS_NAME.
  968. Some preliminary changes for EMX support under OS/2.
  969. * src/preproc/pic/main.cc (main), src/roff/groff/pipeline.c: Add
  970. __EMX__ similar to __MSDOS__.
  971. * src/utils/indxbib/indxbib.cc (main) [__EMX__]: Use `unlink'.
  972. 2002-04-25 Werner LEMBERG <wl@gnu.org>
  973. * doc/groff.texinfo: Integrated groff_out.man.
  974. Some macro fixes.
  975. 2002-04-23 Werner LEMBERG <wl@gnu.org>
  976. * man/groff_out.man: Minor fixes.
  977. 2002-04-23 Werner LEMBERG <wl@gnu.org>
  978. * doc/groff.texinfo: Moving @cindex entries after @Def* to get
  979. correct page references.
  980. Fixed many index entries.
  981. 2002-04-23 Bernd Warken <bwarken@mayn.de>
  982. * man/roff.man: Enlarged.
  983. 2002-04-22 Werner LEMBERG <wl@gnu.org>
  984. * doc/groff.texinfo: More examples, other fixes.
  985. 2002-04-20 Werner LEMBERG <wl@gnu.org>
  986. * src/roff/troff/input.cc (pipe_output): Multiple calls to `pi'
  987. will now form a chain, e.g.
  988. .pi foo
  989. .pi bar
  990. is now the same as
  991. .pi foo | bar
  992. This is for compatibility with plan 9's troff.
  993. * tmac/tty.tmac: Set default tab values to 0.8i to be compatible
  994. with UNIX troff.
  995. * NEWS: Updated.
  996. * doc/groff.texinfo: Add documentation of remaining requests and
  997. registers.
  998. 2002-04-19 Werner LEMBERG <wl@gnu.org>
  999. * doc/groff.texinfo: Add documentation of remaining escapes.
  1000. * font/devdvi/generate/tc.map: Remove entry for `sr'.
  1001. * font/devdvi/*TC: Regenerated.
  1002. 2002-04-18 Werner LEMBERG <wl@gnu.org>
  1003. * src/roff/troff/input.cc (token::next): Make \H behave consistently
  1004. if not in compatibility mode, i.e., increment relative to the
  1005. previous height.
  1006. * doc/groff.texinfo: Updated accordingly.
  1007. 2002-04-17 Werner LEMBERG <wl@gnu.org>
  1008. * doc/groff.texinfo: Document \\, \e, \E, \., and \c.
  1009. 2002-04-16 Bernd Warken <bwarken@mayn.de>
  1010. * src/roff/groff/groff.man: Improve documentation of -P option.
  1011. Other minor fixes.
  1012. 2002-04-15 Werner LEMBERG <wl@gnu.org>
  1013. Add new escape \F to switch font family.
  1014. * src/roff/troff/input.cc (token::next): Handle \F.
  1015. * src/roff/troff/env.cc (environment::set_family): Handle
  1016. `interrupted' flag.
  1017. * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man:
  1018. Document it.
  1019. 2002-04-14 Werner LEMBERG <wl@gnu.org>
  1020. * tmac/doc.tmac (doc-tag-list): Use \Z to avoid stretching of
  1021. spaces in tags.
  1022. 2002-04-13 Werner LEMBERG <wl@gnu.org>
  1023. Implement \f[] as an alternative to \fP. Change \mP and \MP to
  1024. \m[] and \M[], respectively.
  1025. * src/roff/troff/symbol.cc (EMPTY_SYMBOL): New global variable.
  1026. (symbol::symbol): Handle NULL string and empty string differently.
  1027. * src/roff/troff/symbol.h (symbol::is_empty): New inline function.
  1028. * src/roff/troff/input.cc (read_escape_name, read_long_escape_name):
  1029. Add optional parameter.
  1030. Updated calling functions.
  1031. (get_copy, do_glyph_color, do_fill_color, token::next): Use
  1032. `symbol::is_empty'.
  1033. * src/roff/troff/env.cc (environment::set_font): Ditto.
  1034. * src/preproc/pic/troff.cc (troff_output::set_fill,
  1035. troff_output::reset_color: Updated.
  1036. * tmac/www.tmac: Updated.
  1037. * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo,
  1038. doc/homepage.ms, src/devices/grotty/grotty.man, tmac/groff_www.man:
  1039. Updated.
  1040. * tmac/Xps.tmac: Remove some redundant code.
  1041. * tmac/doc-common, tmac/doc-ditroff, tmac/doc-nroff, tmac/doc.tmac,
  1042. tmac/dvi.tmac, man/roff.man, man/groff_out.man, man/groff.man,
  1043. man/groff_diff.man, src/roff/groff/groff.man: Replace \f[P] with
  1044. \f[].
  1045. 2002-04-13 Bernd Warken <bwarken@mayn.de>
  1046. * src/include/printer.h, src/libs/libdriver/printer.cc
  1047. (printer::change_fill_color): New member function.
  1048. * src/libs/libdriver/input.cc (parse_D_command): Use it.
  1049. 2002-04-12 Werner LEMBERG <wl@gnu.org>
  1050. * doc/groff.texinfo: Completed pass on gtroff reference.
  1051. 2002-04-11 Werner LEMBERG <wl@gnu.org>
  1052. * doc/groff.texinfo: More fixes.
  1053. 2002-04-11 Bernd Warken <bwarken@mayn.de>
  1054. * src/include/color.h: Decorate with `const'.
  1055. Use `size_t'.
  1056. Include `stddef.h'.
  1057. * src/libs/libgroff.color.cc: Decorate with `const'.
  1058. Use `size_t'.
  1059. (color::color): Initialize members.
  1060. * src/libs/libdriver/input.cc (parse_D_command): Handle `f'
  1061. command according to the documentation.
  1062. * man/groff_out.man: Updated.
  1063. Minor fixes.
  1064. 2002-04-11 Gaius Mulley <gaius@glam.ac.uk>
  1065. * src/preproc/html/pre-html.cc (write_start_image): Remove
  1066. redundant output.
  1067. * tmac/www.tmac (DC, HTML-DO-IMAGE): Ditto.
  1068. * src/devices/grohtml/post-html.cc (page::add_and_encode): Using
  1069. \C'hy' caused an assertion failure.
  1070. * src/roff/troff/env.cc (environment::environment): Initialize
  1071. `emitted_node'.
  1072. (environment::copy): Handle `ignore_next_eol' and `emitted_node'.
  1073. 2002-04-10 Werner LEMBERG <wl@gnu.org>
  1074. * man/groff_diff.man, man/groff.man, NEWS, doc/groff.texinfo:
  1075. Document pvs request and .pvs register.
  1076. 2002-04-09 Werner LEMBERG <wl@gnu.org>
  1077. * doc/groff.texinfo: Improve and fix documentation of diversions
  1078. and environments.
  1079. 2002-04-08 Werner LEMBERG <wl@gnu.org>
  1080. * doc/groff.texinfo: Fix documentation of drawing functions.
  1081. Other minor fixes.
  1082. 2002-04-07 Werner LEMBERG <wl@gnu.org>
  1083. * doc/groff.texinfo: Better documentation of double quotes as
  1084. arguments.
  1085. Other minor fixes.
  1086. 2002-04-06 Werner LEMBERG <wl@gnu.org>
  1087. * man/groff_font.man: Document names of special characters better.
  1088. * doc/groff.texinfo: Minor improvements.
  1089. * tmac/lbp.tmac: Load latin1.tmac.
  1090. * tmac/X.tmac, tmac/Xps.tmac: Load latin1.tmac or cp1047.tmac.
  1091. * font/devX*/*: Regenerated (all chars > 0x80 removed).
  1092. 2002-04-05 Werner LEMBERG <wl@gnu.org>
  1093. * tmac/tty.tmac: Don't use shc request.
  1094. * tmac/latin1.tmac, tmac/cp1047.tmac: Translate soft hyphen to `\%'.
  1095. * NEWS: Updated.
  1096. * man/groff_diff.man: Minor fixes.
  1097. * font/devlbp/*: Remove all `charXXX' entities.
  1098. * src/libs/libgroff/font.cc (font::~font): Deallocate
  1099. `special_device_coding'.
  1100. (font::load): Use `new' for allocating `special_device_coding'.
  1101. * src/libs/libgroff/nametoindex.cc (character_indexer::lookup_char):
  1102. Removed unused member.
  1103. 2002-04-05 Werner LEMBERG <wl@gnu.org>
  1104. * src/drivers/grops/psrm.cc (skip_possible_newline): New function.
  1105. (resource_manager::do_begin_binary,
  1106. resource_manager::do_begin_data): Use it.
  1107. * doc/texinfo.tex: Updated to version 4.2.
  1108. * src/roff/troff/token.h: Add TOKEN_ZERO_WIDTH_BREAK for `\:'.
  1109. (token::zero_width_break): New inline function.
  1110. * src/roff/troff/input.cc (token::next): Use it.
  1111. (token::description): Updated.
  1112. (en…