Mercurial > emacs
view lispref/locals.texi @ 18260:a642c99198ec
(PTR_TO_OFFSET): New macro.
(POS_AS_IN_BUFFER): New macro.
(SYNTAX_ENTRY_VIA_PROPERTY): Set to take `syntax-table' text
property into account when doing SYNTAX (c).
(re_compile_fastmap): disable fastmap if any of wordbound
notwordbound wordbeg wordend notsyntaxspec syntaxspec are seen.
(re_search_2): SETUP_SYNTAX_TABLE_FOR_OBJECT at the start.
(re_match_object): New variable.
(re_match_2): SETUP_SYNTAX_TABLE_FOR_OBJECT at the start.
(re_match_2_internal): For any of wordbound notwordbound wordbeg
wordend notsyntaxspec syntaxspec call UPDATE_SYNTAX_TABLE before
doing SYNTAX (c).
[emacs]: Include charset.h and category.h
[!emacs] (BASE_LEADING_CODE_P, WORD_BOUNDARY_P, CHAR_HEAD_P,
SINGLE_BYTE_CHAR_P, SAME_CHARSET_P, MULTIBYTE_FORM_LENGTH,
STRING_CHAR_AND_LENGTH, GET_CHAR_AFTER_2, GET_CHAR_BEFORE_2):
New dummy macros.
(enum re_opcode_t): New member categoryspec and notcategoryspec.
(STORE_CHARACTER_AND_INCR, EXTRACT_CHARACTER,
CHARSET_LOOKUP_RANGE_TABLE_WITH_COUNT,
CHARSET_LOOKUP_RANGE_TABLE, CHARSET_BITMAP_SIZE,
CHARSET_RANGE_TABLE_EXISTS_P, CHARSET_RANGE_TABLE
CHARSET_PAST_RANGE_TABLE): New macros.
(TRANSLATE): Cast return value to unsigned char, not char.
(struct range_table_work_area): New structure.
(EXTEND_RANGE_TABLE_WORK_AREA, SET_RANGE_TABLE_WORK_AREA,
FREE_RANGE_TABLE_WORK_AREA, CLEAR_RANGE_TABLE_WORK_USED,
RANGE_TABLE_WORK_USED, RANGE_TABLE_WORK_ELT): New macros.
(FREE_STACK_RETURN): Call FREE_RANGE_TABLE_WORK_AREA.
(regex_compile): Declare `c' and `c1' as int to store multibyte characters.
Declare range_table_work and initialize it.
Initialize bufp->multibyte to 0 if not emacs.
For case '[' and `default', code re-written to handle multibyte characters.
Add code for case 'c' and 'C' to handle category spec.
(re_compile_fastmap): New local variables k, simple_char_max,
and match_any_multibyte_characters.
Use macro CHARSET_BITMAP_SIZE.
Handle multibyte characters in cases charset, charset_not,
wordchar, notwordchar, anychar, syntaxspec, notsyntaxspec,
categoryspec, notcategoryspec.
(STOP_ADDR_VSTRING, POS_ADDR_VSTRING): New macros.
(re_search_2): Code re-written to handle multibyte characters.
(AT_WORD_BOUNDARY): Macro disabled.
(re_match_2_internal): New local variable multibyte. `d' is
incremented while paying attention to multibyte characters if necessary.
For case charset, charsetnot, wordbound, notwordbound,
wordbeg, wordend, matchsyntax, and matchnotsyntax, code
re-written to handle multibyte characters.
Add code for case categoryspec and notcategoryspec.
Declare c, c1 as unsigned int, not unsigned char.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 15 Jun 1997 19:00:12 +0000 |
parents | a6eb5f12b0f3 |
children | 90da2489c498 |
line wrap: on
line source
@c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990, 1991, 1992, 1993 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @setfilename ../info/locals @node Standard Buffer-Local Variables, Standard Keymaps, Standard Errors, Top @appendix Buffer-Local Variables @c The title "Standard Buffer-Local Variables" is too long for @c smallbook. --rjc 30mar92 The table below lists the general-purpose Emacs variables that are automatically local (when set) in each buffer. Many Lisp packages define such variables for their internal use; we don't list them here. @table @code @item abbrev-mode @pxref{Abbrevs} @item auto-fill-function @pxref{Auto Filling} @item buffer-auto-save-file-name @pxref{Auto-Saving} @item buffer-backed-up @pxref{Backup Files} @item buffer-display-table @pxref{Display Tables} @item buffer-file-format @pxref{Format Conversion} @item buffer-file-name @pxref{Buffer File Name} @item buffer-file-number @pxref{Buffer File Name} @item buffer-file-truename @pxref{Buffer File Name} @item buffer-file-type @pxref{Files and MS-DOS} @item buffer-invisibility-spec @pxref{Invisible Text} @item buffer-offer-save @pxref{Saving Buffers} @item buffer-read-only @pxref{Read Only Buffers} @item buffer-saved-size @pxref{Point} @item buffer-undo-list @pxref{Undo} @item cache-long-line-scans @pxref{Text Lines} @item case-fold-search @pxref{Searching and Case} @item ctl-arrow @pxref{Usual Display} @item comment-column @pxref{Comments,,, emacs, The GNU Emacs Manual} @item default-directory @pxref{System Environment} @item defun-prompt-regexp @pxref{List Motion} @item fill-column @pxref{Auto Filling} @item goal-column @pxref{Moving Point,,, emacs, The GNU Emacs Manual} @item left-margin @pxref{Indentation} @item local-abbrev-table @pxref{Abbrevs} @item local-write-file-hooks @pxref{Saving Buffers} @item major-mode @pxref{Mode Help} @item mark-active @pxref{The Mark} @item mark-ring @pxref{The Mark} @item minor-modes @pxref{Minor Modes} @item mode-line-buffer-identification @pxref{Mode Line Variables} @item mode-line-format @pxref{Mode Line Data} @item mode-line-modified @pxref{Mode Line Variables} @item mode-line-process @pxref{Mode Line Variables} @item mode-name @pxref{Mode Line Variables} @item overwrite-mode @pxref{Insertion} @item paragraph-separate @pxref{Standard Regexps} @item paragraph-start @pxref{Standard Regexps} @item point-before-scroll Used for communication between mouse commands and scroll-bar commands. @item require-final-newline @pxref{Insertion} @item selective-display @pxref{Selective Display} @item selective-display-ellipses @pxref{Selective Display} @item tab-width @pxref{Usual Display} @item truncate-lines @pxref{Truncation} @item vc-mode @pxref{Mode Line Variables} @end table