From 665ccc57084126888487f5e77562f85fdb53fdfc Mon Sep 17 00:00:00 2001 From: Kristaps Dzonsons Date: Mon, 21 Sep 2009 13:06:13 +0000 Subject: Removed new-born out.{h,c} (not a good idea). Removed if 0 for HTML-mode output (why not). Added option -oxxxx for passing options to output devices. --- Makefile | 30 +++++++----- example.style.css | 40 ---------------- html.c | 136 ++++++++++++++++++++++++++++++++++++++++++++++++------ index.css | 44 ++++++++++++++++++ index.sgml | 4 +- main.c | 20 ++++---- mandoc.1 | 51 +++++++++++++------- out.c | 113 --------------------------------------------- out.h | 28 ----------- style.css | 82 ++++++++++++++++---------------- 10 files changed, 266 insertions(+), 282 deletions(-) delete mode 100644 example.style.css create mode 100644 index.css delete mode 100644 out.c delete mode 100644 out.h diff --git a/Makefile b/Makefile index 4296f683..5848d7c1 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.SUFFIXES: .html .xml .sgml .1.txt .3.txt .7.txt .1 .3 .7 .md5 .tar.gz +.SUFFIXES: .html .xml .sgml .1.txt .3.txt .7.txt .1 .3 .7 .md5 .tar.gz .1.html .3.html .7.html BINDIR = $(PREFIX)/bin INCLUDEDIR = $(PREFIX)/include @@ -36,11 +36,11 @@ MANSRCS = man_macro.c man.c man_hash.c man_validate.c \ man_action.c mandoc.c man_argv.c MAINLNS = main.ln mdoc_term.ln chars.ln term.ln tree.ln \ - compat.ln man_term.ln html.ln out.ln + compat.ln man_term.ln html.ln MAINOBJS = main.o mdoc_term.o chars.o term.o tree.o compat.o \ - man_term.o html.o out.o + man_term.o html.o MAINSRCS = main.c mdoc_term.c chars.c term.c tree.c compat.c \ - man_term.c html.c out.c + man_term.c html.c LLNS = llib-llibmdoc.ln llib-llibman.ln llib-lmandoc.ln LNS = $(MAINLNS) $(MDOCLNS) $(MANLNS) @@ -51,7 +51,9 @@ DATAS = arch.in att.in lib.in msec.in st.in vol.in chars.in HEADS = mdoc.h libmdoc.h man.h libman.h term.h libmandoc.h SGMLS = index.sgml XSLS = ChangeLog.xsl -HTMLS = index.html ChangeLog.html +HTMLS = index.html ChangeLog.html mandoc.1.html mdoc.3.html \ + man.3.html mdoc.7.html man.7.html mandoc_char.7.html \ + manuals.7.html XMLS = ChangeLog.xml STATICS = style.css external.png MD5S = mdocml-$(VERSION).md5 @@ -78,8 +80,6 @@ cleanlint: dist: mdocml-$(VERSION).tar.gz -html: $(HTMLS) - www: all $(HTMLS) $(MD5S) $(TARGZS) $(TEXTS) installwww: www @@ -156,11 +156,8 @@ compat.o: compat.c term.ln: term.c term.h man.h mdoc.h term.o: term.c term.h man.h mdoc.h -html.ln: html.c out.h man.h mdoc.h -html.o: html.c out.h man.h mdoc.h - -out.ln: out.c out.h man.h mdoc.h -out.o: out.c out.h man.h mdoc.h +html.ln: html.c man.h mdoc.h +html.o: html.c man.h mdoc.h tree.ln: tree.c man.h mdoc.h tree.o: tree.c man.h mdoc.h @@ -219,11 +216,20 @@ mandoc: $(MAINOBJS) libmdoc.a libman.a .1.1.txt: ./mandoc -Wall,error -fstrict $< | col -b > $@ +.1.1.html: + ./mandoc -Thtml -ostyle=style.css -Wall,error -fstrict $< > $@ + .3.3.txt: ./mandoc -Wall,error -fstrict $< | col -b > $@ +.3.3.html: + ./mandoc -Thtml -ostyle=style.css -Wall,error -fstrict $< > $@ + .7.7.txt: ./mandoc -Wall,error -fstrict $< | col -b > $@ +.7.7.html: + ./mandoc -Thtml -ostyle=style.css -Wall,error -fstrict $< > $@ + .tar.gz.md5: md5 $< > $@ diff --git a/example.style.css b/example.style.css deleted file mode 100644 index ceb5cc74..00000000 --- a/example.style.css +++ /dev/null @@ -1,40 +0,0 @@ -div.body { } /* Wraps entire body file. */ - -span.sec-head { font-weight: bold; } /* Sections (Sh). */ -div.sec-head { } -div.sec-body { } -div.sec-block { } - -span.ssec-head { font-weight: bold; } /* Sub-sections (Ss). */ -div.ssec-head { } -div.ssec-body { } -div.ssec-block { } - -span.addr { text-decoration: underline; } /* Address (Ad). */ -span.arg { font-style: italic; } /* Command argument (Ar). */ -span.author { } /* Author name (An). */ -span.config { font-weight: bold; } /* Config statement (Cd). */ -span.define { } /* Defines (Dv). */ -span.desc { } /* Nd. After em-dash. */ -span.diag { font-weight: bold; } /* Diagnostic (Bl -diag). */ -span.emph { font-style: italic; } /* Emphasis (Em). */ -span.env { } /* Environment variables (Ev). */ -span.errno { } /* Error string (Er). */ -span.farg { font-style: underline; } /* Function argument (Fa, Fn). */ -span.file { font-style: italic; } /* File (Pa). */ -span.flag { font-weight: bold; } /* Flag (Fl, Cm). */ -span.macro { } /* Macro-ish thing (Fd). */ -span.name { font-weight: bold; } /* Name of utility (Nm). */ -span.opt { } /* Options (Op, Oo/Oc). */ -span.type { font-weight: italic; } /* Variable types (Vt, Ft, Fn). */ -span.unix { } /* Unices (Ux, Ox, Nx, Fx, Bx, Bsx, Dx). */ -span.utility { font-weight: bold; } /* Name of utility (Ex). */ - -a.link-man { } /* Manual links (Xr). */ -a.link-sec { } /* Section links (Sx). */ - -div.lit-block { font-family: monospace; } /* Literal block (D1, Bd -literal, Dl). */ - -table.header { } /* Document header. */ -table.footer { } /* Document footer. */ - diff --git a/html.c b/html.c index 38dc9aae..96aed9f4 100644 --- a/html.c +++ b/html.c @@ -1,4 +1,4 @@ -/* $Id: html.c,v 1.42 2009/09/21 09:32:30 kristaps Exp $ */ +/* $Id: html.c,v 1.43 2009/09/21 13:06:13 kristaps Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons * @@ -27,7 +27,6 @@ #include "chars.h" #include "mdoc.h" #include "man.h" -#include "out.h" #define DOCTYPE "-//W3C//DTD HTML 4.01//EN" #define DTD "http://www.w3.org/TR/html4/strict.dtd" @@ -180,6 +179,10 @@ static void print_text(struct html *, const char *); static void print_res(struct html *, const char *, int); static void print_spec(struct html *, const char *, int); +static int a2width(const char *); +static int a2offs(const char *); +static int a2list(const struct mdoc_node *); + static void mdoc_root_post(MDOC_ARGS); static int mdoc_root_pre(MDOC_ARGS); static int mdoc_tbl_pre(MDOC_ARGS, int); @@ -231,6 +234,7 @@ static int mdoc_xr_pre(MDOC_ARGS); static int mdoc_xx_pre(MDOC_ARGS); #ifdef __linux__ +extern int getsubopt(char **, char * const *, char **); extern size_t strlcpy(char *, const char *, size_t); extern size_t strlcat(char *, const char *, size_t); #endif @@ -399,9 +403,14 @@ html_man(void *arg, const struct man *m) void * -html_alloc(void) +html_alloc(char *outopts) { struct html *h; + char *toks[3], *o, *v; + + toks[0] = "style"; + toks[1] = "base"; + toks[2] = NULL; if (NULL == (h = calloc(1, sizeof(struct html)))) return(NULL); @@ -414,8 +423,20 @@ html_alloc(void) return(NULL); } - /* h->base = xxx; */ - h->style = "style.css"; /* XXX */ + while (*outopts) { + o = outopts; + switch (getsubopt(&outopts, toks, &v)) { + case (0): + h->style = v; + break; + case (1): + h->base = v; + break; + default: + break; + } + } + return(h); } @@ -447,6 +468,93 @@ html_free(void *p) } +static int +a2list(const struct mdoc_node *n) +{ + int i; + + assert(MDOC_BLOCK == n->type && MDOC_Bl == n->tok); + assert(n->args); + + for (i = 0; i < (int)n->args->argc; i++) + switch (n->args->argv[i].arg) { + case (MDOC_Enum): + /* FALLTHROUGH */ + case (MDOC_Dash): + /* FALLTHROUGH */ + case (MDOC_Hyphen): + /* FALLTHROUGH */ + case (MDOC_Bullet): + /* FALLTHROUGH */ + case (MDOC_Tag): + /* FALLTHROUGH */ + case (MDOC_Hang): + /* FALLTHROUGH */ + case (MDOC_Inset): + /* FALLTHROUGH */ + case (MDOC_Diag): + /* FALLTHROUGH */ + case (MDOC_Item): + /* FALLTHROUGH */ + case (MDOC_Column): + /* FALLTHROUGH */ + case (MDOC_Ohang): + return(n->args->argv[i].arg); + default: + break; + } + + abort(); + /* NOTREACHED */ +} + + +static int +a2width(const char *p) +{ + int i, len; + + if (0 == (len = (int)strlen(p))) + return(0); + for (i = 0; i < len - 1; i++) + if ( ! isdigit((u_char)p[i])) + break; + + if (i == len - 1) + if ('n' == p[len - 1] || 'm' == p[len - 1]) + return(atoi(p) + 2); + + return(len + 2); +} + + +static int +a2offs(const char *p) +{ + int len, i; + + if (0 == strcmp(p, "left")) + return(0); + if (0 == strcmp(p, "indent")) + return(INDENT + 1); + if (0 == strcmp(p, "indent-two")) + return((INDENT + 1) * 2); + + if (0 == (len = (int)strlen(p))) + return(0); + + for (i = 0; i < len - 1; i++) + if ( ! isdigit((u_char)p[i])) + break; + + if (i == len - 1) + if ('n' == p[len - 1] || 'm' == p[len - 1]) + return(atoi(p)); + + return(len); +} + + static void print_mdoc(MDOC_ARGS) { @@ -1420,11 +1528,10 @@ mdoc_tbl_pre(MDOC_ARGS, int type) if (MDOC_Width == bl->args->argv[i].arg) { assert(bl->args->argv[i].sz); wp = i; - w = out_a2width(bl->args->argv[i].value[0]); + w = a2width(bl->args->argv[i].value[0]); } else if (MDOC_Offset == bl->args->argv[i].arg) { assert(bl->args->argv[i].sz); - o = out_a2offs - (bl->args->argv[i].value[0], INDENT); + o = a2offs(bl->args->argv[i].value[0]); } else if (MDOC_Compact == bl->args->argv[i].arg) c = 1; @@ -1435,7 +1542,7 @@ mdoc_tbl_pre(MDOC_ARGS, int type) /* Counter... */ ; assert(nn); if (wp >= 0 && i < (int)bl->args[wp].argv->sz) - w = out_a2width(bl->args->argv[wp].value[i]); + w = a2width(bl->args->argv[wp].value[i]); } switch (type) { @@ -1484,7 +1591,7 @@ mdoc_bl_pre(MDOC_ARGS) if (MDOC_BLOCK != n->type) return(1); - if (MDOC_Enum != out_a2list(n)) + if (MDOC_Enum != a2list(n)) return(1); ord = malloc(sizeof(struct ord)); @@ -1506,7 +1613,7 @@ mdoc_bl_post(MDOC_ARGS) if (MDOC_BLOCK != n->type) return; - if (MDOC_Enum != out_a2list(n)) + if (MDOC_Enum != a2list(n)) return; ord = SLIST_FIRST(&h->ords); @@ -1522,9 +1629,9 @@ mdoc_it_pre(MDOC_ARGS) int type; if (MDOC_BLOCK == n->type) - type = out_a2list(n->parent->parent); + type = a2list(n->parent->parent); else - type = out_a2list(n->parent->parent->parent); + type = a2list(n->parent->parent->parent); return(mdoc_tbl_pre(m, n, h, type)); } @@ -1749,8 +1856,7 @@ mdoc_bd_pre(MDOC_ARGS) switch (bl->args->argv[i].arg) { case (MDOC_Offset): assert(bl->args->argv[i].sz); - o = out_a2offs - (bl->args->argv[i].value[0], INDENT); + o = a2offs (bl->args->argv[i].value[0]); break; case (MDOC_Compact): c = 1; diff --git a/index.css b/index.css new file mode 100644 index 00000000..b58ad883 --- /dev/null +++ b/index.css @@ -0,0 +1,44 @@ +body { color: #333333; + font-size: smaller; + font-family: Verdana, Tahoma, Arial, sans-serif; } + +table.frame { max-width: 800px; + padding-left: 10px; } + +table { padding-left: 40px; } + +p { padding-left: 40px; + text-align: justify; } + +h1 { font-weight: bold; + font-size: small; + font-family: Verdana, Tahoma, Arial, sans-serif; } + +h2 { font-weight: bold; + font-size: small; + padding-left: 20px; + margin-bottom: 0px; + font-family: Verdana, Tahoma, Arial, sans-serif; } + +div.clhead { background-color: #E6E6FA; color: #000000; padding: 2px; font-weight: bold; } + +div.clbody { margin-left: 2px; } + +ul.clbody { margin-top: 4px; } + +span.rev { color: #808080; } + +span.nm { color: #000000; font-weight: bold; } + +span.attn { color: #000000; font-weight: bold; } + +div.head { border-bottom: 1px dotted #cccccc; + padding-bottom: 5px; + text-align: right; } + +div.foot { border-top: 1px dotted #cccccc; + padding-top: 5px; + font-size: smaller; + text-align: right; } + +a.external { background: transparent url(external.png) center right no-repeat; padding-right: 12px; } diff --git a/index.sgml b/index.sgml index 005392af..9f118c26 100644 --- a/index.sgml +++ b/index.sgml @@ -3,7 +3,7 @@ - + mdocml.bsd.lv @@ -195,7 +195,7 @@
- Copyright © 2008, 2009 Kristaps Džonsons, $Date: 2009/07/20 20:09:49 $ + Copyright © 2008, 2009 Kristaps Džonsons, $Date: 2009/09/21 13:06:13 $
diff --git a/main.c b/main.c index 9a8c7f60..523be512 100644 --- a/main.c +++ b/main.c @@ -1,4 +1,4 @@ -/* $Id: main.c,v 1.43 2009/09/16 22:17:27 kristaps Exp $ */ +/* $Id: main.c,v 1.44 2009/09/21 13:06:13 kristaps Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons * @@ -58,9 +58,7 @@ enum intt { enum outt { OUTT_ASCII = 0, OUTT_TREE, -#if 1 OUTT_HTML, -#endif OUTT_LINT }; @@ -86,14 +84,13 @@ struct curparse { out_man outman; out_free outfree; void *outdata; + char *outopts; }; -#if 1 -extern void *html_alloc(void); +extern void *html_alloc(char *); extern void html_mdoc(void *, const struct mdoc *); extern void html_man(void *, const struct man *); extern void html_free(void *); -#endif extern void *ascii_alloc(void); extern void tree_mdoc(void *, const struct mdoc *); extern void tree_man(void *, const struct man *); @@ -134,7 +131,7 @@ main(int argc, char *argv[]) curp.outtype = OUTT_ASCII; /* LINTED */ - while (-1 != (c = getopt(argc, argv, "f:m:VW:T:"))) + while (-1 != (c = getopt(argc, argv, "f:m:o:T:VW:"))) switch (c) { case ('f'): if ( ! foptions(&curp.fflags, optarg)) @@ -144,6 +141,9 @@ main(int argc, char *argv[]) if ( ! moptions(&curp.inttype, optarg)) return(EXIT_FAILURE); break; + case ('o'): + curp.outopts = optarg; + break; case ('T'): if ( ! toptions(&curp.outtype, optarg)) return(EXIT_FAILURE); @@ -441,14 +441,12 @@ fdesc(struct buf *blk, struct buf *ln, struct curparse *curp) if ( ! (curp->outman && curp->outmdoc)) { switch (curp->outtype) { -#if 1 case (OUTT_HTML): - curp->outdata = html_alloc(); + curp->outdata = html_alloc(curp->outopts); curp->outman = html_man; curp->outmdoc = html_mdoc; curp->outfree = html_free; break; -#endif case (OUTT_TREE): curp->outman = tree_man; curp->outmdoc = tree_mdoc; @@ -563,10 +561,8 @@ toptions(enum outt *tflags, char *arg) *tflags = OUTT_LINT; else if (0 == strcmp(arg, "tree")) *tflags = OUTT_TREE; -#if 1 else if (0 == strcmp(arg, "html")) *tflags = OUTT_HTML; -#endif else { warnx("bad argument: -T%s", arg); return(0); diff --git a/mandoc.1 b/mandoc.1 index 9596d5ed..58af31c6 100644 --- a/mandoc.1 +++ b/mandoc.1 @@ -1,4 +1,4 @@ -.\" $Id: mandoc.1,v 1.36 2009/09/15 08:16:20 kristaps Exp $ +.\" $Id: mandoc.1,v 1.37 2009/09/21 13:06:13 kristaps Exp $ .\" .\" Copyright (c) 2009 Kristaps Dzonsons .\" @@ -14,7 +14,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: September 15 2009 $ +.Dd $Mdocdate: September 21 2009 $ .Dt MANDOC 1 .Os . @@ -26,11 +26,12 @@ . .Sh SYNOPSIS .Nm mandoc -.Op Fl V .Op Fl f Ns Ar option... .Op Fl m Ns Ar format -.Op Fl W Ns Ar err... +.Op Fl o Ns Ar option... .Op Fl T Ns Ar output +.Op Fl V +.Op Fl W Ns Ar err... .Op Ar infile... . . @@ -43,7 +44,7 @@ manual pages for display. The arguments are as follows: . .Bl -tag -width Ds .It Fl f Ns Ar option... -Override default compiler behaviour. See +Comma-separated compiler options. See .Sx Compiler Options for details. . @@ -53,6 +54,11 @@ Input format. See for available formats. Defaults to .Fl m Ns Ar andoc . . +.It Fl o Ns Ar format +Comma-separated output options. See +.Sx Output Options +for details. +. .It Fl T Ns Ar output Output format. See .Sx Output Formats @@ -63,7 +69,7 @@ for available formats. Defaults to Print version and exit. . .It Fl W Ns Ar err... -Configure warning messages. Use +Comma-separated warning options. Use .Fl W Ns Ar all to print warnings, .Fl W Ns Ar error @@ -196,6 +202,9 @@ arguments: Produce 7-bit ASCII output, backspace-encoded for bold and underline styles. This is the default. . +.It Fl T Ns Ar html +Produce strict HTML-4.01 output, with a sane default style. +. .It Fl T Ns Ar tree Produce an indented parse tree. . @@ -241,16 +250,24 @@ Don't halt when encountering parse errors. Useful with over a large set of manuals passed on the command line. .El . -.Pp -As with the -.Fl W -flag, multiple -.Fl f -options may be grouped and delimited with a comma. Using -.Fl f Ns Ar ign-scope,no-ign-escape , -for example, will try to ignore scope and not ignore character-escape -errors. -. +.Ss Output Options +For the time being, only +.Fl T Ns Ar html +is the only mode with output options: +.Bl -tag -width Ds +.It Fl o Ns Ar style=style.css +The file +.Ar style.css +is used for an external style-sheet. This must be a valid absolute or +relative URI. +.It Fl o Ns Ar base=http://base/ +The URL +.Ar http://base/ +is used as a base URL for all relative links. This is useful when +linking between documents via the +.Sq \&Xr +macro. +.El . .Sh EXAMPLES To page manuals to the terminal: @@ -275,7 +292,7 @@ Each input and output format is separately noted. . . .Ss ASCII output -.Bl -bullet -compact -width Ds +.Bl -bullet -compact .It The .Sq \e~ diff --git a/out.c b/out.c deleted file mode 100644 index 4166bf96..00000000 --- a/out.c +++ /dev/null @@ -1,113 +0,0 @@ -/* $Id: out.c,v 1.1 2009/09/21 00:39:02 kristaps Exp $ */ -/* - * Copyright (c) 2009 Kristaps Dzonsons - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ -#include - -#include -#include -#include -#include - -#include "mdoc.h" -#include "man.h" -#include "out.h" - -int -out_a2list(const struct mdoc_node *n) -{ - int i; - - assert(MDOC_BLOCK == n->type && MDOC_Bl == n->tok); - assert(n->args); - - for (i = 0; i < (int)n->args->argc; i++) - switch (n->args->argv[i].arg) { - case (MDOC_Enum): - /* FALLTHROUGH */ - case (MDOC_Dash): - /* FALLTHROUGH */ - case (MDOC_Hyphen): - /* FALLTHROUGH */ - case (MDOC_Bullet): - /* FALLTHROUGH */ - case (MDOC_Tag): - /* FALLTHROUGH */ - case (MDOC_Hang): - /* FALLTHROUGH */ - case (MDOC_Inset): - /* FALLTHROUGH */ - case (MDOC_Diag): - /* FALLTHROUGH */ - case (MDOC_Item): - /* FALLTHROUGH */ - case (MDOC_Column): - /* FALLTHROUGH */ - case (MDOC_Ohang): - return(n->args->argv[i].arg); - default: - break; - } - - abort(); - /* NOTREACHED */ -} - - -int -out_a2width(const char *p) -{ - int i, len; - - if (0 == (len = (int)strlen(p))) - return(0); - for (i = 0; i < len - 1; i++) - if ( ! isdigit((u_char)p[i])) - break; - - if (i == len - 1) - if ('n' == p[len - 1] || 'm' == p[len - 1]) - return(atoi(p) + 2); - - return(len + 2); -} - - -int -out_a2offs(const char *p, int indent) -{ - int len, i; - - if (0 == strcmp(p, "left")) - return(0); - if (0 == strcmp(p, "indent")) - return(indent + 1); - if (0 == strcmp(p, "indent-two")) - return((indent + 1) * 2); - - if (0 == (len = (int)strlen(p))) - return(0); - - for (i = 0; i < len - 1; i++) - if ( ! isdigit((u_char)p[i])) - break; - - if (i == len - 1) - if ('n' == p[len - 1] || 'm' == p[len - 1]) - return(atoi(p)); - - return(len); -} - diff --git a/out.h b/out.h deleted file mode 100644 index 28241d9a..00000000 --- a/out.h +++ /dev/null @@ -1,28 +0,0 @@ -/* $Id: out.h,v 1.1 2009/09/21 00:39:02 kristaps Exp $ */ -/* - * Copyright (c) 2008, 2009 Kristaps Dzonsons - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ -#ifndef OUT_H -#define OUT_H - -__BEGIN_DECLS - -int out_a2width(const char *); -int out_a2offs(const char *, int); -int out_a2list(const struct mdoc_node *); - -__END_DECLS - -#endif /*!OUT_H*/ diff --git a/style.css b/style.css index b58ad883..ceb5cc74 100644 --- a/style.css +++ b/style.css @@ -1,44 +1,40 @@ -body { color: #333333; - font-size: smaller; - font-family: Verdana, Tahoma, Arial, sans-serif; } +div.body { } /* Wraps entire body file. */ + +span.sec-head { font-weight: bold; } /* Sections (Sh). */ +div.sec-head { } +div.sec-body { } +div.sec-block { } + +span.ssec-head { font-weight: bold; } /* Sub-sections (Ss). */ +div.ssec-head { } +div.ssec-body { } +div.ssec-block { } + +span.addr { text-decoration: underline; } /* Address (Ad). */ +span.arg { font-style: italic; } /* Command argument (Ar). */ +span.author { } /* Author name (An). */ +span.config { font-weight: bold; } /* Config statement (Cd). */ +span.define { } /* Defines (Dv). */ +span.desc { } /* Nd. After em-dash. */ +span.diag { font-weight: bold; } /* Diagnostic (Bl -diag). */ +span.emph { font-style: italic; } /* Emphasis (Em). */ +span.env { } /* Environment variables (Ev). */ +span.errno { } /* Error string (Er). */ +span.farg { font-style: underline; } /* Function argument (Fa, Fn). */ +span.file { font-style: italic; } /* File (Pa). */ +span.flag { font-weight: bold; } /* Flag (Fl, Cm). */ +span.macro { } /* Macro-ish thing (Fd). */ +span.name { font-weight: bold; } /* Name of utility (Nm). */ +span.opt { } /* Options (Op, Oo/Oc). */ +span.type { font-weight: italic; } /* Variable types (Vt, Ft, Fn). */ +span.unix { } /* Unices (Ux, Ox, Nx, Fx, Bx, Bsx, Dx). */ +span.utility { font-weight: bold; } /* Name of utility (Ex). */ + +a.link-man { } /* Manual links (Xr). */ +a.link-sec { } /* Section links (Sx). */ + +div.lit-block { font-family: monospace; } /* Literal block (D1, Bd -literal, Dl). */ + +table.header { } /* Document header. */ +table.footer { } /* Document footer. */ -table.frame { max-width: 800px; - padding-left: 10px; } - -table { padding-left: 40px; } - -p { padding-left: 40px; - text-align: justify; } - -h1 { font-weight: bold; - font-size: small; - font-family: Verdana, Tahoma, Arial, sans-serif; } - -h2 { font-weight: bold; - font-size: small; - padding-left: 20px; - margin-bottom: 0px; - font-family: Verdana, Tahoma, Arial, sans-serif; } - -div.clhead { background-color: #E6E6FA; color: #000000; padding: 2px; font-weight: bold; } - -div.clbody { margin-left: 2px; } - -ul.clbody { margin-top: 4px; } - -span.rev { color: #808080; } - -span.nm { color: #000000; font-weight: bold; } - -span.attn { color: #000000; font-weight: bold; } - -div.head { border-bottom: 1px dotted #cccccc; - padding-bottom: 5px; - text-align: right; } - -div.foot { border-top: 1px dotted #cccccc; - padding-top: 5px; - font-size: smaller; - text-align: right; } - -a.external { background: transparent url(external.png) center right no-repeat; padding-right: 12px; } -- cgit v1.2.3-56-ge451