summaryrefslogtreecommitdiffstats
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Have preconv install with mandoc.Kristaps Dzonsons2011-05-261-2/+2
|
* preconv is now on encoding-recognition parity with groff. This lastKristaps Dzonsons2011-05-261-1/+1
| | | | | | | | | commit adds parsing of "File Variables" in the first two lines in order to grok the encoding. This completes groff's recognition sequence (-e, BOM, File variables, -D, default). I've also cleaned up the manual to indicate this and for some general readability. preconv is now compiled by default in the Makefile.
* Significantly improve preconv. Allow it to recode UTF-8 characters intoKristaps Dzonsons2011-05-261-0/+7
| | | | | | | | | | | | | the \[uNNNN] strings (taking into account big-endian archs). Also allow it to determine from the BOM whether it's a UTF-8 file. Also add the initial manual. This has been tested over a random selection of UTF-8 documents, as % preconv -e utf-8 foo.1 | ./mandoc -Tlocale where -Tlocale is allowed (-DUSE_WCHAR). Note that we're still missing the "type" indicator that preconv accepts.
* It's annoying that we don't have preconv, so throw together a quickKristaps Dzonsons2011-05-261-3/+16
| | | | | | | | version and let it grow in-tree. Right now, this only supports the Latin-1 and US-ASCII encoding. I'll do UTF-8 next. It's call-compatible with GNU's preconv although I don't do fancy stuff like BOM or header check. This will come. I used read.c's file-grokking code.
* Most important move in getting predefined strings entirely containedKristaps Dzonsons2011-05-241-0/+2
| | | | | | | | | | | within roff.c. These are now grokked from a table in the roff allocation routine and rest in the newly-created predefs.in (for consistency with chars.in). This is a first implementation and will likely be optimised along with the ds/de lookup table itself. This allows mandoc-defined predefined strings to be correctly removed or whatnot; earlier they couldn't. What will follow is the stripping-away of all predefined-string crud in the other parts of the system.
* It seems that __STDC_ISO_10646__ isn't defined even where it can beKristaps Dzonsons2011-05-191-3/+5
| | | | | | | | defined, so remove the check for it and leave it up to people compiling the software (DOWNSTREAM) to take care of this. This will eventually need to be fixed up with a proper non-10646 converter and so on, but this is a simple start. While here, strengthen then language in the Makefile to this effect.
* Add TODO entry for standalone `.' in tbl pages (pointed out by YuriKristaps Dzonsons2011-05-181-1/+1
| | | | Pankov). Also fix typo in Makefile, same reporter. Thanks!
* Locale support. I'm checking this in to clean up fall-out in-tree, butKristaps Dzonsons2011-05-171-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | it looks pretty good. Basically, the -Tlocale option propogates into term_ascii.c, where we set locale-specific console call-backs IFF (1) setlocale() works; (2) locale support is compiled in (see Makefile for -DUSE_WCHAR); (3) the internal structure of wchar_t maps directly to Unicode codepoints as defined by __STDC_ISO_10646__; and (4) the console supports multi-byte characters. To date, this configuration only supports GNU/Linux. OpenBSD doesn't export __STDC_ISO_10646__ although I'm told by stsp@openbsd.org that it should (it has the correct map). Apparently FreeBSD is the same way. NetBSD? Don't know. Apple also supports this, but doesn't define the macro. Special-casing! Benchmark: -Tlocale incurs less than 0.2 factor overhead when run through several thousand manuals when UTF8 output is enabled. Native mode (whether directly -Tascii or through no locale or whatever) is UNCHANGED: the function callbacks are the same as before. Note. If the underlying system does NOT support STDC_ISO_10646, there is a "slow" version possible with iconv or other means of flipping from a Unicode codepoint to a wchar_t.
* Ooops, forgot to install makewhatis manual.Kristaps Dzonsons2011-05-131-1/+6
|
* Version up! 1.11.2. Let's go...Kristaps Dzonsons2011-05-131-2/+2
|
* Rename mandoc-db to makewhatis. On the suggestion of schwarze@; I agree.Kristaps Dzonsons2011-05-131-11/+11
| | | | Add initial version notes.
* Don't let Linux-isms creep into Makefile.Kristaps Dzonsons2011-05-121-1/+1
|
* Was installing libmandoc.a without mandoc.h...Kristaps Dzonsons2011-04-301-0/+2
|
* Move "chars" interface out of out.h and into mandoc.h. This doesn'tKristaps Dzonsons2011-04-291-5/+4
| | | | | | | | | | change any code but for renaming functions and types to be consistent with other mandoc.h stuff. The reason for moving into libmandoc is that the rendering of special characters is part of mandoc itself---not an external part. From mandoc(1)'s perspective, this changes nothing, but for other utilities, it's important to have these part of libmandoc. Note this isn't documented [yet] in mandoc.3 because there are some parts I'd like to change around beforehand.
* Make sure to create LIBDIR. From a patch by Thomas Klausner, thanks!Kristaps Dzonsons2011-04-051-0/+1
|
* Snafu: forgetting to tar up critical files. Pointed out by Yuri Pankov.VERSION.1.11.1Kristaps Dzonsons2011-04-041-0/+4
|
* Version up to 1.11.1: here we go!Kristaps Dzonsons2011-04-041-2/+2
|
* Roll back Linux-ism that crept into Makefile.Kristaps Dzonsons2011-04-041-1/+1
|
* Fix possible segfaults in `Lk' -T[x]html handler, which made someKristaps Dzonsons2011-04-041-1/+1
| | | | | assumptions about its children. Also remove superfluous reassignment to local variable.
* Have mandoc-db use config.h for strlcat(). Then create the btreeKristaps Dzonsons2011-04-031-3/+3
| | | | | | database from a directory, instead of a path. This is because it'll also output an index of files to that same directory. Add documentation to the local variable names, too.
* Add an initial keyword-indexer as an alternative front-end to libmandoc.a.Kristaps Dzonsons2011-04-021-0/+14
| | | | | | | | | | | | | | This will be used during BSDCan-2011, paired with a web front-end, as a demonstrandum of semantic annotations (mdoc) versus those of man. This isn't linked to the build in any way but for cleaning created files. This code has been heavily tested under valgrind and is known to work on GNU/Linux (needs -ldb library), all BSDs, and Mac OSX. Please don't repost this, for the time being, as I don't want to spoil the fun for the conference. This utility is still constantly under development (e.g., it will also generate a recno database of filenames and `Nd' output so that paths needn't be hard-coded) but is mature enough to warrant being checked in.
* Add lint target to Makefile.Kristaps Dzonsons2011-03-291-16/+73
|
* Put mandocerrs and mandoclevels arrays into libmandoc with accessorsKristaps Dzonsons2011-03-281-1/+1
| | | | mparse_strerror() and mparse_strlevel().
* Merge man_args() into man_macro.c, the only place where it's called, andKristaps Dzonsons2011-03-231-2/+0
| | | | | | make its return value boolean (we don't care about QWORD). We can move it into mdoc_macro.c because it's basically just a wrapper around mandoc_getarg(). Then blow away man_argv.c, which is left empty.
* Fix "libman" dependence.Kristaps Dzonsons2011-03-231-1/+1
|
* Have the default include/lib install path end with "mandoc" to preventKristaps Dzonsons2011-03-221-4/+4
| | | | clobbering other stuff that may have the same name.
* Note the TODO file on the website. Also install index.html (oops).Kristaps Dzonsons2011-03-221-2/+2
|
* Step 5: re-write Makefile and relax. This restructures the Makefile toKristaps Dzonsons2011-03-221-315/+277
| | | | | | | | do actual dependency checking for headers and to build everything nicer (www properly depends on mandoc, etc.). Note that the ChangeLog isn't being built any more: if people are interested, they can visit the source-changes mailing list archive.
* Step 4: merge chars.h into out.h. The functions in this file areKristaps Dzonsons2011-03-221-4/+4
| | | | | necessary to all [real] front-ends, so stop pretending it's special. While here, add some documentation to the variable types.
* Step 3: consolidate manuals. The parse functions in mdoc.h, roff.h, andKristaps Dzonsons2011-03-221-17/+17
| | | | | | | | man.h are now part of libmandoc.h, so remove these from their respective manuals (they're no longer public-facing and we don't need a libmandoc.3 (yet?)). Before that, move the juicy data (parse tree syntax) into new-born mandoc.3. Peck around in Makefile and index.sgml to reflect reality.
* Step 2: blow away roff.h, as all of its functions have been moved intoKristaps Dzonsons2011-03-221-3/+3
| | | | libmandoc.h and there's nothing left.
* Split the document parsing sequence out of main.c and into read.c,Kristaps Dzonsons2011-03-201-3/+3
| | | | | | | | putting the interface into mandoc.h. This effectively makes the function of main.c be command-line handling, invoking the parser, and sending its output to the output handler. The sequence of parsing (pfile(), pdesc(), etc.) has changed very little but for clean-up of some state variables (curp->fd, etc.).
* Bumped internal version. There will be no formal release with this: itKristaps Dzonsons2011-03-201-2/+2
| | | | | precedes some major structural changes for easier roll-back in the case of errors or whatnot.
* Kill off mdoc_strings.c, which is now empty. Byeeeeeeeee!Kristaps Dzonsons2011-03-171-5/+3
|
* Allow compilation with pcc, which has interesting/broken handling of -WKristaps Dzonsons2011-02-241-4/+4
| | | | with missing function prototypes. Ok joerg@.
* Add stub for eqn.7 manual and flip it on. Also note COMPATIBILITY issueKristaps Dzonsons2011-02-091-8/+9
| | | | of how we considered .TS (etc.) macros and how the preprocessors do.
* Add initial EQN support to mandoc. This parses, then throws away, dataKristaps Dzonsons2011-02-061-3/+3
| | | | | | | | between EQ and EN roff blocks. EQN is different from TBL in that data after .EQ is unilaterally considered an equation until an .EN. Thus, there's no need to jump through hoops in having table spans and so on. This is ONLY the parse code framework in libroff. EQN is not yet passed into the backends.
* Meh, 2010->2011. Changed the live index.html file so as not to confuseKristaps Dzonsons2011-01-071-1/+1
| | | | people (although the tagged 1.10.9 release will show 2010).
* Version bits. Here we go...Kristaps Dzonsons2011-01-071-2/+2
|
* Moved table stuff from roff.7 into the new tbl.7 (suggested by Jason McIntyre).Kristaps Dzonsons2011-01-041-8/+9
| | | | Added cross-links to tbl.7 from other manuals.
* Add skeleton for -T[x]html tbl stuff. Also start to put in some bits aboutKristaps Dzonsons2011-01-041-3/+3
| | | | the up-coming version, although we're not quite there yet.
* Turn on -Tascii tbl printing. The output still has some issues---I'mKristaps Dzonsons2011-01-021-3/+4
| | | | | | not sure whether it's in the header calculation or term.c squashing spaces or whatever, but let's get this in for general testing as soon as possible.
* Initial check-in of table data-row processing. For the time being, thisKristaps Dzonsons2010-12-291-3/+3
| | | | | | parses table data then throws it away immediately. It does not yet try to cross-check data rows against layout or anything. This copied more or less completely from tbl.bsd.lv.
* Merge, with considerable changes, tbl.bsd.lv's layout-handling code.Kristaps Dzonsons2010-12-291-3/+3
|
* Adding initial options processing (not hooked into parse yet). This isKristaps Dzonsons2010-12-281-3/+3
| | | | | more or less copied from tbl.bsd.lv and still needs integration with the general mandoc framework, e.g., with error messages.
* Initial tbl framework. Parse point is in libroff, which keeps aKristaps Dzonsons2010-12-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | reference to a current tbl parse and routes ALL text into the tbl parse after stripping reserved words and making block-level pre-processing (e.g., `ig'). This is consistent with an analysis of embedded `TS/TE' in manuals with sprinkled -mdoc, roff, and -man macros. Fact of a parse is exposed to main.c by a return value (ROFF_TBL), which will trigger main.c to add a foreign parsed body to the -mdoc or -man parse stream. This interface isn't in yet, but will follow the parse-text functions in both libraries. I put this login in main.c because I don't want libroff calling directly into libmdoc or libman. As a consequence, a parsed row can be pushed directly into any -mdoc or -man context (put a `Bd -literal -offset indent' into a `TE/TS' block to see why this is necessary). It will then absorb formatting cues in the front-ends. A note on naming. I decided on libroff.h instead of tbl.h because this is purely within the roff layer. Separate tbl implementations will need, then, to interface with libroff. This is "how it should be" because tbl is tightly linked with roff in terms of `ds' and other formatting macros, as well as, of course, special characters and other roffisms.
* Have Makefile build XHTML files too.VERSION.1.10.8Kristaps Dzonsons2010-12-241-3/+7
|
* Apparently the U tag is deprecated, so use a SPAN instead (blah). BumpKristaps Dzonsons2010-12-241-1/+1
| | | | version date for release.
* Added last version notes and bumped version number and date.Kristaps Dzonsons2010-12-231-2/+2
|
* Build xhtml files for www site exemplaria.Kristaps Dzonsons2010-12-221-0/+4
|