diff options
Diffstat (limited to 'contrib/texinfo/info/info.h')
-rw-r--r-- | contrib/texinfo/info/info.h | 145 |
1 files changed, 40 insertions, 105 deletions
diff --git a/contrib/texinfo/info/info.h b/contrib/texinfo/info/info.h index 092ef4128369d..a8759227758a3 100644 --- a/contrib/texinfo/info/info.h +++ b/contrib/texinfo/info/info.h @@ -1,10 +1,9 @@ -/* info.h -- Header file which includes all of the other headers. - $Id: info.h,v 1.7 1998/02/27 21:36:04 karl Exp $ +/* info.h -- Header file which includes all of the other headers. */ - This file is part of GNU Info, a program for reading online documentation +/* This file is part of GNU Info, a program for reading online documentation stored in Info format. - Copyright (C) 1993, 97, 98 Free Software Foundation, Inc. + Copyright (C) 1993 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -22,86 +21,33 @@ Written by Brian Fox (bfox@ai.mit.edu). */ -#if !defined (INFO_H) -#define INFO_H - -/* We always want these, so why clutter up the compile command? */ -#define HANDLE_MAN_PAGES -#define NAMED_FUNCTIONS - -/* System dependencies. */ -#include "system.h" - -/* Some of our other include files use these. */ -typedef int Function (); -typedef void VFunction (); -typedef char *CFunction (); - +#if !defined (_INFO_H_) +#define _INFO_H_ +#include <stdio.h> +#include <ctype.h> +#include <sys/types.h> +#include <sys/stat.h> +#if defined (HAVE_STRING_H) +#include <string.h> +#endif /* HAVE_STRING_H */ #include "filesys.h" #include "display.h" #include "session.h" -#include "echo-area.h" +#include "echo_area.h" #include "doc.h" #include "footnotes.h" #include "gc.h" -#define info_toupper(x) (islower (x) ? toupper (x) : x) -#define info_tolower(x) (isupper (x) ? tolower (x) : x) - -#if !defined (whitespace) -# define whitespace(c) ((c == ' ') || (c == '\t')) -#endif /* !whitespace */ - -#if !defined (whitespace_or_newline) -# define whitespace_or_newline(c) (whitespace (c) || (c == '\n')) -#endif /* !whitespace_or_newline */ - -/* Add POINTER to the list of pointers found in ARRAY. SLOTS is the number - of slots that have already been allocated. INDEX is the index into the - array where POINTER should be added. GROW is the number of slots to grow - ARRAY by, in the case that it needs growing. TYPE is a cast of the type - of object stored in ARRAY (e.g., NODE_ENTRY *. */ -#define add_pointer_to_array(pointer, idx, array, slots, grow, type) \ - do { \ - if (idx + 2 >= slots) \ - array = (type *)(xrealloc (array, (slots += grow) * sizeof (type))); \ - array[idx++] = (type)pointer; \ - array[idx] = (type)NULL; \ - } while (0) - -#define maybe_free(x) do { if (x) free (x); } while (0) - -#if !defined (zero_mem) && defined (HAVE_MEMSET) -# define zero_mem(mem, length) memset (mem, 0, length) -#endif /* !zero_mem && HAVE_MEMSET */ - -#if !defined (zero_mem) && defined (HAVE_BZERO) -# define zero_mem(mem, length) bzero (mem, length) -#endif /* !zero_mem && HAVE_BZERO */ - -#if !defined (zero_mem) -# define zero_mem(mem, length) \ - do { \ - register int zi; \ - register unsigned char *place; \ - \ - place = (unsigned char *)mem; \ - for (zi = 0; zi < length; zi++) \ - place[zi] = 0; \ - } while (0) -#endif /* !zero_mem */ - - /* A structure associating the nodes visited in a particular window. */ typedef struct { - WINDOW *window; /* The window that this list is attached to. */ - NODE **nodes; /* Array of nodes visited in this window. */ - int *pagetops; /* For each node in NODES, the pagetop. */ - long *points; /* For each node in NODES, the point. */ - int current; /* Index in NODES of the current node. */ - int nodes_index; /* Index where to add the next node. */ - int nodes_slots; /* Number of slots allocated to NODES. */ + WINDOW *window; /* The window that this list is attached to. */ + NODE **nodes; /* Array of nodes visited in this window. */ + int *pagetops; /* For each node in NODES, the pagetop. */ + long *points; /* For each node in NODES, the point. */ + int current; /* Index in NODES of the current node. */ + int nodes_index; /* Index where to add the next node. */ + int nodes_slots; /* Number of slots allocated to NODES. */ } INFO_WINDOW; /* Array of structures describing for each window which nodes have been @@ -125,41 +71,30 @@ extern int info_error_rings_bell_p; extern void info_error (); /* The version numbers of Info. */ -extern int info_major_version, info_minor_version; +extern int info_major_version, info_minor_version, info_patch_level; /* How to get the version string for this version of Info. Returns something similar to "2.11". */ extern char *version_string (); /* Error message defines. */ -#define CANT_FIND_NODE _("Cannot find the node \"%s\".") -#define CANT_FILE_NODE _("Cannot find the node \"(%s)%s\".") -#define CANT_FIND_WIND _("Cannot find a window!") -#define CANT_FIND_POINT _("Point doesn't appear within this window's node!") -#define CANT_KILL_LAST _("Cannot delete the last window.") -#define NO_MENU_NODE _("No menu in this node.") -#define NO_FOOT_NODE _("No footnotes in this node.") -#define NO_XREF_NODE _("No cross references in this node.") -#define NO_POINTER _("No \"%s\" pointer for this node.") -#define UNKNOWN_COMMAND _("Unknown Info command `%c'. `?' for help.") -#define TERM_TOO_DUMB _("Terminal type \"%s\" is not smart enough to run Info.") -#define AT_NODE_BOTTOM _("You are already at the last page of this node.") -#define AT_NODE_TOP _("You are already at the first page of this node.") -#define ONE_WINDOW _("Only one window.") -#define WIN_TOO_SMALL _("Resulting window would be too small.") -#define CANT_MAKE_HELP \ -_("There isn't enough room to make a help window. Please delete a window.") - - -/* Found in info-utils.c. */ -extern char *filename_non_directory (); - -#if !defined (BUILDING_LIBRARY) -/* Found in session.c */ -extern int info_windows_initialized_p; - -/* Found in window.c. */ -extern void message_in_echo_area (), unmessage_in_echo_area (); -#endif /* !BUILDING_LIBRARY */ +#define CANT_FIND_NODE "Cannot find the node \"%s\"." +#define CANT_FILE_NODE "Cannot find the node \"(%s)%s\"." +#define CANT_FIND_WIND "Cannot find a window!" +#define CANT_FIND_POINT "Point doesn't appear within this window's node!" +#define CANT_KILL_LAST "Cannot delete the last window." +#define NO_MENU_NODE "No menu in this node." +#define NO_FOOT_NODE "No footnotes in this node." +#define NO_XREF_NODE "No cross references in this node." +#define NO_POINTER "No \"%s\" pointer for this node." +#define UNKNOWN_COMMAND "Unknown Info command `%c'. `?' for help." +#define TERM_TOO_DUMB "Terminal type \"%s\" is not smart enough to run Info." +#define AT_NODE_BOTTOM "You are already at the last page of this node." +#define AT_NODE_TOP "You are already at the first page of this node." +#define ONE_WINDOW "Only one window." +#define WIN_TOO_SMALL "Resulting window would be too small." +#define CANT_MAKE_HELP \ +"There isn't enough room to make a help window. Please delete a window." + +#endif /* !_INFO_H_ */ -#endif /* !INFO_H */ |