# HG changeset patch # User John Paul Wallington # Date 1088975196 0 # Node ID 56b3ebd82889dc0c6d48d9535e567eaa27f385e5 # Parent 74c6d044f71216226d17f6b3a9482866f5bcebbd (read_file_name_completion_ignore_case): New variable. (syms_of_fileio): Declare and initialise it. (Fread_file_name): Bind `completion-ignore-case' to respect it. diff -r 74c6d044f712 -r 56b3ebd82889 src/fileio.c --- a/src/fileio.c Sun Jul 04 18:23:20 2004 +0000 +++ b/src/fileio.c Sun Jul 04 21:06:36 2004 +0000 @@ -206,6 +206,9 @@ /* Current predicate used by read_file_name_internal. */ Lisp_Object Vread_file_name_predicate; +/* Nonzero means completion ignores case when reading file name. */ +int read_file_name_completion_ignore_case; + /* Nonzero means, when reading a filename in the minibuffer, start out by inserting the default directory into the minibuffer. */ int insert_default_directory; @@ -6284,10 +6287,8 @@ } count = SPECPDL_INDEX (); -#if defined VMS || defined DOS_NT || defined MAC_OSX - specbind (intern ("completion-ignore-case"), Qt); -#endif - + specbind (intern ("completion-ignore-case"), + read_file_name_completion_ignore_case ? Qt : Qnil); specbind (intern ("minibuffer-completing-file-name"), Qt); specbind (intern ("read-file-name-predicate"), (NILP (predicate) ? Qfile_exists_p : predicate)); @@ -6523,6 +6524,14 @@ doc: /* Current predicate used by `read-file-name-internal'. */); Vread_file_name_predicate = Qnil; + DEFVAR_BOOL ("read-file-name-completion-ignore-case", &read_file_name_completion_ignore_case, + doc: /* *Non-nil means when reading a file name completion ignores case. */); +#if defined VMS || defined DOS_NT || defined MAC_OS + read_file_name_completion_ignore_case = 1; +#else + read_file_name_completion_ignore_case = 0; +#endif + DEFVAR_BOOL ("insert-default-directory", &insert_default_directory, doc: /* *Non-nil means when reading a filename start with default dir in minibuffer. If the initial minibuffer contents are non-empty, you can usually