From: John Paul Wallington Date: Sun, 4 Jul 2004 21:08:56 +0000 (+0000) Subject: (read_file_name_completion_ignore_case): New variable. X-Git-Tag: ttn-vms-21-2-B4~5550 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=316ef0dcf13c70ac0cd6250fe35dc5fd51bcfb5b;p=emacs.git (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 --git a/src/ChangeLog b/src/ChangeLog index 6ba3196d4e7..8d0d1c17609 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2004-07-04 John Paul Wallington + + * fileio.c (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. + 2004-07-03 Eli Zaretskii * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects diff --git a/src/fileio.c b/src/fileio.c index 5c073433c75..6e4d5a81004 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -206,6 +206,9 @@ Lisp_Object Vread_file_name_function; /* 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 @@ provides a file dialog box. */) } 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 @@ same format as a regular save would use. */); 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