ローカルロールバック/記録を放棄せずにMoshを使用しますか?

ローカルロールバック/記録を放棄せずにMoshを使用しますか?

使用する方法はありますか?moshローカルロールバックをあきらめませんか?

デフォルトでは、IPローミングは本当に便利で、いくつかのケースでは必要ですが、追加の端末エミュレーションとキー予測はローカルスクロールバックバッファラインとセッション履歴を削除するようです。

答え1

フィリッポ・バルソルダはiTerm 2、tmux、moshなどのOS X用ソリューション

彼のソリューションは、単一のウィンドウ/タブを使用してリモートシェルに接続します。シェルは切断(例:接続失敗、IP変更、ラップトップの再起動)を可能にし、タッチパッド、コピーペースト、色によるスクロールバックをサポートします。

注意すべき点は、ソースからmoshをビルドする必要があり、スクロールがデフォルトと同じくらい滑らかではなく、クリック - ドラッグが渡されるため、選択するにはOptionを押し続ける必要があることです。

  • アイテム

    端末プロファイル設定でxtermマウスレポートを有効にするレポート端末の種類を次に設定します。xterm-256color

  • マルチプレクサ

    サーバーでの設定は~/.tmux.conf次のとおりです。これらの設定を使用すると、接続しようとしましたがセッションがない場合は新しいセッションが作成されます。これらの設定により、マウスのやり取り(およびタッチパッドのスクロール)も可能になります。

    new-session
    set-window-option -g mode-mouse on
    set -g history-limit 30000
    

    注:レポートによると、最新のtmux(> 2.1など)では、tmux -Vさまざまなマウスオプション(マウスのサイズ変更ウィンドウ、マウスモードなど)が単一のオプションで書き換えられたため、上記mouseの2行目を変更する必要があります。へ set-window-option -gマウスon代わりに。

    Ctrlこのマウススクロールは、記事で説明されているようにキーボードスクロールモード( - bthen など)にあるときにも[機能します。tmuxでスクロールする方法

  • モシュ

    moshの安定版は非常に古く、マウスレポート(およびタッチパッドスクロール)をサポートしていません。最新バージョンをインストールするには:

    OS X(クライアント)

    brew install --HEAD mobile-shell
    

    Linux/UNIX(サーバー)

    git clone https://github.com/keithw/mosh.git
    cd mosh/
    sudo apt-get build-dep mosh
    ./autogen.sh && ./configure && make
    sudo make install
    

今すぐ接続するには、次のように入力します。

mosh HOST -- tmux a

答え2

端末エミュレーションは設計に深く統合されています。モシュだからそうではありません。 Moshは、クライアントとサーバーがそれぞれ現在の画面の「外観」の独自のローカルアイデアを維持するようにすることで動作します。これを行うには、サーバーがターミナルエミュレーションを実行する必要があります。これは、クライアントがしばらくの間空にした後に一部のデータが失われた後に画面の内容を更新する方法です。

Mosh IPローミング機能はありますが、端末エミュレーションを持たないアプリケーションは、最終的にまったく異なる(しかしより単純な)アプリケーションになると思います。これらのアプリケーションでは、一定期間にわたってクライアントの接続が失われるなどのデータが失われると、画面の内容が失われたり破損したりする可能性があります。これは、ユーザーが重要でないアプリケーション(シェルなど)または再描画機能を持つアプリケーション(Control-Lを使用)を使用する場合にvi許可される制限です。

Moshの実装者アプリケーションでロールバックをサポートする計画が進行中です。しかし、ローカル端末がこれ以上実行できないという事実を補うために。私の考えでは、これはscreenスクロールバーとマウスではなくキーストロークで制御されるスクロールバックバッファと少し似ているようです。

答え3

永遠の終点(https://mistertea.github.io/EternalTerminal/)は、デフォルトのロールバックをサポートしながら、まだIPローミングを可能にするMoshの代替手段です。 ETは入力予測を実行しないため、接続待ち時間が長い場合(Sshを介してドローンまたは電話に接続する場合)、それは適切ではありませんが、個人的にはETは私が望むすべてのタスクを実行し、コールバックロールをサポートします。

答え4

ターミナル->基本設定->プロフィール->キーボードで「代替画面スクロール」を選択解除すると問題が解決しました。

関連情報