diff options
author | Werner LEMBERG <wl@gnu.org> | 2000-03-10 00:38:11 +0000 |
---|---|---|
committer | Werner LEMBERG <wl@gnu.org> | 2000-03-10 00:38:11 +0000 |
commit | 05cd7ec8ea6fb3c1bad0189e4c6cb25c78d58a64 (patch) | |
tree | 1e8997a2e703057869a2a3101347232bc06e79d4 | |
parent | 138464218926e2699cc0376e4366188f9416d953 (diff) |
New file.groff-20000310
-rwxr-xr-x | src/include/htmlindicate.h | 41 | ||||
-rwxr-xr-x | src/libs/libgroff/htmlindicate.cc | 67 |
2 files changed, 108 insertions, 0 deletions
diff --git a/src/include/htmlindicate.h b/src/include/htmlindicate.h new file mode 100755 index 000000000..c496739df --- /dev/null +++ b/src/include/htmlindicate.h @@ -0,0 +1,41 @@ +// -*- C++ -*- +/* Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc. + Written by Gaius Mulley <gaius@glam.ac.uk> + +This file is part of groff. + +groff is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +groff is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License along +with groff; see the file COPYING. If not, write to the Free Software +Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#if !defined(HTMLINDICATE_H) +# define HTMLINDICATE_H + +/* + * graphic_start - emit a html graphic start indicator, but only + * if one has not already been issued. + */ + +extern void graphic_start (void); + + +/* + * graphic_end - emit a html graphic end indicator, but only + * if a corresponding matching graphic-start has + * been issued. + */ + +extern void graphic_end (void); + +#endif + diff --git a/src/libs/libgroff/htmlindicate.cc b/src/libs/libgroff/htmlindicate.cc new file mode 100755 index 000000000..91e53a26b --- /dev/null +++ b/src/libs/libgroff/htmlindicate.cc @@ -0,0 +1,67 @@ +/* Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc. + Written by Gaius Mulley (gaius@glam.ac.uk) + +This file is part of groff. + +groff is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +groff is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License along +with groff; see the file COPYING. If not, write to the Free Software +Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#include <stddef.h> +#include <stdlib.h> +#include <string.h> + +#include "posix.h" +#include "stringclass.h" + +/* + * this file contains a very simple set of routines shared by + * tbl, pic, eqn which help the html device driver to make + * sensible formatting choices. Currently it simply indicates + * when a region of gyphs should be rendered as an image rather + * than html. In the future it should be expanded so to enable: + * + * tbl to inform grohtml about table widths. + * troff to inform grohtml about tab positions and whether + * we are entering two/three column mode. + */ + + +static int is_in_graphic_start = 0; + +/* + * graphic_start - emit a html graphic start indicator, but only + * if one has not already been issued. + */ + +void graphic_start (void) +{ + if (! is_in_graphic_start) { + put_string(".if '\\*(.T'html' \\X(graphic-start(\\c\n", stdout); + is_in_graphic_start = 1; + } +} + +/* + * graphic_end - emit a html graphic end indicator, but only + * if a corresponding matching graphic-start has + * been issued. + */ + +void graphic_end (void) +{ + if (is_in_graphic_start) { + put_string(".if '\\*(.T'html' \\X(graphic-end(\\c\n", stdout); + is_in_graphic_start = 0; + } +} |