summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Version 1.21 releasedgroff-1_21wl2010-12-318-24/+32
| | | | | | | ===================== * NEWS, REVISION, VERSION, doc/groff.texinfo, doc/webpage.ms: Updated. * aclocal.m4, configure: Regenerated.
* * doc/webpage.ms: Updated.wl2010-12-312-2/+81
|
* * configure: Regenerate with autoconf 2.67.wl2010-12-312-5553/+2475
|
* Update various scripts.wl2010-12-315-172/+197
| | | | | * config.guess, config.sub: Update from `config' repository. * install-sh, mkinstalldirs: Update from `gnulib' repository.
* Update texinfo.texwl2010-12-312-463/+644
| | | | * doc/texinfo.tex: Update von `texinfo' repository.
* Call texi2dvi with correct makeinfo binary.wl2010-12-303-5/+12
| | | | * doc/Makefile.in (.texinfo.dvi, .texinfo.pdf): Use $(MAKEINFO).
* Documentation updates.wl2010-12-304-17/+14
| | | | * NEWS, PROBLEMS: Update.
* * groff_mm.man: Fix indentation.wl2010-12-272-1/+5
|
* Thinko.wl2010-12-261-6/+7
|
* Speed up troff.wl2010-12-262-2/+14
| | | | | | | | | | * src/include/ptable.h (PTABLE): Make hash tables much more sparse by changing `FULL_NUM' from 3 to 1. This increases the allocated memory by about 200kByte (which is nothing today) but assures that there aren't extremely long searches for a free hash slot in case that the hash function doesn't return a free one. Due to the nature of the entries in uniuni.cpp, the used hash function in ptable.cpp is not optimal, but using a sparse array compensates this.
* Update copyright notices; pdfmark.tmac bug-fix.keithmarshall2010-12-234-6/+16
|
* Replace patch from 2010-12-18 with a much faster implementation.wl2010-12-203-262/+75
| | | | | | | | | | | | | | | | | | | * src/roff/troff/node.h (node): Add virtual function `get_break_code'. * src/roff/troff/node.cpp (inter_char_space_node): Remove class completely. (glyph_node::merge_glyph_node): Restore previous version. (break_char_node): Add `prev_break_code' field and update constructors. (node::get_break_code, break_char_node::get_break_code): Implement. (node::add_char): Pass remaining cflags values. (break_char_node::add_self): Use the logic of the now deleted `inter_char_space_node::add_self' function to insert a space node if necessary.
* A new try to not changing srcdir if building in separate builddir.wl2010-12-202-8/+8
| | | | Makefile.in ($GNULIBDIRS): Disable calls to autoconf and friends.
* Speed up access to cflags values.wl2010-12-203-19/+83
| | | | | | | | | | | | | | | | | | | | | | | We now recompute the cflags values for all charinfo objects if `.class' has been called. * src/roff/troff/charinfo.h: Add external references to `class_flag' and `get_flags'. (charinfo): `get_flags' no longer has a return value. (charinfo::overlaps_horizontally, charinfo::overlaps_vertically, charinfo::can_break_before, charinfo::can_break_after, charinfo::can_break_after, charinfo::ends_sentence, charinfo::transparent,, charinfo:ignore_hcodes, charinfo::prohibit_break_before, charinfo::prohibit_break_after, charinfo::inter_char_space): Call global `get_flags' only if necessary. (charinfo::add_to_class): Set `class_flag'. * src/roff/troff/input.cpp (class_flag): New global flag. (charinfo::charinfo): Call `get_flags' member function. (get_flags): New global function which iterates over all entries in the charinfo dictionary. (charinfo::get_flags): Set `flags' directly.
* Protect `.class' against cyclic nesting.wl2010-12-193-10/+43
| | | | | | | * src/roff/troff/charinfo.h (charinfo::contains): Add optional boolean argument. * src/roff/troff/input.cpp (define_class, charinfo::contains): Check for cyclic nesting.
* Improve CJK support with new values for `.cflags'.wl2010-12-188-23/+382
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces three new values to `.cflags': don't break before character: 128 don't break after character: 256 allow inter-character break: 512 They are handled differently if compared to other cflags values: (1) hcode values are completely ignored (2) similar to kern values, and contrary to the other cflags values, troff looks at pairs of characters to decide whether a break gets inserted A yet-to-be-written patch should add inter-character spacing if those flags are active; currently, only zero-width breakpoints are inserted. * src/roff/troff/charinfo.h (charinfo): Change type of `flags' to `int'. Update callers accordingly. New enum values `DONT_BREAK_BEFORE', `DONT_BREAK_AFTER', and `INTER_CHAR_SPACE'. New member functions `prohibit_break_before', `prohibit_break_after', and `inter_char_space'. * src/roff/troff/input.cpp: Updated. * src/roff/troff/node.cpp (inter_char_space_node): New class similar to kern_pair_node, collecting charinfo entities with the abovementioned cflags values. (break_char_type): Add new enum values. (glyph_node::merge_glyph_node): Handle abovementioned cflags values and emit an `inter_char_space_node' if necessary. * tmac/ja.tmac: Use new cflags values. * doc/groff.texinfo, NEWS, man/groff_diff.man: Document new values.
* Missed commit.wl2010-12-181-0/+6
|
* Remove compiler warning.wl2010-12-182-1/+15
| | | | | * src/libs/libgroff/relocate.cpp (msw2posixpath): Remove redundant dereferencing.
* Fix compilation problem.wl2010-12-153-8/+18
| | | | | | | | This issue happens with gcc 4.2.4. * src/roff/troff/node.cpp (node::~node): Move to... * src/roff/troff/node.h: Here. This ensures that the inline member function is publicly visible.
* Remove unused code.wl2010-12-153-7/+8
| | | | | * src/roff/troff/node.cpp, src/roff/troff/node.h (space_node::space_node): Remove unused constructor.
* Use enum to increase readability.wl2010-12-152-7/+20
| | | | | * src/roff/troff/node.cpp (break_char_type): New enum. (break_char_node::add_self, node::add_char): Use it.
* Clean up handling of temporary files directory.keithmarshall2010-12-143-1/+12
|
* Typo.wl2010-12-131-1/+1
|
* Add wide character support to grotty.wl2010-12-1365-36/+24167
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a huge patch, mainly by adding the gnulib infrastructure in a separate directory tree (in `src/libs/gnulib/lib') for its `wcwidth' module. However, the actual changes to native groff source files are just a few lines. * Makefile.comm (INCLUDES): Updated. (LIBGNU): Define. * Makefile.in (NOMAKEDIRS): Updated. (GNULLIBDIRS): Define. (DISTDIRS): Add GNULLIBDIRS. ($LIBDIRS): Depend on GNULLIBDIRS. ($GNULLIBDIRS): New target. * src/libs/libgroff/font.cpp (font::get_width, font::load) [is_unicode]: Use `wcwidth'. * src/roff/troff/Makefile.sub (XLIBS): Add LIBGNU. * src/roff/troff/input.cpp (main): Set LC_CTYPE. * src/devices/grotty/Makefile.sub (XLIBS): Add LIBGNU. * src/devices/grotty/tty.cpp (main): Set LC_CTYPE. * src/libs/gnulib/*: New files. The import was done as follows: . Call gnulib-tool --create-testdir \ --dir=src/libs/gnulib \ wcwidth to get a testbed. . Manually move directories src/libs/gl{lib,m4} to src/libs/{lib,m4}, and do s/gllib/lib/ and s/glm4/m4/ everywhere to `convert' the gnulib testbed to a standard gnulib configuration as maintained by gnulib-tool. . Call gnulib-tool --add-import \ --dir=src/libs/gnulib \ wcwidth to update everything.
* `.class' must not emit empty lines.wl2010-12-132-0/+9
| | | | | * src/roff/troff/input.cpp (define_class): Add missing `skip_line' calls.
* Add Japanese localization.wl2010-12-133-26/+85
| | | | | | | Remove trailing spaces. * tmac/ja.tmac: New file. * tmac/Makefile.sub (NORMALFILES): Updated.
* Implement support for character classes.wl2010-12-139-109/+446
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch uses standard C++ headers, contrary to the rest of groff. Ideally, everything in groff should be updated to do the same. * src/include/font.h (glyph_to_unicode): New function. * src/libs/libgroff/font.cpp (glyph_to_unicode): Implement it. (font::contains, font::get_code): Use it. * src/roff/troff/charinfo.h: Include <vector> and <utility>. (charinfo): New members `ranges' and `nested_classes'. New member functions `get_unicode_code' and `get_flags'. New member functions `add_to_class', `is_class', and `contains'. (charinfo::overlaps_horizontally, charinfo::overlaps_vertically, charinfo::can_break_before, charinfo::can_break_after, charinfo::can_break_after, charinfo::ends_sentence, charinfo::transparent,, charinfo:ignore_hcodes): Use `get_flags', which handles character classes also. * src/roff/troff/input.cpp (char_class_dictionary): New global variable. (define_class): New function. (init_input_requests): Register `class'. (charinfo::get_unicode_code, charinfo::get_flags, charinfo::contains): Implement it. * NEWS, doc/groff.texinfo (Character Classes), man/groff_diff.man, man/groff.man: Document it.
* Minor omission.wl2010-12-132-8/+10
|
* Really fix handling of examples/122.wl2010-12-133-3/+24
| | | | | | | | | * examples/122/README: Renamed to... * examples/122/README.txt: This. * Makefile.sub (all): Add `examples/122/README'. (examples/122/README): New target. (install_data): Fix typo.
* Address potential temporary file security vulnerabilities.keithmarshall2010-12-023-12/+60
|
* [grohtml]: Improve texinfo documentation.wl2010-11-112-1/+29
| | | | | * doc/groff.texinfo (grohtml): Insert man page description, slightly extended.
* Fix crash in tbl with option `nospaces'.wl2010-11-112-1/+11
| | | | | | | | Reported by Louis Guillaume <louis@zabrico.com>. * src/libs/libgroff/string.cpp (string::remove_spaces): If input data consists of spaces only and thus reduces to nothing, set `sz' to 0.
* [mdoc]: Complete previous patch and document OpenBSD releases.wl2010-11-023-5/+77
| | | | | | | | | | | | | * tmac/doc-common (doc-operating-system-NetBSD): Add versions 5.0, 5.0.1, and 5.0.2. (doc-operating-system-OpenBSD-*): New strings. (doc-operating-system-FreeBSD-*): Add version 8.1. (doc-operating-system-DragonFly-*): Add versions 2.2, 2.4, 2.6, and 2.8. (Os): Handle DragonFly and OpenBSD. * tmac/groff_mdoc.man: Document OpenBSD releases. Add DragonFly release 2.8.
* [mdoc]: Improve man page.wl2010-11-022-12/+22
| | | | | | * tmac/groff_tmac.man: Fix prologue macro order. Update NetBSD, FreeBSD, and DragonflyBSD version numbers. Other minor layout improvements.
* [grohtml] Improve man page.wl2010-11-022-1/+28
| | | | | * src/devices/grohtml/grohtml.man: Document two-pass handling of input data.
* o Complete overhaul of refer macros and documentationPTPi2010-10-0321-1932/+2715
| | | | | o Inclusion of Tadziu Hoffman's postscript code for underlining o Doc fixes
* [groff] Don't use prefix for preconv.wl2010-09-192-4/+11
| | | | | | Reported by Dorai Sitaram <ds26gte@yahoo.com> * src/roff/groff/groff.cpp (main): Fix it.
* Fix spelling error.wl2010-09-191-2/+2
| | | | From Heinz-Jürgen.
* Added missing $AUTHOR_FAM string to _FAMILY.PTPi2010-09-051-1/+1
|
* Updated HTMLDOCFILES list.PTPi2010-08-241-1/+4
|
* Trivial fix to new docs.PTPi2010-08-212-2/+2
|
* o Changes to COVER and DOCCOVER for greater flexibility in placementPTPi2010-08-184-67/+214
| | | | | | | | | of elements o Improved handling of MISC info on cover pages for greater style flexibility o Added _FAMILY, _FONT, _SIZE and _COLOR control macros for CODE
* Complete overhaul of documentation; added new files.PTPi2010-08-1822-0/+32416
|
* Complete doc overhaul; removed old filesPTPi2010-08-1820-31421/+0
|
* * doc/groff.texinfo, man/groff.man: Document `!' operator better.wl2010-07-283-2/+40
|
* Typo.wl2010-07-171-2/+2
| | | | Found by Krzysztof Zelechowski <giecrilj@stegny.2a.pl>
* * src/roff/troff/node.cpp (make_node): Adding missing `%'.wl2010-06-282-1/+7
| | | | | Reported in http://lists.gnu.org/archive/html/bug-groff/2010-06/msg00022.html
* * m.tmac (misc@pop-nr): Fix assignment.wl2010-06-242-3/+9
| | | | | Reported as http://lists.gnu.org/archive/html/groff/2010-06/msg00096.html
* * m.tmac (\*[BU]): Always define.wl2010-06-052-4/+9
|
* Improve compatibility.wl2010-06-052-2/+12
| | | | | * m.tmac (}b, }f, }p): Define aliases for orthogonality with the already available }t, }e, and }o for page headers.