Terminal: ConPTYパススルーモード

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

これについては、以前にさまざまなスレッドで何度か話し合ったことがありますが、実際に問題が発生したことはないと思います。

conptyパススルーモードの考え方は、コンソールを変更するためにVTシーケンス(およびAPIではない)のみを使用することを_知っている_コマンドラインクライアントアプリケーションが、特別なモードENABLE_PASSTHROUGH_MODEを設定できるということです。 conptyがアクティブな場合、コンソールはconptyを介して自身をレンダリングすることを_停止_し、コンソールに書き込まれたものはすべてターミナルに直接送信されます。

  • これは、VTについてのみ話すwslのようなもので特にうまく機能します。
  • cmd.exeはAPIに大きく依存しているため、cmd.exeでは機能しません。
  • Windows PowershellもAPIをかなり必要としますが、クロスプラットフォームであるPowershellCoreがそれを利用できる可能性があります。

これには、整理する必要のあるいくつかの粗いエッジがあります。

  • []アプリが終了し、パススルーモードがオフになるとどうなりますか? ターミナルとconptyのバッファはもう同等ではありません!

    • 私は、conptyにシーケンスを通過させ、それら自体を処理して、端末とconptyの同期を維持するというアイデアをいじっています。

  • []誰かがパススルーモードでコンソールAPIを呼び出そうとするとどうなりますか?

    • 私たちは彼らを失敗させるだけだと思っています。 すべてGet/SetConsoleModeと読み取り入力/書き込み出力のために保存します。

    • また、サイズ変更イベントを読み取ることができる必要もあります。

これには実際の仕様を書く必要がありますが、おそらくその前にプロトタイピングを行う必要があります。

Area-Server Issue-Feature Needs-Triage Product-Conpty Resolution-Duplicate

最も参考になるコメント

_ああ、私はデュープを提出しました、あなたは先に進んで、今私を描いて四分の一にすることができます_

全てのコメント3件

これは実際には#1173かもしれませんか?

_ああ、私はデュープを提出しました、あなたは先に進んで、今私を描いて四分の一にすることができます_

mfw「今すぐ私を描いて四分の一にする」:🤔😱

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