# ChangeLog

## [Unreleased]

なし

## 0.54.0 - 2026-05-17

### Added

- #237 ウインドウ切替コマンドに位置・サイズを指定する機能を追加 / ウインドウ選択切替の機能を登録型コマンドのウインドウ切替コマンドに統合

### Changed

- 定型文グループコマンド、Web検索コマンド、エイリアスコマンドの設定画面レイアウトを修正
- Web検索コマンドのデフォルトアイコンを変更  
デフォルトのブラウザアイコン→shell32.dllの虫眼鏡アイコン
- 一部のコマンドの説明文を微修正
- #240 ホットキーのUI周りを修正
- プロジェクトのC++バージョンをC++20に変更
- fmt::formatをstd::formatに置き換え / spdlogもstd::formatを使う形に変更

### Fixed

- #242 アプリ終了時に一時ファイルを消していない
- #241 定型文グループコマンド 設定画面でアイテムを削除すると「名前が重複している定型文があります」というエラーがでる
- ウインドウ選択切替において、不可視なUWPアプリが候補として表示されてしまう
- ウインドウの位置をリセットしたときに、ウインドウ高さがおかしい

## 0.53.0 - 2026-03-20

### Changed

- Win32メニュー項目の機能をUIAutomationから分離(クラス構成の変更)
- [Win32メニュー項目検索] 表示中の全てのウインドウを対象にするオプションを追加

### Fixed

- Python拡張コマンドをホットキー経由で実行したときにスクリプトの内容が期待通りに動作しない場合がある

## 0.52.2 - 2026-02-26

### Fixed

- #232 VSCodeの履歴コマンドが動作しない
- #233 候補リストの行高さが縮んで文字が重なる

## 0.52.1 - 2026-02-18

### Changed

- #227 Win32メニュー項目に対するキャッシュ/別名設定機能を実装

## 0.52.0 - 2026-02-15

### Added

- #225 キーワードマネージャのフィルター欄で文字を入力するたびにリストを更新しない
- #103 #227 画面上のUI要素をラベルで検索して実行(クリック、選択)する機能

### Changed

- #228 他のコマンドを選択するときのUIの見直し
- 定型文グループコマンドの一致判定対象として、説明やテキストを含める
  - 従来は名前のみを使って一致判定をしていた
- 定型文グループコマンドを編集するときの初期フォーカスをリストに設定する

### Fixed

- #231 `launcher_proxy`側でのOneNoteページ一覧取得を非同期で行う
- フィルタコマンドや簡易辞書コマンド経由で別のコマンドを実行したとき、コマンド実行履歴への登録を行わない
- ヘルプウインドウのwebview2領域をクリックしないとキー操作によるスクロールができない
- あふwからの情報取得ができない

## 0.51.0 - 2026-01-27

### Added

- #221 Ctrl-C,Ctrl-Vによるコマンドのコピペ機能(リモートデスクトップ経由でのコマンドのエクスポートとインポート)

### Changed

- #218 【仕様変更】アクティブウインドウのモニター中央に入力画面を表示する
- ディレクトリ名の変更`gui`→`control`
- #220 ヘルプウインドウを専用のウインドウで開く

### Fixed

- #217 AfxW_GetCurrentDirで落ちることがある
- #222 プレフィックスを設定しているとOneNoteコマンドでページ名検索できない
- #224 キーワードマネージャでコマンドを削除したあと、ダイアログをキャンセルした場合に、削除したコマンドが元に戻らない

## 0.50.0 - 2026-01-04

### Added

- #215 key.writeのキー入力でマルチバイト文字を入力できるようにする

### Changed

- #216 定型文グループ設定時に一つの画面で定型文を登録できるようにする

## 0.49.0 - 2025-12-26

### Added

- #208 単語削除するキーを設定できるようにする
- #214 ファイルやフォルダを任意のコマンドで開けるようにする

### Changed

- #212 ExplorePathCommandを実行したときに履歴登録する形に戻す、かつ、フルパスを履歴として表示する

### Fixed

- #213 候補がない状態でTabキーを押すとフォーカスが外れてしまう

## 0.48.2 - 2025-12-22

### Fixed

- #211 フォルダ/ファイルを実行するときは履歴登録しない

## 0.48.1 - 2025-12-21

### Added

- #210 通常コマンドがフォルダパスを指す場合、フォルダの子要素を列挙できるようにする

### Fixed

- #209 フォルダ内要素を列挙するときに前方一致の要素が優先されない

## 0.48.0 - 2025-12-20

### Added

- #206 フォルダの子要素を列挙する

## 0.47.3 - 2025-11-29

### Fixed

- sqlite3ファイルを新規作成する系の機能が動作しない(例: クリップボード履歴)

## 0.47.2 - 2025-11-17

### Fixed

- explorerマクロが動作しない

## 0.47.1 - 2025-11-08

### Fixed

- 0.47.0で追加した処理について、特定ケースで落ちる不具合を修正
- #205 ウインドウ選択切替でウインドウを閉じた後、枠が残ることがある

## 0.47.0 - 2025-11-02

### Added

- #200 Outlookフォルダ選択機能
- #202 通常コマンドで起動するアプリ(のウインドウ)がすでに存在する場合はウインドウ切替できるようにする
- #198 修飾キーの押下状態に応じてガイド欄の項目を強調表示する
- #204 配色設定でUndoできるようにする

### Changed

- #195 tidy-html5を静的リンクではなくDLLとして利用するようにする
- #199 Python拡張コマンドで実行したスクリプト内で実行時引数を受け取れるようにする

### Fixed

- #196 フィルタコマンドの後段アクションとして振り分けコマンドを設定したとき振り分けが機能しない
- #201 アプリ設定画面を表示したとき前面に表示されない
- #203 コマンド設定画面をリサイズするとコントロールのレイアウトが崩れる

## 0.46.0 - 2025-10-19

### Added

- #191 Visual Studio Codeの最近使用した項目を表示する
- #194 Pythonで処理を定義できるコマンドを追加する

### Fixed

- #189 IconLoader::LoadIconFromPath内のラムダ関数で参照しているwaitEventHandleをコピーキャプチャする
- #192 グループコマンドからWeb検索コマンドを実行したときにキーワード検索できない
- #193 特定条件下で検索が重くなる

## 0.45.2 - 2025-10-06

### Changed

- #187 【ウインドウ選択切替】ウインドウを閉じた後に入力ウインドウを閉じないようにする
- #188 URLを直接入力して実行したときに履歴に登録するのをやめる

### Fixed

- #181 初回起動時のみOneNoteがインストールされているか確認する
- #183 コマンドを更新した後に落ちる 
- #185 【フィルタコマンド】後段の処理が「他のコマンドを実行する」のときに$selectが展開されない
- #186 正規表現パターンが動的に指定されるにもかかわらず、例外をcatchせずにstd::regex関数を呼び出している
- #180 認証されていないネットワークパスを無効なパスとして扱わないようにする / 無効なマクロ記述があったときに該当箇所を空に置換しない

## 0.45.1 - 2025-09-30

### Fixed

- #182 起動直後に異常終了することがある(KeyInputWatchで落ちる)

## 0.45.0 - 2025-09-29

### Added

- #169 OneNoteのページ表示機能
- #175 Alt-Enterキー入力を扱えるようにする
- #177 Chrome以外のWebブラウザを使えるようにする

### Changed

- #170 【電卓機能】式の先頭要素の基数に合わせて計算結果の順序を変える 
- #172 検索に時間かかかるコマンド種別におけるUI応答性の改善
- #171 内部のメッセージやり取り用で作成しているCreateWindowをクラス化する

### Fixed

- #173 メモリリーク修正
- #178 Windowsサンドボックス環境にて`launcher_proxy.exe`を起動できない
- #179 履歴コマンドを実行したときに履歴通りのコマンドが実行されない

## 0.44.1 - 2025-09-08

### Fixed

- #167 Web履歴検索機能の一部の設定値が保存できない 

## 0.44.0 - 2025-09-07

### Added

