summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Remove a bunch of useless assignments,Ingo Schwarze2011-10-166-19/+15
| | | | | | | and assert that print_bvspace cannot be called on NULL pointers. No change in behaviour, none of these were bugs, but the code becomes easier to understand. Based on a clang report posted by joerg@; ok kristaps@.
* Always print <table> column widths in -T[x]html;Ingo Schwarze2011-10-092-72/+34
| | | | | if desired, they can be overridden in the CSS file. Suggested by kristaps@, and i always like to simplify code.
* A bit more precision and nicer wording in the descriptionsIngo Schwarze2011-10-091-7/+20
| | | | of -Ofragment and -Tman; using input from jmc@ and kristaps@.
* Make apropos results-gathering able to error out and clean up beforeKristaps Dzonsons2011-10-091-14/+16
| | | | making the utility exit non-zero.
* Remove some unnecessary variables and note that mchars_alloc never returnsKristaps Dzonsons2011-10-091-25/+7
| | | | NULL.
* Use a binary tree (for now, unbalanced) for deduping the records in theKristaps Dzonsons2011-10-091-5/+31
| | | | | | results array. This is much faster than the previous method, a linear search, at a small cost. Note that array offsets are used instead of storing the res pointer because we may realloc the results vector.
* The documented flags in mandocdb (-u, -d) were switched. Fix this.Kristaps Dzonsons2011-10-091-2/+2
|
* Critical fix in the new -Tman lookaside buffer code. Gah..VERSION.1.12.0Kristaps Dzonsons2011-10-081-1/+2
|
* Note volatility of apropos and cut out old news update.Kristaps Dzonsons2011-10-081-15/+3
|
* Tweak Makefile and add config.h to -Tman to allow cross-compiling onKristaps Dzonsons2011-10-082-4/+17
| | | | Windows (via MingW).
* Use `Mt' instead of `Aq' for email address.Kristaps Dzonsons2011-10-081-1/+2
|
* Get ready for version. I'm bumping the minor release to 1.12 becauseKristaps Dzonsons2011-10-082-4/+6
| | | | | this involves both a major functionality addition (-Tman), a new utility (apropos), and both apropos and mandocdb being built by default.
* Use mandoc_realloc() in apropos, as we're linking to libmandoc.a.Kristaps Dzonsons2011-10-081-4/+1
|
* Implement a basic -Tman `Rv', like `Ex'.Kristaps Dzonsons2011-10-081-2/+5
|
* Tidy up -Tman output. This has NO functional change: (1) introduced aKristaps Dzonsons2011-10-081-107/+175
| | | | | | | 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.
* Lift hard-coded limit of results.Kristaps Dzonsons2011-10-071-5/+7
|
* Clean up file a bit: remove errx and err function pointers from theKristaps Dzonsons2011-10-071-117/+97
| | | | | | 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.
* Make apropos and mandocdb build by default.Kristaps Dzonsons2011-10-062-7/+8
|
* Add more version notes to www.Kristaps Dzonsons2011-10-061-12/+27
|
* Nix end-of-line whitespace.Kristaps Dzonsons2011-10-061-1/+1
|
* Import apropos from mandoc-tools after inlining all source filesKristaps Dzonsons2011-10-063-1/+879
| | | | | | | (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.
* If -Tman is specified and input is -man, echo the preprocessed (`so'Kristaps Dzonsons2011-10-069-20/+141
| | | | | | | | | | | | | | 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.
* Add -Ofragment mode to release notes.Kristaps Dzonsons2011-10-051-3/+4
|
* Add the -Ofragment option to -T[]x]html. This accomodates for embeddingKristaps Dzonsons2011-10-056-39/+53
| | | | | manual output in existing HTML or XHTML documents, e.g., when invoking mandoc from an SSI or CGI.
* Break schwarze@'s release notes into sections. Ok schwarze@.Kristaps Dzonsons2011-10-021-11/+17
|
* Make -T[x]html suppress output with \& (and similar zwsp points). ThisKristaps Dzonsons2011-10-021-6/+6
| | | | | fixes lynx's rendering of manuals with the \&, which were rendering as &#8203; in the text. Reported by Paul de Weerd, thanks!
* implement .Ap .Bd .Bo .Bq .D1 .Ic .Lp .Oo .Pf .Po .Ss .Sx .Sy .br .spIngo Schwarze2011-09-302-40/+134
| | | | | | | | 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
* list the work done during s2k11Ingo Schwarze2011-09-271-0/+15
|
* even though .Bl is not callable, groff complains when it appearsIngo Schwarze2011-09-271-1/+1
| | | | | unescaped on a macro line, so lets just escape it; noticed by jmc@
* Reorganize part of the content:Ingo Schwarze2011-09-263-1067/+912
| | | | | | | | | | | | | 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@
* restore alphabetical order for the -Toutput list, and use a widthIngo Schwarze2011-09-261-33/+33
| | | | | specifier that makes it look nicer; from jmc@, ok kristaps@
* typos found by jmc@Ingo Schwarze2011-09-251-3/+4
|
* As noticed by kristaps@, when breaking an overflowing line,Ingo Schwarze2011-09-212-9/+5
| | | | | | | 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.
* sync to groff: support .Lb -libdwarf, update .Lb -libelfIngo Schwarze2011-09-201-1/+2
| | | | after Werner Lemberg committed a patch by Joseph Koshy
* Major rewrite of the horizontal spacing of tablesIngo Schwarze2011-09-202-136/+110
| | | | | to work both with and without frames and rulers. ok kristaps@
* add a MACRO OVERVIEW section, similar to the one in mdoc(7);Ingo Schwarze2011-09-201-0/+39
| | | | writing this for man(7), too, was suggested by kristaps@
* Using user-defined macros, surprisingly, it is possibleIngo Schwarze2011-09-202-1/+5
| | | | | | | 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).
* do not assign pointers to literal stringsIngo Schwarze2011-09-201-2/+2
| | | | | to variables that might be changed; from kristaps@
* When advancing the left margin, .RS also needs to reset the right marginIngo Schwarze2011-09-201-1/+2
| | | | | | 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).
* Sync print_mdoc_head to print_man_head;Ingo Schwarze2011-09-202-19/+26
| | | | | | 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 <wiz at NetBSD>, thanks.
* Remove the terminal frontend flag TERMP_NOLPAD.Ingo Schwarze2011-09-194-69/+54
| | | | | | | | | | | | | | | | | 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@
* Breaking the line at a hyphen is only allowed if the hyphenIngo Schwarze2011-09-191-9/+2
| | | | | is both preceded and followed by an alphabetic character. ok kristaps@
* Fix another regression introduced in 1.11.7:Ingo Schwarze2011-09-181-2/+13
| | | | | | | | | | | | | | | | | 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@
* fix a regression introduced in 1.11.7:Ingo Schwarze2011-09-181-1/+4
| | | | | even a breakable hyphen may be bold or underlined ok kristaps@
* Support nesting of indented blocks.Ingo Schwarze2011-09-181-34/+28
| | | | | | | | 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 :)
* two issues were reported againIngo Schwarze2011-09-181-0/+5
|
* forgotten Copyright bumps; no code changeIngo Schwarze2011-09-1820-20/+20
| | | | found while syncing to OpenBSD
* Add a MACRO OVERVIEW, listing all macros ordered by purpose,Ingo Schwarze2011-09-181-0/+124
| | | | | | | 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@
* Initial, incomplete support for -TmanIngo Schwarze2011-09-175-0/+456
| | | | | | | | 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@
* fix an obvious typo: sz was used uninitializedIngo Schwarze2011-09-171-1/+1
| | | | found while merging to OpenBSD