- Emacs có thể vượt ra ngoài vai trò một trình soạn thảo hay IDE đơn thuần để trở thành căn cứ số tại gia, nơi bạn bắt đầu ngày làm việc một cách tĩnh lặng, không thông báo, và gom lịch trình, công việc, ghi chép vào cùng một chỗ
- Trong agenda hằng ngày, bạn có thể cùng lúc xem lịch từ Google Calendar, các việc hôm nay, các việc còn dang dở, ghi chú và GTD inbox, rồi tiếp tục công việc với trang riêng cho từng mục và tính năng theo dõi thời gian
- Với công việc phức tạp, bạn có thể sắp xếp yêu cầu, liên kết, brainstorming, TODO, ước lượng trong trang công việc và dùng chat với LLM, terminal, magit, trình quản lý tệp trong cùng một luồng làm việc
- Sẽ tự nhiên hơn nếu xem Emacs không phải là một “hệ điều hành” mà là một Fortress of Solitude, nơi trú ẩn cá nhân; chính độ bền bỉ suốt 50 năm và khả năng mở rộng của nó tạo nên cảm giác về một căn cứ gốc
- Org mode vận hành giống một nền tảng rộng lớn hơn là một lựa chọn thay thế Markdown, kết nối blog, cấu hình, hệ thống năng suất, ghi chú, chat AI và cả lập trình văn chương
Dùng Emacs như căn cứ số tại gia
- Emacs có thể trở thành căn cứ số tại gia mà bạn mở đầu tiên mỗi khi bật máy tính
- Một màn hình trống màu tím đậm cùng câu trích dẫn tạo động lực ngẫu nhiên sẽ hiện ra
- Không có thông báo cần phản ứng hay yếu tố cướp mất sự chú ý, nên nó trở thành không gian làm việc quen thuộc và điềm tĩnh
- scratch buffer mặc định mở ra không hẳn là một tài liệu trống cho văn bản mới, mà gần hơn với một tấm toan tự do nơi người dùng tự gán ý nghĩa
- Cách dùng này khác với hình ảnh rập khuôn về “người dùng Emacs cuồng nhiệt”
- Tác giả không còn dùng C từ lâu, và gần đây chủ yếu dùng TypeScript cùng một ít Haskell
- Với vai trò founder/CTO của một startup, tác giả dành nhiều thời gian cho tuyển dụng, quản lý, review, email, marketing và hoạch định chiến lược hơn là viết mã
- Email và duyệt web được thực hiện trên Chrome; tác giả cũng dùng Notion, G Suite, Discord, LLM và chưa bao giờ thật sự quen với IRC
Xử lý lịch trình, công việc và ghi chép tại một nơi
- Sau khi mở Emacs, bạn có thể mở ngay agenda hằng ngày bằng
<space> o d
- Danh sách kiểm tra hằng ngày sẽ được hiển thị
- Các sự kiện hôm nay đã đồng bộ với Google Calendar sẽ hiện ra
- Các việc dự định cho hôm nay và các việc chưa xong từ ngày trước sẽ cùng xuất hiện
- Có cả ghi chú thông thường và hộp thư đến công việc theo phương pháp GTD
- Khi nhấn
e trên một công việc hoặc sự kiện, trang của mục đó sẽ mở ra
- Bạn có thể ghi chú và tiếp tục xử lý công việc ngay trong trang đó
- Bạn có thể “clock in” cho công việc đang làm để theo dõi thời gian
- Việc theo dõi thời gian hữu ích trong việc giữ tập trung và về sau có thể dùng để tạo báo cáo thời gian
- Khi kết thúc ngày làm việc, bạn có thể viết journal bằng
<space> o c w j
- Cách dùng là viết vài câu nhìn lại ngày làm việc
Môi trường để triển khai công việc phức tạp
- Với công việc phức tạp, người dùng bắt đầu bằng cách mở trang công việc trong Emacs và sắp xếp mọi thứ
- Có thể dùng cho việc viết mã, chiến lược tuyển dụng, chỉnh sửa nội dung landing page, lập kế hoạch sprint tiếp theo, hay viết email dài hoặc tin nhắn Discord dài
- Bạn ghi lại những gì mình biết, xác định yêu cầu và gom các liên kết tài liệu liên quan
- Brainstorming, tạo tác vụ con, gán trạng thái TODO và ước lượng thời gian đều được xử lý tại một nơi
- Nhiều công cụ trong Emacs nối tiếp nhau trong cùng một luồng làm việc
<space> i c mở cuộc trò chuyện với mô hình LLM đã chọn, có quyền truy cập vào buffer đang mở và các công cụ do người dùng định nghĩa
<space> ' mở terminal, và từ terminal đó bạn cũng có thể chạy các công cụ như Claude Code hay OpenCode
<space> d d mở trình quản lý tệp, còn <space> g g mở magit, giao diện Emacs cho công việc với Git, trong ngữ cảnh của dự án hoặc buffer hiện tại
<space> a w chuyển sang trạng thái gần với Zen mode, chỉ giữ lại một cửa sổ và đặt văn bản vào giữa màn hình để tập trung viết
- Di chuyển, chỉnh sửa văn bản, tìm kiếm và thao tác cửa sổ đều diễn ra trong cùng một hệ thống lệnh và key binding, giúp nhiều workflow kết nối mượt mà trong một môi trường thống nhất
“Pháo đài Cô độc” hơn là “hệ điều hành”
- Nếu gọi Emacs là một “hệ điều hành”, nó có thể trông như một công cụ quá phức tạp và không cần thiết
- Người ta có thể tự hỏi tại sao đã chạy Emacs trên một hệ điều hành rồi mà còn cần thêm một hệ điều hành khác
- Ngay cả cách gọi “môi trường điện toán” cũng khó tạo đồng cảm mạnh với người mới trước khi họ thật sự dùng Emacs đủ sâu
- Có thể nhìn Emacs giống như Fortress of Solitude của Superman
- Đây là một ẩn dụ phù hợp cho nơi để hồi phục, chữa lành, gom lại suy nghĩ và lập kế hoạch cho hành động tiếp theo
- Nó giống Emacs ở chỗ là không gian cá nhân và nơi trú ẩn, nơi mọi thiết bị, kỷ vật và phòng thí nghiệm đều được sắp xếp vừa vặn cho chính bạn
- Lý do Emacs hoạt động như một căn cứ gốc nằm ở tính linh hoạt và tính bền vững
- Nó cực kỳ linh hoạt và có thể mở rộng, nên bạn có thể biến nó thành một không gian cá nhân, độc nhất
- Đây là công nghệ độc lập và bền bỉ đã tồn tại suốt 50 năm, không quá phụ thuộc vào trào lưu hay sự chi phối của một công ty duy nhất
- Nó cung cấp một nơi để gom suy nghĩ, lập kế hoạch, viết lách, xây dựng cơ sở tri thức và sáng tạo
- Bạn có thể tự tay tạo ra các công cụ và workflow phù hợp với bản thân
- Điểm cốt lõi là người dùng có thể tự định hình và tự trao ý nghĩa cho nó
- Bạn có quyền tự do làm theo ý mình, và kỳ vọng rằng nó sẽ không biến mất; chính điều đó tạo nên cảm giác về một căn cứ gốc
- Khi có cảm hứng, bạn có thể viết hoặc lập trình trong Emacs; khi lạc hướng hay bị choáng ngợp, bạn có thể quay lại Emacs để sắp xếp và lập kế hoạch
- Bạn có thể tinh chỉnh cấu hình Emacs như một việc thú vị để nghỉ ngơi, rồi ghi lại suy ngẫm trong journal và xem lại sau này
Điều làm thay đổi góc nhìn
- Khi mới dùng Emacs, tác giả xem nó là một trình soạn thảo mã thú vị và cũng là một thử thách
- Tác giả bắt đầu dùng từ thời đại học, và nó giống như một lựa chọn đối nghịch với việc người anh em của mình chọn Vim
- Trong vài năm sau đó, tác giả chủ yếu chỉ dùng nó như trình soạn thảo mã và không nhận ra những khả năng rộng hơn
- Bước ngoặt để dùng Emacs rộng hơn đến từ việc giảm thời gian viết mã và tăng công việc quản lý
- Khi việc viết mã giảm đi và công việc quản lý tăng lên, tác giả bắt đầu tìm kiếm trải nghiệm UX mượt mà, ưu tiên bàn phím, cả trong các công việc không phải lập trình
- Trong quá trình đó, tác giả học thêm về Emacs và Org mode, đồng thời tham gia cộng đồng nhiều hơn
- Từ đó, tác giả nhìn thấy rõ hơn tiềm năng mà Emacs mang lại
Org mode
- Org mode là một trong những major mode tiêu biểu của Emacs, rất đáng để đào sâu nếu bạn muốn thử dùng Emacs như căn cứ gốc
- Ban đầu nó có thể trông như một lựa chọn thay thế Markdown với thêm chút tính năng
- Nhưng trên thực tế, nó gần hơn với một nền tảng mà cộng đồng Emacs đã cùng hội tụ, và khi kết hợp với khả năng mở rộng của Emacs, nó trở thành nền móng cho nhiều công cụ và workflow khác nhau
- Org mode được dùng như nền tảng cho viết lách và cấu hình
- Phạm vi việc có thể làm với Org mode rất rộng
- Bạn có thể tạo bài thuyết trình
- Có thể dùng cho lập trình văn chương gợi nhớ tới Jupyter Notebook
- Có thể dùng như một hệ thống năng suất tương tự GTD
- Nó kết nối với các hệ thống ghi chú như org-roam, denote
- Có thể dùng làm giao diện chat AI thông qua gptel
- Cũng có thể tận dụng như bảng tính và hệ thống cơ sở dữ liệu kiểu Notion
Emacs trong thời đại AI
- Dù có những ý kiến cho rằng vì AI dạng agent mà trình soạn thảo đã lỗi thời, chỉ cần CLI là đủ, vai trò của Emacs không bị giới hạn ở một trình soạn thảo
- Emacs được dùng không phải như trình soạn thảo, mà như căn cứ gốc và trung tâm chỉ huy
- Sự trỗi dậy của AI tạo sinh thậm chí còn khiến tác giả muốn dùng Emacs nhiều hơn
- Giữa áp lực phải theo kịp công nghệ thay đổi nhanh và các công cụ mới nhất nếu không sẽ bị tụt lại, Emacs mang cảm giác như một nền tảng ổn định
- Nó trở thành nơi bạn có thể lắng nghe suy nghĩ của chính mình và cảm thấy những gì đang có đã là đủ
- Nhờ AI, việc cấu hình Emacs theo đúng ý mình cũng trở nên dễ dàng hơn
1 bình luận
Ý kiến trên Lobste.rs
Gọi là “người dùng Emacs điên điển hình” thì đúng là vơ đũa cả nắm quá. Tôi còn chẳng có tầng hầm nữa
Tôi mong lời cuối cùng trước khi chết sẽ là C-x C-c
M-x close-coffin-and-buryKhi bật máy tính lên, không phải là mở Emacs đầu tiên, mà phải mở Emacs thì mới có thể xem như máy tính đã thực sự được bật
Tôi thắc mắc liệu dạo này theo dõi cộng đồng Emacs có phải kiểu gì cũng sẽ chạm mặt rms không
Dạo này tag emacs trên Lobsters cũng là một nơi khá ổn
Toàn bộ thread ở đây: https://lists.gnu.org/archive/html/…
Đã có một tuần tôi sống không có internet, và lúc đó tôi bắt đầu học Emacs. Khoảng thời gian đọc manual và nghịch thử mọi thứ khá là kỳ diệu