Various functions are smarter about using the correct windows
and the appropriate keymaps.
(vcursor-string): New variable, shows vcursor on dumb terminals.
(vcursor-map): New variable, holds keymap for vcursor commands.
(vcursor-use-vcursor-map): New variable, non-nil if vcursor
keys are overlaid onto main keymap.
(vcursor-toggle-vcursor-map): New function to implement this.
(vcursor-interpret-input): New variable, copy input as if typed.
(vcursor-window-funcall): With list instead of symbol, now calls interactively.
(vcursor-isearch-backward): New function to match forward isearch.
(locate-current-line-number): Renamed from `current-line'.
(locate-default-make-command-line): Use list, not cons.
(locate): Added a `save-window-excursion' form.
(locate): Used an `apply' form for the start-process call.
(locate-mode): Now has a `revert-buffer-function'
(locate-do-setup): Now longer deletes window.
(locate-header-face): Use underline, not region.
(locate-update-command): New option.
(locate-command): Changed from defvar to defcustom.
(locate-make-command-line): Changed from defvar to defcustom.
(locate-fcodes-file): Changed from defvar to defcustom.
(locate-mouse-face): Changed from defvar to defcustom.
(ENCODE_FILE): This macro is moved to coding.h.
(Vdefault_file_name_coding_system): Extern it.
(Fdirectory_files): Use DECODE_FILE.
(file_name_completion): Likewise.
(Vdefault_file_name_coding_system): New variable.
(syms_of_fileio): Defsubr it.
(Ffile_symlink_p): Use DECODE_FILE.
(Ffile_name_directory): Use size_byte member of XSTRING (filename).
(Ffile_name_as_directory): Likewise.
(Fdirectory_file_name): Likewise.
(Fsubstitute_in_file_name): Likewise.
(expand_and_dir_to_file): Likewise.
(Fdo_auto_save): Likewise.
(Fread_file_name): Likewise.
(Fstring_make_multibyte, Fstring_make_unibyte): New function decl.
(Fstring_as_multibyte, Fstring_as_unibyte): New function decl.
(list2, list3, list4, list5): New function decl.
(Fwrite_region): Add an argument.
(compare_window_configurations): New function decl.
moved to charset.h.
(copy_text): Don't convert codes in the range 0200..0237 to
multibyte characters. For codes in the range 0240..0377, use
unibyte_char_to_multibyte.
(count_size_as_multibyte): Likewise.
(adjust_before_replace): Comment fixed.
unibyte_char_to_multibyte if an argument is character code.
(Finsert_char): Use unibyte_char_to_multibyte.
(string1): Cast ARGS to `char **' to avoid compiler warning.
moved to charset.h.
(unibyte_char_to_multibyte): Always return a valid character.
(Funibyte_char_to_multibyte): New function.
(syms_of_charset): Defsubr it. Doc-string of
nonascii-insert-offset is modified.