Mercurial > hg > xemacs-beta
view nt/paths.h @ 4407:4ee73bbe4f8e
Always use boyer_moore in ASCII or Latin-1 buffers with ASCII search strings.
2007-12-26 Aidan Kehoe <kehoea@parhasard.net>
* casetab.c:
Extend and correct some case table documentation.
* search.c (search_buffer):
Correct a bug where only the first entry for a character in the
case equivalence table was examined in determining if the
Boyer-Moore search algorithm is appropriate.
If there are case mappings outside of the charset and row of the
characters specified in the search string, those case mappings can
be safely ignored (and Boyer-Moore search can be used) if we know
from the buffer statistics that the corresponding characters cannot
occur.
* search.c (boyer_moore):
Assert that we haven't been passed a string with varying
characters sets or rows within character sets. That's what
simple_search is for.
In the very rare event that a character in the search string has a
canonical case mapping that is not in the same character set and
row, don't try to search for the canonical character, search for
some other character that is in the the desired character set and
row. Assert that the case table isn't corrupt.
Do not search for any character case mappings that cannot possibly
occur in the buffer, given the buffer metadata about its
contents.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Wed, 26 Dec 2007 17:30:16 +0100 |
parents | 4be1180a9e89 |
children |
line wrap: on
line source
/* Hey Emacs, this is -*- C -*- code! */ /* Synched up with: Not synched with FSF. */ /* Think twice before editing this file. Generated automatically by configure. The file startup.el guesses at reasonable values for load-path, exec-path, and lock-directory. This means that if you move emacs and its associated sub-tree to a different place in the filesystem, or to a different machine, you won't have to do anything for it to work. If you define the paths in this file then they will take precedence over any value generated by the heuristic in startup.el. The hardcoded paths will be checked to see if they are valid, in which case they will be used. Otherwise the editor will attempt to make its normal guess. See the NEWS file for a description of the heuristic used to locate the lisp and exec directories at startup time. If you are looking at this file because you are having trouble, then you would be much better off arranging for those heuristics to succeed than defining the paths in this file. ** Let me say that again. If you're editing this file, you're making ** a mistake. Re-read the section on installation in ../etc/NEWS. If it defines anything, this file should define some subset of the following: PATH_PREFIX The default value of `prefix-directory'. This is the default root for everything. PATH_LOADSEARCH The default value of `load-path'. PATH_EXEC The default value of `exec-directory' and `exec-path'. (exec-path also contains the value of whatever is in the PATH environment variable.) PATH_DATA The default value of `data-directory'. This is where architecture-independent files are searched for. PATH_LOCK The name of the directory that contains lock files with which we record what files are being modified in Emacs. This directory should be writable by everyone. If this is specified, the string must end with a slash! PATH_SUPERLOCK The name of the file !!!SuperLock!!! in the lock directory. You probably should let this default... PATH_INFO The default value of `Info-directory-list'. This is where info files are searched for. */