Terminal: Ctrl+Sの一時停止を再調査します

作成日 2019年05月15日  ·  3コメント  ·  ソース: microsoft/terminal

履歴のある時点で、Ctrl + Sを壊して、コンソールホストの出力を一時停止しました。 私たちがExtendedEditKeysのものをいじったのはその頃だったと思います。

私はもうこれについて完全な文脈を持っていません、これは私が外部に移植しているMSFT:17790922として私が持っていたもう一つのメモ-to-selfタイトルのみのバグです。

Ctrl+Sの一時停止の状態を時代を超えて再調査する必要があります。 v1はどのようにそれを行いましたか? v2はWindows10のリリースでどのように機能しましたか? どういうわけかオプションとして再導入する必要がありますか?

Area-Input Area-Interaction Issue-Feature Product-Conhost

最も参考になるコメント

NT 4では、ライン入力モードが有効になっている場合、コンソール出力は一時停止キー( VK_PAUSE )またはCtrl-Sのいずれかを介して一時停止できます。 ターミナルに慣れている人の便宜のためにCtrl-Sが選ばれたと確信しています。 とはいえ、任意のキーを押すと出力が再開されます。 コンソールは実際にはXOFF/XONに応答する端末ではないため、Ctrl-Qである必要はありません。

Windows 2000の周辺では、「ExtendedEditKey」レジストリ設定が追加されました。 これが有効になっている場合、カスタム編集キーは「ExtendedEditkeyCustom」で定義できます。 これが文書化されたことはないと思います。 カスタムマッピングが定義されていない場合は、Ctrl-S-> VK_PAUSEマッピングを含むデフォルトのマッピングを使用しました。 そのため、「ExtendedEditKey」が有効になっていても、Ctrl-Sはデフォルトで機能していました。

新しいコンソールでは、プロパティダイアログに「ExtendedEditKey」が表示されますが、「拡張テキスト選択キー」に再利用されるようになりました。 「ExtendedEditkeyCustom」はソース内の痕跡のCONSOLE_REGISTRY_EXTENDEDEDITKEY_CUSTOMマクロを超えて実装されていないように見えるため、 IsPauseKeyVK_PAUSEまたはCtrl-Sに対して単純にtrueを返す必要があると思います。元の動作を復元します。

関連するメモとして、ソースでは、「ExtendedEditKey」とプロパティダイアログがグローバルg_fEditKeysの値を設定していることがわかりますが、未使用のようです。

全てのコメント3件

Ctrl + S / XOFF、ctrl +QXON。 これは、昔ながらのソフトウェアフロー制御です。 自分自身で言えば、ストリーミングログ、猫、尻尾などでかなりよく使用します。古いテレプリンター/端末からの痕跡であり、VTで引き継がれています。

ああ、そうです、あなたは間違いなくそれを再導入すべきだと思います。

NT 4では、ライン入力モードが有効になっている場合、コンソール出力は一時停止キー( VK_PAUSE )またはCtrl-Sのいずれかを介して一時停止できます。 ターミナルに慣れている人の便宜のためにCtrl-Sが選ばれたと確信しています。 とはいえ、任意のキーを押すと出力が再開されます。 コンソールは実際にはXOFF/XONに応答する端末ではないため、Ctrl-Qである必要はありません。

Windows 2000の周辺では、「ExtendedEditKey」レジストリ設定が追加されました。 これが有効になっている場合、カスタム編集キーは「ExtendedEditkeyCustom」で定義できます。 これが文書化されたことはないと思います。 カスタムマッピングが定義されていない場合は、Ctrl-S-> VK_PAUSEマッピングを含むデフォルトのマッピングを使用しました。 そのため、「ExtendedEditKey」が有効になっていても、Ctrl-Sはデフォルトで機能していました。

新しいコンソールでは、プロパティダイアログに「ExtendedEditKey」が表示されますが、「拡張テキスト選択キー」に再利用されるようになりました。 「ExtendedEditkeyCustom」はソース内の痕跡のCONSOLE_REGISTRY_EXTENDEDEDITKEY_CUSTOMマクロを超えて実装されていないように見えるため、 IsPauseKeyVK_PAUSEまたはCtrl-Sに対して単純にtrueを返す必要があると思います。元の動作を復元します。

関連するメモとして、ソースでは、「ExtendedEditKey」とプロパティダイアログがグローバルg_fEditKeysの値を設定していることがわかりますが、未使用のようです。

このページは役に立ちましたか?
0 / 5 - 0 評価