Mercurial > hg > xemacs-beta
view lisp/fontl-hooks.el @ 5374:d967d96ca043
Conditionalise the old-* functions and byte codes at compile time.
src/ChangeLog addition:
2011-03-15 Aidan Kehoe <kehoea@parhasard.net>
* config.h.in (SUPPORT_CONFOUNDING_FUNCTIONS): New #define,
equivalent NEED_TO_HANDLE_21_4_CODE by default, describing whether
this XEmacs should support the old-eq, old-equal and related
functions and byte codes.
* bytecode.c (UNUSED):
Only interpret old-eq, old-equal, old-memq if
SUPPORT_CONFOUNDING_FUNCTIONS is defined.
* data.c:
Move Fold_eq to fns.c with the rest of the Fold_* functions.
* fns.c:
* fns.c (Fmemq):
* fns.c (memq_no_quit):
* fns.c (assoc_no_quit):
* fns.c (Frassq):
* fns.c (Fequal):
* fns.c (Fold_equal):
* fns.c (syms_of_fns):
Group old-eq, old-equal, old-memq etc together, surround them with
#ifdef SUPPORT_CONFOUNDING_FUNCTIONS.
lisp/ChangeLog addition:
2011-03-15 Aidan Kehoe <kehoea@parhasard.net>
* bytecomp.el:
Don't generate the old-eq, old-memq, old-equal bytecodes any more,
but keep the information about them around for the sake of the
disassembler.
man/ChangeLog addition:
2011-03-15 Aidan Kehoe <kehoea@parhasard.net>
* lispref/objects.texi (Character Type):
* lispref/objects.texi (Equality Predicates):
No longer document `old-eq', `old-equal', they haven't been used
in years.
tests/ChangeLog addition:
2011-03-17 Aidan Kehoe <kehoea@parhasard.net>
* automated/lisp-tests.el:
Only test the various old-* function if old-eq is bound and a
subr.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Thu, 17 Mar 2011 20:13:00 +0000 |
parents | d44af0c54775 |
children | 308d34e9f07d |
line wrap: on
line source
;;; fontl-hooks.el --- pre-loaded stuff for font-lock. ;; Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc. ;; Copyright (C) 1995 Amdahl Corporation. ;; Copyright (C) 1996 Ben Wing. ;; This file is part of XEmacs. ;; XEmacs is free software; you can redistribute it and/or modify it ;; under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; XEmacs is distributed in the hope that it will be useful, but ;; WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;; General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with XEmacs; see the file COPYING. If not, write to the ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, ;; Boston, MA 02111-1307, USA. ;;; Synched up with: FSF 19.30. (font-lock.el) ;;; Commentary: ;; The reason for the existence of this file is so that modes can ;; call `font-lock-set-defaults' without worrying about whether ;; font-lock is loaded. We don't autoload this from font-lock.el ;; because loading font-lock.el automatically turns font-lock on. ;;; Code: (defun font-lock-set-defaults (&optional explicit-defaults) "Set fontification defaults appropriately for this mode. Sets `font-lock-keywords', `font-lock-keywords-only', `font-lock-syntax-table', `font-lock-beginning-of-syntax-function' and `font-lock-keywords-case-fold-search'. If `font-lock-defaults' is currently set, it is used. Otherwise, the symbol naming the major mode is examined for a `font-lock-defaults' property. If that is not present, but a variable `foo-mode-font-lock-keywords' is, the value of that variable is used as the default for `font-lock-keywords'. Various other backward-compatible behaviors also exist -- if you're curious, look at the source. The value of `font-lock-maximum-decoration' is used to determine which set of keywords applies, if more than one exists. This will also put the buffer into Font Lock mode if any keywords exist and if auto-fontification is called for, as determined by `font-lock-auto-fontify', `font-lock-mode-enable-list', and `font-lock-mode-disable-list'. Calling this function multiple times in the same buffer is safe -- this function keeps track of whether it has already been called in this buffer, and does nothing if so. This allows for multiple ways of getting Font Lock properly initialized in a buffer, to deal with existing major modes that do not call this function. (For example, Font Lock adds this function to `find-file-hooks'.) Major modes that have any font-lock defaults specified should call this function during their initialization process, after they have set the variable `major-mode'. If EXPLICIT-DEFAULTS is t, this function will not check whether it has already been run in this buffer, and will always do the full computation. If EXPLICIT-DEFAULTS is not nil and not t, it should be something that is allowable as a value for `font-lock-defaults' and will be used to initialize the Font Lock variables." (when (and (featurep 'font-lock) (if font-lock-auto-fontify (not (memq major-mode font-lock-mode-disable-list)) (memq major-mode font-lock-mode-enable-list)) (font-lock-set-defaults-1 explicit-defaults) font-lock-keywords) (turn-on-font-lock))) (provide 'fontl-hooks) ;;; fontl-hooks.el ends here