From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp-1.sys.kth.se (smtp-1.sys.kth.se [130.237.32.175]) by krisdoz.my.domain (8.14.3/8.14.3) with ESMTP id p98KNMCH011040 for ; Sat, 8 Oct 2011 16:23:23 -0400 (EDT) Received: from mailscan-1.sys.kth.se (mailscan-1.sys.kth.se [130.237.32.91]) by smtp-1.sys.kth.se (Postfix) with ESMTP id 25ED31563B3 for ; Sat, 8 Oct 2011 22:23:17 +0200 (CEST) X-Virus-Scanned: by amavisd-new at kth.se Received: from smtp-1.sys.kth.se ([130.237.32.175]) by mailscan-1.sys.kth.se (mailscan-1.sys.kth.se [130.237.32.91]) (amavisd-new, port 10024) with LMTP id q3eV6qwEFoOm for ; Sat, 8 Oct 2011 22:23:14 +0200 (CEST) X-KTH-Auth: kristaps [83.250.3.9] X-KTH-mail-from: kristaps@bsd.lv X-KTH-rcpt-to: discuss@mdocml.bsd.lv Received: from macky.local (c83-250-3-9.bredband.comhem.se [83.250.3.9]) by smtp-1.sys.kth.se (Postfix) with ESMTP id E6446154136 for ; Sat, 8 Oct 2011 22:23:12 +0200 (CEST) Message-ID: <4E90B130.3080008@bsd.lv> Date: Sat, 08 Oct 2011 22:23:12 +0200 From: Kristaps Dzonsons User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.23) Gecko/20110920 Thunderbird/3.1.15 X-Mailinglist: mdocml-discuss Reply-To: discuss@mdocml.bsd.lv MIME-Version: 1.0 To: discuss@mdocml.bsd.lv Subject: mdocml version 1.12.0 available Content-Type: multipart/mixed; boundary="------------010200030307070001050208" This is a multi-part message in MIME format. --------------010200030307070001050208 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hello, I'm pleased to announce mdocml 1.12.0, now at http://mdocml.bsd.lv/. Among many output improvements, this release features -Tman, allowing distribution of -man UNIX manuals for legacy systems; significant upgrades to the reference manual pages; and an experimental apropos(1) working with mandocdb(8) (imported from mandoc-tools for in-tree work). For a full list of changes, see the attached ChangeLog. An abbreviated list of changes is on the NEWS section of the web-site. As usual, sources are at http://mdocml.bsd.lv/snapshots/mdocml.tar.gz. Binaries are at http://mdocml.bsd.lv/binaries/. Thanks, Kristaps --------------010200030307070001050208 Content-Type: text/plain; x-mac-type="0"; x-mac-creator="0"; name="ChangeLog" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="ChangeLog" 2011-10-08 11:42 kristaps * read.c: Critical fix in the new -Tman lookaside buffer code. Gah.. 2011-10-08 09:01 kristaps * index.sgml: Note volatility of apropos and cut out old news update. 2011-10-08 08:47 kristaps * Makefile, mdoc_man.c: Tweak Makefile and add config.h to -Tman to allow cross-compiling on Windows (via MingW). 2011-10-08 08:24 kristaps * apropos.1: Use `Mt' instead of `Aq' for email address. 2011-10-08 08:21 kristaps * Makefile, index.sgml: Get ready for version. I'm bumping the minor release to 1.12 because this involves both a major functionality addition (-Tman), a new utility (apropos), and both apropos and mandocdb being built by default. 2011-10-08 08:20 kristaps * apropos.c: Use mandoc_realloc() in apropos, as we're linking to libmandoc.a. 2011-10-08 07:37 kristaps * mdoc_man.c: Implement a basic -Tman `Rv', like `Ex'. 2011-10-08 05:58 kristaps * mdoc_man.c: Tidy up -Tman output. This has NO functional change: (1) introduced a state struct instead of using global statics; (2) documented throughout the file; (3) fixed a situation of reaching past the end of our buffer for zero-length strings; (4) alpha-ordered the functions. (1) and (3) ok schwarze@. (2) and (4) are purely style and documentation. 2011-10-07 09:29 kristaps * apropos.c: Lift hard-coded limit of results. 2011-10-07 09:22 kristaps * apropos.c: Clean up file a bit: remove errx and err function pointers from the state struct (directly using fprintf and perror to do this); add some in-line documentation; remove state init and destroy directly to the main function. 2011-10-06 19:15 kristaps * Makefile, index.sgml: Make apropos and mandocdb build by default. 2011-10-06 19:06 kristaps * index.sgml: Add more version notes to www. 2011-10-06 19:05 kristaps * mandoc.1: Nix end-of-line whitespace. 2011-10-06 19:00 kristaps * Makefile, apropos.1, apropos.c: Import apropos from mandoc-tools after inlining all source files (originally including extern.h, state.c, and sort.c). The apropos utility interfaces with the databases of mandocdb to provide semantic searching capabilities. It Works For Me, but will need lots of cleanup in the coming months. 2011-10-06 18:29 kristaps * main.c, main.h, man.c, man.h, mandoc.1, mandoc.3, mandoc.h, mdoc_man.c, read.c: If -Tman is specified and input is -man, echo the preprocessed (`so' replaced by file) input. This replaces earlier behaviour of doing nothing, which I found unexpected (mandoc should always output). This requires a buffer in read.c that saves the input lines before being parsed, with a special hook if `so' is invoked. This buffer is just flushed to output if -mman is the input. While mucking around doing this, I also alpha-ordered the mandoc.h functions. Ok schwarze@, with no screaming when the polished patch was published. 2011-10-05 17:43 kristaps * index.sgml: Add -Ofragment mode to release notes. 2011-10-05 17:35 kristaps * example.style.css, html.c, html.h, man_html.c, mandoc.1, mdoc_html.c: Add the -Ofragment option to -T[]x]html. This accomodates for embedding manual output in existing HTML or XHTML documents, e.g., when invoking mandoc from an SSI or CGI. 2011-10-02 14:37 kristaps * index.sgml: Break schwarze@'s release notes into sections. Ok schwarze@. 2011-10-02 06:02 kristaps * chars.in: Make -T[x]html suppress output with \& (and similar zwsp points). This fixes lynx's rendering of manuals with the \&, which were rendering as ​ in the text. Reported by Paul de Weerd, thanks! 2011-09-29 20:13 schwarze * mdoc.c, mdoc_man.c: implement .Ap .Bd .Bo .Bq .D1 .Ic .Lp .Oo .Pf .Po .Ss .Sx .Sy .br .sp implement .Bl -bullet add more information to the .TH line escape dots at the beginnings of lines add trailing newline character at the end of the file do not misinterpret the ROOT block as .Ap 2011-09-27 18:59 schwarze * index.sgml: list the work done during s2k11 2011-09-27 17:49 schwarze * mdoc.7: even though .Bl is not callable, groff complains when it appears unescaped on a macro line, so lets just escape it; noticed by jmc@ 2011-09-26 19:07 schwarze * man.7, mdoc.7, roff.7: Reorganize part of the content: 1) Move the LANGUAGE SYNTAX from mdoc(7) and man(7) to roff(7), it's common to both and it's actually roff syntax. 2) Move the MACRO SYNTAX down to the bottom, such that the less technical parts MANUAL STRUCTURE and MACRO OVERVIEW get to the top. Getting everything to again fit together after the reshuffling required various adjustments; also adjust and improve the DESCRIPTIONS while there. feedback and "go ahead" jmc@ kristaps@ 2011-09-26 16:47 schwarze * mandoc.1: restore alphabetical order for the -Toutput list, and use a width specifier that makes it look nicer; from jmc@, ok kristaps@ 2011-09-25 14:37 schwarze * eqn.7: typos found by jmc@ 2011-09-21 05:57 schwarze * man_term.c, term.c: As noticed by kristaps@, when breaking an overflowing line, forget about pending whitespace (vbl), or the next line would be misaligned and potentially too long; but i'm fixing this in a simpler way than he proposed. Also remove the kludges in .HP that compensated for this bug. 2011-09-20 19:36 schwarze * lib.in: sync to groff: support .Lb -libdwarf, update .Lb -libelf after Werner Lemberg committed a patch by Joseph Koshy 2011-09-20 19:05 schwarze * out.c, tbl_term.c: Major rewrite of the horizontal spacing of tables to work both with and without frames and rulers. ok kristaps@ 2011-09-20 18:46 schwarze * man.7: add a MACRO OVERVIEW section, similar to the one in mdoc(7); writing this for man(7), too, was suggested by kristaps@ 2011-09-20 10:20 schwarze * TODO, man_term.c: Using user-defined macros, surprisingly, it is possible to have *next*-line head arguments on the *same* input line. So .TP must not assume that a head argument with a matching input line number is a same-line argument (and access a NULL pointer). Bug found and fix tested by kristaps@ with groff_hdtbl(7). 2011-09-20 09:47 schwarze * mdoc_man.c: do not assign pointers to literal strings to variables that might be changed; from kristaps@ 2011-09-20 09:13 schwarze * man_term.c: When advancing the left margin, .RS also needs to reset the right margin to the default and check that the left does not outgrow the right one. Otherwise, the (rmargin >= offset) assertion fails in term_flushln(). Bug found and fix tested by kristaps@ with NetBSD slapo-retcode(5). 2011-09-20 05:02 schwarze * man_term.c, mdoc_term.c: Sync print_mdoc_head to print_man_head; this was forgotten after man_term.c rev. 1.25 on March 2, 2010. The benefit is a sane page header line when .Dt is very long. Reminded by Thomas Klausner , thanks. 2011-09-19 18:36 schwarze * man_term.c, mdoc_term.c, term.c, term.h: Remove the terminal frontend flag TERMP_NOLPAD. In columnated contexts (.Bl -column, .Bl -tag, .IP, .TP, .HP etc.), do not pad after writing a column. Instead, always pad before writing content. In itself, this change avoids: - writing trailing whitespace in some situations - with .fi/.nf in .HP, breaking lines that were already padded It allows several bugfixes included in this patch: - Do not count backspace as a character with positive width. - Set up proper indentation when encountering .fi/.nf in .HP. - Adjust the .HP indentation width to what groff does. - Never unlimit the right margin unless in the final column. ok kristaps@ 2011-09-19 04:34 schwarze * roff.c: Breaking the line at a hyphen is only allowed if the hyphen is both preceded and followed by an alphabetic character. ok kristaps@ 2011-09-18 19:51 schwarze * roff.c: Fix another regression introduced in 1.11.7: If a string is defined in terms of itself, the REPARSE_LIMIT in read.c used to break the cycle. This no longer works since all the work is now done in the function roff_res(), looping indefinitely. Make this loop finite by arbitrarily limiting the number of times one string may be expanded; when that limit is reached, leave the remaining string references unexpanded. This changes behaviour compared to 1.11.5, where the whole line would have been dropped. The new behaviour is better because it loses less information. We don't want to imitate groff-1.20.1 behaviour anyway because groff aborts parsing of the whole file. ok kristaps@ 2011-09-18 17:18 schwarze * term.c: fix a regression introduced in 1.11.7: even a breakable hyphen may be bold or underlined ok kristaps@ 2011-09-18 17:08 schwarze * man_term.c: Support nesting of indented blocks. This patch was originally written in July 2011 by kristaps@, i promptly committed it to OpenBSD, and then it was forgotten. Now i rediscovered it when merging 1.11.7 to OpenBSD. ok kristaps@ (on his own patch :) 2011-09-18 12:43 schwarze * TODO: two issues were reported again 2011-09-18 10:14 schwarze * chars.c, chars.in, html.h, libman.h, libmdoc.h, main.h, man_macro.c, mandoc.1, mandoc.c, mdoc_argv.c, mdoc_macro.c, roff.c, tbl_html.c, tbl_layout.c, tbl_opts.c, term.c, term.h, term_ascii.c, term_ps.c, tree.c: forgotten Copyright bumps; no code change found while syncing to OpenBSD 2011-09-18 03:57 schwarze * mdoc.7: Add a MACRO OVERVIEW, listing all macros ordered by purpose, each with a one-line discription. Use this when wondering which macro fits best for your particular use case, and whether there are alternatives. feedback ond ok jmc@, ok kristaps@ 2011-09-17 11:00 schwarze * Makefile, main.c, main.h, mandoc.1, mdoc_man.c: Initial, incomplete support for -Tman to convert mdoc(7) documents to the man(7) language. This is work in progress and will be developed in tree. It does already handle the cat(1) manual, but will hardly handle all your fancy manuals yet. go ahead kristaps@ jmc@ millert@ deraadt@ 2011-09-17 09:54 schwarze * mandocdb.c: fix an obvious typo: sz was used uninitialized found while merging to OpenBSD 2011-09-16 16:44 schwarze * mdoc.7, st.in: support ".St -iso8601"; committing on behalf of jmc@ 2011-09-06 13:56 kristaps * man.7: It's unknown whether `SH' and `SS' closing out `nf' literalism is portable, so document it in COMPATIBILITY. 2011-09-06 13:53 kristaps * man_validate.c: Revert removal of tab warning, suggested by schwarze@. 2011-09-04 05:58 kristaps * man_validate.c: Remove check for tab. man(7) says tab is Ok. 2011-09-04 05:49 kristaps * man_validate.c: Teach -man that a literal context should be closed by SS/SH in the backend (the front-end already accomodated for this). Found indirectly from a question by Brad Smith. 2011-09-02 20:29 kristaps * tbl.7, tbl_layout.c: Fix handling of font modifiers in tables. Noted by Brad Smith. --------------010200030307070001050208-- -- To unsubscribe send an email to discuss+unsubscribe@mdocml.bsd.lv