changeset 22657:d19cd2986f18

(Vminibuffer_completing_file_name): New var. (syms_of_minibuf): Set up Lisp variable. (Fminibuffer_complete_word): Test it, instead of checking specifically for Qread_file_name_internal. (Fcompleting_read): Likewise.
author Richard M. Stallman <rms@gnu.org>
date Thu, 02 Jul 1998 07:01:21 +0000
parents e3dc0aa099e5
children 9f320d762e2f
files src/minibuf.c
diffstat 1 files changed, 8 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/minibuf.c	Thu Jul 02 07:00:30 1998 +0000
+++ b/src/minibuf.c	Thu Jul 02 07:01:21 1998 +0000
@@ -1276,6 +1276,7 @@
 Lisp_Object Vminibuffer_completion_table, Qminibuffer_completion_table;
 Lisp_Object Vminibuffer_completion_predicate, Qminibuffer_completion_predicate;
 Lisp_Object Vminibuffer_completion_confirm, Qminibuffer_completion_confirm;
+Lisp_Object Vminibuffer_completing_file_name;
 
 /* This comment supplies the doc string for completing-read,
    for make-docfile to see.  We cannot put this in the real DEFUN
@@ -1324,7 +1325,7 @@
   int pos = 0;
   int count = specpdl_ptr - specpdl;
   struct gcpro gcpro1;
-  int disable_multibyte = EQ (table, Qread_file_name_internal);
+  int disable_multibyte = ! NILP (Vminibuffer_completing_file_name); 
 
   GCPRO1 (def);
 
@@ -1700,7 +1701,7 @@
     GCPRO2 (completion, tem);
     /* If reading a file name,
        expand any $ENVVAR refs in the buffer and in TEM.  */
-    if (EQ (Vminibuffer_completion_table, Qread_file_name_internal))
+    if (! NILP (Vminibuffer_completing_file_name))
       {
 	Lisp_Object substituted;
 	substituted = Fsubstitute_in_file_name (tem);
@@ -2194,6 +2195,11 @@
     "Non-nil => demand confirmation of completion before exiting minibuffer.");
   Vminibuffer_completion_confirm = Qnil;
 
+  DEFVAR_LISP ("minibuffer-completing-file-name",
+	       &Vminibuffer_completing_file_name,
+    "Non-nil means completing file names.");
+  Vminibuffer_completing_file_name = Qnil;
+
   DEFVAR_LISP ("minibuffer-help-form", &Vminibuffer_help_form,
     "Value that `help-form' takes on inside the minibuffer.");
   Vminibuffer_help_form = Qnil;