Hiroyuki Komatsu
komat****@taiya*****
2005年 3月 2日 (水) 17:17:21 JST
At Wed, 02 Mar 2005 16:12:47 +0900, 小松 弘幸 wrote: > > test.plなどのファイルを開くとcperl-mode + font-lock-modeに > > なるのですがその時にprimeモードに入って日本語を入力しようとすると、 > > エラーが起こります。自分だけでしょうか。 > > XEmacs 21.4.17を使っています。 > > こちらでも確認しました。 > > PRIME で "a" と入力すると以下のエラーがでました。 > > | Debugger entered--Lisp error: (args-out-of-range "ok > | あ > > | " 9) > | string-match("\n" "ok\nあ \n\n" 8) > | split-string("ok\nあ \n\n" "\n") > | (delete "" (split-string result "\n")) > | (cdr (delete "" (split-string result "\n"))) > | (car (cdr (delete "" ...))) > | (or (car (cdr ...)) "") > | (mell-string-split (or (car ...) "") " ") > | (let ((result ...)) (mell-string-split (or ... "") " ")) > | prime-server-send-command2("edit_insert 1 a\n") > | prime-server-edit-insert("1" "a") > | prime-input-insert-char(?a) > | (cond ((prime-enum-keyin char)) ((prime-keyin-kutouten char)) ((prime-keyin-direct char)) (prime-conv-mode (prime-fix prime-curstr) (prime-after-fix char)) ((prime-keyin-capital char)) (t (prime-input-mode-on) (prime-input-insert-char char))) > | prime-keyin(nil) > | (if arg (self-insert-command (prefix-numeric-value arg)) (prime-keyin arg)) > | prime-fund-keyin(nil) > | call-interactively(prime-fund-keyin) > > 原因等はまだ不明ですが、対応したいと思います。 原因は、 (string-match "\n" "ok\nあ \n\n" 8) の挙動が CPerl モードでは、他と異なるからのようです。つまり、 (string-match "a" "あ" 1) が CPerl モードではエラーになり、 通常のモードでは nil が返ります。 これの理由は依然不明です。 -- 小松弘幸 ----------------------- http://taiyaki.org/