Emacs cho Mac OS X
Emacs cho Mac OS X cung cấp các nhị phân OS X của GNU Emacs thích hợp. Nó gần giống như bạn nhận được bằng cách biên dịch tarball phát hành GNU Emacs với ./configure --with-ns
. Trang web cung cấp các bản phát hành ổn định và giả vờ, cũng như ảnh chụp nhanh hàng đêm. Tất cả các bản dựng này đều khép kín, cho phép bạn thử các bản sao lưu và chụp nhanh một cách an toàn.
Tuy nhiên, xin lưu ý rằng các tệp nhị phân này thiếu hỗ trợ cho một số thư viện, đặc biệt là GNU TLS và ImageMagick. Nếu bạn muốn sử dụng những bản này thì trước đây đặc biệt quan trọng nếu bạn muốn đọc thư của mình trong Emacs, bạn cần lấy GNU Emacs từ Homebrew.
Emacs cho OS X được sửa đổi
Theo trang web Emacs cho OS X Modified chỉ đơn giản là bản dựng tiêu chuẩn của GNU Emacs, dựa trên một số gói bổ sung và cấu hình cần thiết để kích hoạt tất cả các gói này.
Với ngoại lệ đáng chú ý của ESS, tất cả các gói này đều có sẵn thông qua kho lưu trữ gói của Emacs để cài đặt trong bất kỳ Emacs nào. Chẳng hạn, bạn có thể cài đặt AocateeX trong GNU Emacs đúng cách bằng cách nhập M-x package-install RET auctex
và bật nó.
Việc lựa chọn các gói cho thấy rằng nó chủ yếu nhắm vào các nhà thống kê và nghiên cứu, sẽ hoạt động thông qua dữ liệu của họ với R và ESS, sau đó xuất bản một bài báo với Org hoặc AocateeX và LaTeX.
Đối với những người dùng khác, bản phân phối này có thể có ít giá trị, vì dù sao bạn cũng cần cài đặt các gói bổ sung và cũng có thể sử dụng GNU Emacs ngay lập tức.
Đây là bản phân phối duy nhất mà bạn có thể tự tạo trong GNU Emacs thích hợp bằng cách cài đặt các gói Emacs bổ sung và điều chỉnh cho init.el
phù hợp. Các bản phân phối khác là các biến thể được vá và rẽ nhánh của GNU Emacs.
Cảng Mac Emacs
Emacs Mac Port là một bản vá cho GNU Emacs thích hợp để tích hợp OS X tốt hơn. Lưu ý rằng bản thân GNU Emacs cũng có hỗ trợ OS X gốc, nhưng thiếu các bổ sung cụ thể của OS X, mà bộ bản vá này cung cấp. Đáng chú ý:
- Văn bản cốt lõi để hiển thị văn bản, giúp cải thiện giao diện văn bản và hỗ trợ Unicode. Điều này đã được hợp nhất vào GNU Emacs thích hợp và là một phần của Emacs 24.4.
- Cuộn trơn. GNU Emacs cuộn đúng dòng, rất chậm và giật với trackpad. Emacs Cảng Mac sử dụng di chuyển dựa trên điểm ảnh như các ứng dụng OS X có nguồn gốc khác, mà cảm thấy nhiều mượt mà và nhiều hơn nữa chính xác. Tuy nhiên, nó chỉ ảnh hưởng đến việc cuộn trackpad, vì vậy nếu bạn không sử dụng chuột, bạn sẽ không cần đến nó.
- Cử chỉ. Bạn có thể chụm để tăng / giảm kích thước văn bản. Một lần nữa, nếu bạn không sử dụng chuột, bạn sẽ không chú ý đến nó và nó được cho là một tính năng lạ mắt.
- Hỗ trợ cho các sự kiện của Apple. Bạn có thể gửi và nhận Sự kiện của Apple từ Emacs Lisp.
- Dịch vụ từ điển. Chạm ba ngón tay sẽ tìm kiếm từ dưới con trỏ trong ứng dụng Từ điển của Apple, giống như trong các ứng dụng OS X khác.
- Dịch vụ tích hợp. Bạn có thể mở tệp đã chọn trong Finder từ menu ngữ cảnh trong Emacs đang chạy.
- Hiển thị SVG gốc bằng Webkit, thay vì librsvg. Webkit có hỗ trợ SVG tốt hơn theo hiểu biết của tôi, nhưng ai xem SVG trong Emacs?
Bạn sẽ nhận thấy rằng hầu hết các tính năng này chỉ liên quan đến việc tích hợp vào OS X và không cần thiết phải sử dụng Emacs. Ngoài ra, Emacs Mac Port khá giống với GNU Emacs tiêu chuẩn.
Một số tính năng của nó quay trở lại GNU Emacs, nhưng các tính năng khác sẽ không bao giờ được hợp nhất, vì chúng là độc quyền của OS X, và không có trong GNUStep thay thế miễn phí, đi ngược lại chính trị của FSF để không hỗ trợ các hệ điều hành độc quyền trên các lựa chọn thay thế miễn phí của họ. Ngoài ra, nếu tôi nhớ chính xác, tác giả của bản vá này đã tỏ ra ít quan tâm để đưa các tính năng ngược dòng, có thể là vì lý do trước đây.
Thủy sinh
Aquamacs là một nhánh của GNU Emacs được vá rất nhiều . Không giống như tất cả những điều trên, nó không dựa trên GNU Emacs, nhưng có một cây nguồn độc lập. Tuy nhiên, nó thường được đồng bộ hóa với Emacs ngược dòng và theo sát các bản phát hành của Emacs. Tuy nhiên, nó chắc chắn bị tụt lại phía sau thân cây GNU Emacs.
Nó được sửa đổi rất nhiều để trông và cảm thấy giống như một ứng dụng OS X gốc. Đáng chú ý là nó hỗ trợ và khuyến khích các ràng buộc khóa OS X tiêu chuẩn, ví dụ như Cmd+Sđể lưu. Các ràng buộc Emacs tiêu chuẩn hầu hết vẫn còn có sẵn.
Do là một nhánh rẽ, được sửa đổi nhiều và với các mục tiêu và nguyên tắc hoàn toàn khác nhau, nên không có tính năng nào của nó được hợp nhất với GNU Emacs: Hầu hết các sửa đổi này đều đi ngược lại với tinh thần của Hồi giáo, ý tưởng và triết lý của GNU Emacs.
TL; DR (hoặc: Tôi nên chọn gì)
- Nếu bạn là một nhà thống kê hoặc nhà nghiên cứu và không muốn tự thiết lập Emacs: Emacs cho OS X được sửa đổi
- Nếu bạn muốn có một ứng dụng OS X gốc hơn tất cả mọi thứ khác: Aquamacs
- Nếu bạn muốn Emacs, nhưng với sự hỗ trợ OS X tốt nhất có thể: Emacs Mac Port
- Nếu bạn chỉ muốn Emacs mà không có bất kỳ biến chứng nào: Emacs cho Mac OS X
Lời khuyên cá nhân của tôi
Tôi chưa bao giờ dùng thử Emacs cho OS X Modified hoặc Aquamacs, nhưng tôi thấy ít sử dụng trước đây (tôi không phải là người thống kê và có thể tự cài đặt AocateeX). Tôi cũng khuyên bạn nên chống lại cái sau: Đó là một ngã ba và trong khi nó mang lại cho bạn sự tích hợp OS X tốt nhất, nó chắc chắn bị tụt lại phía sau và nhận được ít sự hỗ trợ hơn từ cộng đồng Emacs nói chung. Nhiều gói không hỗ trợ Aquamacs, vì vậy nếu có vấn đề, rất có thể bạn sẽ bị bỏ lại một mình với tư cách là người dùng Aquamacs.
Tôi đã thử Emacs Mac Port, và trong khi cuộn mượt mà, các cử chỉ và Sự kiện của Apple rất hay, tôi thấy rằng những lợi ích nhỏ này không đáng để giữ một phiên bản GNU Emacs được vá. YMMV, rõ ràng, và nếu bạn quan tâm đến việc hỗ trợ OS X tốt, và nếu các tính năng này hấp dẫn bạn, bạn chắc chắn nên thử nó.
Ngày nay, tôi chỉ sử dụng các bản dựng snapshot GNU Emacs. Chúng có hỗ trợ OS X khá tốt và cho đến nay là dễ cài đặt nhất và được cộng đồng hỗ trợ tốt nhất.
Tôi đã từng lấy chúng từ Emacs cho Mac OS X, nhưng bây giờ tôi sử dụng Homebrew, vì nó hỗ trợ nhiều thư viện hơn, đặc biệt là GNU TLS cho các kết nối mạng được mã hóa.
Tất cả trong tất cả: Sử dụng brew install emacs --HEAD --use-git-head --with-cocoa --with-gnutls --with-rsvg --with-imagemagick
:).