您可以使用引入以 DIESEL (直譯式演算字串表示式語言) 撰寫的巨集表示式的指令,將條件表示式加入巨集。
格式如下:
$M=expression
使用 $M= 引入巨集可告知應用程式將某字串做為 DIESEL 表示式來演算,且該 表示式 為 DIESEL 表示式。以下範例定義了巨集中的條件表示式:
FILLMODE $M=$(-,1,$(getvar,fillmode))
透過以下方法,巨集可打開或關閉系統變數 FILLMODE:從 1 減去 FILLMODE 的目前值,並將產生的值傳回系統變數 FILLMODE。對於有效值為 1 或 0 的系統變數,都可以使用此方法來切換。
如果您使用 DIESEL 字串語言執行「if-then」測試,則條件可能存在於您不希望有正常終止空格或分號 (相當於 Enter) 的地方。如果在巨集的結尾加入 ^Z,則應用程式不會自動在巨集表示式的結尾加入空格 (Enter)。
與指令中的其他控制字元一樣,此處使用的 ^Z 是由 ^ (脫字字元) 與 Z 構成的字串,它不同於按 Ctrl+Z (或 Mac OS 上的 Control-Z)。
在以下範例中,^Z 被用作巨集終止符號。
^C^C$M=$(if,$(=,$(getvar,tilemode),0),$S=mview _mspace )^Z ^C^C$M=$(if,$(=,$(getvar,tilemode),0),$S=mview _pspace )^Z
如果這些巨集不以 ^Z 結尾,則應用程式會自動加入一個空格 (Enter),並重複最後輸入的指令。