Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Linux

Zellij: Terminal Multiplexer thay đổi cuộc chơi, thay thế Tmux và Screen

Terminal multiplexer không chỉ tổ chức quy trình làm việc; chúng hoàn toàn thay đổi cách bạn tương tác với môi trường phát triển. Chúng giúp bạn thực hiện các thao tác mượt mà khi triển khai code, gỡ lỗi server, hoặc chỉ viết script. Có khá nhiều terminal multiplexer như Tmux và Screen. Nhưng nếu bạn là người mới, có thể thấy chúng phức tạp hoặc khó cấu hình. Đó là lúc Zellij xuất hiện. Nó cung cấp một lựa chọn dễ dàng hơn và hoạt động ngay lập tức mà không cần thiết lập.

Tính năng chính của Zellij

Zellij cung cấp tất cả tính năng cần thiết cho terminal multiplexer hiện đại. Hãy xem một số tính năng:

  • Zellij thiết kế để dùng được ngay sau cài đặt, không yêu cầu người dùng tạo hoặc duy trì file cấu hình phức tạp.
  • Nó cung cấp giao diện người dùng terminal tích hợp với thanh trạng thái bền bỉ hiển thị các phím tắt đang hoạt động, chế độ tương tác hiện tại, và thông tin pane hoặc tab.
  • Zellij dùng hệ thống tương tác dựa trên chế độ (mode) rõ ràng để quản lý pane, tab, và thay đổi kích thước, đồng thời trình bày các hành động khả dụng cho từng chế độ trực tiếp trên màn hình.
  • Hệ thống pane hỗ trợ chia ngang và dọc, điều hướng bàn phím trực quan, thay đổi kích thước động, pane nổi cho tác vụ tạm thời, và tương tác chuột tùy chọn.
  • Tab cho phép nhóm các pane liên quan thành không gian làm việc riêng biệt, giúp tổ chức nhiều tác vụ hoặc dự án trong một phiên dễ dàng hơn.
  • Zellij cho phép định nghĩa mẫu layout tái sử dụng chỉ định vị trí pane và lệnh khởi động, cho phép khởi chạy môi trường làm việc hoàn chỉnh ngay lập tức.
  • Zellij chạy như tiến trình server nền, cho phép phiên tồn tại qua các lần crash terminal, ngắt kết nối mạng, và khởi động lại hệ thống, với hỗ trợ gắn lại (reattach) và khôi phục phiên.
  • Zellij bao gồm hệ thống plugin dựa trên WebAssembly để mở rộng an toàn và cung cấp web client để truy cập phiên qua trình duyệt.

Cài đặt và Cấu hình

Cài đặt Zellij qua trình quản lý gói hệ thống là cách khuyến nghị, vì nó tích hợp sạch sẽ với phần còn lại của hệ thống. Ví dụ, để cài trên Arch Linux, chạy:

sudo pacman -S zellij

Trên Fedora Linux, dùng:

sudo dnf install zellij

Mặc dù Zellij có sẵn trong hầu hết kho gói, nó không có sẵn trên Ubuntu hoặc Debian. Trên các distro này, bạn có thể cài qua Snap.

sudo snap install zellij --classic

Thay vào đó, đối với người dùng đã cài Rust toolchain, Zellij cũng có thể cài qua Cargo:

cargo install --locked zellij

Ở đây, cờ --locked đảm bảo phiên bản và phụ thuộc khớp với những gì dự án đã kiểm thử.

Ngoài ra, Zellij cung cấp script khởi chạy nhẹ cho phép chạy mà không cần cài đặt vĩnh viễn. Hữu ích cho đánh giá nhanh hoặc môi trường tạm thời.

bash 

Cuối cùng, trên macOS, Zellij thường cài qua Homebrew:

brew install zellij

Sau khi cài bằng bất kỳ phương pháp hỗ trợ nào, bạn khởi chạy Zellij bằng lệnh:

zellij
Zellij: Terminal Multiplexer thay đổi cuộc chơi, thay thế Tmux và Screen

Giao diện mở ngay lập tức bên trong terminal với layout mặc định hoạt động. Bạn có thể dùng pane, tab, và phiên mà không cần cấu hình trước.

Lưu ý: Hiện tại, Zellij thiết kế cho hệ thống Unix-like (Linux và macOS). Người dùng Windows có thể chạy qua WSL (Windows Subsystem for Linux) với kết quả tốt.

Tùy chỉnh file cấu hình

Zellij không yêu cầu file cấu hình để dùng được. Tuy nhiên, nếu muốn tùy chỉnh hành vi, bạn có thể làm qua file cấu hình viết bằng KDL (KDL Document Language), nhấn mạnh khả năng đọc và linh hoạt. File cấu hình nằm tại ~/.config/zellij/config.kdl.

