getstring で文字列を挿入するとき、空白を入れようとスペースキーを使うと、エンターキー同様、入力終了となり文字列に空白を入れることができません。
引数に T を足すことで、スペースキー=空白 そして、エンターキー=確定 になります。
関数 getstring
AutoLISP 関数 getstring では、ユーザーが入力した文字列を得る機能があります。
引数はプロンプトメッセージですが、省略もできます。
戻り値は、ユーザーが入力した文字列です。
(setq tx (getstring))
これを、コマンドラインに入力してみてください。
文字列を入力するようにプロンプトが出て、そこで入力した文字列が、変数Txに入ります。
入力文字列に空白がある場合
(setq tx (getstring))
ではここで、
Jagaimo Lisp
と入力してみて下さい。
空白を入れるためにスペースキーを押すと、確定されて ”Jagaimo”とTXに入って終わってしまいます。
引数 T
関数 getstring で、空白も含んだ文字列を入れたい時は、引数にTを入れます。
(setq tx (getstring T))
今回はスペースキーで空白が入り、エンターキーを押すまでは終了しません。
引数 プロンプト
Tを入れても、続けて引数にプロンプトメッセージも付けることができます。
(setq tx (getstring T “Jagaimo Lisp と入力:”))
まとめ
- getstringは、文字列をユーザー入力で得るための関数。
- 引数にTを入れることで、空白を入力できるようになる。
- プロンプトメッセージを引数で設定できる。
- 戻り値はユーザー入力の文字列。
関連記事
getstring を使ったサンプルコマンドです。
Comments