- #146 中ボタンクリックでクリップボードのテキストを張り付けする
- #147 #152 WinSCPセッションを扱う機能
- #11 Everythingコマンドの再実装
- #150 【クリップボード履歴】プレビューウインドウ
- #151 [PathFindCommand] 環境変数を解釈できるようにする
- #158 `未登録キーワード入力時の動作`に`何もしない(入力ウインドウを閉じる)'を追加
- #159 【Everything検索コマンド】検索を発動する最小文字数を設定できるようにする
- #162 自動確定を有効にしたコマンド名を含むものをコマンド実行履歴に追加しない 

### Changed

- #149 指定した外部ファイラーが存在しない場合はエクスプローラを使うようにする
- #161 【ブックマーク検索コマンド】ブックマークデータの読み込みタイミングを非同期で行う
- #155 ブックマーク検索コマンドを自動発動型に戻す
- #166 Web履歴コマンドを自動発動型に戻す

### Fixed

- #148 【ウインドウ選択切替】Chromeのウインドウが候補に含まれない
- #163 【ブックマーク検索コマンド】フォルダ名とブックマーク名を同時にキーワードで指定しての絞り込みができない
- #164 アプリ設定画面表示中にランチャー呼出しキーを押した場合は設定画面を前面に出す
- #165 アプリ設定をキャンセルで閉じたあとに入力画面が表示されない

## 0.43.0 - 2025-08-13

### Added

- #138 【試作】コマンドがキーワードに完全一致し、かつ、候補が一つの時に自動確定(実行)する
- #139 【ブックマーク検索コマンド】ブックマークのフォルダ名で絞り込みできるようにする
- #141 入力画面上にアプリケーション設定画面を表示するためのボタンを追加する

### Changed

- #142 【ウインドウ切替】ダイアログクラスとコマンドパラメータクラスの周りの設計変更
- #143 Ctrl-Enterキーで実行した場合にフォルダを表示する 設定を削除
- #144 Sphinxを使ってマニュアルを生成するようにする
- #157 ファイルの最終更新日時を取得する関数を共通化する

### Fixed

- #136 【DirectoryIndexコマンド】接続先がHTTP認証に失敗する場合にフリーズする
- #137 アプリ設定画面を表示するとアプリ終了時にメモリリークする
- #140 Migemoで一部のメタ文字がエスケープされない
- #145 Python3.13との組み合わせたとき、アンロード時に異常終了する

## 0.42.2 - 2025-07-14

### Changed

- #133 【ウインドウ選択切替】候補の一致件数が0件のときに弱一致の候補を非表示にする

### Fixed

- #132 入力文字が1文字のときに前方一致が機能しない
- #134 【ファイル名を指定して実行】ガイド欄に「管理者権限で実行」を表示する
- #135 アプリが落ちることがある

## 0.42.1 - 2025-07-12

### Added

- #127 あふwの選択中ファイルパスを取得できるようにする

### Fixed

- #129 【正規表現コマンド】コマンド設定画面の状態制御がおかしい
- #128 アイコンが消えることがある
- #130 【ウインドウ選択切替】切替ができない
- #131 CIビルドにおけるWinRT関連のシンボルの未解決エラーを解消するためにruntimeobject.libを追加する

## 0.42.0 - 2025-07-06

### Added

- #117 【通常コマンド】設定画面で「絶対パスに置換」ボタンを追加する
- #119 Portable版で動作している場合はその旨をバージョン情報ダイアログに表示する
- #126 【アプリ内マクロ】エクスプローラのパスや選択しているファイルのパスを展開するマクロを新設する

### Changed

- #113 履歴ファイルのファイル名/形式を変更(`history.txt`→`history.json`)
- #118 ガイド欄をウインドウの下端に移動する
- #123 部分一致でマッチしないコマンドを部分一致できるようにする
- #121 【通常コマンド】パスにマクロを使用しているコマンドでガイドを表示できるようにする

### Fixed

- #115 【通常コマンド】設定画面の「表示方法」の位置がずれている
- #116 【通常コマンド】リンク先に置換ボタンとパラメータ欄の表示位置が重なっている
- #120 フォント設定によってはコマンドの種別を表示する列が見切れてしまう
- #122 【フィルタコマンド】コマンドを新規作成するとプログラムが落ちるのを修正
- #124 【通常コマンド】説明欄の文字列をマッチングに利用する設定が保存できない
- #125 アイコントレイのツールチップに表示されるテキストが想定したものと異なる

## 0.41.0 - 2025-06-21

### Added

- #94 【ウインドウ切替コマンド】ホットキーからの実行専用にする設定を設ける
- #96 【ウインドウ選択切替】候補を選択しているときに、その候補がどのウインドウかを強調表示する 

### Changed

- #100 カラーコマンドのアイコンがでかい
- #101 クリップボード履歴で選択した内容を入力欄に張り付ける機能
- #109 コマンド名のマッチングの正規表現エンジンをRE2に変更する
- #110 すべてのワードに対してMigemoを適用する

### Fixed

- #92 【簡易電卓】`<built-in function xxx>`と表示されないようにする
- #93 説明欄で&を含む文字列を表示すると、&が表示されず、アンダースコア表示になってしまう
- #95 フィルタコマンドと辞書コマンドで「リンク切れ」になる
- #97 起動直後にしばらく固まることがある 
- #98 migemoで前方一致しても部分一致として扱われる
- #104 Ctrl+Enterキー押下でコマンドを実行するとBeep音がなる
- #105 `アクティブ時のみ有効`なホットキーの場合に`Win`キーをグレーアウトする
- #106 コマンドのホットキー設定画面で一部のキー名が表示されない
- #107 エイリアスコマンドを実行したとき、入力欄にフォーカスを設定する
- #108 【コード整理】初回呼び出し時の処理を共通化する
- #111 VMWarePlayerの履歴の更新が反映されない
- #112 ホットキーを登録してもキーワードマネージャにホットキーが反映されない

## 0.40.0 - 2025-05-18

### Added

- #80 「最近使ったファイル」を候補から削除する機能を追加
- #86 コマンドのリンク切れを表示する機能を追加
- #90 入力画面を一時的に移動するためのキー割り当てをできるようにする

### Changed

- #77 メインウインドウに直接SendMessage/PostMessageしない
- #78 ガイド欄上の"Enter"の表記を"⏎"に変更する
- #79 初期フォントを`Noto Sans JP`に変更
- #82 `launcher_proxy.exe`をコンソールアプリケーションに変更する
- #87【クリップボード履歴】結果をソートする 
- #89 【通常コマンド】「引数が表示されなかったときに入力欄を続けて表示する」 を削除する
- #91 ファイルやディレクトリを監視する内部処理回りの整理

### Fixed

- #81 プログラム終了時にSpecialFolderFiles::GetShortcutFiles内でAccessViolationがたまに起こる問題を修正
- #83 「除外するファイル」設定の読み取りができない
- #84 proxyを起動しなおすときに前のパイプを閉じる

## 0.39.0 - 2025-04-27

## Added

- #63 【クリップボード履歴】履歴をコピーする際に前後の空白を除去する機能を追加する
- #52 【Excelシート切り替え】プレフィックス対応
- #53 【パワポスライド切り替え】プレフィックス対応
- #68 【通常コマンド】環境変数の一括追加

## Changed

- #65 変数の初期化をuniform initializationで行う
- #71 【Outlookメール表示】機能を削除
- #72 初回起動時に設定ファイル保存先ディレクトリを作成する際に隠しファイル属性を付ける
- #73【クリップボード履歴機能】Migemoを使わない設定【クリップボード履歴機能】Migemoを使わない設定
- クリップボード履歴のデータファイルの形式を変更
  - 従来の形式と互換性がないため、過去バージョンで作成したファイルを開くと、従来の履歴は失われる

## Fixed

