Article View: fj.editor.mule
Article #3153Re: emacs19.29 on DMPI go32
From: CL4K-FJI
Date: Tue, 30 Jan 1996 00:00
Date: Tue, 30 Jan 1996 00:00
102 lines
4005 bytes
4005 bytes
Nifty 藤井です。
週に一度位しか fj.editor.mule の記事を読まないんで遅くなりましたが
山川>電通大のどこにあるのでしょうか?
site : ftp.ee.uec.ac.jp
directory : /pub/msdos/mule-2.3
file name : MULE23D.TAZ
となっています。ただし英語版の Windows 3.1 では動作するかどうかを確認
していませんよ。日本語版 Windows 3.1 でないと動作しない可能性は多分に
ありますので注意してください。
山川>emx1929*.zipを使っているのですが、キーボードの入力とは無関係に、
山川>PとかQとかが入力されて困っています。
sysdep.c select_alarm () の BUG です。sysdep.c 2398 行目あたりの
/* If we are looking only for the terminal, with no timeout,
just read it and wait -- that's more efficient. */
if (*local_timeout == 100000 && process_tick == update_tick
&& FD_ISSET (0, &orfds))
{
int fd;
for (fd = 1; fd < nfds; ++fd)
if (FD_ISSET (fd, &orfds))
goto hardway;
if (! detect_input_pending ())
read_input_waiting ();
FD_SET (0, rfds);
return 1;
}
を
/* If we are looking only for the terminal, with no timeout,
just read it and wait -- that's more efficient. */
if (*local_timeout == 100000 && process_tick == update_tick
&& FD_ISSET (0, &orfds))
{
int fd;
for (fd = 1; fd < nfds; ++fd)
if (FD_ISSET (fd, &orfds))
goto hardway;
#ifdef MSDOS /* 95.12.17 by K.Fujii */
while (! detect_input_pending ())
;
#else
if (! detect_input_pending ())
read_input_waiting ();
#endif
FD_SET (0, rfds);
return 1;
}
とすればなおります。
ところで emacs-19.30 base の mule-2.3 を使っておられる方にお聞きした
いんですが case-fold-search が non-nil のときに検索コマンドはことごと
く失敗しません?
case-table が従来の Lisp_String から Lisp_Char_Table に変更されてい
て、その Lisp_Char_Table は
struct Lisp_Char_Table
{
/* This is the vector's size field, which also holds the
pseudovector type information. It holds the size, too.
The size counts the defalt and parent slots. */
EMACS_INT size;
struct Lisp_Vector *next;
Lisp_Object contents[CHAR_TABLE_ORDINARY_SLOTS];
/* This holds a default value,
which is used whenever the value for a specific character is nil. */
Lisp_Object defalt;
/* This points to another char table, which we inherit from
when the value for a specific character is nil.
The `defalt' slot takes precedence over this. */
Lisp_Object parent;
/* This should be a symbol which says what kind of use
this char-table is meant for.
Typically now the values can be `syntax-table' and `display-table'. */
Lisp_Object purpose;
/* These hold additional data. */
Lisp_Object extras[1];
};
そして DOWNCASE_TABLE マクロは
#define DOWNCASE_TABLE XCHAR_TABLE (current_buffer->downcase_table)->contents
となっていて Lisp_Object の配列を取り出すようですが、char * を期待して
いる正規表現ルーチンにこれをそのままわたしても期待した動作をしないと思
うんですが・・・
RE_TRANSLATE_TYPE を Lisp_Object * に #define するだけではだめなよう
ですが・・・
藤井 勝親 <JAE01012@niftyserve.or.jp>
<CL4K-FJI@asahi-net.or.jp>
Technical Details
Message-ID:
<4em1vm$qtg@panther.asahi-net.or.jp>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<YAMA.96Jan25233915@felix.teleport.com>Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS X-Google-Thread: 10eba4,c338cc4cadfcfc00 X-Google-Attributes: gid10eba4,public From: CL4K-FJI@j.asahi-net.or.jp Subject: Re: emacs19.29 on DMPI go32 Date: 1996/01/30 Message-ID: <4em1vm$qtg@panther.asahi-net.or.jp> X-Deja-AN: 137222458 distribution: world references: <YAMA.96Jan25233915@felix.teleport.com> content-type: text/plain; charset=ISO-2022-JP organization: Asahi Net mime-version: 1.0 newsgroups: fj.editor.mule