home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / editors / emcs1857 / 1857sr~1.zoo / src / chartab.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-02-02  |  2.2 KB  |  59 lines

  1. /* Declarations for character tables.
  2.    Copyright (C) 1987, 1990 Free Software Foundation, Inc.
  3.  
  4. This file is part of GNU Emacs.
  5.  
  6. GNU Emacs is distributed in the hope that it will be useful,
  7. but WITHOUT ANY WARRANTY.  No author or distributor
  8. accepts responsibility to anyone for the consequences of using it
  9. or for whether it serves any particular purpose or works at all,
  10. unless he says so in writing.  Refer to the GNU Emacs General Public
  11. License for full details.
  12.  
  13. Everyone is granted permission to copy, modify and redistribute
  14. GNU Emacs, but only under the conditions described in the
  15. GNU Emacs General Public License.   A copy of this license is
  16. supposed to have been given to you along with GNU Emacs so you
  17. can know your rights and responsibilities.  It should be in a
  18. file named COPYING.  Among other things, the copyright notice
  19. and this notice must be preserved on all copies.  */
  20.  
  21. /* Written by Howard Gayle.  See chartab.c for details. */
  22.  
  23. /* The following definitions are placed here in order to ease
  24. future modifications: */
  25. #define HTAB    ('\t')
  26. #define HYPHEN  ('-')
  27. #define NEWLINE ('\n')
  28. #define SPACE   (' ')
  29.  
  30. /* There are two built-in character tables, one that displays
  31. control characters with backslash followed by an octal number,
  32. and one that displays them with ^.  Both start off initialized
  33. for ASCII, but can be modified. */
  34. extern Lisp_Object Vctl_arrow_char_table;
  35.  
  36. #define NULL_CHAR_TABLE ((struct Lisp_Chartab *) 0)
  37.  
  38. /* Each window has a char table.  This macro returns the char
  39. table of the selected window: */
  40. #define SELECTED_CHAR_TABLE XCHARTAB ((XWINDOW (selected_window)->window_char_table))
  41.  
  42. /* This macro returns the char table of the given window. */
  43. #define WINDOW_CHAR_TABLE(w) XCHARTAB (w->window_char_table)
  44.  
  45. Lisp_Object check_char_table ();
  46.  
  47. /* The length of the rope corresponding to character c in char table t: */
  48. #define ROPE_LEN(c,t) (t->ct_dispr[c].r_len)
  49.  
  50. /* A glyf is represented as an index in glyf_table[].  The
  51. first byte gives the length, followed by the characters in the
  52. glyf.  There is no NUL at the end. */
  53. extern char_t *glyf_table;
  54.  
  55. #define SPACEGLYF ((1 << 8) + ' ') /* Glyf for a space. */
  56.  
  57. int     glyf_len(); /* Length of a glyf. */
  58. char_t *glyf_str(); /* Pointer to first byte in glyf. */
  59.