- #62 CAppProfile::GetDirPath内でGetComputerNameを呼ぶときの引数が正しくない
- #64 【通常コマンド】環境変数の値の長さの上限を変更する
- #66 エイリアスコマンドの設定画面をリサイズすると一部のコントロールの動作がおかしい
- #74 選択したフォントによってはコマンド種別欄の文字が切れる問題を修正
- #75 候補欄のテキストの描画位置を垂直方向中央寄せにする

## 0.38.0 - 2025-04-13

## Added

- #49 西暦と和暦の相互変換機能
- #55 プレフィックスを入力したら環境変数の一覧を列挙する
- #60 【通常コマンド】追加の環境変数を指定できるようにする

## Changed

- #50 【電卓機能】mathモジュールの関数を`from math import *`でインポートする
- #51 【ウインドウ選択切替機能】機能を発動させるためのプレフィックスを設ける
- #38 管理者権限で動作している状況で、通常権限で動作しているあふwにアクセスできるようにする

## 0.37.1 - 2025-04-06

### Changed

- #47 【正規表現コマンド】パターンの一致を完全一致/前方一致/部分一致を区別できるようにする

### Fixed

- #44 不要なログ削除(EncodeBase64 : empty)
- #45【フィルタコマンド】後段の処理の種別を選択しても、設定画面上の表示が変わらない 
- #46【フィルタコマンド】コマンド新規作成直後に、コマンドが生成する候補が重複して表示される

## 0.37.0 - 2025-03-30

### Added

- #16 【フォルダ更新検知】除外するファイル名のパターンを設定できるようにする
- #17 【試作】クリップボード履歴機能を追加
- #23 コマンド優先度設定画面にフィルター欄を追加
- #24 【Web検索コマンド】よく使われる検索サイトをテンプレートとして選べるようにする
- #28 性能測定用のログを分ける
- #29 Windowsの設定項目を表示するコマンドを追加
- #30 コントロールパネルコマンドとMMCスナップインコマンドのコンテキストメニュー対応 
- #34 エイリアスコマンドの追加
- #40 【簡易辞書コマンド】候補選択後にプログラムを起動する際に表示方法を選択できるようにする

### Changed

- #22 キーワードマネージャのフィルター欄での絞り込みを大文字小文字区別せずに比較する/migemoに対応する
- #32 入力欄に表示するテキストが長いものに対しては「...」でカットする
- #42 アプリケーション設定画面の設計変更

### Fixed

- #19 管理者権限でアプリを実行したときに発生するリソースリークを修正
- #20 `restart`が機能しないのを修正
- #21 一部のコマンド種別で前方一致比較のときに大文字小文字を区別して比較してしまう問題を修正
- #25 カバレッジ実行バッチファイルが動かなくなっている
- #26 キーワードマネージャとコマンド優先度設定画面のリストを並び替えたときの挙動がおかしい
- #27 CAppProfile::Getのdouble版が機能しない
- #31「アクティブウインドウの中央」にウインドウを表示できないことがある問題を修正 
- #43 アプリ設定のログファイル出力先パス欄の表示が切れる

## 0.36.1 - 2025-03-15

### Fixed

- #2 いろいろ期待通りに動かない点を修正

## 0.36.0 - 2025-03-15

### Added

- #2 管理者権限でアプリを実行しているときに、コマンドから起動するプロセスを一般権限に降格して起動する機能を追加
- #8 [簡易辞書機能] キャッシュ処理を実装
- ログレベル設定画面にログ出力先フォルダを開くためのハイパーリンクを追加

### Changed

- [Everythingコマンド]ウインドウメッセージ経由で利用する機能を削除
  - (個人的に全く使わなかった)
- [Everythingコマンド]登録型コマンドを廃止
  - 後日作り直す予定
- アプリが生成する一部のファイルについて保存先を変更
  - 従来は設定ファイル保存ディレクトリ($userdir)直下にログファイルを生成していたが、PC名を表すサブディレクトリを作成し、そこに保存する形に変更  
`profile/per_machine/<PC名>`
  - 対象は下記
    - ログファイル
    - ウインドウ位置情報
    - 履歴
  - この変更により、従来のバージョンで生成したウインドウ位置情報や履歴情報が読み込まれなくなる
- #10 候補欄の垂直スクロールバー表示有無に合わせた背景の塗りつぶしの改善

### Fixed

- #6 [DirectoryIndexコマンド] Ctrl-Enterキーを押下してURLをコピーしたあと、入力欄が一見非表示になっているのに実際は非表示になっていない現象を対策
- #7 すべてのPathFileExists/PathIsDirectoryを内部のラッパー関数に置き換え
  - 存在しないネットワークパスに対してこれらの関数を呼ぶと数十秒程度のフリーズが発生する。その対策として実施。
    - UNCの場合はバックグラウンドで実施して、一定時間(100msec)でタイムアウトさせる。もしかしたら誤判定があるかも・・
- #9 フォントサイズの計算方法を間違えていたので修正 / フォントサイズ初期値を9に変更
- ブラウザ履歴コマンドで開いたデータベースファイルを適切にクローズできていない問題を修正

## 0.35.1 - 2025-02-16

### Fixed

- フォントサイズを変更したとき、アイコン表示欄のサイズをフォントサイズに連動させる

## 0.35.0 - 2025-02-16

### Added

- 入力画面のフォントサイズを指定する機能を追加

## 0.34.0 - 2025-02-11

### Added

- 入力画面を表示するときに、(表示時点で)アクティブなウインドウの中央位置に表示する機能を追加
- [修飾キー連続押下ホットキー]リモートデスクトップのゲスト側にフォーカスがあるときにも修飾キー連続押下ホットキーを有効にする機能を追加
  - ホットキー押下により、ゲスト側からホスト側に強制的にフォーカスを戻すための機能

### Changed

- DecodeBase64Commandで変換結果がUTF-8文字列として正しくない場合は候補に表示しないようにした
- 候補欄に表示する初期アイコンをico以外の形式も指定できるようにした(thanks to @sk74)
- あわせて、初期アイコン設定回りのUIを少し変更(thanks to @sk74)

## 0.33.1 - 2025-02-02

### Changed

- 追加で候補を表示する系コマンドにおいて、候補を絞り込んだ結果としてマッチ件数が0となる場合に候補を表示しない(弱一致の候補を表示しない)

### Fixed

- 起動直後、および、ウインドウ外観設定変更後それぞれの入力ウインドウサイズがおかしい問題を修正

## 0.33.0 - 2025-02-02

### Added

- フィルタコマンドで候補一覧をテキストで直接定義できる機能を追加
- アイコン欄に表示する初期表示アイコンを変更する機能を追加

### Fixed

- フィルタコマンドまわりの不具合修正
  - 一部の設定値が保存されていない問題
  - 候補を表示する際にコマンド名が表示されなくなっていたので修正

- アイコン表示回りにおいて、利用できないUNCパス上のファイルを参照したときにしばらくフリーズする現象を回避するための処理を追加

- フォルダ更新検知コマンドにおいて、UNC形式のパス更新を検知した際にトースト通知をクリックしてもフォルダを開けない問題を修正

## 0.32.0 - 2025-01-01

### Added

- コマンドラインオプション`/ChangeDir`を追加
  - 先行プロセスのカレントディレクトリを変更することができる

- 選択したコマンドに応じたコンテキストメニューを表示する機能を追加
- コンテキストメニューに対するキー割り当てを設定するための設定項目を追加  
`アプリ設定` > `入力` > `キー割り当て` > `コンテキストメニューを表示`

- 入力欄とキーワードマネージャのフィルタ欄にプレースホルダーテキストを表示するようにした

- システムコマンド`restart`を追加。ランチャー本体を再起動するためのコマンド
  - 初期状態では無効
  - 再起動を実現するにあたり、`launcher_proxy.exe`を追加

- フィルターコマンド周りの機能追加
  - 候補を表示するときに表示文字列をカスタマイズできるようにした
  - 後段のプログラムを実行する際に作業ディレクトリと表示方法を指定できるようにした

### Changed

- 通常コマンドの設定画面のUIを変更
  - ファイル選択とフォルダ選択をメニューボタンに統合した
