1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-31 20:02:42 +00:00

*** empty log message ***

This commit is contained in:
Kenichi Handa 2003-02-10 08:24:29 +00:00
parent 03f0441359
commit ce4254bd12
2 changed files with 50 additions and 0 deletions

View File

@ -1168,6 +1168,23 @@ timing measurements of code (including the garbage collection component).
* Lisp Changes in Emacs 21.4
** New function `set-process-filter-multibyte' sets the multibyteness
of a string given to a process's filter.
** New function `process-filter-multibyte-p' returns t if
a string given to a process's filter is multibyte.
** A filter function of a process is called with a multibyte string if
the filter's multibyteness is t. That multibyteness is decided by the
value of `default-enable-multibyte-characters' when the process is
created and can be changed later by `set-process-filter-multibyte'.
** If a process's coding system is raw-text or no-conversion and its
buffer is multibyte, the output of the process is at first converted
to multibyte by `string-to-multibyte' then inserted in the buffer.
Previously, it was converted to multibyte by `string-as-multibyte',
which was not compatible with the behaviour of file reading.
** New function `string-to-multibyte' converts a unibyte string to a
multibyte string with the same individual character codes.

View File

@ -1,3 +1,36 @@
2003-02-10 Kenichi Handa <handa@m17n.org>
* process.c (QCfilter_multibyte): New variable.
(setup_process_coding_systems): New function.
(Fset_process_buffer, Fset_process_filter): Call
setup_process_coding_systems.
(Fstart_process): Initialize the member `filter_multibyte' of
struct Lisp_Process.
(create_process): Call setup_process_coding_systems.
(Fmake_network_process): New keyward `:filter-multibyte'.
Initialize the member `filter_multibyte' of struct Lisp_Process.
Call setup_process_coding_systems.
(server_accept_connection): Call setup_process_coding_systems.
(read_process_output): If the process has a filter, decide the
multibyteness of a string to given to the filter by
`filter_multibyte' member of the process. If the process doesn't
have a filter and the result of conversion is unibyte, use
Fstring_to_multibyte (not Fstring_make_multibyte) to get the
multibyte form.
(Fset_process_coding_system): Call setup_process_coding_systems.
(Fset_process_filter_multibyte): New function.
(Fprocess_filter_multibyte_p): New function.
(syms_of_process): Intern and staticpro QCfilter_multibyte.
Defsubr Sset_process_filter_multibyte and
Sprocess_filter_multibyte_p.
* process.h (struct Lisp_Process): New member filter_multibyte.
* lisp.h (setup_process_coding_systems): Add prototype.
* buffer.c (Fset_buffer_multibyte): If the current buffer has a
process, update coding systems for the process.
2003-02-09 Kenichi Handa <handa@m17n.org>
* fns.c (string_to_multibyte): New function.