Mercurial > hg > xemacs-beta
diff src/bufslots.h @ 70:131b0175ea99 r20-0b30
Import from CVS: tag r20-0b30
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:02:59 +0200 |
parents | 376386a54a3c |
children | fe104dbd9147 |
line wrap: on
line diff
--- a/src/bufslots.h Mon Aug 13 09:00:04 2007 +0200 +++ b/src/bufslots.h Mon Aug 13 09:02:59 2007 +0200 @@ -94,6 +94,16 @@ MARKED_SLOT (abbrev_table); /* This buffer's syntax table. */ MARKED_SLOT (syntax_table); + /* Massaged values from the syntax table, for faster lookup. */ + MARKED_SLOT (mirror_syntax_table); + +#ifdef MULE + /* This buffer's category table. */ + MARKED_SLOT (category_table); + + /* This buffer's coding system. */ + MARKED_SLOT (file_coding_system); +#endif /* MULE */ /* Values of several buffer-local variables. @@ -122,6 +132,23 @@ /* Char-table of equivalences for case-folding search. */ MARKED_SLOT (case_eqv_table); +#ifdef MULE + /* #### The purpose of these bogos is to deal with the fact that + the Boyer-Moore and regex searching routines don't know how to + deal with translating multi-byte characters. Fixing this is hard, + so instead we maintain these mirror tables that have all incorrect + mappings (see casetab.c) sanitized out of them. If we don't do + this, we may get weird and unpredictable results in the presence + of extended chars and extended mappings, and it could even lead + to a crash. + + #### Eventually we should deal with this properly. */ + MARKED_SLOT (mirror_downcase_table); + MARKED_SLOT (mirror_upcase_table); + MARKED_SLOT (mirror_case_canon_table); + MARKED_SLOT (mirror_case_eqv_table); +#endif + /* #### This ought to be a specifier: */ /* Non-nil means do not display continuation lines. */ MARKED_SLOT (truncate_lines);