- `コメント表示欄の初期表示テキスト`の初期値を変更(`コマンドを入力` → アプリケーション名)
  - 入力欄のプレースホルダーで「キーワードを入力してください」と表示するようにしたので、候補欄の表示テキストの方も変えることにした
- コマンド表示順序決定の際に、追加で表示する系コマンドに対する優先順位については元のコマンドの優先度を適用するようにした

### Fixed

- キーワードを入力して候補が更新されたとき、候補欄に収まらない数の候補が表示されている状況において、
リストが一つスクロールした状態で表示される(先頭の候補が見えない)現象を修正

- 設定をリロードすると、入力画面のキー割り当てが機能しなくなる問題を修正

## 0.31.0 - 2024-11-24

### Added

- 定型文グループコマンドを追加
- `date`マクロを追加
- [フォルダ更新検知] 更新通知を行う間隔を設定できるようにした
  - 一度通知したあと、次の通知までの時間を設定できる(更新があっても時間が経過するまで通知をしない)
- [フィルタコマンド]前段のプログラムが出力するバイト列を文字列として解釈する際のエンコーディングを指定できるようにした
- [簡易辞書コマンド] 候補の説明欄や名前の表示内容の書式を設定できるようにした

### Changed

- アプリ設定の`表示`ページにあった設定項目の一部を`基本`ページに移動
- フィルタコマンドの候補を前方一致として扱うようにした
- 完全一致、前方一致、部分一致の候補があるとき、弱一致の候補を表示しないよう変更
- [簡易辞書コマンド]コマンド名なしでマッチした候補の一致度を弱一致に変更

### Fixed

- フィルタコマンドの設定ダイアログの状態制御の不備を修正
- システムコマンドの設定変更が選べなくなっていたので修正
- 正規表現コマンドの設定変更がすぐに反映されない問題を修正
- [ファイル名を指定して実行] ダブルクォーテーションで囲われているパスを扱うようにする
- 複数行のテキストがペーストされたときに貼り付けができない問題を修正  
(先頭行のテキストを張り付けるようにした)
- [簡易辞書コマンド] 既存コマンドを編集するとき、編集済フラグの扱いが正しくなかったため修正

## [0.30.0] - 2024-11-09

### Added

- アプリ表示設定`入力画面のアイコンを表示する`を追加
- SandSホットキー機能を追加

### Changed

- ウインドウ外観変更(入力欄と候補欄のボーダーを外した)
- 入力欄にキーワードが未入力状態のときは候補欄を表示しないようにした

### Fixed

- [DirectoryIndex] パスに ../ が含まれるときにそれを除去するようにした
  - コマンドを選択した結果として得られるURL文字列を下記のようにする  
例: `http://host/path/to/subdir/../a.txt` → `http://host/path/to/a.txt`
- Soundクラス回りの不備でまれに落ちる問題を修正

## [0.29.1] - 2024-10-21

### Fixed

- 以前のバージョンで保存した設定ファイルを`0.29.0`で読み込んだ際に、通常コマンドの表示方法が異なっている問題を是正
  - 0.29.0で関連する処理を修正した際にいれたバグ

## [0.29.0] - 2024-10-20

### Added

- キーワードマネージャ画面から既存コマンドを複製する機能を追加
  - すでにあるコマンドの一部のパラメータを変えて、別のコマンドを作ることができる
- パワポのスライドジャンプ機能において、入力キーワードが数値だった場合にスライド番号として解釈し、該当するスライドがある場合に候補として表示するようにした
- `edit`/`delete`コマンドを入力欄に入力したときに、対象となるコマンド名を、候補欄に追加候補として表示するようにした

### Chanaged

- [DirectoryIndex] 候補を表示する際の一致度の扱いを変更(部分一致→前方一致)
- アプリ表示設定の`操作ガイド欄を表示する`を切り替えてもアプリ再起動しなくていいようにした
  - リサイズ時のレイアウト処理を自前でするようにした(CMFCDynamicLayoutManagerの機能を利用しない)
- コマンド名を入力して追加の候補を表示する系コマンドのクラス設計を見直し
  - ExtraCandidateProviderが取りまとめて扱う形に変更した

### Fixed

- `reload`コマンドを実行すると、一部のコマンドが内部的に増殖する問題を修正
- 一部のコマンドにおいて、編集画面でキャンセルしてたときにコマンド保存する問題を修正
  - 実害はないが無駄な保存を行う
- 簡易辞書コマンドで「キー範囲取得」「値範囲取得」を行ったときにExcelアプリケーションを終了させてしまう不具合を修正
- 修飾キー連続押下ホットキーが機能しなくなっていたので元に戻した
  - `0.27.0`～`0.28.0`間で消えていた

## [0.28.1] - 2024-08-31

### Fixed

- コマンドに対してグローバルホットキーを割り当てた状態で`reload`コマンドを実行すると落ちる問題を修正
- 環境によっては、SHGetFileInfo呼び出しに時間がかかる(結果、固まるような現象が起こる)ことがある(らしい)ため、バックグラウンドで実行するようにした

## [0.28.0] - 2024-08-25

### Added

- ウインドウの配色設定機能を追加

### Fixed

- アイコンをD&Dしてコマンド登録する際に、ドラッグ先が子ウインドウだった場合に子ウインドウのタイトルを取得する問題を修正(thanks to @sk74)

## [0.27.1] - 2024-08-21

### Fixed

- [DirectoryIndex] プロキシの利用方法の設定値が保存されない問題を修正
- [DirectoryIndex] サーバ/プロキシの認証方式がBasic認証だったときにエラー扱いにしていたのを修正
- regsitwinコマンドで他プロセスの情報が正しく取得できないバグを修正(thanks to @sk74)
  - 0.27.0で入れたバグ(warning指摘対応のためにいろいろ修正していたがテストしていなかった)
- アプリのホットキーで「CapsLock」や「かな」キーへの割り当てができない問題を修正(thanks to @sk74)

## [0.27.0] - 2024-08-18

### Added

- DirectoryIndexコマンドを追加
- Base64デコード機能を追加
- 未登録キーワードを入力してEnterキーを押下したときの動作を設定できるようにした
  - キーワードをコマンド登録 or 何もしない or クリップボードにコピー
  - この機能追加に伴い、デフォルト動作を「キーワードをコマンド登録」に変更
- システムコマンド`copyclip`を追加
  - 後続で指定した文字列をクリップボードにコピーする
- 入力欄のテキストをクリップボードにコピーするためのキー割り当てを設定できるようにした
  - `アプリケーション設定`>`入力`>`キー割り当て`>`入力欄のテキストをコピー`
- 振り分けコマンドを追加

### Changed

- 入力欄で`Ctrl+Backspace`押下時の挙動を変更(Bluewindの動作に合わせるための修正)
  - 修正前: 全削除
  - 修正後: 単語削除
- Edge/Chromeのブックマークを表示するコマンドの区分を変更
  - 拡張機能(キーワードを入れたら自動発動型)ではなく登録型のコマンドとすることにした
- Edge/Chromeの履歴を表示するコマンドの区分を変更
  - 拡張機能(キーワードを入れたら自動発動型)ではなく登録型のコマンドとすることにした
  - 登録コマンドごとに対象ブラウザをキーワードをプリセットできるので、目的に応じてコマンドを分けることができる
- 一部の表示設定の初期設定値を変更(無効→有効)
  - `候補欄の背景色を交互に変える` `候補欄の各項目のアイコンを表示する`
- キーワードマネージャ経由でコマンドの編集ダイアログを表示したときに、キーワードマネージャダイアログを編集ダイアログの親ウインドウとして設定するようにした

### Fixed

- コンパイル時に表示されるwarningについて対処した
- 解放が必要ないリソースを解放していたところを修正
- [ウインドウ整列コマンド] コマンド読み込み時に一部の情報を復元できない問題を修正

## [0.26.1] - 2024-07-07


### Changed

- コマンドのホットキー登録回りの設計変更

### Fixed

