[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
about ARGV(Emacs-Lisp => perl,ruby)
- X-ml-count: 3097
- Subject: about ARGV(Emacs-Lisp => perl,ruby)
- From: Norihiro Morimoto <nori2@xxxxxxxxxxxxx>
- Date: 05 Feb 2001 14:45:33 +0900
- User-agent: Nana-gnus/6.13.9 SEMI/1.13.5 (Meihō) FLIM/1.13.2 (Kasanui) Emacs/20.4 (i386-*-windows98.2222) MULE/4.1 (AOI) Meadow/1.10 (TSUYU)
Morimotoです。お世話になります。
Eamcs-Lispからperlにパラメータを渡し、perlの処理結果をMeadowの
bufferに表示するときに、パラメータによって処理がうまくいきません。
下記のようなテストをすると、渡したはずのパラメータの最後に`"'が
加えられてしまいます。どうすれば良いのでしょうか。
サンプル(argtest.el)
-------------------------------------------- ここから
(defun my-arg-test ()
(interactive)
(setq my-arg-test-buffer
(get-buffer-create "*my message*"))
(let (window param )
(switch-to-buffer my-arg-test-buffer)
(setq window (selected-window))
(setq param "書き能") ; <==================== 色々変える
(call-process "c:/home/myemacs/argtest.pl" nil
"*my message*" t param))) ;
---------------------------------------------- ここまで
サンプル(argtest.pl)
--------------------------------------------- ここから
#!/usr/local/bin/jperl
#
$ggg=@ARGV[0];
print ("パラメーター$ggg\n");
--------------------------------------------- ここまで
結果(*my message*の内容)は
`能書き' の場合は ==> パラメーター能書き
`書き能' の場合は、==> パラメーター書き能"
`書き能a'の場合は、==> パラメーター書き能a
になります。つまり、「能」が最後だと"が追加される。
同じことをruby(ver 1.6.1 (2000-09-27) [i586-mswin32])ですると、
`"'ではなくて、`\"になります。
Meadowはver 1.10(20.4.1 (i386-*-windows98.2222)
perlは5.005_03 built for MSWin32-x86-object
jperlでも同じ結果です(jperl5.005_03-990822)
よろしくお願いします。
--
** nori2@xxxxxxxxxxxxx **
** Norihiro Morimoto **