troff.h revision 104862
1// -*- C++ -*- 2/* Copyright (C) 1989, 1990, 1991, 1992, 2000, 2001, 2002 3 Free Software Foundation, Inc. 4 Written by James Clark (jjc@jclark.com) 5 6This file is part of groff. 7 8groff is free software; you can redistribute it and/or modify it under 9the terms of the GNU General Public License as published by the Free 10Software Foundation; either version 2, or (at your option) any later 11version. 12 13groff is distributed in the hope that it will be useful, but WITHOUT ANY 14WARRANTY; without even the implied warranty of MERCHANTABILITY or 15FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 16for more details. 17 18You should have received a copy of the GNU General Public License along 19with groff; see the file COPYING. If not, write to the Free Software 20Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 21 22 23#include "lib.h" 24 25#include <ctype.h> 26#include <time.h> 27#include <stddef.h> 28#include <stdlib.h> 29#include <errno.h> 30 31#include "assert.h" 32#include "color.h" 33#include "device.h" 34#include "searchpath.h" 35 36void cleanup_and_exit(int n); 37 38typedef int units; 39 40extern units scale(units n, units x, units y); // scale n by x/y 41 42extern units units_per_inch; 43 44extern int ascii_output_flag; 45extern int suppress_output_flag; 46extern int color_flag; 47extern int is_html; 48 49extern int tcommand_flag; 50extern int vresolution; 51extern int hresolution; 52extern int sizescale; 53 54extern search_path *mac_path; 55 56#include "cset.h" 57#include "cmap.h" 58#include "errarg.h" 59#include "error.h" 60 61enum warning_type { 62 WARN_CHAR = 01, 63 WARN_NUMBER = 02, 64 WARN_BREAK = 04, 65 WARN_DELIM = 010, 66 WARN_EL = 020, 67 WARN_SCALE = 040, 68 WARN_RANGE = 0100, 69 WARN_SYNTAX = 0200, 70 WARN_DI = 0400, 71 WARN_MAC = 01000, 72 WARN_REG = 02000, 73 WARN_TAB = 04000, 74 WARN_RIGHT_BRACE = 010000, 75 WARN_MISSING = 020000, 76 WARN_INPUT = 040000, 77 WARN_ESCAPE = 0100000, 78 WARN_SPACE = 0200000, 79 WARN_FONT = 0400000, 80 WARN_IG = 01000000, 81 WARN_COLOR = 02000000 82 // change WARN_TOTAL if you add more warning types 83}; 84 85const int WARN_TOTAL = 02777777; 86 87int warning(warning_type, const char *, 88 const errarg & = empty_errarg, 89 const errarg & = empty_errarg, 90 const errarg & = empty_errarg); 91int output_warning(warning_type, const char *, 92 const errarg & = empty_errarg, 93 const errarg & = empty_errarg, 94 const errarg & = empty_errarg); 95