Qua file này, bạn tùy chỉnh phím tắt, định nghĩa layout mặc định, điều chỉnh hành vi giao diện, cấu hình plugin, và đổi theme. Các tùy chọn này hoàn toàn tùy chọn và có thể đưa vào dần theo nhu cầu quy trình làm việc.

Zellij: Terminal Multiplexer thay đổi cuộc chơi, thay thế Tmux và Screen

Sau khi thay đổi, lưu file và khởi động lại Zellij để có hiệu lực. Bạn sau đó có thể điều chỉnh dần cài đặt dựa trên nhu cầu làm việc.

Layouts, Sessions, và Keybindings cuối cùng cũng có nghĩa

Layout của Zellij làm mọi thứ hiển thị rõ ràng. Ngay khi mở, thanh trạng thái bền bỉ hiển thị chế độ hiện tại và các phím khả dụng, nên bạn không bao giờ phải đoán cách quản lý pane hay tab. Điều này loại bỏ việc chuyển ngữ cảnh liên tục làm chậm bạn trong các terminal multiplexer khác.

Zellij: Terminal Multiplexer thay đổi cuộc chơi, thay thế Tmux và Screen

Bạn định nghĩa layout một lần, và Zellij khôi phục mọi thứ chính xác như bạn để lại, bao gồm tiến trình đang chạy, log, vị trí pane, và lịch sử cuộn. Chuyển đổi giữa dự án chỉ mất giây, không cần sắp xếp thủ công mỗi khi bắt đầu làm việc.

Một khía cạnh quan trọng khác là Zellij gắn keybindings thông qua các chế độ (modes). Điều này có nghĩa là thay vì tổ hợp phím phức tạp, bạn vào một chế độ và dùng các phím đơn giản, dễ nhớ. Điều này làm cho Zellij dễ học và nhanh sử dụng.

Mở rộng Zellij với Plugin và Extension

Đây là nơi Zellij chuyển từ công cụ đơn giản thành không gian làm việc mạnh mẽ. Hệ thống plugin dùng WebAssembly (WASM), nghĩa là nó nhanh, chống crash, và hoạt động giống hệt trên mọi máy tính. Vì chạy trong sandbox an toàn, bạn có thể thử công cụ cộng đồng mà không lo crash toàn bộ phiên terminal.

Mặc định, Zellij bao gồm các yếu tố thiết yếu làm cuộc sống dễ dàng hơn. Yêu thích của tôi là Strider, một file manager tích hợp trông như sidebar trong VS Code; nó cho phép duyệt và mở file mà không bao giờ rời terminal. Bạn cũng có Session Manager, đóng vai trò bảng điều khiển trực quan giúp đặt tên, tổ chức, và chuyển đổi giữa các dự án khác nhau ngay lập tức.

Zellij: Terminal Multiplexer thay đổi cuộc chơi, thay thế Tmux và Screen

Bạn thậm chí có thể tùy chỉnh Thanh Trạng thái để hiển thị chính xác thứ bạn cần, như pin hiện tại hoặc nhánh git đang hoạt động.

Zellij vs Tmux: Bạn có nên chuyển không?

Tmux là terminal multiplexer đã được kiểm chứng, nhẹ, tin cậy, và có mặt trên hầu như mọi server. Nó lý tưởng cho làm việc trên máy từ xa nơi cài phần mềm mới không phải lựa chọn. Mặc dù Tmux xử lý gần như mọi thứ, nó thường cảm thấy phức tạp với người mới.

Zellij: Terminal Multiplexer thay đổi cuộc chơi, thay thế Tmux và Screen

Ngược lại, Zellij hỗ trợ quy trình phát triển hiện đại, đặc biệt trên máy cục bộ. Nó hoạt động tốt ngay out-of-the-box, với hỗ trợ chuột trực quan, thanh trạng thái bền bỉ hiển thị phím hoạt động, và engine layout linh hoạt hỗ trợ pane nổi. Các tính năng này làm cho việc quản lý nhiều cửa sổ cảm thấy tự nhiên, giảm ma sát làm chậm bạn trong Tmux.

Vậy bạn có nên chuyển? Nếu bạn là developer dành hầu hết thời gian trên máy cục bộ, người mới bị uể oải trước Tmux, hoặc bất kỳ ai bực bội vì cấu hình phức tạp, bạn sẽ thấy Zellij dễ áp dụng và hiệu quả hơn. Những ai chủ yếu làm việc trên server từ xa hoặc đã có setup Tmux hoàn hảo có thể không cần chuyển.

Tóm lại

Nếu bạn dành nhiều thời gian trong terminal, bạn nên thử Zellij. Nó phù hợp cho người dùng terminal muốn làm việc hiệu quả trong không gian làm việc có tổ chức. Ngoài ra, nếu bạn tìm công cụ làm terminal thú vị hơn, hướng dẫn này đáng xem.