[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
set-process-filter-multibyte doesn't work well
From: |
MATSUYAMA Tomohiro |
Subject: |
set-process-filter-multibyte doesn't work well |
Date: |
Sat, 08 Mar 2008 22:51:58 +0900 (JST) |
Hi,
GUD and other extensions using comint have a problem that
it doesn't treat multibyte string on Emacs 23.0.60.1 (and cvs head).
So, I tried to fix this problem by adding
set-process-filter-multibyte into comint-exec like:
(let ((proc
(if (consp command)
(open-network-stream name buffer (car command) (cdr command))
(comint-exec-1 name buffer command switches))))
(set-process-filter proc 'comint-output-filter)
+ (set-process-filter-multibyte proc t)
(make-local-variable 'comint-ptyp)
(setq comint-ptyp process-connection-type) ; t if pty, nil if pipe.
;; Jump to the end, and set the process mark.
But it doesn't work well. After a while, I realized that
set-process-filter-multibyte affects on nothing.
(require 'comint)
(make-comint "jdb" "jdb")
(setq proc (get-process "jdb"))
(set-process-filter-multibyte proc t)
(process-filter-multibyte-p proc) ;; => nil
I don't understand what happened in Fset_process_filter_multibyte :-(
CHECK_PROCESS (process);
p = XPROCESS (process);
p->filter_multibyte = !NILP (flag);
+ printf("%d %d\n", !NILP (flag), p->filter_multibyte); /* 1 0 */
setup_process_coding_systems (process);
Please help me.
Regards,
Matsuyama
- set-process-filter-multibyte doesn't work well,
MATSUYAMA Tomohiro <=