編集の要約なし
 
(同じ利用者による、間の327版が非表示)
1行目: 1行目:
== Mery 3 (コードネーム: Alpaka) ベータ版置き場の予定 ==
__NOTOC__
== 既知の問題 ==


Mery のエディタエンジン TNotePad の作者さんの開発記録によると TNotePad (真魚) の 64 ビット版は開発・公開を中止されたようです。Delphi XE2 では無理という雰囲気の内容でしたので、Mery の 64 ビット対応についても私の技術力でどこまで対応できるかは分かりませんが、最悪、やっぱ開発やめますというケースも想定してこの「開発室」でこっそりベータ版を公開していこうと思います。
{| class="wikitable"
! width="40%" | 内容
! width="60" | 状態
! 備考
|-
| VBScript が廃止される。
| style="text-align: center;" | 保留
| [https://www.haijin-boys.com/discussions/8963 フォーラム]<br>Ver 3.8.0 で QuickJS に対応しました。また、Tag プロパティでは Scripting.Dictionary の使用を廃止しています。
|-
| マイカを適用すると、最大化したときにタイトル バーの描画がずれる。
| style="text-align: center;" | 保留
| [https://www.haijin-boys.com/discussions/8620 フォーラム]<br>これは Windows の問題です。Microsoft の対応を待つ必要があります。
|-
| HDR または ACM を有効にすると、マイカが正しく表示されない。
| style="text-align: center;" | 保留
| [https://x.com/haijinboys/status/1763222898171691213?s=20 X] <br>[https://www.haijin-boys.com/discussions/9193 フォーラム] <br>これは Windows の問題です。Microsoft の対応を待つ必要があります。
|-
| [色] ダイアログ ボックスが Per-Monitor DPI に対応していない。
| style="text-align: center;" | 保留
| [https://www.haijin-boys.com/discussions/7927 フォーラム] <br>これは Windows の問題です。Microsoft の対応を待つ必要があります。
|-
| <kbd>Ctrl</kbd>キーを押しながらリンクをクリックしてリンクを開くときに、ブラウザーが背面に表示されることがある。
| style="text-align: center;" | 保留
| [https://www.haijin-boys.com/discussions/8370 フォーラム] <br>これは Windows の仕様である可能性が高いです。回避策は見つかっていません。他のアプリでも同様の現象が発生しますが、Word のみ前面に表示されます。
|-
| UTF-8 (BOM 付き) のファイルがバイナリ モードで開けない。
| style="text-align: center;" | 完了
| Ver 3.8.1 で修正済みです。
|-
| [全画面表示] の状態でショートカット キーを使用して [Zen モード] を実行すると、[全画面表示] が解除される。その直後に再度ショートカット キーで [Zen モード] を実行しても、有効にならない。もう一度、実行すると有効になる。
| style="text-align: center;" | 完了
| Ver 3.7.13 で修正済みです。
|-
| [例外] 文字が正しく描画されない。
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/8896 フォーラム]<br>Ver 3.7.10 で修正済みです。
|-
| タブの閉じるボタンを [ウィンドウの右端] に設定している場合、タブが正しく描画されないことがある。
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/8892 フォーラム]<br>Ver 3.7.10 で修正済みです。
|-
| Zen モードのとき、閉じるボタンが少し見えてしまう。
| style="text-align: center;" | 完了
| Ver 3.7.8 で修正済みです。
|-
| Markdown プレビューで<code>ShellExecute</code>を使用すると、ブラウザーが背面に移動する。
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/6398#discussion-7656 フォーラム]
|-
| マイカが有効なとき、プラグイン メソッドの<code>Editor_ToolBarClose</code>を呼び出すとクラッシュする。
| style="text-align: center;" | 完了
| 検索バー、Markdown バーなどのプラグインに影響があります。<br>Ver 3.7.1 で修正済みです。
|-
| Windows 11 Insider Preview と ATOK の組み合わせで日本語入力できない。
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/7276 フォーラム]
|}


Alpaca と Alpaka のどっちが正しいのか分からないけど、K の方が文字のバランスが良いし '''Mortal Kombat''' みたいでカッコイイ。
== ご意見・ご要望 ==


=== 予定 ===
{| class="wikitable"
! width="40%" | 内容
! width="60" | 状態
! 備考
|-
| メイン メニューのカスタマイズに対応
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/9833 フォーラム 1]<br>[https://www.haijin-boys.com/discussions/9239 フォーラム 2]<br>起動速度が低下する可能性が懸念されます。
|-
| QuickJS で fetch に対応
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/8963#discussion-9060 フォーラム]<br>qjs + curl + uv =
|-
| タイプライター スクロールで上方向への余白に対応
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/9405 フォーラム]<br>機能としては面白そうですが、技術的に難しいです。
|-
| 正規表現検索で折り返しをまたいだ強調表示に対応
| style="text-align: center;" | 検証中
| [https://x.com/allgames_notice/status/1896913675212275792 X]<br>動作速度への影響が大きいため、現時点では仕様上の制限事項となっています。現在、編集モードとマーカー機能で実装の検証を行っています。
|-
| 非アクティブなタブでも、タブにマウスオーバーしたときに閉じるボタンが表示されるようにする
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/8905 フォーラム]<br>VSCode などで実装されているため、仕様としては問題なさそうですが、技術的に難しいです。また、タブを切り替える際に、意図せず閉じるボタンをクリックしてしまう可能性があります。特にタブの幅が狭い場合、誤クリックが発生しやすくなります。動的に変わる要素は、ユーザーにとって「ちらつき」や「煩わしさ」を感じさせることがあります。
|-
| 「・」(U+30FB) を全角記号ではなく全角カナとして扱う仕様 (Ver 3.4.1 未満) に戻す
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/8779 フォーラム]
|-
| 行番号 (変更行) と 行番号 (選択行) の表示優先順位を設定できるようにする
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/7802 フォーラム]
|-
| 検索ダイアログ ボックスにヘルプ ボタンを追加する
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/7450 フォーラム]
|-
| Markdown プレビュー機能
| style="text-align: center;" | 開発中
| [https://www.haijin-boys.com/discussions/7873 フォーラム]
|-
| タブ バーを実装する
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/7066 フォーラム]
|-
| タイプライター スクロールを文書ごとに設定できるようにする
| style="text-align: center;" | 検討中
| [https://www.haijin-boys.com/discussions/5106 フォーラム]<br>用途によっては便利ですが、設定の意図が伝わりにくくなる可能性があります。
|-
| ツール バー ボタンを増設する (タイプライター スクロールのボタンなど)
| style="text-align: center;" | 検討中
| 新しいアイコン素材が必要です。
|-
| LSP (Language Server Protocol) に対応する
| style="text-align: center;" | 検討中
| [https://github.com/rickard67/LSP-Pascal-Library GitHub]
|-
| 英語版を開発する
| style="text-align: center;" | 検討中
|
|-
| 検索ダイアログ ボックスと置換ダイアログ ボックスのオプション項目を分離する
| style="text-align: center;" | 検討中
| ファイルから検索/置換ダイアログ ボックスにも影響するため、実装は難しい可能性があります。
|-
| ミニマップを表示する
| style="text-align: center;" | 検討中
| 面白そうですが、実装は大変そうです。
|-
| Zen モードのエディター部分以外の背景色を変更できるようにする
| style="text-align: center;" | 検討中
| 隠しオプションとして実装可能です。
|-
| 文書から検索 (フィルター機能)
| style="text-align: center;" | 検討中
|
|-
| マクロからタブの文字列を変更できるようにする
| style="text-align: center;" | 検討中
|
|-
| [開く] ダイアログの初期フォルダーを設定できるようにする
| style="text-align: center;" | 保留
| [https://www.haijin-boys.com/discussions/9413 フォーラム]<br>エクスプローラーのピン留め機能で良いのでは?<br>Ver 3.7.17 で隠しオプションを追加しました。
|-
| [無題の文書に連番を付ける] オプションを追加する
| style="text-align: center;" | 保留
| [https://www.haijin-boys.com/discussions/8900 フォーラム]<br>オプション ダイアログに余裕がないため、現時点での対応は難しいです。<br>Ver 3.7.10 で隠しオプションを追加しました。
|-
| コードの折りたたみ機能
| style="text-align: center;" | 保留
| Visual Studio Code などのコードエディターの使用をお勧めします。
|-
| マーカーと通常の検索の同期
| style="text-align: center;" | 保留
| 同期しない方が便利な場合もあります。
|-
| トリプルクリックで論理行を選択できるようにする
| style="text-align: center;" | 保留
| 物理行選択を好むユーザーもいるため、対応は難しいです。
|-
| OneDrive を利用した設定の同期
| style="text-align: center;" | 保留
| [https://www.haijin-boys.com/discussions/8521 フォーラム]<br>ファイルに紐づくデータ (カーソル位置、ブックマークなど) の同期は困難です。ブックマークの操作ができるプラグイン API を追加しました。
|-
| 新規作成時の編集モードの既定値を設定できるようにする
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/9690 フォーラム]<br>Ver 3.8.0 で対応済みです。
|-
| 行を削除したときにブックマークを残すべき
| style="text-align: center;" | 完了
| 「残すべき」派 ([https://www.haijin-boys.com/discussions/9640 フォーラム] より)<br>
<!--
* 意図: その位置や内容を後から確認したい<br>
* 利点: 行を削除しても目印として残っていれば再利用しやすい<br>
* 実際の用途: 長文ドキュメント、コードレビュー、構造把握など<br>
* デメリット: 行がなくなると、マーク位置の意味が曖昧になる<br>
→「論理的な場所」に付けたい人にとっては、残ってほしい。<br>
<br>
-->
「削除すべき」派 ([https://www.haijin-boys.com/discussions/5600 フォーラム] より)<br>Ver 3.8.0 で対応済みです。
<!--
* 意図: 現在存在する行を素早く参照するための一時的マーク<br>
* 利点: 行を削除すればマークも自動で消えるため、整合性が保たれる<br>
* 実際の用途: デバッグ、一時的な編集ナビゲーションなど<br>
* デメリット: 意図せず消えると不便に感じることもある<br>
→「物理的な行」に付けたい人にとっては、消える方が自然。<br>
<br>
テキストエディターは「行を単位に扱う」ことが多いので、削除で消えるのは整合的。<br>
ただし、ブックマークを「作業目印」として使うユーザーさんのために、ご要望が多ければ、残すモードを裏設定として用意するのもありかもです。
-->
|-
| 開いているファイルから検索/置換できるようにする
| style="text-align: center;" | 完了
| <br>Ver 3.7.19 で対応済みです。
|-
| 操作の繰り返し機能
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/9183 フォーラム]<br>現在は [マクロ] の [オプションを指定して実行] により実現可能ですが、よりシンプルに操作できる専用機能があると便利かもしれません。<br>「[[操作の繰り返し]]」マクロを作成しました。
|-
| 全画面表示のとき、Alt キーでメニュー バーを表示する
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/8935 フォーラム]<br>Ver 3.7.12 で対応済みです。
|-
| 選択範囲の色をレガシーなスタイルに変更できるようにする
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/7067 フォーラム]<br>Ver 3.7.7 で対応済みです。
|-
| 新規作成時のファイル名をカスタマイズできるようにする
| style="text-align: center;" | 完了
| Mery.ini の<code>[General]</code>セクションで<code>Untitled = 無題</code>のように指定できます。
|-
| プラグインから 1 ページに収まる行数を取得できるようにする
| style="text-align: center;" | 完了
| Ver 3.7.2 で対応済みです。
|-
| 文字のエンコードの表示を詳細にする
| style="text-align: center;" | 完了
| [https://x.com/allgames_notice/status/1777263899953512905 X]<br>Ver 3.7.1 で対応済みです。「キリル言語 (Windows 1251)」のように、分かりやすく表示するようにしました。
|-
| Fluent Design System に対応する
| style="text-align: center;" | 完了
| Ver 3.7.0 で対応済みです。
|-
| [選択範囲を行に分ける] の操作方法が分かりにくい
| style="text-align: center;" | 完了
| Ver 3.6.1 で対応済みです。
|-
| <kbd>Alt</kbd>+ 矢印キーを割り当てられるようにする
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/7104 フォーラム]<br>Ver 3.6.1 で対応済みです。
|-
| 長い行を検索したときに、右端に余裕を持たせてスクロールする
| style="text-align: center;" | 完了
| Ver 3.6.1 で対応済みです。
|-
| 強調文字列のリスト ビューなどで、項目の編集中にコピーと貼り付けができない、<kbd>Del</kbd>キーで項目が削除されてしまう
| style="text-align: center;" | 完了
| Ver 3.5.5 で対応済みです。
|-
| 折り返しインデントに対応する
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/2277 フォーラム]<br>Ver 3.5.6 で対応済みです。
|-
| [すべて検索して選択] で [選択した範囲のみ] の設定が引き継がれてしまう
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/7217 フォーラム]<br>Ver 3.5.4 で対応済みです。
|-
| [Zen モード] でマクロを実行すると画面がチラつく
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/7212 フォーラム]<br>Ver 3.5.4 で対応済みです。
|-
| マーカーにタイトルを追加できるようにする
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/7183 フォーラム]<br>Ver 3.5.4 で対応済みです。
|-
| [すべて検索] の実行中に選択中の様子が見えてしまう
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/7169 フォーラム]
|-
| 検索ダイアログのドロップダウンで項目を <kbd>Enter</kbd>キーで選択できない
| style="text-align: center;" | 完了
| Ver 3.5.1 で対応済みです。
|-
| 右側のカスタム バーを開閉したときにスクロール バーにゴミが残ることがある
| style="text-align: center;" | 完了
| Ver 3.5.1 で対応済みです。
|-
| あいまい検索
| style="text-align: center;" | 完了
| Ver 3.5.0 で対応済みです。
|-
| マクロの JavaScript エンジンの V8 対応
| style="text-align: center;" | 完了
| Ver 3.4.1 で対応済みです。
|-
| タイプライター スクロールで固定位置を微調整したい
| style="text-align: center;" | 完了
| Ver 3.4.0 で対応済みです。
|-
| 単語補完を <kbd>Tab</kbd>キーで確定できるようにする
| style="text-align: center;" | 完了
| Ver 3.4.0 で対応済みです。
|-
| スクロール マージンを上下個別に設定できるようにする
| style="text-align: center;" | 完了
| タイプライター スクロールで対応済みです。
|-
| タブを閉じた後にアクティブにするタブを設定できるようにする (左、右、直近など)
| style="text-align: center;" | 完了
| Ver 3.0.4 で対応済みです。
|-
| <code>clipboardData.SetData</code>で形式を指定できるようにする
| style="text-align: center;" | 完了
| Ver 3.3.0 で対応済みです。
|-
| 仮想デスクトップに対応する
| style="text-align: center;" | 完了
| Ver 3.3.7 で対応済みです。
|-
| テキスト カーソル インジケーターに対応する
| style="text-align: center;" | 完了
| 開発は完了しましたが、Windows 10 の機能としては不安定なため、対応は見送りました。
|-
| ダークモードに対応する
| style="text-align: center;" | 完了
| Ver 3.2.0 で試験的に対応済みです。
|-
| 特定の正規表現で検索するとフリーズする
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/5079 フォーラム]<br>Ver 3.1.0 で対応した鬼車で対策済みです。
|-
| 検索ツール バー
| style="text-align: center;" | 完了
| [https://mery.booth.pm/ BOOTH] にて公開予定です。
|-
| エクスプローラー機能
| style="text-align: center;" | 完了
| [https://mery.booth.pm/ BOOTH] にて公開予定です。
|-
| Per-Monitor DPI への対応が不十分
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/5658 フォーラム]
|-
| ダークモードに設定した直後、ステータス バーが更新されなくなる。Mery を再起動すると直る。
| style="text-align: center;" | 完了
|
|-
| ダークモードで Windows 10 バージョン 1809 を使用すると、OS ビルドによってはタイトルバーが白くなる。
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/5726 フォーラム]<br>Windows 10 バージョン 1809 では、ダークモードの仕様が変更された時期なので、ビルドによって差があるようです。
|-
| ダークモードでウィンドウを分割し、ペインを切り替えると、右端がチラつくことがある。
| style="text-align: center;" | 完了
|
|-
| 鬼雲と鬼車の両方に対応してほしい。
| style="text-align: center;" | 完了
| 鬼雲と鬼車ではヘッダーファイルに互換性がないため、両方に対応する必要性は低いですが、技術的な観点からは興味深いところです。
|-
| 最近使用した順にタブを切り替えられるようにしてほしい。
| style="text-align: center;" | 完了
| 従来はその仕様でしたが、使いにくいというご意見があり、現在の仕様に変更されました。
|-
| リスト ビューの Per-Monitor DPI 対応
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/5658 フォーラム]
|-
| 鬼車の逆方向検索の改善
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/5663 フォーラム]
|-
| ATOK で全角スペースをキーリピートで入力すると遅延が発生する。
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/5660 フォーラム]
|-
| ウィンドウ分割時に、各ペインで個別にカーソル位置を維持してほしい。
| style="text-align: center;" | 完了
|
|-
| マクロの<code>Find</code>メソッドなどで検索ダイアログの値を保持してほしい。
| style="text-align: center;" | 完了
| Ver 3.0.1 で対応済みです。
|-
| IME のオン/オフに応じてキャレットのデザインを変更したい。
| style="text-align: center;" | 完了
| Ver 3.0.2 で対応済みです。
|-
| マクロでグローバル変数 (<code>tag</code>) を実装してほしい。
| style="text-align: center;" | 完了
| Ver 3.0.0 で対応済みです。
|-
| 矩形選択で文字入力したときに、適切に挿入/上書きされるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 3.0.0 で対応済みです。
|-
| 正規表現置換で選択範囲の行頭、行末の扱いを改善してほしい。
| style="text-align: center;" | 完了
| Ver 3.0.0 で対応済みです。
|-
| 行番号と本文の余白を設定できるようにしてほしい。
| style="text-align: center;" | 完了
| 隠しオプションとして実装済みです。オプション画面には不要というご意見がありました。
|-
| 縦書きモードでのマクロの互換性を向上させてほしい。
| style="text-align: center;" | 完了
| Ver 2.7.8 で対応済みです。
|-
| EditorConfig の整形機能で変更行を保持してほしい。
| style="text-align: center;" | 完了
| Ver 2.8.8 で対応済みです。
|-
| インストーラーで管理者権限がない場合のインストール先を変更する。
| style="text-align: center;" | 完了
| Ver 2.8.8 で対応済みです。
|-
| 最大化から最小化した後、復元すると画面に黒いゴミが表示されることがある。
| style="text-align: center;" | 完了
| [https://stackoverflow.com/questions/1808329/delphi-form-painting-black-flash-when-restoring Stack Overflow]<br>Delphi の仕様のようです。根本的な解決はできませんが、なるべく目立たないように対応しています。
|-
| タイトル バーのパスをフルパスにするかファイル名のみにするか選択できるようにしてほしい。
| style="text-align: center;" | 完了
| 隠しオプションで対応済みです。
|-
| <code>.editorconfig</code>に対応してほしい。
| style="text-align: center;" | 完了
| Ver 2.8.8 で対応済みです。
|-
| アウトプット バーの文字サイズを変更できるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 2.8.0 の隠しオプションで実装済みです。
|-
| ファイルから検索で対象フォルダーを固定する機能
| style="text-align: center;" | 完了
| Ver 3.7.4 で対応済みです。
|-
| ファイルから検索で対象フォルダーを複数指定する機能
| style="text-align: center;" | 完了
| Ver 2.7.6 で対応済みです。
|-
| キーボード マップでソートできるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 2.7.0 で対応済みです。
|-
| タイプライター スクロールで固定位置の設定をできるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 2.7.0 で対応済みです。
|-
| Zen モードで半角スペースなどの記号が表示されてしまう。
| style="text-align: center;" | 完了
| Ver 2.7.0 で対応済みです。
|-
| Zen モードの切り替え時に画面がチラつく。
| style="text-align: center;" | 完了
| Ver 2.7.0 で対応済みです。
|-
| スクロールバーに検索結果を色付けしてほしい。
| style="text-align: center;" | 完了
| Ver 2.7.0 で対応済みです。
|-
| URL のパースで<code>!</code>が認識されない。
| style="text-align: center;" | 完了
| Ver 2.7.0 で対応済みです。
|-
| マクロで Undo ポイントの設定をできるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 2.7.0 で対応済みです。
|-
| ワークスペースの保存と復元
| style="text-align: center;" | 完了
| Ver 2.6.15 で対応済みです。
|-
| 集中執筆モード
| style="text-align: center;" | 完了
| Ver 2.6.15 で [Zen モード] として対応済みです。
|-
| プラグインからエンコードと改行コードを取得できるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 2.6.10 で対応済みです。
|-
| ファイルから検索のコマンドライン引数を増設してほしい。
| style="text-align: center;" | 完了
| Ver 2.6.9 で対応済みです。
|-
| 自動保存、バックアップ機能
| style="text-align: center;" | 完了
| Ver 2.6.9 で対応済みです。
|-
| 編集行の強調表示
| style="text-align: center;" | 完了
| Ver 2.6.9 で対応済みです。
|-
| ファイルから検索・置換に「終了したら閉じる」を追加してほしい。
| style="text-align: center;" | 完了
| Ver 2.6.8 で対応済みです。
|-
| <code>/mf</code>でアクティブなタブに対してマクロを実行できるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 3.3.6 で対応済みです。
|-
| EXE アイコンのデザインを変更してほしい。
| style="text-align: center;" | 完了
| Ver 2.6.0 で対応済みです。
|-
| UTF-16 の BOM 無しに 対応してほしい。
| style="text-align: center;" | 完了
| Ver 2.5.5 で対応済みです。
|-
| 単語の途中で改行されるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 2.6.0 で対応済みです。
|-
| ツール バーのアイコンを大きくしてほしい。
| style="text-align: center;" | 完了
| Ver 2.6.0 で対応済みです。
|-
| 自動マーカー、手動マーカー機能
| style="text-align: center;" | 完了
| Ver 2.6.0 で対応済みです。
|-
| マウスキャプチャ後のスクロール マージンの挙動を秀丸エディタさんのようにしてほしい。
| style="text-align: center;" | 完了
| Ver 2.5.2 で対応済みです。
|-
| <code>AddFontResource</code>で追加したフォントが DirectWrite で使用できない。
| style="text-align: center;" | 完了
| Ver 2.5.0 で対応済みです。
|-
| HTML Tidy の HTML5 対応
| style="text-align: center;" | 完了
| Ver 2.5.0 で対応済みです。
|-
| アウトラインのドラッグ アンド ドロップで並べ替えできるようにしてほしい。
| style="text-align: center;" | 完了
| Ver 2.5.0 で対応済みです。
|-
| ウィンドウの左右分割
| style="text-align: center;" | 完了
| Ver 2.5.0 で対応済みです。
|-
| 特殊文字入力のインターフェイスを改善してほしい。
| style="text-align: center;" | 完了
| Ver 2.6.13 で対応済みです。
|-
| 書き換え禁止モードを分かりやすくしてほしい。
| style="text-align: center;" | 完了
| タブに鍵マークを表示するようにしました。
|-
| 先頭文字を大文字に変換するときに、アポストロフィの後の文字も大文字になってしまう。
| style="text-align: center;" | 完了
| アポストロフィは無視するようにしました。
|-
| 最大化 → 最小化 → 復元時にファイルの更新チェックが実行されない。
| style="text-align: center;" | 完了
|
|-
| バイナリファイルなどを誤って開いたときに警告を表示し、キャンセルできるようにしてほしい。
| style="text-align: center;" | 完了
|
|-
| 文字間隔を設定できるようにしてほしい。
| style="text-align: center;" | 完了
|
|-
| グレーのアイコンの色が濃すぎる。
| style="text-align: center;" | 完了
|
|-
| 新規作成時のエンコードを指定できるようにしてほしい。
| style="text-align: center;" | 完了
|
|-
| ドラッグ中にメッセージ ボックスを表示させるとフリーズすることがある。
| style="text-align: center;" | 完了
|
|-
| 起動時引数で行番号と一緒に桁番号も指定できるようにしてほしい。
| style="text-align: center;" | 完了
|
|-
| 画面中央付近でキャレットを固定したい。
| style="text-align: center;" | 完了
| Ver 2.6.15 で対応済みです。
|-
| 起動時引数でエンコードを指定できるようにしてほしい。
| style="text-align: center;" | 完了
|
|-
| 起動時引数で編集モードを指定できるようにしてほしい。
| style="text-align: center;" | 完了
|
|-
| 矩形選択モードをメニューで切り替えられるようにしてほしい。
| style="text-align: center;" | 完了
| [https://www.haijin-boys.com/discussions/3284#discussion-3292 フォーラム]<br>Ver 3.6.1 で対応済みです。
|-
| Shift JIS、UTF-8 など、文字コードごとの表示名を追加してほしい。
| style="text-align: center;" | 却下
| UTF-8 標準化に伴い却下されました。
|-
| CSV/TSV 編集機能
| style="text-align: center;" | 却下
| Excel の使用をお勧めします。
|-
| 入力補完の自動呼び出し
| style="text-align: center;" | 却下
| 開発したものの不要というご意見があり、実装は中止されました。
|-
| 自動アップデート機能
| style="text-align: center;" | 却下
| サーバー増強、コードサイニングの取得など、費用がかかります。また、セキュリティ上の問題が大きいため、アップデートの確認機能に留めておくべきです。
|-
| 差分表示 (Diff) 機能
| style="text-align: center;" | 却下
| WinMerge などの専用ソフトの使用をお勧めします。
|-
| フリーカーソルモードをメニューで切り替えられるようにしてほしい。
| style="text-align: center;" | 却下
| [https://www.haijin-boys.com/discussions/5812 フォーラム]<br>開発は行われましたが、アンケートの結果、需要が少ないためボツとなりました。
|}


*64 ビット対応
== 書きかけ項目 ==
*正規表現エンジン「鬼車」から「鬼雲」に変更
*Tidy HTML5 採用


=== やってみたいこと ===
* [[ヘルプ:3:目次]]


*ツールバーの大きいアイコンが欲しい
== 過去ログ ==
:[http://www.glyfz.com/ Glyfz] の「Office 2016」が素敵。でも「Office 2010」の全部セットで $125 でも良いかもしれない
*オシャレな exe アイコンが欲しい
:デザインが統一された商用のアプリケーションアイコン一式が欲しい
*自動アップデートの実装
:技術的好奇心でやってみたいけど、サーバ増強が必要かもしれない
:自動でアップデートされてしまうとブログサイトの閲覧数が確実に減る (アイコンとか買いたいのでアフィ踏んで欲しい)
:通信するアプリはデジタル署名がないとノートン先生に消される率が高そう
:<span style="color: crimson;">そもそもセキュリティ的な問題が大きい。アップデートチェックに留めておくべき</span>


=== 開発環境 ===
* [[ダークモード対応]]
 
* [[ストアアプリ化計画]]
*Embarcadero Delphi XE2
* [[Windows 11 22H2 で半角/全角キーを押すと Mery が落ちる問題について]]
**Delphi 10 Seattle だとオーバースペック
**exe のファイルサイズが 400KB 程膨らむけど Delphi 10 Seattle よりはだいぶマシ
**ちなみにその 400KB は XE2 から搭載されたスキン機能のせいらしい
::(どうせならスキン機能使ってみるか?と思ったらダサいのしかなかった)
:[[ファイル:Mery3_01.png|border]]
 
*Microsoft Visual C++ 2008
**Visual C++ 2015 だとオーバースペック
**鬼雲、Tidy、Hunspell の 32 ビット版、64 ビット版がそれぞれビルドできれば何でも良い
 
=== 現状 ===
 
*本体の 64 ビット対応
:Active Script の 64 ビット対応がヤバかった
*Tidy HTML5 採用
:なんかできそうな気がしてきた
*[https://github.com/k-takata/Onigmo 鬼雲] 64 ビット版のビルド
:良く分からなかったけどなんかできたっぽい
:ヘッダの 64 ビット対応もほぼ完了
*[https://github.com/hunspell/hunspell Hunspell] 64 ビット版のビルド
:そもそも 64 ビット版なんてないし、64 ビットでビルドすればいいだけなのか謎
*[https://github.com/htacg/tidy-html5 Tidy HTML5] 64 ビット版のビルド
:そもそも MSVC でビルドする方法が分からない
 
=== 問題 ===
 
*64 ビット対応しても恩恵少なくね?
:TNotePad の設計上、大きいファイルの扱いは苦手
:開いているファイルすべての合計が 2GB 以上いけるようになるので、まあ恩恵といえばそれぐらい
*フラットデザインにするかどうか?
:私はまだ Windows 7 なのでフラットデザインが似合わない
*Delphi XE2 ではビルド番号の自動更新が無くなってる
:ビルド番号があると「がんばってる感」があるんだけど、まぁ無くても良いか
*Delphi XE2 だと不具合でリソースが英語 (1033) になる
:それほど問題はなさそうだけどなんだかなぁ…
 
=== 既知の不具合 ===
*印刷プレビューがマルチモニタ対応していない
:→ がんばる
 
=== ご意見・ご要望 ===
*(検討) ファイルから検索のコマンドライン引数の増設
*(検討) 自動マーカー、手動マーカー
:→ 面白そうだけどかなり大変
*(検討) 開いているファイルから置換
:→ なかなか大変
*(検討) バックアップ
:→ 個人的には必ずオフにする機能なので作るのめんどい
*(保留) EXE アイコンがダサい? 有志の方作成:[[ファイル:Icons.zip]]
:→ EXE アイコンってアプリケーションの顔だと思うので簡単には決められない
*(保留) 単語分断折り返し?
:→ 折り返しは内部でキッチリ決まってるので手の着けようがなさそう
*(保留) 矩形選択で文字入力したときにイイ感じに入力されると良いな
:→ 作ってみたけど問題多すぎ
*(保留) CSV / TSV 編集機能の研究
:→ Excel 使え!?
*(保留) トリプルクリックからの論理行選択
:→ 物理行選択派な人もいそう
*(完了) AddFontResource で追加したフォントが DirectWrite で使用できない
:→ 2.5.0 で対応
*(完了) '''Tidy HTML5'''
:→ 2.5.0 で対応
*(完了) アウトラインのドラッグドロップで並べ替え
:→ 2.5.0 で対応
*(完了) ウィンドウの縦分割
:→ 実装した。上下左右同時分割は実装しない
*(完了) 特殊文字入力のインターフェイス考察
:→ 特殊文字を入力するマクロを同梱した
*(完了) 書き換え禁止モードをわかりやすくする?
:→ タブに鍵マークを表示するようにした
*(完了) 先頭大文字で Don'T になっちゃう
:→ アポストロフィは無視するようにした
*(完了) 最大化→最小化→復元時のファイルの更新チェックを走らせる手段の調査
*(完了) バイナリなどを開いたときの確認ダイアログで「キャンセル」したい
*(完了) 文字間隔の設定
*(完了) グレーアイコンが濃すぎる?
*(完了) 新規作成時のエンコードの指定方法について検討
*(完了) ドラッグ中にメッセージボックスを表示させるとフリーズすることがある
*(完了) 起動時引数行番号と一緒に桁番号も指定
*(完了) 単語補完の自動起動
*(完了) 0x200Fの挙動
*(完了) 画面中央付近でキャレットを固定したい
:→ ScrollMargin を最大値に設定
*(完了) 起動時引数エンコードの指定
*(完了) 起動時引数編集モードの指定
*(不要) SJIS、UTF8 とかごとの文字コード表示
:→ UTF8 標準化により却下
 
=== アイコン ===
 
*[https://github.com/paomedia/small-n-flat small-n-flat]
:パブリックドメインだし SVG なので使いやすい。種類も豊富なので他のアプリとデザインを統一できる
:試しにこのアイコンに変更してみたらサイズが 100KB も縮んだw
[[ファイル:Mery_Icon.png]]
 
*[http://graphicloads.com/ GraphicLoads]
:完全無料。PNG (256x256) と AI 形式がある。他にも有料 (割と安い) で各種アイコンあり
[[ファイル:Mery_Icon2.png]]
[[ファイル:Mery_Icon3.png]]
 
== Delphi 10 Seattle の不具合 ==
 
Delphi 10 Seattle の VCL で発生する高 DPI 環境向けの開発における不具合を愚痴ってみました。
 
Windows 10、ディスプレイ 1 (メイン: 125%)、ディスプレイ 2 (サブ: 100%) の Per-Monitor DPI で確認
 
=== Per-Monitor DPI にてフォーム表示直後にスケーリングされない ===
 
*フォームにボタンでも適当に貼りつけて起動するだけで発生
 
:BorderStyle が bsSizeable の場合が駄目っぽい
:起動直後に WM_DPICHANGED が飛んでこないためスケーリングされないようだ
::ステータスバーを貼りつけるとなぜか直る
::WS_POPUP を含めるとなぜか直る (Position で poDefault が効かないなどの副作用あり)
 
*<span style="color:crimson;">なお、Delphi 10 Seattle Update 1 ではもっと派手にぶっ壊れている模様</span>
 
=== Per-Monitor DPI にて Constraints を指定していると正常に動作しない ===
 
[http://qc.embarcadero.com/wc/qcmain.aspx?d=77955 http://qc.embarcadero.com/wc/qcmain.aspx?d=77955]
 
*Vcl.Forms.pas の問題
:ScaleConstraints(M, D) で制約のサイズを変更している箇所がフォームのサイズを変更した後になってるため
:スケールが小さくなる場合は先に制約のサイズを小さくしておかないと制約にひっかかってフォームのサイズを縮小できない
:スケールが大きくなる場合は後から制約のサイズを大きくしないと制約にひっかかってフォームのサイズを拡大できない
:それを踏まえて修正してみるとこんな感じかもしれない
 
<source lang="delphi">
procedure TCustomForm.ChangeScale(M, D: Integer);
var
  PriorHeight: Integer;
begin
  // modified begin
  if M < D then
    ScaleConstraints(M, D);
  // modified end
  ScaleScrollBars(M, D);
  ScaleControls(M, D);
  if IsClientSizeStored then
  begin
    PriorHeight := ClientHeight;
    ClientWidth := MulDiv(ClientWidth, M, D);
    ClientHeight := MulDiv(PriorHeight, M, D);
  end;
  Font.Height := MulDiv(Font.Height, M, D);
  // modified begin
  (*
  ScaleConstraints(M, D);
  *)
  if M > D then
    ScaleConstraints(M, D);
  // modified end
end;
</source>
 
=== Constraints を指定しているとスケーリング後のフォームサイズがおかしい ===
 
上記の現象を回避したうえでこの問題が発生する。
 
そもそも Constraints は ClientWidth、ClientHeight ではなく Width、Height が基準なので MaxHeight、MinHeight にはタイトルバーの高さも含まれている。Vcl.Controls.pas の ScaleConstraints メソッドでは単純に数値のみでスケーリングを行っているため Per-Monitor DPI 状況下でタイトルバーのサイズが一定ということが考慮されておらず、結果としてクライアント領域が計算上より狭くなってしまう。
 
この問題は ChangeScale の後でタイトルバーの高さをスケーリングした場合の差分を足してやることで回避は可能だが結果的に高さが WM_DPICHANGED で送られてくる LPARAM の中の高さと異なってしまうため、ディスプレイをまたぐ位置によってはサイズが変更されなかったり無限ループが発生する恐れがあると思われる。
 
=== FormCreate 時のフォームの PixelsPerInch がおかしい ===
 
*親フォームの場合
:BorderStyle が bsSizeable だと PixelsPerInch が Screen.PixelsPerInch のまま
:ステータスバーを貼りつけると直る
 
*子フォームの場合
:WS_POPUP を含めずステータスバーを貼りつけている場合、起動時の PixelsPerInch が入っている
:WS_POPUP を含めてステータスバーを貼りつけている場合、Screen.PixelsPerInch が入っている
:WS_POPUP を含めてステータスバーを貼りつけていない場合、Screen.PixelsPerInch が入っている
 
*いずれの場合も FormShow 以降に処理を書けば正しい PixelsPerInch を取得できる
 
=== WM_DPICHANGED の実装における問題 ===
 
*Vcl.Forms.pas の問題
:WM_DPICHANGED で飛んでくる LPARAM (DPI 変更後の推奨ウィンドウサイズ) を使用せずに ChangeScale(Message.YDpi, FPixelsPerInch); の部分で自前でサイズを計算しているが、このやり方だとディスプレイをまたぐ位置によってはサイズが変更されなかったり、無限ループに陥ることも考えられる
 
<source lang="delphi">
procedure TCustomForm.WMDpiChanged(var Message: TWMDpi);
var
  I: Integer;
  OldPPI: Integer;
begin
  if not (csDesigning in ComponentState) then
  begin
    if (Message.YDpi = 0) or (FPixelsPerInch = 0) then
    begin
      if (Application.MainForm <> nil) and (Application.MainForm.PixelsPerInch <> 0) then
        FPixelsPerInch := Application.MainForm.PixelsPerInch
      else
        Exit;
    end;
 
    if Message.YDpi <> FPixelsPerInch then
    begin
      if Assigned(FOnBeforeMonitorDpiChanged) then
        FOnBeforeMonitorDpiChanged(Self, FPixelsPerInch, Message.YDpi);
 
      ChangeScale(Message.YDpi, FPixelsPerInch);
      for I := 0 to MDIChildCount - 1 do
        MDIChildren[I].ChangeScale(Message.YDpi, FPixelsPerInch);
      OldPPI := FPixelsPerInch;
      FPixelsPerInch := Message.YDpi;
      if Assigned(FOnAfterMonitorDpiChanged) then
        FOnAfterMonitorDpiChanged(Self, OldPPI, FPixelsPerInch);
    end;
    Message.Result := 0;
  end;
end;
</source>
 
*対策としては Message.ScalledRect^ の値を使用して MS のマニュアル通り SetWindowPos でウィンドウサイズを変更する
:[https://msdn.microsoft.com/ja-jp/library/windows/desktop/dn312083(v=vs.85).aspx https://msdn.microsoft.com/ja-jp/library/windows/desktop/dn312083(v=vs.85).aspx]
 
*さらなる問題。MS のマニュアル通りにするとウィンドウの高さが若干おかしい
:これの理由は LPARAM に含まれているウィンドウの高さの値がタイトルバーも含めた値のため
::Windows 10 では Per-Monitor DPI でディスプレイをまたいでもタイトルバーの高さは変更されない (むしろ変更できないっぽい)
::ディスプレイをまたいで本来変更されるはずのタイトルバーの高さが変更されないので、その差分だけクライアント領域が狭くなる
::でも自前で高さを変更しちゃうと先に述べたとおり無限ループなどの原因になる
::<span style="color:crimson;">→ つまり回避不能</span>
 
*でも Windows 10 の電卓みたいな標準アプリはタイトルバーの高さも変わるぞ?
:調べたみたらタイトルバーの高さが変わるのは、実はあのタイトルバーは本物のタイトルバーではなく、クライアント領域に描かれている絵らしい
:しかしメニューのサイズとかも変わっているので、もしかすると MS が裏技を用意しているのかも?
 
=== FormCreate でフォームのフォントを変更してもスケーリングされない ===
 
*Vcl.Forms.pas を見ると TCustomForm.ReadState の部分でフォントのサイズなどのスケーリングを行っているが、ReadState は FormCreate より前に呼び出されているので FormCreate でフォントを設定しても時すでに遅し
:かといって TCustomForm.ReadState より前にフォントを設定したとしても ReadState でリソースからフォントを上書きされてしまうので無意味
:フォントを変更したい場合は FormShow 以降に PixelsPerInch を使用して自前でフォントの Height をスケーリングしてやる必要がある
スポンサーリンク