# Launcherスクリプト仕様書：コマンドリファレンス編

## 1. 本書の位置付け

本書は Launcher スクリプトの主要コマンドを整理したリファレンスである。  
コマンド名と説明は PDF 版の新しい仕様を優先する。 fileciteturn7file0 fileciteturn7file1

---

## 2. 設定ファイル系

## 2.1 read_ini

```ini
read_ini ini_file section key variable [default]
```

ini ファイルの `section` セクションの `key` を読み込み、`variable` に設定する。 fileciteturn7file0

## 2.2 write_ini

```ini
write_ini ini_file section key value
```

値を ini ファイルへ書き込む。 fileciteturn7file0

## 2.3 read_ini_all

```ini
read_ini_all ini_file variable
```

ini ファイルを読み込み、`variable.key` 形式に値を書き込む。 fileciteturn7file0

## 2.4 read_ini_to_vars

```ini
read_ini_to_vars ini_file
```

ini ファイルを読み込み、`key` 変数に直接値を書き込む。 fileciteturn7file0

## 2.5 load_dotenv

```ini
load_dotenv ini_file
```

ファイルを読み込み、変数へ値を書き込む用途で使う。  
現行実例では `.env` 読み込みに使われている。 fileciteturn7file0turn3file12

## 2.6 read_labels

```ini
read_labels $(input_path)
```

Excel/CSV 形式ファイルの1行目ラベルを `variable` に設定する。 fileciteturn7file0

---

## 3. ファイル選択・探索系

## 3.1 get_open_file_name

```ini
get_open_file_name "*.xlsx"
```

ファイル選択ダイアログを表示する。 fileciteturn7file0

## 3.2 get_open_file_name_continue

Cancel しても処理を続行する版。 fileciteturn7file0

## 3.3 get_save_file_name

保存先ファイル名を取得する。 fileciteturn7file0

## 3.4 get_save_file_name_continue

Cancel しても処理を続行する保存版。 fileciteturn7file0

## 3.5 get_open_dir_name

ディレクトリ選択ダイアログ。 fileciteturn7file0

## 3.6 get_open_dir_name_continue

Cancel しても処理を続行するディレクトリ選択版。 fileciteturn7file0

## 3.7 choose_if_not_exist

```ini
choose_if_not_exist editor_path
```

指定変数に入っているファイルが存在しないとき、ファイル選択ダイアログで選ばせる。 fileciteturn7file0

## 3.8 search_files

```ini
search_files csc_path file_name start_path
```

`start_path` を起点に `file_name` を探し、パスのリストを変数に返す。 fileciteturn7file0

## 3.9 search_latest_files

```ini
search_latest_files csc_path file_name start_path
```

検索結果のうち最新のパスを返す。 fileciteturn7file0

---

## 4. ダイアログ系

## 4.1 select_dialog

選択肢リストから選んだ文字列を変数へ返す。  
`#` 以降はコメントとして削除され、デフォルト値はコメント除去後の文字列で照合される。 fileciteturn7file0

## 4.2 color_dialog

色選択ダイアログ。 fileciteturn7file0

## 4.3 font_dialog

フォント選択ダイアログ。 fileciteturn7file0

## 4.4 input

インプットダイアログを表示し、変数へ設定する。 fileciteturn7file0

## 4.5 ask_yesno_dialog

Yes/No を尋ねる。Cancel でスクリプト中断。 fileciteturn7file0

## 4.6 ask_okcancel_dialog

OK/Cancel を尋ねる。Cancel でスクリプト中断。 fileciteturn7file0

## 4.7 show_error_dialog

エラーメッセージを表示する。 fileciteturn7file0

## 4.8 new_dialog

ダイアログ設定開始。 fileciteturn7file1

## 4.9 custom_dialog

ダイアログ表示。  
ボタン種別として `ok`, `cancel`, `yes`, `no`, `close` を指定できる。 fileciteturn7file1

---

## 5. 変数操作系

## 5.1 set

```ini
set variable=value
```

変数へ値を設定する。 fileciteturn7file0

## 5.2 set_if_blank

値が未設定または空文字なら設定する。 fileciteturn7file0

## 5.3 set_if_not_blank

値が設定されていれば設定する。 fileciteturn7file0

## 5.4 set_if_null

空文字であれば設定する。 fileciteturn7file0

## 5.5 set_if_not_null

空文字以外であれば設定する。 fileciteturn7file0

## 5.6 set_dialog_var

ウィジェット変数に文字列を設定する。 fileciteturn7file0

## 5.7 set_dialog_values

ウィジェット変数にリスト変数 `values` を設定する。 fileciteturn7file0

## 5.8 add_path

`PATH` などのパス変数へ重複しないよう追加する。  
PDF では `add_path newpath` と説明されるが、現行実例では `add_path PATH ...` のような使い方もある。 fileciteturn7file0turn3file15

