マクロの概要(入門用) 文について(Ver9.34対応版)
文について
キーワードと関数は、秀丸エディタの状態を取得したり、パラメータで与えた変数を変換したりできました。どちらかと言えば受動的な動作をしています。
ここで説明する文とは、文章に文字を挿入したり、ファイルを開いたりや編集中のファイルを保存するなどの能動的な動作を実行する命令(コマンド)です。
たとえば、現在編集中のファイルを上書き保存させるなら、文「
save 」を使用します。
「save」の場合は、現在編集中のファイルを上書き保存させるだけなのでパラメータなどを指定しなくても、文だけを記述するだけで命令が実行できます。
しかし、名前を付けて保存する場合は、ファイル名をマクロに指定しないと、マクロはどのような名前を付けるのかがわかりません。このようにパラメータが必要な文もあります。「
saveas 」は名前を付けて保存する文です。
例 |
saveas "ABC.txt";
これ↑がパラメータ
|
上記の例では、現在秀丸エディタで開いているファイルと同じフォルダに「ABC.txt」という名前で新規保存します。それは、フォルダを指定していないからです。
どこのフォルダに保存するのかもパラメータで指定すれば可能です。
例 |
saveas "C:\\Folder\\Documents\\ABC.txt";
|
上記の例では、C:\Folder\Documentsフォルダに「ABC.txt」という名前で新規保存します。
また、保存する文字コードや改行の指定もできます。
「saveas」のパラメータ指示は、以下の通りです。
書式
saveas ファイル名[,sjis |unicode |euc |jis |utf7 |utf8 |euro |gb2312 |big5 |euckr][,lf |cr]
「 [ ] 」は省略可能なパラメータを表します(「 [ ] 」は記述の必要はありません)。
「 | 」はどれか一つを選択するという意味です。
上記の例では、「ABC.txt」という名前で、文字コードをSHIFT_JISで新規保存します。
現在編集中のファイルを上書き保存させるマクロを作成します。
上書き保存するのかどうかを「はい」か「いいえ」で使用者に問い合わせるダイアログボックスを表示させます。
「はい」なら上書き保存し、「いいえ」なら名前を付けて保存するダイアログボックスを表示させます。
この場合に使用する文を説明します。
「
question 」は使用者に問い合わせをする文です。
「はい」を選択したのか「いいえ」を選択したのかは、「
result 」というキーワードで取得できます。
「はい」ならresultは「1」になり、「いいえ」なら「0」になります。また、「
yes 」というキーワードは「1」を表し、
「
no 」というキーワードは「0」を表します。キーワード「yes」「no」を使用すれば、if文の条件式で数字を使うより、わかりやすく記述できます。
名前を付けて保存するダイアログボックスを表示させる文は「
SAVEAS 」です。
例 |
question "上書き保存しますか?\n「いいえ」で名前を付けて保存するダイアログボックスを表示します";
if( result == yes ){
save;
}
else{
SAVEAS;
}
|
このマクロをショートカットキーの「ctrl」+「S」で登録すれば、デフォルトでは上書きしかできなかったショートカットキーに、名前を付けて保存する機能も追加されます。このようにマクロを作成すると、秀丸エディタを自由にカスタマイズできます。
秀丸マクロには文は多数あります。該当する文のヘルプを参照すると、使用方法が書いてありますので参照してください。