Linux
 Computer >> コンピューター >  >> トラブルシューティング >> Linux

Tmux のスクロールの問題を克服する:上に素早く移動するための専門家のヒント

Tmux (名前はT に由来) ターミナル トリプルx er) は、Unix ベースのオペレーティング システム (Linux ディストリビューション、Mac など) に最適なオープンソースのターミナル/シェル マルチプレクサの 1 つです。 Tmux を使用すると、単一ウィンドウで複数の端末セッションに同時にアクセスできます。これは、複数のコマンドライン スクリプト/プログラムを同時に実行する場合に非常に役立ちます。

Tmux 上にスクロール

ただし、複数のウィンドウが同時に動作するため、一部のユーザーにとっては、(キーボードまたはマウスのいずれかから) ターミナル ウィンドウ内で上にスクロールすることが困難になります。そして、Unix ベースの OS が多数存在するため、問題はさらに悪化します。

ただし、心配する必要はありません。以下で説明するように、ユーザーは Tmux で簡単に上にスクロールできます。

Tmux のスクロール モードを有効にして使用する

以下を使用すると、Tmux で上下にスクロールできます:

<オル>
  • Ctrl + B を押します。 キーの後に [ 鍵。
    Ctrl + B + [ キーを押して、Tmux のスクロール モードを有効にします
  • ここでは通常のナビゲーション キーを使用します。 キーボードの上矢印/下矢印、ページアップ、ページダウンなどを使用して、Tmux インターフェースを移動します。
  • ユーザーがスクロールを終了したら、Q キーを押すと Tmux のスクロール モードを終了できます。 。期待どおりに動作しない場合は、F7 キーを使用しているかどうかを確認してください。 スクロール モードに入り、q でモードを終了すると問題は解決します。

    コピー モードを有効にして使用する

    <オル>
  • Ctrl + B を押します。 キーの後に PgUp を押します キー。
  • ターミナルは Tmux で直接 1 ページ上に移動し、これが要件を満たしているかどうかを確認します。
  • VI モードを使用する

    Tmux が接続されたクライアントによって制御されている場合 、TmuxではVIモードと呼ばれます。 VI モードでは、Shift + K を使用できます。 およびShift + J キーを使用して、Tmux インターフェイスで行ごとに移動します (スクロール モードの場合)。それ以外の場合は、前述のキーを押したときにカーソルのみが移動します。また、C-B キー (2 回) を押すこともできます。 ページを上にスクロールするには、C-F キーを押します。 Tmux でページを下にスクロールします。

    Tmux.Config ファイルを編集する

    一部の上級ユーザーにとっては、上記の方法では満足できない場合があります。その場合は、Tmux.config ファイルを編集すると問題が解決する可能性があります (後述)。  vim ~/.tmux.config を実行すると、Tmux.config ファイルを起動できます。 ターミナル内。

    マウススクロールを有効にする

    <オル>
  • 追加 以下 Tmux.config ファイルへの行 Tmux バージョンによると:
    For the Tmux version 2.1 and up 
    set -g mouse on 
    For the Tmux version below 2.1 
    set -g mode-mouse on
  • 次に、マウスのスクロールが正常に動作しているかどうかを確認します。
  • Q キー を押す可能性があることに注意してください。 その後スクロール モードを終了します。また、ターミナルからコンテンツをコピーするには、Shift + マウスの左クリックを使用します。 コピー操作を実行します。

    キー バインドによるマウス スクロールを有効にする:

    <オル>
  • 追加 Config に次の行を追加します。 ファイル:
    set -g mouse on
    # sane scrolling:
    bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'copy-mode -e; send-keys -M'"
  • ここでTmux プロセスを終了します。 次のコマンドを実行します:
    tmux kill-server && tmux
  • 次に、Tmux を起動し、スクロールが期待どおりに機能するかどうかを確認します。
  • Tmux のマウス モードで項目をコピーする必要がある場合は、Shift キーを押しながらマウスの左クリックを使用して内容をコピーすることに注意してください。

    それでも問題が解決しない場合は、追加しているかどうかを確認してください。 Tmux.config に次の内容を追加すると、問題が解決します。

    set -g mouse on
    bind -n WheelUpPane {
        if -F '#{==:#{window_name},nvim}' {
            send-keys -M
        } {
            copy-mode -e
        }
    }

    デフォルトの Xterm スクロールを有効にする

    <オル>
  • 追加 Tmux.config に次の行を追加します。 ファイル:
    # Sane scrolling
    set -g terminal-overrides 'xterm*:smcup@:rmcup@'
  • 次に、Tmux スクロールが期待どおりであるかどうかを確認します。
  • それでも問題が解決しない場合は、追加しているかどうかを確認してください。 Tmux の設定ファイルに以下を追加すると、必要な動作が追加されます (ただし、後でシステムを再起動する必要がある場合があります)。

    # Allow xterm titles in the terminal window, terminal scrolling with scrollbar, and setting overrides of C-Up, C-Down, C-Left, C-Right
    set -g terminal-overrides "xterm*:XT:smcup@:rmcup@:kUP5=\eOA:kDN5=\eOB:kLFT5=\eOD:kRIT5=\eOC"

    ただし、ターミナルのタイプをPuttyに変更する場合は注意してください。 、その場合、上記のコードは機能しない可能性があり、Putty を使用する必要がある場合は次のコードを追加できます。 Tmux の設定ファイルに:

    set -g terminal-overrides "putty*:XT:smcup@:rmcup@:kUP5=\eOA:kDN5=\eOB:kLFT5=\eOD:kRIT5=\eOC"

    それが機能しなかった場合は、追加しているかどうかを確認します。 設定ファイルに次の内容を追加すると、問題が解決します。

    set -ga terminal-overrides ',xterm*:smcup@:rmcup@'

    macOS Mojave 以降の場合

    Option + 上矢印を使用してください。 上にスクロールし、Option + 下矢印を押します。 macOS X 以降を搭載した Mac では、下にスクロールします。

    Option キーとナビゲーション キーを使用して Tmux をスクロールする

    それでもうまくいかない場合は、コピー モードに入ります。 次を押してください:

    ctrl + b + [

    次にスクロールします。 の上または下 を使用して またはに 矢印キー。 ページを上にスクロールするには またはに 、fn + 上矢印を使用できます。 またはfn + 下 矢印キー。そして辞める必要があるときはいつでも。 このモードでは、q キーを押すだけです。 .

    プラグインを試してみる

    上記のいずれも期待通りに機能しない場合は、プラグインを使用してください。 Tmux-Better-Mouse-Mode のようなものがあなたの要件を満たすかもしれません。

    Tmux Better Mouse Mode プラグインをダウンロード

    著者について

    Tmux のスクロールの問題を克服する:上に素早く移動するための専門家のヒント

    ケビン・アロウズ

    Kevin Arrows は、10 年以上の業界経験を持つ、経験と知識が豊富なテクノロジー スペシャリストです。彼は Microsoft Certified Technology Specialist (MCTS) 認定を取得しており、最新の技術開発について常に最新の情報を入手することに深い情熱を持っています。 Kevin は、ソフトウェア開発、サイバーセキュリティ、クラウド コンピューティングなどの分野での専門知識と専門知識を示し、テクノロジー関連の幅広いトピックについて幅広く執筆しています。テクノロジー分野への彼の貢献は同僚から広く認められ、尊敬されており、複雑な技術概念を明確かつ簡潔に説明する能力が高く評価されています。


    1. SHファイルとは何ですか?それらを実行する方法は?

      スクリプトファイルには、特定のプログラムまたはスクリプトエンジンによって実行されるコマンドが含まれています。これらのコマンドは、コンパイルされずに実行されます。命令は、ランタイム環境用のスクリプト言語で書かれています。目的や環境が異なる多くのスクリプト言語があります。ただし、この記事で説明するのは、Linuxでの動作に使用されるbashスクリプト言語です。 bashスクリプト言語のコマンドまたは構文を含むファイルは、SHファイルまたはシェルスクリプトファイルとも呼ばれます。 LinuxのSHファイルとは何ですか? スクリプトファイルはbash言語で作成および保存されることが知られてい

    2. Ubuntu でのメモリ リークの検出と修正:ステップバイステップ ガイド

      Ubuntu でメモリ リークが発生する理由はいくつかありますが、幸いなことに、メモリ リークがいつ発生するかは明らかです。多くの場合、バグのあるコードが最大の理由です。プログラマーは、不要になったメモリが解放されていることを確認する機会がなかった可能性があるためです。不安定なパッケージをインストールしたり、ソースからコードをコンパイルしたりしている場合は、この理由でメモリ リークに対処している可能性があります。おそらく、十分すぎる物理 RAM がインストールされている場合、ソフトウェア アプリケーション パッケージがメモリ不足について文句を言い始めるため、それらに気づき始めるでしょう。 メ