- コマンドのホットキーを設定するダイアログを元の設定画面の子ウインドウとして作成するようにした
- キーワードマネージャでキャンセル操作を行ったときにグループコマンドに登録している各コマンドが増殖するバグを修正
- ホットキーの割り当てでSlashキーへの割り当てができないのを修正
- フィルタコマンド周りでCPU使用率が高くなることがあったので調整
- [グループコマンド] ダイアログ上のコントロールの状態管理に不備があったので修正
- アイコンハンドルを解放していないところがあったので修正
- フィルタコマンドを実行したときに候補数が0だったときに説明欄が別の文字列で上書きしてしまうのを修正
- 一定時間利用していないアイコンのキャッシュを解放するようにした

## [0.26.0] - 2024-06-23

### Added

- Everything検索コマンドでSDK機能を使わない方法を実装
  - Liteを使っている環境向けの機能
- Web検索コマンドに対するホットキー設定を追加
- フォルダ更新検知コマンドで変化のあったファイル名を表示するようにした

## Changed

- フィルタコマンドの仕様を大きく変更
  - 別のダイアログを表示するのではなく、ランチャーウインドウ内の候補欄に表示するようにした
  - 前段の処理(候補を列挙する処理)で外部プログラムを実行する際の表示方法を指定するオプションを廃止
    - 常に非表示で実行するように仕様変更
  - 一度生成した候補をアプリーションが終了するまでキャッシュする機能を追加
- Web検索コマンド回りの仕様を変更
  - 「常に検索候補として表示する」については、他のWeb検索コマンドが候補にある場合には表示しないようにした
  - 「常に検索候補として表示する」が有効であっても、コマンド名が前方一致した場合は、通常通りヒットしたものとして扱う
- 通常?のホットキーと、修飾キー連続押下ホットキーをそれぞれで使用有無を指定できるようにした
- キーワード入力時や候補選択時の入力欄の表示回りの動作を修正
- アイコンを更新

## Fixed

- キーワードマネージャをキャンセルしたときに一部のコマンド種別において、動作がおかしくなる問題を修正
  - Web検索/簡易辞書/Everything検索/フィルタあたり
- Web履歴コマンドが動作しない問題を修正
- Migemoによって生成されたパターンをstd::regexに渡してregex_errorが発生した場合に、検索結果が何も表示されないのを修正
- 修飾キー連続押下ホットキーで、他のキーを組み合わせて入力していた場合でも、ホットキーが押されたものとして判定していたのを修正

## [0.25.0] - 2024-06-09

### Added

- MMCスナップインを実行する機能を追加
- 取り外しコマンド(ディスクドライブのイジェクトやリムーバブルメディアの取り外し)を追加
- Everything検索コマンドを追加
- フォルダ更新検知を無効化するオプションを追加

### Chnaged

- コマンド優先度情報を保存するタイミングを変更(プログラム終了時→設定情報変更確定時)
- [ウインドウ切替コマンド] 非表示のウインドウも対象にするようにした
- [キーワードマネージャ]フィルタ欄にフォーカスがある状態で上下Tabキー押下したらリスト欄にフォーカス移動するようにした
- [タスクトレイ]タスクトレイアイコンを左クリックしたときにはコンテキストメニューを表示しないようにした
- `edit` `manager`コマンドに対するアイコンを設定するようにした
  - キーワードマネージャ画面のアイコンを変更
- バックグラウンドで監視する系スレッドの制御の見直し
- メイン画面のレイアウトの微調整

### Fixed

- [辞書コマンド] 「一行目をヘッダ行として扱う」で冒頭に空白行があった場合に、初回にデータが登場した行をヘッダ行として扱わない問題を修正
- [UWP] プログラム終了時に落ちることがある問題を修正
- [タスクトレイ]コンテキストメニューを表示したあと、メニュー外の領域をクリックしても、メニューが消えない現象を修正
- ~~修飾キー連続押下ホットキーで、他のキーを組み合わせて入力していた場合でも、ホットキーが押されたものとして判定していたのを修正~~
  - なおってなかった

## [0.24.0] - 2024-05-27

### Changed

- 簡易辞書コマンドでURLパスを受け付けるようにした
  - おもにSharePoint上に置かれたExcelファイルをデータソースとする運用を想定
- [簡易辞書コマンド] マクロの展開有無を指定できるようにした

### Fixed

- 入力欄にキーワードを入力した状態から空文字になったときの画面表示の挙動が以前と変わっていたので修正
- 環境変数PATHに相対パスやUNCパスが含まれているとアプリを起動できない不具合を修正

## [0.23.0] - 2024-05-26

### Added

- 音量調節コマンドを追加
- `Alt` `Ctrl` `Shift` `Win`キーの組み合わせにより入力ウインドウを表示する機能を実装
  - `Ctrl`x2や、`Ctrl`+`Alt`同時押し、で入力ウインドウを表示できる
- `basename`マクロを実装

### Changed

- 0.22.0で実装した、候補欄の更新方法回りを修正した
  - タイマーを使うのではなく、別スレッドで行う形に変更した  
タイマーを使うと描画更新待ちが生じて少しもっさりした印象になるため

### Fixed

- 入力欄でTabキーを押して補完を行ったときにBeep音がならないようにした
- `${afxw currentdir}`が期待通りに動作していなかったので修正

## [0.22.0] - 2024-05-12

### Added

- 入力欄への入力時に1文字ごとに候補欄を更新するのでなく、連続タイプ中は候補を更新しない(遅延を入れる)
  - 入力時のレスポンスをよくするため
    - 高負荷時(例:ウイルススキャン実行中)における、キー入力が滞るのを回避することができる
- マクロ機能の追加
  - `$xxx`で置換する周りの処理をマクロ機能として整理した
  - コメント欄の初期表示テキストとしてマクロを使えるようにした
  - 定型文コマンドのテキストとしてマクロを使えるようにした
- 下記のマクロを実装
  - afxw/clipboard/env/random
- システムコマンド`displayoff`(モニターの電源を切る)を追加
- 一部のシステムコマンドの名前を変更できるようにした

### Changed

- コマンドの優先順位周りの仕様を変更
  - 使用したコマンドの優先度を自動で上げる仕組みを廃止し、ユーザが登録したコマンドのみを手動で優先度設定するようにした
  - この仕様変更により、ユーザが登録したものでないコマンドに対する優先度設定をしないことにした
  - 設定画面に優先度設定のページを追加
  - 優先度設定のデータファイル名を変更(`usage.dat`→`priority.dat`)

- プロセス起動時に引数をダブルクォーテーションで囲うようにした 
  - これにより、既存のコマンド設定においてダブルクォーテーションで囲っているものが動作しなくなる可能性あり

- コマンド実行時のパラメータとして指定する環境変数の記述方法を変更
  - Addedに記載したマクロの仕組みを使う形に変更した結果、従来の記法との互換性がなくなった
  - 従来: `$変数名`
  - 変更後:`${env 変数名}`
- コマンド実行時のパラメータとして指定するあふwのカレントディレクトリの記述方法を変更
  - 従来: `$afxwcurrentdir`
  - 変更後:`${afxw currentdir}`

### Fixed

- 簡易辞書コマンドの処理で内部的に起動したExcel.Applicationが終了しないことがある問題を修正

## [0.21.0] - 2024-05-05

### Added

- 各画面からF1キーを押すか、タイトルバーの`?`ボタンを押下したら、そのページのヘルプを表示できるようにした

### Changed

- ヘルプドキュメントの整理
- 入力欄でTabキー押下時の補完の動作回りの変更
  - 補完後のキーワードで候補欄を更新するようにした
- 簡易辞書を前方一致で候補に出すようにした
  - 簡易辞書のコマンド名を部分入力→Tabキー押下、で辞書データの一覧が候補欄に表示されるようになる
- 候補欄をクリックしたときに変更後のアイテムの情報を入力画面やコメント欄に反映するようにした
- 入力画面でキャンセルキー押下時に入力欄にフォーカスを設定するようにした
- ウインドウ切り替えコマンドをバックグラウンドで行うようにした
- `/Runcommand` `-c`オプションを複数指定できるようにした

