Logo Lý Tất Thành
LÝ TẤT THÀNH SIÊU CÁ NHÂN • MAX OUTPUT
arrow_back Vườn Tri Thức / Digital Garden
DIGITAL GARDEN • TRI THỨC THỰC CHIẾN

TƯ LIỆU KỸ THUẬT & KỊCH BẢN YOUTUBE: TỐI ƯU HÓA TRẢI NGHIỆM TERMINAL LINUX

Lý Tất Thành
admin Digital Marketing Practitioner • Tác giả Lilypad
October 25, 2026 • Tác quyền: Lý Tất Thành

🎬 TƯ LIỆU KỸ THUẬT & KỊCH BẢN YOUTUBE: TỐI ƯU HÓA TRẢI NGHIỆM TERMINAL LINUX

Tài liệu này tổng hợp toàn bộ các thiết lập, mã nguồn cấu hình, cơ chế hoạt động và dàn ý kịch bản dựa trên hệ thống thực tế của bạn.


🧭 PHẦN 1: TỔNG QUAN HỆ SINH THÁI TERMINAL

1. Kiến trúc tổng thể

flowchart TD
     Shell["🐚 Shell: Fish Shell"] --> Prompt["🎨 Prompt: Oh My Posh (Atomic Theme)"]
     Shell --> QuickNav["⚡ Điều hướng: Zoxide (z)"]
     Shell --> SmartPaste["📋 Feature: Smart Image Paste"]
     Shell --> TUI["📁 Quản lý file: Yazi (Custom Lua Plugins)"]
     Shell --> Editor["📝 Editor: Micro"]
     Shell --> Monitors["📊 Info & Monitor: Fastfetch + Btop + Timg"]
    
     TUI --> YaziPlugins["Lua Plugins: copy-escaped + toggle-pane + theme Noctalia"]
 

2. Triết lý thiết kế (Ý tưởng cho Video)

  • Tối giản & Nhanh: Loại bỏ các phần mềm cồng kềnh (như pamac), thay thế bằng CLI/TUI viết bằng Rust/Go (yazi, zoxide, fastfetch, micro, shelly).
  • Trải nghiệm hình ảnh hiện đại: Sử dụng Nerd Fonts (MesloLGS Nerd Font, AtkynsonMono Nerd Font) kết hợp bảng màu hài hòa (Noctalia / Catppuccin).
  • Tự động hóa tác vụ lặp lại: Biến thao tác sao chép đường dẫn, dán ảnh clipboard và chuyển thư mục thành các phím tắt 1 chạm.

⚙️ PHẦN 2: CHI TIẾT CÁC BƯỚC THIẾT LẬP & MÃ NGUỒN CẤU HÌNH

1. Nền Tảng: Ghostty Terminal Emulator vs Kitty

  • Lý do chọn Ghostty:
    • Viết bằng ngôn ngữ Zig, tận dụng GPU native (Vulkan/OpenGL) đem lại độ trễ gõ phím cực thấp (zero latency).
    • Hỗ trợ native Wayland và clipboard Ctrl+Shift+V / Ctrl+V hoàn hảo, không bị xung đột gõ tiếng Việt Fcitx5.
    • Hiển thị Nerd Font và Ligatures sắc nét, cấu hình đơn giản sạch sẽ hơn Kitty.
  • Cấu hình Ghostty (~/.config/ghostty/config):
  • font-family = "MesloLGS Nerd Font"
     font-size = 15
     theme = "Catppuccin Mocha"
     window-padding-x = 12
     window-padding-y = 12
     window-decoration = false
     

2. Shell & Prompt (Fish Shell + Oh My Posh Manager)

  • Cài đặt Fish Shell:
  • sudo pacman -S fish
     
  • Cài đặt Oh My Posh & Quản lý Theme với omp-manager:
  • curl -s https://ohmyposh.dev/install.sh | bash -s
     
  • Theme sử dụng: atomic (atomic.omp.json) quản lý bởi omp-manager.
  • Cấu hình file ~/.config/fish/config.fish:
  • if status is-interactive
         # Khởi động zoxide để nhảy thư mục siêu tốc
         zoxide init fish | source
        
         # Hiển thị thông số hệ thống
         fastfetch
     end
     
     # Thiết lập Editor mặc định
     set -gx EDITOR micro
     set -gx VISUAL micro
     
     # Kích hoạt theme Oh My Posh
     oh-my-posh init fish --config '/home/chiconcota/.local/share/omp-manager/themes/atomic.omp.json' | source
     

3. Điểm nhấn Đột Phá: Tính năng “Smart Image Paste” ở cấp Window Manager (Niri)

  • Vấn đề giải quyết: Khi làm việc trên terminal (chạy script AI, ffmpeg, nén ảnh), bạn cần truyền đường dẫn ảnh vừa chụp màn hình. Thông thường phải lưu file ra ổ cứng rồi gõ đường dẫn rất mất thời gian. Nếu chỉ cấu hình trong Shell thì sang app khác (Micro, REPL) sẽ không dùng được.
  • Cơ chế hoạt động ở cấp Window Manager (Niri):
    1. Sử dụng script độc lập ~/.local/bin/paste-smart-image.sh.
    2. Bắt dữ liệu clipboard Wayland qua wl-paste --list-types.
    3. Nếu là định dạng image/*, trích xuất ảnh và lưu vào /tmp/clipboard.png.
    4. Sử dụng công cụ wtype để tự động mô phỏng phím gõ, điền đường dẫn /tmp/clipboard.png vào bất kỳ vị trí con trỏ nào đang active.
    5. Nếu là text, gọi wtype gõ text.
  • Mã nguồn Shell Script (~/.local/bin/paste-smart-image.sh):
  • #!/usr/bin/env bash
     targets=$(wl-paste --list-types 2>/dev/null)
     img_type=$(echo "$targets" | grep -E '^image/' | head -n 1)
     
     if [ -n "$img_type" ]; then
         img_file="/tmp/clipboard.png"
         wl-paste --type "$img_type" > "$img_file" 2>/dev/null
        
         if command -v wtype >/dev/null 2>&1; then
             sleep 0.15
             wtype "$img_file"
         else
             wl-copy "$img_file"
             notify-send -t 2000 "Smart Paste" "Đã lưu ảnh vào $img_file"
         fi
     else
         text=$(wl-paste 2>/dev/null)
         if [ -n "$text" ] && command -v wtype >/dev/null 2>&1; then
             sleep 0.15
             wtype "$text"
         fi
     fi
     
  • Cấu hình phím tắt toàn cục trong Niri (~/.config/niri/config.kdl):
  • // --- Smart Paste Image Path (Antigravity CLI / Terminal) ---
     Super+Shift+V { spawn "/home/chiconcota/.local/bin/paste-smart-image.sh"; }
     

  •  

3. Trình Quản Lý File TUI Siêu Tốc: Yazi

Yazi là TUI file manager viết bằng Rust hỗ trợ đa luồng và xem trước ảnh trực tiếp trên GPU terminal.

A. Khởi chạy & Sử dụng chuẩn

Chỉ cần gõ lệnh yazi trực tiếp trong bất kỳ thư mục nào để mở trình duyệt file 3 cột.

B. Viết Plugin Lua copy-escaped

File cấu hình: ~/.config/yazi/plugins/copy-escaped.yazi/main.lua

--- @sync entry
 local function entry()
     local hovered = cx.active.current.hovered
     if not hovered then return end
 
    local url = tostring(hovered.url)
     local escaped = url:gsub(" ", "\\ "):gsub("([%(%)%[%]%{%}%&%$%#%*%'%\"%!%?%;%<%>])", "\\%1")
     ya.clipboard(escaped)
     ya.notify({ title = "Copied", content = escaped, timeout = 2 })
 end
 
 return { entry = entry }
 

C. Phím tắt Yazi (~/.config/yazi/keymap.toml)

[[mgr.prepend_keymap]]
 on   = "T"
 run  = "plugin toggle-pane -- max-preview"
 desc = "Phóng to hoặc thu nhỏ khung xem trước (Preview)"
 
 [[mgr.prepend_keymap]]
 on   = [ "c", "x" ]
 run  = "plugin copy-escaped"
 desc = "Copy path (escape ký tự trắng cho terminal)"
 
 [[mgr.prepend_keymap]]
 on   = "o"
 run  = "open --interactive"
 desc = "Mở menu chọn ứng dụng (Open with)"
 

D. Cấu hình Openers & Quy tắc mở file (~/.config/yazi/yazi.toml)

[opener]
 browser = [
     { run = 'google-chrome-stable %s', orphan = true, desc = "Xem trên Google Chrome" },
 ]
 edit = [
     { run = 'micro %s', block = true, desc = "Sửa mã nguồn bằng Micro" },
 ]
 markdown = [
     { run = 'glow -p %s', block = true, desc = "Đọc Markdown bằng Glow" },
 ]
 
 [open]
 prepend_rules = [
     { url = "*.html", use = [ "browser", "edit" ] },
     { url = "*.htm",  use = [ "browser", "edit" ] },
     { mime = "text/html", use = [ "browser", "edit" ] },
     { url = "*.md",   use = [ "markdown", "edit" ] },
     { mime = "text/markdown", use = [ "markdown", "edit" ] },
 ]
 

4. Bộ Đôi TUI Soạn Thảo & Đọc Tài Liệu: Micro & Glow

Công cụ cũCông cụ hiện đạiƯu điểm vượt trội
nano / vimmicroHỗ trợ chuột đầy đủ, phím tắt phổ thông (Ctrl+C, Ctrl+V, Ctrl+S, Ctrl+Q), syntax highlighting đẹp, nhẹ tênh.
cat / less / GUI viewerglow -pRender Markdown chuẩn GitHub (bảng, code block, checkbox), cuộn trang mượt mà bằng pager less.

5. Terminal Emulator & Window Manager

  • Ghostty: Terminal thế hệ mới viết bằng Zig, tăng tốc GPU, độ trễ zero latency, hỗ trợ Wayland/Clipboard native.
  • Niri: Scrollable tiling Wayland compositor, gán phím tắt Super+Shift+V gọi paste-smart-image.sh.

🎥 PHẦN 3: DÀN Ý KỊCH BẢN VIDEO YOUTUBE (STORYBOARD)

📌 Tiêu đề gợi ý:

  1. Setup Terminal Linux Đẹp & Tiện Lợi Nhất 2026: Fish Shell + Yazi + Smart Image Paste
  2. Tôi Đã Tối Ưu Terminal Linux Của Mình Như Thế Nào Để Tăng Gấp Đôi Tốc Độ Làm Việc?
  3. Biến Terminal Linux Thành Cỗ Máy Tối Thượng: Bí Kíp Tùy Biến Độc Lạ

⏱️ Phân đoạn Video (Timestamps & Kịch bản chi tiết)

[0:00 – 01:15] Hook & Mở Đầu (Phần quan trọng nhất giữ chân người xem)

  • Hình ảnh (B-Roll): Quay màn hình mở terminal, hiệu ứng fastfetch và prompt Oh My Posh phát sáng đẹp mắt. Gõ yy mở Yazi duyệt file có preview ảnh cực nhanh. Chụp màn hình 1 tấm ảnh rồi nhấn Ctrl+V vào terminal, đường dẫn ảnh tự động xuất hiện.
  • Lời bình (Voiceover): “Nếu bạn nghĩ Terminal trên Linux chỉ là một màn hình đen xì với những dòng lệnh khô khan, thì video này sẽ thay đổi hoàn toàn suy nghĩ đó. Hôm nay mình sẽ chia sẻ toàn bộ cách mình đã tùy biến Terminal cá nhân: từ giao diện thẩm mỹ, bộ công cụ TUI siêu tốc, cho đến tính năng Smart Image Paste độc quyền giúp tăng tốc độ làm việc lên gấp bội.”

[01:15 – 03:30] Bước 1: Nền Tảng Shell & Prompt Hiện Đại

  • Nội dung:
    • Tại sao chọn Fish Shell (Gợi ý tự động, tô màu cú pháp không cần cài thêm plugin rườm rà).
    • Cài đặt Oh My Posh + chọn theme atomic.
    • Lưu ý về Nerd Fonts (MesloLGS, AtkynsonMono) để không bị lỗi icon.
    • Tích hợp fastfetch tạo điểm nhấn mỗi khi mở session mới.

[03:30 – 06:00] Bước 2: Tối Ưu Điều Hướng Với Zoxide & Yazi TUI

  • Nội dung:
    • Tạm biệt cd truyền thống -> Demo z <tên_thư_mục>.
    • Giới thiệu Yazi TUI (File manager bằng Rust).
    • Demo hàm wrapper yy: duyệt file bằng giao diện đồ họa phím bấm, thoát ra là tự động cd tới thư mục đó.
    • Hướng dẫn viết plugin Lua copy-escaped để copy path không bao giờ bị lỗi khoảng trắng khi chạy lệnh.

[06:00 – 08:30] Bước 3: Tính Năng “Ăn Tiền” – Smart Image Paste

  • Nội dung:
    • Giải thích bài toán thực tế: Làm việc với script AI, ffmpeg hay upload ảnh mà phải gõ path dài dòng rất mệt.
    • Hướng dẫn cách viết hàm smart_paste trong config.fish sử dụng wl-paste.
    • Demo thực tế: Copy ảnh trên web hoặc chụp màn hình -> Bấm Ctrl+V -> File ảnh tự lưu vào /tmp/clipboard.png và điền sẵn đường dẫn vào câu lệnh.

[08:30 – 10:30] Bước 4: Bộ Tứ Công Cụ CLI Nâng Cao Hiệu Suất

  • Nội dung:
    • micro: Trình soạn thảo văn bản hỗ trợ chuột và phím tắt chuẩn quốc tế.
    • btop: Trình theo dõi hệ thống giao diện đẹp như phim khoa học viễn tưởng.
    • timg: Xem ảnh trực tiếp không cần mở ứng dụng ngoài.
    • shelly: Quản lý gói phần mềm trực quan, nhẹ nhàng.

[10:30 – Hết] Tổng Kết & Kêu Gọi Hành Động (CTA)

  • Lời bình: Tóm tắt giá trị của việc tối ưu môi trường làm việc.
  • CTA: Kêu gọi Like, Subscribe và chia sẻ file cấu hình dotfiles trong phần mô tả video.