Computer >> Hướng Dẫn Máy Tính >  >> Xử Lý Sự Cố >> Linux

Khắc Phục Vấn Đề Cuộn Tmux: Mẹo Chuyên Gia Để Điều Hướng Nhanh

Tmux (tên từ Terminal multiplexer) là một trong những terminal/shell multiplexer mã nguồn mở tốt nhất cho hệ điều hành Unix-based (ví dụ: các distro Linux, Mac, v.v.). Tmux cho phép truy cập đồng thời nhiều phiên terminal trong một cửa sổ. Nó rất hữu ích chạy nhiều script/chương trình dòng lệnh cùng lúc.

Tmux Scroll Up

Nhưng do nhiều cửa sổ hoạt động cùng lúc, đối với một số user, việc cuộn lên trong cửa sổ terminal (từ bàn phím hoặc chuột) trở nên khó khăn. Và vấn đề trầm trọng hơn do sự đa dạng của các OS Unix-based.

Đừng lo lắng, user có thể cuộn lên dễ dàng trong Tmux như thảo luận dưới:

Bật và Dùng Chế Độ Cuộn (Scroll Mode) Của Tmux

Bạn có thể cuộn lên và xuống trong Tmux bằng cách:

  1. Nhấn phím Ctrl + B rồi phím [.
    Nhấn Ctrl + B + [ để Bật Chế Độ Cuộn Của Tmux
  2. Bây giờ dùng các phím điều hướng bình thường trên bàn phím như mũi tên lên/xu trang lên/xuống, page up, page down, v.v. để điều hướng giao diện Tmux.

Khi user xong việc cuộn, có thể thoát chế độ cuộn trong Tmux bằng phím Q. Nếu không hoạt động như mong đợi, kiểm tra xem dùng phím F7 để vào chế độ cuộn và q để thoát có giải quyết không.

Bật và Dùng Chế Độ Sao Chép (Copy Mode)

  1. Nhấn Ctrl + B rồi phím PgUp.
  2. Bây giờ terminal sẽ đi lên một trang trực tiếp trong Tmux và kiểm tra xem có thỏa mãn yêu cầu không.

Dùng Chế Độ VI

Nếu Tmux được điều khiển bởi một attached client, nó gọi là chế độ VI trong Tmux. Ở chế độ VI, bạn có thể dùng Shift + K và Shift + J để điều hướng dòng từng dòng trong giao diện Tmux (nếu ở chế độ cuộn), nếu không chỉ con trỏ di chuyển khi nhấn các phím đó. Ngoài ra, bạn có thể nhấn C-B (hai lần) để cuộn lên một trang và C-F để cuộn xuống một trang trong Tmux.

Chỉnh Sửa File Tmux.Config

Đối với một số user nâng cao, các phương pháp trên có thể không thỏa mãn, lúc đó chỉnh sửa file Tmux.config có thể giải quyết vấn đề (như thảo luận dưới). Bạn có thể mở file Tmux.config bằng lệnh vim ~/.tmux.config trong terminal.

Bật Cuộn Chuột (Mouse Scrolling)

  1. Thêm các dòng sau vào file Tmux.config tùy phiên bản Tmux:
    Cho phiên bản Tmux 2.1 trở lên
    set -g mouse on
    Cho phiên bản Tmux dưới 2.1
    set -g mode-mouse on
  2. Kiểm tra xem cuộn chuột có hoạt động tốt không.

Nhớ bạn có thể nhấn phím Q để thoát chế độ cuộn sau đó. Ngoài ra, để copy nội dung từ terminal, bạn có thể dùng Shift + Click Chuột Trái để thực hiện copy.

Bật Cuộn Chuột Với Key Binding:

  1. Thêm các dòng sau vào file 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'"
  2. Bây giờ, kết thúc tiến trình Tmux bằng lệnh:
    tmux kill-server && tmux
  3. Sau đó khởi động Tmux và kiểm tra xem cuộn có hoạt động như mong đợi không.

Nhớ nếu bạn phải copy mục trong chế độ chuột của Tmux, dùng phím Shift + click chuột trái để copy nội dung.

Nếu không hoạt động, kiểm tra xem thêm sau vào Tmux.config có giải quyết không:

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

Bật Cuộn Xterm Mặc Định

  1. Thêm các dòng sau vào file Tmux.config:
    # Sane scrolling
    set -g terminal-overrides 'xterm*:smcup@:rmcup@'
  2. Kiểm tra xem cuộn Tmux có đạt kỳ vọng không.

Nếu không hoạt động, kiểm tra xem thêm sau vào file cấu hình Tmux có thêm hành vi cần thiết không (nhưng bạn có thể phải reboot sau):

# 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"

Nhưng nhớ nếu bạn đổi loại terminal thành Putty, code trên có thể không hoạt động và nếu bạn phải dùng Putty, bạn có thể thêm sau vào file cấu hình Tmux:

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

Nếu không hoạt động, kiểm tra xem thêm sau vào file cấu hình có giải quyết không:

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

Cho macOS Mojave và Cao Hơn

Chỉ dùng Option + UpArrow để cuộn lên và Option + DownArrow để cuộn xuống trên Mac với macOS X trở lên.

Use Option and Navigation Keys to Scroll in Tmux

Nếu không hoạt động, vào che độ copy bằng cách nhấn:

ctrl + b + [

Sau đó để cuộn lên hoặc xuống một dòng dùng phím mũi tên lên hoặc xuống. Để cuộn một trang lên hoặc xuống, dùng fn + mũi tên lên hoặc fn + mũi tên xuống. Và khi phải thoát chế độ, chỉ nhấn phím q.

Thử Plugin

Nếu không phương pháp nào hoạt động như mong đợi, dùng plugin như Tmux-Better-Mouse-Mode có thể thỏa mãn yêu cầu.

Download Tmux Better Mouse Mode Plug-in

VỀ TÁC GIẢ

Khắc Phục Vấn Đề Cuộn Tmux: Mẹo Chuyên Gia Để Điều Hướng Nhanh

Kevin Arrows

Kevin Arrows là chuyên gia công nghệ giàu kinh nghiệm và kiến thức với hơn một thập kỷ kinh nghiệm trong ngành. Anh持有 chứng chỉ Microsoft Certified Technology Specialist (MCTS) và có đam mê sâu sắc về việc cập nhật các phát triển công nghệ mới nhất. Kevin đã viết nhiều về nhiều chủ đề liên quan đến công nghệ, thể hiện chuyên môn và kiến thức trong các lĩnh vực như phát triển phần mềm, an ninh mạng và điện toán đám mây. Đóng góp của anh cho lĩnh vực công nghệ đã được công nhận và tôn trọng rộng rãi bởi đồng nghiệp, và anh được đánh giá cao về khả năng giải thích các khái niệm kỹ thuật phức tạp một cách rõ ràng và súc tích.