Từ ngày làm quen với EndeavourOS hồi cuối tháng 6, mình đã dần chuyển hẳng sang dùng nó làm hệ điều hành chính cho công việc. Macbook Pro 2015 của mình cũng đã được chuyển qua dùng EndeavourOS, giúp hồi sinh lại cái máy tính đang hấp hối, không chạy nổi các bản macOS mới.

Trong thời gian sử dụng EndeavourOS, mình đã khám phá ra i3 – trình quản lý màn hình gọn nhẹ nhưng cực kỳ linh hoạt trên Linux. i3wm hiện đang là trình quản lý màn hình mình sử dụng hằng ngày, không thể quay về sử dụng KDE hay Cinnamon nữa.

Bài viết này sẽ giới thiệu với mọi người về i3wm và cách cài đặt và sử dụng i3wm trên EndeavourOS.

I. i3 là gì?

i3 Window Manager (i3wm) là trình quản lý màn hình theo phong cách xếp gạch (tiling window manager) cực kỳ nhỏ gọn và linh hoạt. Nó tự đông sắp xếp các cửa sổ theo từng vùng riêng biệt trên màn hình, không chồng xếp lên nhau như phong cách quản lý cửa sổ quen thuộc trên Windows hay KDE / Gnome (Linux).

Ưu điểm lớn nhất của i3wm là nó có thể cấu hình rất nhiều phím tắt giúp người dùng thao tác máy tính chỉ bằng bàn phím, không cần phải sử dụng đến chuột để điều khiển. Nhờ đó giúp tăng hiệu quả công việc rõ rệt.

Sơ đồ các phím tắt mặc định của i3.

i3wm mang đến một khái niệm hoàn toàn mới về cách quản lý giao diện màn hình và sử dụng máy tính. Ban đầu tuy hơi rối rắm khó hiểu, nhưng sau khi đã làm quen, i3wm trở nên cực kỳ linh hoạt và mạnh mẽ.

II. Cài đặt i3wm

Tùy theo phiên bản Linux đang sử dụng, bạn hãy chọn theo cách cài đặt phù hợp theo trang hướng dẫn ở đây: https://i3wm.org/downloads/

Mình sử dụng EndeavourOS và chọn cách cài đặt theo cấu hình có sẵn của EndeavourOS Team cho nhanh gọn.

Cài đặt i3wm với 1 dòng lệnh duy nhất:

wget https://raw.githubusercontent.com/endeavouros-team/endeavouros-i3wm-setup/main/i3_installCode language: JavaScript (javascript)

Xem chi tiết trên trang Github: https://github.com/endeavouros-team/endeavouros-i3wm-setup

Sau cài đặt xong, logout và login lại, nhớ chọn i3 ở phần giao diện desktop.

III. Làm quen với i3wm

Giao diện mặc định của i3wm trên EndeavourOS sẽ tương tự như hình dưới đây.

Cấu hình i3wm của EndeavourOS Team đã thiết lập sẵn Polybar ở phần dưới cùng của màn hình, hiển thị các thông tin hệ thống tương tự như Taskbar trên Windows.

Tài liệu hướng dẫn sử dụng chi tiết i3 các bạn có thể ở đây: https://i3wm.org/docs/userguide.html. Bảo đảm mới bấm vô là nản liền!

Nếu bạn mới lần đầu mò i3, xem hướng dẫn ngắn gọn của mình bên dưới để cảm thấy đỡ ngộp hơn.

1. Phím $Mod

Mọi phím tắt điều khiển trên i3wm đều cần kết hợp với phím $Mod. Mặc định của i3, $Mod là phím Alt. Nhưng nếu cài đặt theo cách ở trên, $Mod là phím Windows (nằm giữa Ctrl và Alt). Một số ví dụ phím tắt:

  • $Mod + D: Tìm và mở ứng dụng
  • $Mod + 1/2/3/4: Di chuyển đến Desktop 1/2/3/4.

Ngoài ra, bạn còn có thể kết hợp thêm nút Shift để tạo thêm phím tắt. Ví dụ:

  • $Mod + Shift + 2: di chuyển cửa sổ hiện tại qua Desktop 2
  • $Mod + Shift + →: di chuyển cửa sổ hiện tại qua phải.

2. Mở ứng dụng

Để mở ứng dụng trong i3wm, chúng ta cần sử dụng phím tắt $Mod + D để kích hoạt Rofi application menu.

Ứng dụng sau khi mở sẽ tự động chiếm trọn không gian màn hình. Sẽ không có nút thu nhỏ, mở lớn, tắt như bên Windows / macOS / KDE.

3. Quản lý cửa sổ

Tiếp tục mở thêm ứng dụng thứ hai: LibreOffice Calc. Màn hình sẽ tự động chia đôi cho 2 ứng dụng: VS Code bên trái và Calc bên phải. Đây là cách sắp xếp Tiling mặc định của i3.

