🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.editor.mule
Article #3153

Re: emacs19.29 on DMPI go32

#3153
From: CL4K-FJI
Date: Tue, 30 Jan 1996 00:00
102 lines
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-mail
References: <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