DIESEL
DIESEL式
DIESEL(Direct Interpretively Evaluated String Expression Language)式は、文字列を受け取り結果として文字列を返す言語。
DIESEL はメニュー マクロの中で使用したり、ステータス行に文字列を表示するために使用される。
DIESEL の関数
- + (加算)
- - (減算)
- * (乗算)
- / (除算)
- = (に等しい)
- < (より小さい)
- > (より大きい)
- != (に等しくない)
- >= (より小さいか等しい)
- <= (より大きいか等しい)
- and
- angtos
- edtime
- eq
- eval
- fix
- getenv
- getvar
- if
- index
- nth
- or
- rtos
- strlen
- substr
- upper
- xor
DIESEL エラー メッセージ
DIESEL 式では、エラーの性質に応じて、出力ストリームにエラー表示が埋め込まれる。 (IJCADではない。)
エラー メッセージ | 説 明 |
---|---|
$? | 構文エラーです(通常、右括弧が抜けていたり、文字列がない場合)。 |
$(func,??) | func の引数が間違っている。 |
$(func)?? | func は、未定義の関数。 |
$(++) | 出力文字列が長すぎます。評価は中止される。 |
DIESEL カスタマイズでのデバック
AutoCADでは、macrotrace を有効にすることで各ステップの評価を確認する事が出来る。
これによりステップの多い DIESEL 式を利用したカスタマイズを行いやすくなる。
(IntelliCADには、この機能はない。)
評価タイミングの問題
DIESEL カスタマイズを行っていると出てくる問題として、メニューマクロの評価タイミングの差異によりうまく動作しないというものがある。これは、PCの性能などにより、同じ DIESEL式でもPCによっては期待通りに動かない(評価結果が反映されない)というものである。 この問題については、メニューマクロの記述を変えることで評価のタイミングを変えるいうトリッキーな手法で回避できる場合があるが、状況対応であり根本的な解決にはならない。