Bấm phím $Mod + S để chuyển cách xếp theo dạng xếp chồng (Stacking).

Bấm $Mod + G để chuyển sang dạng tab.

Bấm $Mod + E để quay về lại kiểu xếp gạch. Bấm thêm lần nữa để chuyển từ dàn ngang qua xếp dọc.

Để di chuyển nhanh giữa các cửa sổ, sử dụng phím $Mod + phím mũi tên.

Để đóng ứng dụng, sử dụng phím tắt $Mod + Q.

Nếu cảm thấy 2-3 ứng dụng đang mở bị giới hạn không gian, mình có thể di chuyển mỗi ứng dụng qua 1 desktop riêng bằng cách bấm $Mod + Shift + 1/2/3/4/5/…. Tương ứng với phím 1-0 là 10 không gian làm việc ảo (Virtual Desktop) để quản lý cửa sổ.

Để di chuyển qua lại giữa các Desktop, bấm $Mod + 1/2/3/4/5/…

Chỉ cần nắm căn bản các phím tắt như trên là bạn có thể dùng i3 ngon lành. Từ từ có thời gian sẽ nghiên cứu thêm bí kíp ở đây: i3 Userguide.

IV. Cấu hình i3

Tất cả các phím tắt của i3 hoạt động dựa trên file cấu hình được lưu trong thư mục ~/.config/i3/config. (Áp dụng trên EndeavourOS, các bản Linux khác có thể lưu config ở chỗ khác nhé)

Chúng ta có thể thay đổi cấu hình bằng cách chỉnh sửa file này:

sudo nano ~/.config/i3/configCode language: JavaScript (javascript)

Dưới đây là đoạn đầu của file cấu hình i3 config của EndeavourOS Team.

# This file is a modified version based on default i3-config-wizard config
# source is available here:
# https://raw.githubusercontent.com/endeavouros-team/endeavouros-i3wm-setup/master/.config/i3/config
# Maintainer: joekamprad [joekamprad@endeavouros.com]
# https://endeavouros.com
#
# iconic font icon search: https://fontawesome.com/v4.7/cheatsheet/
#
# --> to update this run the following command (will backup existing setup file)
# wget --backups=1 https://raw.githubusercontent.com/endeavouros-team/endeavouros-i3wm-setup/main/.>
#
# Endeavouros-i3 config file
# Source for complete framework of our i3 config and theming here: https://github.com/endeavouros-t>
# EndeavourOS wiki holds some Information also: https://discovery.endeavouros.com/window-tiling-man>
# Please see http://i3wm.org/docs/userguide.html for the official i3 reference!

#######################
# config starts here: #
#######################

# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
font pango: Noto Sans Regular 10

# set the mod key to the winkey:
set $mod Mod4Code language: YAML (yaml)

Mặc định, Firefox sẽ tự động chạy mỗi khi đăng nhập. Mình không thích tính năng này đi nên sẽ tìm dòng này và thêm vào dấu # phía trước để vô hiệu hóa nó đi

exec --no-startup-id sleep 7 && firefox https://github.com/endeavouros-team/endeavouros-i3wm-setup/blob/main/force-knowledge.mdCode language: Nginx (nginx)

Sửa lại thành

#exec --no-startup-id sleep 7 && firefox https://github.com/endeavouros-team/endeavouros-i3wm-setup/blob/main/force-knowledge.mdCode language: Shell Session (shell)

Bấm Ctrl + S để lưu lại và Ctrl + X để thoát ra.

Bấm tiếp $Mod + Shift + R để khởi động lại i3, kích hoạt những thay đổi vừa mới chỉnh sửa trong file config.

Bài viết giới thiệu nhanh về i3 tạm ngưng ở đây. Hẹn khi nào rãnh mình sẽ chia sẻ thêm các mẹo nhỏ để giúp i3 thêm tiện lợi hơn.

Chúc bạn mò i3 vui!

Lưu ý: Nếu bạn cần hỗ trợ kỹ thuật, vui lòng gửi câu hỏi trực tiếp ở phần Thảo luận bên dưới, mình sẽ trả lời sớm. Đừng vào hỏi trong fanpage Yêu Chạy Bộ, sẽ không có phản hồi đâu!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *


2 Comments

  1. Tôi cũng chạy EOS i3wm, nhưng bị lỗi sau đây:
    Connect vói iPhone qua cable lúc thì nó cho Trust, lúc khác lại không hiện ra. Như vậy là do cable dỏm, hay do cái gì nhỉ? Làm sao fix vụ này? Mong nhận được chỉ dẫn. Cám ơn.
    Nhân tiện: Bạn cài i3 bằng wget thì tôi chưa hề làm thử. Tôi chỉ đơn giản là tích dấu “i3” trong Calamare là xong (version Cassini hoặc Galileo đều như vậy). Thân mến.