## 5.9 print_all

`ret.key` 変数を表示する。 fileciteturn7file0

## 5.10 del_quote

文字列両端の引用符を削除する。 fileciteturn7file0

## 5.11 split_str

文字列を区切って一部を変数へ設定する。 fileciteturn7file0

## 5.12 remove_comment

`#` 以降を除去して値だけにする。 fileciteturn7file0

---

## 6. パス名・ファイル名操作系

## 6.1 get_directory

パスからディレクトリ名を取得。 fileciteturn7file0

## 6.2 get_filebody

拡張子を除いたファイル名を取得。 fileciteturn7file0

## 6.3 get_filename

拡張子を含むファイル名を取得。 fileciteturn7file0

## 6.4 join_path

引数を連結してパスを作り、変数へ設定する。 fileciteturn7file0

## 6.5 use_os_path_sep

パス区切りを OS 規定へ修正する。 fileciteturn7file0

## 6.6 get_file_list

ディレクトリ中の該当ファイル名を `##` 連結で返す。 fileciteturn7file0

## 6.7 get_dir_list

ディレクトリ中の該当ディレクトリ名を `##` 連結で返す。 fileciteturn7file0

## 6.8 旧来からのファイル名分解コマンド

古い資料では次も確認できる。 fileciteturn6file0

- `get_drive`
- `get_directory_without_drive`
- `get_last_directory`
- `get_ext`
- `get_cur_dir`

---

## 7. メッセージ・UI 更新系

## 7.1 set_title

ダイアログタイトルを設定する。 fileciteturn7file0

## 7.2 message_dialog

メッセージダイアログを表示する。 fileciteturn7file0

## 7.3 echo

コンソールへ出力する。 fileciteturn7file0

## 7.4 set_message

メッセージエントリーへ表示する。 fileciteturn7file0

## 7.5 set_command_line

コマンドラインエントリーへ表示する。 fileciteturn7file0

## 7.6 set_command_line2

コマンドラインエントリー2へ表示する。 fileciteturn7file0

## 7.7 show_message

Launcher メッセージテキストボックスへ表示する。 fileciteturn7file0

## 7.8 set_args

Args エディットボックスへ設定。 fileciteturn7file0

## 7.9 set_selected_file

File エディットボックスへ設定。 fileciteturn7file0

---

## 8. ファイル操作系

## 8.1 get_cur_dir

現在ディレクトリを変数へ入れる。 fileciteturn7file0

## 8.2 chdir / cd

ディレクトリ移動。 fileciteturn7file0

## 8.3 mkdir / md

ディレクトリ作成。 fileciteturn7file0

## 8.4 rmdir / remove

ディレクトリ削除。 fileciteturn7file0

## 8.5 copy

ファイルコピー。ワイルドカード不可。 fileciteturn7file0

## 8.6 delete / del

ファイル削除。ワイルドカード不可。 fileciteturn7file0

---

## 9. Launcher システム関連

## 9.1 load_menu

ini を再読み込みし、メニューとボタンを最新化する。 fileciteturn7file0

## 9.2 show_window

```ini
show_window Minimize|Maximize|Normal|Hide|Show|TopMost|NoTopMost
```

Launcher の表示状態を制御する。 fileciteturn7file0

## 9.3 wait_process

直前に実行した外部プログラムの終了を待つ。 fileciteturn7file0

## 9.4 debug

デバッグモードを設定する。 fileciteturn7file0

## 9.5 confirm on / off

外部プログラム実行前にコマンドライン確認ダイアログを出す。 fileciteturn7file0

## 9.6 check_exist

パス存在確認。メニュー状態表示にも実行時エラー表示にも使う。 fileciteturn7file0

## 9.7 exit_if_defined / exit_if_not_defined

環境変数の定義有無で処理中止。 fileciteturn7file0

## 9.8 exit_if_exist / exit_if_not_exist

ファイル存在有無で処理中止。 fileciteturn7file0

## 9.9 bye

Launcher を終了する。 fileciteturn7file0

---

## 10. GUI 拡張コマンド

PDF の widget 仕様書で、以下が明示されている。 fileciteturn7file1

- `eval`
- `copy_svars2config`
- `copy_config2scars`
- `add_tooltip`
- `create_menu`
- `add_context_menu`
- `show_context_menu`

これらは現行 Launcher の GUI 拡張・補助機能として重要である。

---

## 11. 未実装・旧資料由来の項目

古い資料には未実装項目も記録されている。たとえば以下。 fileciteturn6file0

- `CopyIfExist`
- `CopyIfNotExist`
- `DecomposeParameters`
- `GetHeader`
- `UpdateCaption`
- `ClearErrorMessage`
- `OnError`

PDF 版に無いものは、旧設計メモとして扱うのがよい。
