[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
[MD:529]call-process when using argument-editing
- X-ml-count: 529
- Subject: [MD:529]call-process when using argument-editing
- From: Tatsuya Ichikawa <ichikawa@xxxxxxxxxxxxxx>
- Date: 25 Feb 1998 11:12:31 +0900
- X-mailer: Semi-gnus 6.0.5 (based on Quassia Gnus v0.32)
>>>>> In <u3eh9uswb.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
>>>>> "himi" = Miyashita Hisashi(宮下 尚:HIMI) <himi@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
himi> だーれも、答えないなぁ。^_^;;;
himi さん、ありがとうございます。
;; himi さんが Mail を読んでくれているうちにっと...
himi> Argument Editingを知るための最も良い方法
himi> 「とにかく試してみよう。」
himi> (define-process-argument-editing "/movemail\\.exe\\'"
himi> (lambda (x) (setq foo
himi> (general-process-argument-editing-function x nil t t nil t t))))
himi> として、fooの中を後から見てみましょう。^_^;;;
お!実行したコマンドラインがそのまま見れる。
himi> まさに、テストが、すべてを教えてくれるでしょう。
なんですが...いまいち call-process から呼んだ時、きちんと call-process が
返って来る時と、返って来ない時の差がまだ良く分からないです。
今、試した事は...
(define-process-argument-editing "/movemail\.exe\\'"
(lambda (x) (setq foo
(general-process-argument-editing-function x nil t t nil t t))))
で foo を見ると
c:\\meadow\\1.00\\bin\\movemail.exe -p po:ichikawa c:\\ichikawa\\Mail
\\gnus-crashbox password
となってまして...さらに
(define-process-argument-editing "/wlprt32\\.exe$"
(lambda (x) (setq foo
(general-process-argument-editing-function x nil t))))
で foo を見ると
e:\\Winlprt\\wlprt32.exe c:/ichikawa/.emacs
となってました。
あ、argument の "/" と "\\" が違いますね。
確かに、後で試した e:\\Winlprt\\wlprt32.exe c:/ichikawa/.emacs はこのまま
DOS 窓の Command Line で打ったらきちんとしたファイルが印刷できませんね。
himi> 要はArgument Editing ってのは、
himi> argv[] -> 文字列
himi> への変換をするためのものです。
himi> で、文字列 -> argv[]
himi> へ変換するやり方は、アプリケーションごとに違うのが問題です。
himi> 1.... 'msvc
himi> MSVCRT?.DLL or LIBC.LIBを用いて、argv[]を取る
himi> VisualC++で開発された、argv[]を用いるアプリケーション
himi> Meadowに付属するすべてのアプリケーションはこれに該当します。
himi> 2.... 'cygnus
himi> CYGWIN.DLL を用いて、argv[]を取る
himi> Cygwin32に付属するすべてのアプリケーションはこれに該当します。
himi> 3.... nil
himi> 自前で文字列をパースする。
himi> Windowsに付属するかなりのアプリケーションはこれに該当します。
しかし、疑問なのが call-process が返って来る場合と返って来ない場合の差異な
のです。
もう少し movemail で試してみます。
--
Tatsuya Ichikawa : Epson Software Development Lab, Inc. Nagano , Japan.
# PGP Public Key : See below url. ;-)
http://www.icat.or.jp/cgi-bin/pgpsearchkey.pl?op=get&search=0x0A2D6599
E-mail : <ichikawa@xxxxxxxxxxxxxx><t-ichi@xxxxxxxxxxxxxxxxx>