X-Git-Url: https://git.cameronkatri.com/mandoc.git/blobdiff_plain/cd3461ed2decce6e980d3a4c93c615bd8f4cb5c0..1eb9c4523f63f5de5ae16bb140a12268511461a2:/out.h?ds=sidebyside diff --git a/out.h b/out.h index eb589afb..13665e46 100644 --- a/out.h +++ b/out.h @@ -1,6 +1,6 @@ -/* $Id: out.h,v 1.6 2009/10/22 18:55:33 kristaps Exp $ */ +/* $Id: out.h,v 1.14 2010/07/21 20:35:03 kristaps Exp $ */ /* - * Copyright (c) 2009 Kristaps Dzonsons + * 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 @@ -35,25 +35,43 @@ enum roffscale { SCALE_MAX }; +enum roffdeco { + DECO_NONE, + DECO_SPECIAL, /* special character */ + DECO_SSPECIAL, /* single-char special */ + DECO_RESERVED, /* reserved word */ + DECO_BOLD, + DECO_ITALIC, + DECO_ROMAN, + DECO_PREVIOUS, + DECO_NOSPACE, + DECO_FONT, /* font */ + DECO_FFONT, /* font family */ + DECO_MAX +}; + struct roffsu { enum roffscale unit; double scale; - int pt; }; #define SCALE_INVERT(p) \ - do { (p)->scale = -(p)->scale; } while (/*CONSTCOND*/0) + do { (p)->scale = -(p)->scale; } \ + while (/* CONSTCOND */ 0) + #define SCALE_VS_INIT(p, v) \ do { (p)->unit = SCALE_VS; \ - (p)->scale = (v); \ - (p)->pt = 0; } while (/*CONSTCOND*/0) + (p)->scale = (v); } \ + while (/* CONSTCOND */ 0) + #define SCALE_HS_INIT(p, v) \ do { (p)->unit = SCALE_BU; \ - (p)->scale = (v); \ - (p)->pt = 0; } while (/*CONSTCOND*/0) + (p)->scale = (v); } \ + while (/* CONSTCOND */ 0) int a2roffsu(const char *, struct roffsu *, enum roffscale); +int a2roffdeco(enum roffdeco *, const char **, size_t *); void time2a(time_t, char *, size_t); __END_DECLS