### Fixed

- システムコマンドの設定変更が期待通りに反映されない場合がある問題を修正
- `入力欄にコマンド種別を表示する`設定がオフのときに、正しくない位置に種別を表示してしまう問題を修正

## [0.20.0] - 2024-04-29

### Added

- [簡易辞書コマンド] ファイル更新時に通知を行う機能を追加
- メインウインドウのフォント名を指定できるようにした
- 入力履歴の使用有無/上限件数を設定できるようにした
- 入力履歴の削除機能を追加
- 入力窓で後続パラメータとしてファイルパスが指定された場合に、そのファイルパス部分に関してはキーワードマッチングから除外するようにした
  - 外部ファイラーから`/Paste`オプションを利用してランチャーにファイルパスを渡すケースを想定

### Changed

- 一部のシステムコマンドに対し、有効/無効の切り替え、実行前の確認、を設定できるようにした

## [0.19.0] - 2024-04-21

### Added

- コマンドラインオプション`/Paste` `/SelStart` `/SelLength` を実装
  - bluewind互換オプション
- アプリ設定画面からログ出力レベルを選択できる機能を追加
- ログ出力ライブラリとして[spdlog](https://github.com/gabime/spdlog)を導入
  - 自前のログをやめてspdlogでログ出力を行うようにした
  - というか、そもそもいままでログ出力を入れてなかった

### Chanaged

- `Esc`キーをおしたとき、入力中のテキストがあったらそれを消去する／テキストがなければウインドウを消す、という挙動に変更
  - bluewindの動作に合わせるため
- キーワードマネージャーにフィルタリング機能を追加
- キーワードマネージャのダイアログサイズを微調整
- [簡易辞書コマンド] 名前を変更したときに変更前の辞書データを削除するようにした
- [簡易辞書コマンド] データソースとなっている元ファイルが更新されたら、辞書データを更新するようにした

### Fixed

- Outlookメールコマンドの有効/無効の設定が聞かない不具合を修正

## [0.18.1] - 2024-04-09

### Fixed

- フォルダ更新検知コマンドのトースト通知周りのバグ修正

## [0.18.0] - 2024-04-08

### Added

- 【試作】連続稼働を検知したらお知らせする機能を追加
  - スクリーンロックを休憩とみなす。
    - 休憩や離席時にスクリーンロックする運用をしている人を想定した機能
- ウインドウ位置をリセットする機能を追加
- 入力画面のキーバインドを設定する機能を追加
  - 上へ/下へ/決定/補完 ごとに任意のキーを割り当てることが可能
- キーワードマネージャ画面のリストにホットキー列を追加
- `ファイル名を指定して実行`を無効化できるようにした
- `ファイル名を指定して実行`で対象外とするファイルを指定できるようにした

## Chanaged

- フォルダ更新検知コマンドによる通知時のメッセージを指定できるようにした
- フォルダ更新検知コマンドの通知処理をトーストを使って行うようにした
  - トーストをクリックしたら、更新したフォルダを開けるようにした
- 簡易辞書コマンドにおいて、`Shift-Enter`キー押下でキーをコピー、`Ctrl-Enter`キー押下で値をコピーするようにした
- 簡易辞書コマンドをホットキーで呼び出せるようにした
- ブックマークコマンドにおいて、`javascript:`から始まるURL(ブックマークレット)を候補から除外するようにした
- ポータブル版の扱いを変更
  - アプリ起動時にexeと同じ階層に`profile`という名前のディレクトリがあればポータブル版としてふるまう
    - そうでなければ通常版としてふるまう
  - ポータブル版用のプロジェクト構成を削除(`Release-Portable` `ReleaseStatic-Portable`)

- 入力文字列のうち、2ワード目もMigemoを使うよう変更
  - 従来は先頭ワードのみMigemoを使っていた
- ソースコードの構成を見直し
  - `app`ディレクトリ
  - `hotkey`ディレクトリ
  - `icon`ディレクトリ
  - `logger`ディレクトリ
  - `mainwindow`ディレクトリ
  - `matcher`ディレクトリ
  - `setting`ディレクトリ
  - `settingwindow`ディレクトリ
  - `tasktray`ディレクトリ
  - `gui/AboutDlg`を`commands/builtin`に移動

## Fixed

- アプリケーションのホットキー設定ダイアログ表示がモーダルになっていなかったのを修正
- コマンドのホットキー割り当てダイアログで、キーが割り当てられた状態からキー解除をすると、  
「既に割り当てられています」エラーがでて、割り当て解除できない問題を修正

## [0.17.3] - 2024-03-12

### Changed

- Excel簡易辞書コマンドまわりの細かい変更
  - 候補欄の表示方法を変更(「コマンド名 キー : 値」の形式で表示する)

### Fixed

- Excel簡易辞書コマンドまわり
  - 候補マッチングの動作が意図しない結果になることがあったため修正
  - コマンド設定ダイアログのサイズ変更時の動作がおかしかったため修正

## [0.17.2] - 2024-03-10

### Changed

- Excel簡易辞書コマンドの仕様を変更した
  - まずコマンド名を入力したら，そのあとに候補が表示されるようにした
  - キーと値のセル範囲を分けて管理するようにした
  - 逆引き(値→キー)検索できるようにした
  - 選択後のアクションを選択できるようにした
  - 仕様変更の結果、`0.17.1`までの設定値と互換性がなくなったため、コマンドを作り直す必要あり

## [0.17.1] - 2024-02-28

### Fixed

- フィルタコマンド回りのバグを修正
- バルーンメッセージのアイコンが不定になるバグを修正
- ウインドウ切り替えコマンドの「条件に合致するウインドウが見つからなかった場合に通知する」がチェックできないのを修正

## [0.17.0] - 2024-02-24

### Added

- PowerPointのスライドタイトルで該当するスライドを表示する機能を追加
- `emptyrecyclebin`(ごみ箱を空にするコマンド)を追加
- `logoff`(ログオフするコマンド)を追加
- `shutdown`(PCをシャットダウンするコマンド)を追加
- `reboot`(PCを再起動するコマンド)を追加
- `suspend`(PCをサスペンド状態にするコマンド)を追加
- `standby`(PCをスタンバイ状態にするコマンド)を追加
- `lockscreen`(PCをスクリーンロックするコマンド)を追加
- 【試作】フォルダ更新検知コマンドを追加

### Fixed

- バグ修正

## [0.16.0] - 2024-01-15

### Added

- Edge/Chromeの履歴を表示するコマンドを追加
- (試作)Excelの任意の範囲のデータを簡易的な辞書として使うためのコマンドを追加
- inch～mm単位変換を追加

### Fixed

- 定型文コマンドが動作しない状態になっていたので修正
- 細かいバグ修正

## [0.15.0] - 2023-12-31

### Added

- fileプロトコル(file://...)をローカルパス(またはUNCパス)に変換する機能を追加

- 通常コマンド/正規表現コマンド/web検索コマンドのアイコン画像を変更する機能を追加
  - アイコンを変えることによりコマンドの視認性を高める目的

### Changed

- ウインドウ整列コマンドまわりの各種修正
  - ウインドウ整列コマンドでウインドウの非表示を指定できるようにした
  - ウインドウ整列コマンドの実装を変更(操作の種別にかかわらず、WINDOWPLACEMENTを用いる方法に統合した)
  - 実装変更の都合により、前バージョンのウインドウ整列コマンドと設定の互換性がなくなった
     - 前バージョンで作成したウインドウ整列コマンドを作成しなおす必要がある
- 【通常コマンド】説明欄テキストをコマンド絞り込みに含めるオプションを追加
- `ファイル名を指定して実行`コマンドの検索対象ディレクトリとしてアプリ独自のパスを設定できるようにした
- bookmarkコマンドのマッチングの際に、URLも含めて絞り込みを行うようにした
  - 従来はブックマーク名のみだった
- bookmarkコマンドのOn/Offを切り替える設定のページを移動した
- アプリ名回りの文言修正

### Fixed

- `reload`すると落ちる問題があったので修正した

## [0.14.0] - 2023-12-18

### Changed

- ウインドウ整列コマンドでウインドウの最大化/最小化を指定できるようにした

### Fixed

- 環境によっては正しくないアイコンを取得する問題を修正
- 細かい修正

## [0.13.0] - 2023-12-16

### Added

- ウインドウ整列コマンドを追加
  - 1つ以上のウインドウをあらかじめ登録しておいた位置・サイズに一括設定することができる
- 簡易時間計算(経過時間を表示する)コマンドを追加(HH:MM-HH:MM)
  - 例: `23:30-22:43` → `47分`
- git-bash上のパス`/c/path/to/...`とローカルパス`C:\path\to\...`の相互変換機能を追加
- 入力文字列を非表示にするときに入力中のテキストを残す設定を追加
- `Ctrl`キーを押している間だけ半透明表示にするようにした
  - 入力画面の背後のウインドウを確認できるようにするための機能
  - 半透明設定が`非アクティブなときに半透明`のときだけ有効

### Changed

- ウインドウ切り替えコマンド実行の際に対象ウインドウが見つかなかった場合、メッセージを表示するようにした
- 電卓機能で、Pythonに渡したときの演算結果が整数値だったとき、16/8/2進数の結果も表示するようにした
- `.vmx`を開くコマンドの表示順序をMRUの順序通りに表示するようにした

### Fixed

- `.vmx`を開くコマンドで対象ファイルが全角パスを含む場合に候補にあがらない問題を修正

## [0.12.0] - 2023-11-11

### Added

- 登録しておいた定型文(スニペット)をクリップボードにコピーする機能を追加
  - 現在のクリップボードにあるテキストを登録するためのシステムコマンド(`newsnippet`)を追加
- 操作ガイド欄を追加
- ipアドレスを取得するコマンド`getip`を追加

### Fixed

- `0.11.0`で修正した「入力画面を非表示にして起動する`で起動したとき、起動直後に一瞬ウインドウが表示されるのを修正」を取り消して元に戻した
  - 起動直後にホットキーが効かず、入力画面を表示できない現象が発生したため

## [0.11.0] - 2023-09-03

### Added

- 候補欄に候補ごとのアイコンを表示する機能を追加

- 8進数/16進数/Unicodeエスケープシーケンスをデコードして表示する機能を追加
  - 8進数/16進数でエスケープされたものについてはUTF-8のバイトシーケンスとして扱う
  - 例
    - `\117\143\164\141\154` → Octal
    - `\x48\x65\x78` → Hex
    - `\u30ed\u30b0\u30a4\u30f3\u3057\u3066\u304f\u3060\u3055\u3044` → ログインしてください
    - `\U000030A2` → ア

### Changed

- アプリケーション設定に、候補欄の背景色を交互に変える設定項目を追加した

- `入力画面を非表示にして起動する`で起動したとき、起動直後に一瞬ウインドウが表示されるのを修正

## [0.10.0] - 2023-09-02

### Added

- URIエンコードされた文字列をデコードして表示する機能を追加
  - 例: `%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF` → `こんにちは`
  - UTF-8でエンコードされているものとしてデコードする
  - 実行するとデコード後の文字列をクリップボードにコピーする

- Outlookの受信トレイ上のメールを候補として表示するようにした(試作)
  - 上限は1024(固定)

### Changed

- UWPアプリの取得方法を変更
  - レジストリを直接見るのではなく、AppsFolderから取得するようにした
  - あわせて、AppsFolderにあるUWPでない項目も拾うようにした
- コントロールの色を変える処理をハイコントラストモードが無効な時だけ機能するようにした
- ウインドウ位置を覚えておく設定ファイル名のファイル名を変更
  - `(コンピュータ名).posision`
- 最近使ったファイルコマンドでCtrl-Enterキー押下で実行したらフォルダを開くようにした

### Fixed

- Web検索コマンドを`常に検索候補として表示する`を有効な状態で新規作成した直後に候補として表示されない問題を修正
- F1キーを押したときにヘルプが表示できないのを修正
- アイコンリソースのリークを修正

## [0.9.0] - 2023-08-20

### Added

- UWPアプリを一覧に表示する機能を試作
- スタートメニューの項目をとれるようにした(ストアアプリは非対応)

### Fixed

- Web検索コマンドのマッチングの挙動がおかしかったのを修正
- 細かいバグ修正

## [0.8.0] - 2023-08-18

### Added

- Web検索コマンドを追加
- LibreOffice Calcシートのジャンプ機能を追加
- キャプションやウインドウクラス名を指定してウインドウ切り替えを行うためのコマンドを追加
   - `0.4.0`で実装したものとは別のコマンドで、あらかじめキャプションやウインドウクラス名を指定したコマンドを定義しておいたうえで、 その設定に基づいて切り替えを行うためのもの
- `rgb(r,g,b)`でカラーを表示するようにした
- `#RRGGBB` `#RGB` rgb(r,g,b)`で入力したとき、他の表記も候補に表示するようにした

### Changed

- 削除して存在しなくなったコマンドに対する履歴を削除するようにした

### Fixed

- 効果音のファイル設定欄が読み取り専用属性になっていたので、属性を外した

## [0.7.0] - 2023-08-15

### Added

- 効果音を再生する機能を追加
- VMWare(Player)の最近使ったVM一覧を候補に出すようにした

### Changed

- アプリケーション設定画面を表示するとき、前回表示していたページを初期表示するようにした

- 入力画面の候補リストをオーナードローで描画するようにした
- 入力画面の候補リストの背景色を行単位で交互に変えるようにした
- いくつかのリストコントロールに`LVS_EX_DOUBLEBUFFER`スタイルを追加
- 最近使ったファイル一覧の更新を別スレッドで行うようにした

### Fixed

- ファイル名を指定して実行コマンドに引数を与えるとヒットしないのを対策
- ファイル名を指定して実行コマンドでCtrl-Enterでフォルダを開けなかったので修正

## [0.6.0] - 2023-08-06

### Added

- 環境変数の値を表示するコマンドを実装
- 最近使ったファイルを表示するコマンドを実装
- 16進カラーコード(`#RRGGBB` `#RGB`)表記に対応する色を表示するコマンドを実装

### Chanaged

- 入力画面のレイアウトを調整

- Excelワークシート一覧の更新をバックグラウンドで行う形に変更
- PathFindコマンドを履歴から実行したときの種別を「履歴」と表示するようにした
- ウインドウ切り替えコマンドで最小化状態から復元するときにSC_RESTOREでやるようにした

## [0.5.1] - 2023-08-01

### Fixed

- コントロールパネルの初期値が`有効`になっていたので修正

## [0.5.0] - 2023-08-01

### Added

- コントロールパネルの項目を選択して表示する機能を追加
  - `設定`>`拡張機能`>`コントロールパネル選択機能`>`有効にする`をチェックすると有効になる
  - 初期値は無効

- C/Migemoを用いたローマ字から日本語検索を実装(要C/MigemoのDLLと辞書ファイル)
  - `設定`>`表示`>`マウスカーソル位置にウインドウを表示する`をチェックすると有効になる
  - 初期値は有効
  - この設定が`有効`で、かつ、C/Migemoのファイルが所定の場所に配置されている場合にローマ字検索が利用できる
    - 配置する場所は設定画面に記載

- キーワードマネージャウインドウにコマンド種別を表示するようにした

## [0.4.0] - 2023-07-31

### Added

- 入力欄を表示するときにマウスカーソル位置に表示するかどうかの設定を追加
  - `設定`>`表示`>`マウスカーソル位置にウインドウを表示する`をチェックすると有効になる
  - 初期値は無効

- アクティブなウインドウを切り替えるコマンドを追加
  - `設定`>`拡張機能`>`アクティブなウインドウの切り替え機能`>`ウインドウタイトルによる選択を有効にする`をチェックすると有効になる
  - 初期値は無効

- 入力欄にコマンド種別を表示する機能を追加
  - `設定`>`表示`>`入力欄にコマンド種別を表示する`をチェックすると有効になる
  - 初期値は有効

## [0.3.0] - 2023-07-31

### Added

- EdgeとChromeのブックマークを候補として表示する機能を追加した
  - ブックマークの名前でマッチングする
  - EdgeのブックマークはEdge、ChromeのブックマークはChromeで表示する

### Changed

- コマンドのホットキー設定ダイアログでキー解除ボタンを追加
- オーナードローで描画しているリストで選択行のテキストカラーを黒で描画していたの修正(白に変更)
- コマンド実行時にCtrl-Enterキーで実行したときにフォルダを開く機能を追加(アプリ設定から利用有無を選択できるようにした)
- キーワード絞り込み周りの仕様変更

### Removed

- キーワード絞り込み回りの仕様変更に伴い、アプリケーション設定として設けていた 前方一致 / 部分一致 / スキップマッチング を廃止

### Fixed

- コマンドのホットキー設定ダイアログの状態制御回りのバグ修正

## [0.2.0] - 2023-07-15

### Added

- フィルタダイアログのリスト表示で、背景色を交互に変えるようにした
- 登録コマンドでなくても、http://～ が入力された場合に関連付けで開くようにした
- 実行時引数が指定されなかったときに、実行時引数だけを入力するための追加の入力画面を表示する機能を追加(通常コマンドのみ)
- フィルタコマンドの前段としてクリップボードの内容を使えるようにした
- あふw(afxw)で現在表示している自窓側のカレントディレクトリを取得する機能を追加(要あふw側のオートメーションサーバ登録)
- 電卓機能を追加(Pythonを利用する)
- Excelシートのジャンプ機能を実装

### Changed

- 通常コマンドの設定画面を複数ページ構成に変更した
- 入力画面の候補リストをListBoxからListCtrlに変更した
  - カスタムデータとオーナードロー描画

### Fixed

- 入力画面のコメント表示欄のデフォルト表示文字列まわりの不備を修正
- 各種バグ修正など
  - アスタリスクを入力すると落ちる不具合を修正
  - ほか


## [0.1.6] - 2023-06-24

### Added

- 「ネットワークパスを無視」設定を追加
- 正規表現コマンド機能を追加
  - マッチング結果を用いてプログラムの起動やURLにアクセスなどを行うためのもの
    - 課題管理システム等でissueの識別子(例: PROJECTX-32)を入力して当該issue画面を表示する、みたいな用途を想定
      - パターンとして`^PROJECTX-\d+$`みたいな設定をしておくと、issueの識別子にマッチさせることができる、みたいな
- 履歴機能の実装
- 「同一のフィルタコマンドの並列実行を許可する」設定を追加
  - デフォルト値は`false`
  - これがチェックされていない場合に、フィルタコマンドが実行中かを判断して、既に実行中であれば、実行中のウインドウをアクティブにする(後続のコマンド実行を行わない)ようにした
- ポータブル版(設定情報を`soyokaze.exe`と同じフォルダ以下に保存する)の構成(`Release-Portable`,`ReleaseStatic-Portable`)を追加
- 入力画面のコメント表示欄のデフォルト表示文字列として任意の文字列を設定できるようにした

### Changed

- アプリケーション設定を複数のページに分割
- ホットキーとして、文字入力に使うキー(無修飾の文字キーやEnterなど)の割り当てを許可しないようにした
- コマンド編集ダイアログ上で相対パスで指定されたファイルに対してアイコンを表示できるようにした

### Fixed

- フィルターの編集画面の状態制御に不備があったのを修正
    - コマンドを複数回実行すると、実行した回数ぶんだけ同じ位置に重なってウインドウが表示されてしまう問題を回避するため

## [0.1.5] - 2023-06-11

### Fixed

- キーワードマネージャからコマンドを削除すると落ちるバグを修正
  - 0.1.4で入れたもの


## [0.1.4] - 2023-06-11

### Added

- フィルタリングコマンド機能を実装
  - 前段のコマンドのstdoutへの出力内容から対話的に絞込みを行い、選択結果を後段のコマンドに渡して実行できる機能   
(fzfっぽいことができる)

- コマンドの優先順位を設けた
  - 一致レベル(完全一致or前方一致or部分一致orスキップマッチング)が同じ場合は、  
実行したコマンドほど優先して表示されるようにする

- カレントディレクトリ変更コマンド(`cd`)を実装
- コマンドを削除するコマンド(`delete`)を実装
- あて先を指定してメールするコマンド(`mailto:`)を実装
- コマンド登録・編集画面において、登録するファイルの拡張子が`.lnk`だった場合にリンク先に置換するためのボタンを表示するようにした
- キーワードマネージャ画面のリストのヘッダをクリックしたときに表示要素をソートできるようにした
- 入力画面が非アクティブになったらウインドウを隠す設定を追加
- Ctrl-BackSpaceキーで入力テキスト全削除、を実装

## [0.1.3] - 2023-06-03

### Added

- グループ機能を実装
- PATH以下にあるexeを実行したときの履歴をもとに補完する機能を実装
  - その履歴情報を保存・復元する機能を実装

### Changed

- 入力画面に前回入力したときの候補が残る現象を修正
- registwinコマンド周りの動作を修正

### Fixed

- 初期起動時、設定画面の表示上のホットキーが表示上間違っていたのを修正

## [0.1.2] - 2023-05-28

### Added

- コマンドを実行するためのキー割り当て機能を実装

## [0.1.1] - 2023-05-21

### Added

- 入力画面のアイコンからウインドウを指定してコマンドとして登録する機能を追加

### Changed

- キーワードマッチング処理回りの改善
  - 完全一致、前方一致、部分一致、スキップマッチング、の順で候補を表示するようにした
- モーダルダイアログ系の画面(キーワードマネージャー/設定画面など)を表示している間はTOPMOSTにしない

### Fixed

- 設定値を正しく保存できていないバグを修正

## [0.1.0] - 2023-05-17

### Added

- バージョン情報ダイアログにライセンスへのハイパーリンクとビルド日時を表示するようにした

### Changed

- アプリ名を`BWLite`から`Soyokaze`に変更

## [0.0.10] - 2023-05-16

### Added

- 入力画面のウインドウにファイルやURLをドロップしてコマンド登録できる機能を実装

### Changed

- アプリ設定画面の構成をbluewindのような形に変更(左側にツリー、右に設定欄)

## [0.0.9] - 2023-05-11

### Added

- アクティブウインドウ登録コマンド(`registwin`)を実装
- 入力画面からコンテキストメニューを表示できるようにした

### Changed

- コンテキストメニューの「表示」を「隠す」とトグルにするようにした

## [0.0.8] - 2023-05-09

### Added

- ショートカット登録機能を実装
  - 送る/スタートメニュー/デスクトップ/スタートアップ
- ウインドウのトグル表示機能を実装

### Fixed

- 細かいバグ修正

## [0.0.7] - 2023-05-07

### Fixed

- ホットキーの登録まわりのバグ修正

## [0.0.6] - 2023-05-07

### Changed

- ソースの文字エンコーディングをUTF-8にした

### Fixed

- 細かいバグ修正


## [0.0.5] - 2023-05-07

### Fixed

- タスクトレイメニューからのヘルプ表示が機能してなかったので修正

## [0.0.4] - 2023-05-07

### Added

いろいろ機能追加

## [0.0.3] - 2023-05-04

### Added

いろいろ機能追加

- 大文字小文字を無視した比較
- 候補欄をつける
- マッチングの際に履歴を考慮する
- 自前のキーバインド(ホットキー)処理
- カレントディレクトリの設定
- パラメータ指定実行のサポート
  - あり/なしで分岐させることができる
- アプリ共通設定を持たせる
- 環境変数展開
- フォルダを開く
- アイコン表示できるようにした

## [0.0.2] - 2023-04-??

### Added

- コマンド実行(プロセス起動)時の表示方法(`SW_SHOW`など)

## [0.0.1] - 2023-04-23

### Added

- とりあえずつくってみた


