;; Author: Masanobu UMEDA <umerin@flab.flab.fujitsu.junet>
;; Keywords: news
-;; $Header: gnus.el,v 3.13 90/03/23 13:24:27 umerin Locked $
-
;; This file is part of GNU Emacs.
;; GNU Emacs is free software; you can redistribute it and/or modify
;;;====================================================================
-;;; $Header: /import/kaplan/kaplan/liberte/Isearch/RCS/isearch-mode.el,v 1.2 92/05/27 11:33:57 liberte Exp Locker: liberte $
-;;; $Log: isearch-mode.el,v $
;;; Revision 1.2 92/05/27 11:33:57 liberte
;;; Several new commands and features have been added. Emacs version
;;; 19 has a search ring, which is supported here. Other fixes found
;; Maintainer: FSF
;; Keywords: mail, news
-;; $Header: mhspool.el,v 1.5 90/03/23 13:25:23 umerin Locked $
-
;; This file is part of GNU Emacs.
;; GNU Emacs is distributed in the hope that it will be useful,
;; Author: Masanobu UMEDA <umerin@flab.flab.fujitsu.junet>
;; Keywords: news
-;; $Header: nnspool.el,v 1.10 90/03/23 13:25:25 umerin Locked $
-
;; This file is part of GNU Emacs.
;; GNU Emacs is distributed in the hope that it will be useful,
;; Author: Masanobu UMEDA <umerin@flab.flab.fujitsu.junet>
;; Keywords: news
-;; $Header: nntp.el,v 3.10 90/03/23 13:25:27 umerin Locked $
-
;; This file is part of GNU Emacs.
;; GNU Emacs is distributed in the hope that it will be useful,
;; Author: Dan LaLiberte <liberte@a.cs.uiuc.edu>
;; Keywords: c
-;;; $Header: hide-ifdef-mode.el,v 1.7 88/02/16 03:12:58 liberte Exp $
-
;;; Commentary:
;;; Written by Brian Marick, at Gould, Computer Systems Division, Urbana IL.
;;; Change Log:
;;;
-;;; $Log: hide-ifdef-mode.el,v $
;;; Revision 1.7 88/02/16 03:12:58 liberte
;;; Fixed comments and doc strings.
;;; Added optional prefix arg for ifdef motion commands.
#endif /* not VMS */
}
\f
+/* A slightly faster and more convenient way to get
+ (directory-file-name (expand-file-name FOO)). The return value may
+ have had its last character zapped with a '\0' character, meaning
+ that it is acceptable to system calls, but not to other lisp
+ functions. Callers should make sure that the return value doesn't
+ escape. */
+
Lisp_Object
expand_and_dir_to_file (filename, defdir)
Lisp_Object filename, defdir;
/* Scan from fkey_end until we find a bound suffix. */
while (fkey_end < t)
{
+ /* Look up meta-characters by prefixing them
+ with meta_prefix_char. I hate this. */
+ if (keybuf[fkey_end++] & 0x80)
+ fkey_next =
+ get_keymap_1 (get_keyelt
+ (access_keymap (fkey_map, meta_prefix_char)),
+ 0);
+ else
+ fkey_next = fkey_map;
+
fkey_next =
- get_keyelt (access_keymap (fkey_map, keybuf[fkey_end++]));
+ get_keyelt (access_keymap
+ (fkey_next, keybuf[(fkey_end++) & 0x7f]));
+
/* If keybuf[fkey_start..fkey_next] is bound in the
function key map and it's a suffix of the current
sequence (i.e. fkey_next == t), replace it with