version 1.213, 2014/11/27 22:27:56 |
version 1.219, 2015/01/23 14:21:01 |
|
|
/* $Id$ */ |
/* $Id$ */ |
/* |
/* |
* Copyright (c) 2008-2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2008-2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org> |
* Copyright (c) 2014, 2015 Ingo Schwarze <schwarze@openbsd.org> |
* |
* |
* Permission to use, copy, modify, and distribute this software for any |
* Permission to use, copy, modify, and distribute this software for any |
* purpose with or without fee is hereby granted, provided that the above |
* purpose with or without fee is hereby granted, provided that the above |
|
|
#include <string.h> |
#include <string.h> |
#include <unistd.h> |
#include <unistd.h> |
|
|
#include "mandoc.h" |
|
#include "mandoc_aux.h" |
#include "mandoc_aux.h" |
|
#include "mdoc.h" |
#include "out.h" |
#include "out.h" |
#include "html.h" |
#include "html.h" |
#include "mdoc.h" |
|
#include "main.h" |
#include "main.h" |
|
|
#define INDENT 5 |
#define INDENT 5 |
|
|
a2width(const char *p, struct roffsu *su) |
a2width(const char *p, struct roffsu *su) |
{ |
{ |
|
|
if ( ! a2roffsu(p, su, SCALE_MAX)) { |
if (a2roffsu(p, su, SCALE_MAX) < 2) { |
su->unit = SCALE_EN; |
su->unit = SCALE_EN; |
su->scale = html_strlen(p); |
su->scale = html_strlen(p); |
} |
} else if (su->scale < 0.0) |
|
su->scale = 0.0; |
} |
} |
|
|
/* |
/* |
Line 1202 mdoc_bd_pre(MDOC_ARGS) |
|
Line 1202 mdoc_bd_pre(MDOC_ARGS) |
|
default: |
default: |
break; |
break; |
} |
} |
if (nn->next && nn->next->line == nn->line) |
if (h->flags & HTML_NONEWLINE || |
|
(nn->next && ! (nn->next->flags & MDOC_LINE))) |
continue; |
continue; |
else if (nn->next) |
else if (nn->next) |
print_text(h, "\n"); |
print_text(h, "\n"); |
Line 1566 mdoc_sp_pre(MDOC_ARGS) |
|
Line 1567 mdoc_sp_pre(MDOC_ARGS) |
|
SCALE_VS_INIT(&su, 1); |
SCALE_VS_INIT(&su, 1); |
|
|
if (MDOC_sp == n->tok) { |
if (MDOC_sp == n->tok) { |
if (NULL != (n = n->child)) |
if (NULL != (n = n->child)) { |
if ( ! a2roffsu(n->string, &su, SCALE_VS)) |
if ( ! a2roffsu(n->string, &su, SCALE_VS)) |
SCALE_VS_INIT(&su, atoi(n->string)); |
su.scale = 1.0; |
|
else if (su.scale < 0.0) |
|
su.scale = 0.0; |
|
} |
} else |
} else |
su.scale = 0.0; |
su.scale = 0.0; |
|
|
|
|
mdoc_pf_post(MDOC_ARGS) |
mdoc_pf_post(MDOC_ARGS) |
{ |
{ |
|
|
h->flags |= HTML_NOSPACE; |
if ( ! (n->next == NULL || n->next->flags & MDOC_LINE)) |
|
h->flags |= HTML_NOSPACE; |
} |
} |
|
|
static int |
static int |
Line 2079 mdoc_quote_pre(MDOC_ARGS) |
|
Line 2084 mdoc_quote_pre(MDOC_ARGS) |
|
case MDOC_Ao: |
case MDOC_Ao: |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case MDOC_Aq: |
case MDOC_Aq: |
print_text(h, n->parent->prev != NULL && |
print_text(h, n->nchild == 1 && |
n->parent->prev->tok == MDOC_An ? "<" : "\\(la"); |
n->child->tok == MDOC_Mt ? "<" : "\\(la"); |
break; |
break; |
case MDOC_Bro: |
case MDOC_Bro: |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
Line 2157 mdoc_quote_post(MDOC_ARGS) |
|
Line 2162 mdoc_quote_post(MDOC_ARGS) |
|
case MDOC_Ao: |
case MDOC_Ao: |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case MDOC_Aq: |
case MDOC_Aq: |
print_text(h, n->parent->prev != NULL && |
print_text(h, n->nchild == 1 && |
n->parent->prev->tok == MDOC_An ? ">" : "\\(ra"); |
n->child->tok == MDOC_Mt ? ">" : "\\(ra"); |
break; |
break; |
case MDOC_Bro: |
case MDOC_Bro: |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |