Điều Hướng
Di Chuyển Con Trỏ
C-f / C-bTiến / lùi một ký tự
M-f / M-bTiến / lùi một từ
C-n / C-pDòng tiếp / trước
C-a / C-eĐầu / cuối dòng
M-a / M-eĐầu / cuối câu
C-v / M-vCuộn xuống / lên một trang
M-< / M->Đầu / cuối buffer
M-g gĐến số dòng
Định Vị Màn Hình
C-lCăn giữa màn hình (xoay vòng trên/giữa/dưới)
C-M-lĐịnh vị lại cửa sổ theo heuristic
Chỉnh Sửa
Kill & Yank (Cắt & Dán)
C-kKill đến cuối dòng
C-wKill vùng chọn (cắt)
M-wSao chép vùng chọn
C-yYank (dán)
M-yDuyệt kill ring sau khi yank
C-dXóa ký tự phía trước
M-dKill từ phía trước
M-DELKill từ phía sau
Undo & Transpose
C-/ or C-_Hoàn tác
C-g C-/Làm lại (hoàn tác của hoàn tác)
C-tHoán đổi ký tự
M-tHoán đổi từ
C-x C-tHoán đổi dòng
Chọn Vùng
C-SPCĐặt mark (bắt đầu chọn)
C-x hChọn toàn bộ buffer
M-hChọn đoạn văn
C-x C-xHoán đổi điểm và mark
Buffers & Windows
Buffers
C-x bChuyển đến buffer
C-x C-bLiệt kê tất cả buffer
C-x kKill (đóng) buffer
C-x LEFT / RIGHTBuffer trước / tiếp theo
Windows
C-x 2Chia cửa sổ ngang
C-x 3Chia cửa sổ dọc
C-x 0Đóng cửa sổ hiện tại
C-x 1Đóng tất cả cửa sổ khác
C-x oChuyển sang cửa sổ khác
C-x ^Phóng to cửa sổ theo chiều dọc
C-x {Thu nhỏ cửa sổ theo chiều ngang
Frames
C-x 5 2Tạo frame mới
C-x 5 0Xóa frame hiện tại
C-x 5 oChuyển sang frame khác
Tìm Kiếm & Thay Thế
Tìm Kiếm Tăng Dần
C-sTìm tiến (tăng dần)
C-rTìm lùi (tăng dần)
C-s C-sLặp lại tìm kiếm tiến cuối
C-M-sTìm regex tiến
C-M-rTìm regex lùi
RETThoát tìm kiếm tại vị trí hiện tại
C-gHủy tìm kiếm, quay lại điểm ban đầu
Thay Thế
M-%Thay thế có xác nhận
C-M-%Thay thế regex có xác nhận
yThay thế kết quả khớp này
nBỏ qua kết quả khớp này
!Thay thế tất cả còn lại
qThoát thay thế
Files
Thao Tác File
C-x C-fTìm (mở) file
C-x C-sLưu buffer hiện tại
C-x C-wLưu thành (ghi vào file mới)
C-x sLưu tất cả buffer đã sửa
C-x C-rMở file chỉ đọc
C-x iChèn nội dung file tại điểm con trỏ
Dired (Directory Editor)
C-x dMở thư mục trong Dired
d / xĐánh dấu để xóa / thực hiện xóa
RĐổi tên / di chuyển file
CSao chép file
+Tạo thư mục
gLàm mới danh sách
Modes
Major Modes
M-x fundamental-modeChỉnh sửa văn bản thuần
M-x text-modeVăn bản có fill và kiểm tra chính tả
M-x prog-modeCơ sở cho các mode lập trình
M-x python-modeChỉnh sửa và thụt đầu dòng Python
M-x shell-modeShell tương tác trong buffer
Minor Modes Hữu Ích
M-x display-line-numbers-modeBật/tắt số dòng
M-x auto-fill-modeTự động xuống dòng tại fill column
M-x flyspell-modeKiểm tra chính tả liên tục
M-x column-number-modeHiển thị số cột trong mode line
M-x whitespace-modeHiển thị khoảng trắng
M-x electric-pair-modeTự đóng ngoặc và trích dẫn
Org Mode Cơ Bản
Cấu Trúc
* / ** / ***Heading cấp 1 / 2 / 3
TABXoay vòng hiển thị heading
S-TABXoay vòng hiển thị toàn cục
M-RETChèn heading cùng cấp
M-LEFT / M-RIGHTTăng / giảm cấp heading
M-UP / M-DOWNDi chuyển subtree lên / xuống
TODO & Checkbox
C-c C-tXoay trạng thái TODO
C-c C-dĐặt deadline
C-c C-sLên lịch item
C-c C-cBật/tắt checkbox [ ] / [X]
C-c aMở agenda view
Links & Xuất
C-c C-lChèn / chỉnh sửa link
C-c C-oMở link tại con trỏ
C-c C-eDispatcher xuất (HTML, PDF, v.v.)
Quản Lý Package
package.el
M-x list-packagesDuyệt package có sẵn
i / d / xĐánh dấu cài / xóa / thực hiện
UĐánh dấu tất cả có thể nâng cấp
M-x package-refresh-contentsLàm mới danh sách package
use-package (init.el)
(use-package magit :ensure t :bind ("C-x g" . magit-status)) (use-package company :ensure t :hook (prog-mode . company-mode))
Cấu Hình
File Cấu Hình Quan Trọng
~/.emacs.d/init.elFile cấu hình chính
~/.emacs.d/early-init.elKhởi tạo sớm (trước GUI, Emacs 27+)
~/.emacs.d/custom.elCài đặt được ghi bởi Customize
Cài Đặt Thường Dùng
(setq inhibit-startup-screen t) (tool-bar-mode -1) (set-face-attribute 'default nil :height 120) (global-display-line-numbers-mode 1) (setq make-backup-files nil)
Hệ Thống Help
C-h kMô tả key binding
C-h fMô tả hàm
C-h vMô tả biến
C-h mMô tả các mode hiện tại
C-h tMở hướng dẫn Emacs
C-h iMở tài liệu Info
Các Pattern Thường Gặp
Chỉnh Sửa Rectangle
C-x SPCBắt đầu chế độ rectangle mark
C-x r kKill rectangle
C-x r yYank rectangle
C-x r tThay rectangle bằng chuỗi
C-x r oChèn rectangle trống
Macros
C-x (Bắt đầu ghi macro
C-x )Dừng ghi macro
C-x eThực thi macro cuối
C-u 10 C-x eThực thi macro 10 lần
M-x name-last-kbd-macroĐặt tên macro để tái sử dụng
Shell & Eval
M-x shellMở shell trong buffer
M-x eshellShell Emacs Lisp
M-!Chạy lệnh shell
M-x eval-bufferĐánh giá toàn bộ buffer như Elisp
C-x C-eĐánh giá biểu thức Elisp trước con trỏ