156160Sru/* html.h -- declarations for html-related utilities. 2146515Sru $Id: html.h,v 1.6 2004/11/30 02:03:23 karl Exp $ 356160Sru 4146515Sru Copyright (C) 1999, 2000, 2002, 2004 Free Software Foundation, Inc. 556160Sru 656160Sru This program is free software; you can redistribute it and/or modify 756160Sru it under the terms of the GNU General Public License as published by 856160Sru the Free Software Foundation; either version 2, or (at your option) 956160Sru any later version. 1056160Sru 1156160Sru This program is distributed in the hope that it will be useful, 1256160Sru but WITHOUT ANY WARRANTY; without even the implied warranty of 1356160Sru MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1456160Sru GNU General Public License for more details. 1556160Sru 1656160Sru You should have received a copy of the GNU General Public License 1756160Sru along with this program; if not, write to the Free Software Foundation, 1856160Sru Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 1956160Sru 2056160Sru#ifndef HTML_H 2156160Sru#define HTML_H 2256160Sru 23114472Sru/* A stack of font tags. */ 24114472Srutypedef struct hstack 25114472Sru{ 26114472Sru struct hstack *next; 27114472Sru char *tag; 28146515Sru char *attribs; 29114472Sru} HSTACK; 30114472Sru 3156160Sru/* Nonzero if we have output the <head>. */ 3256160Sruextern int html_output_head_p; 3356160Sru 34114472Sru/* Nonzero if we have output a title, from @titlefont or @settitle. */ 35114472Sruextern int html_title_written; 36114472Sru 3756160Sru/* Perform the <head> output. */ 38146515Sruextern void html_output_head (void); 3956160Sru 4056160Sru/* Escape &<>. */ 41146515Sruextern char *escape_string (char *); 4256160Sru 4356160Sru/* Open or close TAG according to START_OR_END. */ 44146515Sruextern void insert_html_tag (int start_or_end, char *tag); 4556160Sru 4656160Sru/* Output HTML <link> to NODE, plus extra ATTRIBUTES. */ 47146515Sruextern void add_link (char *nodename, char *attributes); 4856160Sru 49146515Sru/* Escape URL-special characters. */ 50146515Sruextern void add_escaped_anchor_name (char *name, int old); 5156160Sru 5256160Sru/* See html.c. */ 53146515Sruextern void add_anchor_name (char *nodename, int href); 54146515Sruextern void add_url_name (char *nodename, int href); 55146515Sruextern void add_nodename_to_filename (char *nodename, int href); 56146515Sruextern char *nodename_to_filename (char *nodename); 57146515Sruextern int rollback_empty_tag (char *tag); 5856160Sru 59146515Sru#if defined (VA_FPRINTF) && __STDC__ 60146515Sruextern void insert_html_tag_with_attribute (int start_or_end, char *tag, char *format, ...); 61146515Sru#else 62146515Sruextern void insert_html_tag_with_attribute (); 63146515Sru#endif 64146515Sru 6556160Sru#endif /* !HTML_H */ 66