Emacs toàn màn hình trong OSX


12

Có cách nào sử dụng Emacs ở chế độ toàn màn hình trong OSX không.

Tôi hiện đang sử dụng Emacs từ http://emacsforosx.com/

Chỉnh sửa : Câu hỏi này không còn phù hợp nữa kể từ khi phát hành phiên bản Emacs 24.4. Xin vui lòng xem câu trả lời được chấp nhận.


1
Chà, nếu bạn chỉ nhận được emacs trong terminal, bạn có thể làm cho cửa sổ terminal toàn màn hình.
Billjk

Câu trả lời:


9

Tính năng này có mặt trong Emacs 24.4. Từ tệp TIN TỨC:

Thay đổi trong Emacs 24.4 trên Hệ điều hành không miễn phí

...

Cải thiện hỗ trợ toàn màn hình trên Mac OS X.

Cả màn hình gốc (> = OSX 10.7) và "kiểu cũ" đều được hỗ trợ. Tùy chỉnh `ns-use-local-fullscreen 'để thay đổi kiểu. Với> = 10,7 bản địa là mặc định.

Và:

Lệnh mới toggle-frame-fullscreentoggle-frame-maximized, bị ràng buộc vào <f11>M-<f10>, tương ứng.


1
Là tác giả ban đầu của maxframe.el, tôi hoàn toàn ủng hộ câu trả lời này.
Ryan McGeary

1
Cảm ơn. toggle-frame-fullscreenđã giúp thoát khỏi trạng thái toàn màn hình trong màn hình riêng biệt, nơi không có gì khác rõ ràng - chẳng hạn như không có biểu tượng cửa sổ đóng trên màn hình đã tạo.
kjhughes

10

Bản dựng của Emacs được phân phối qua http://emacsforosx.com không bao gồm tùy chọn toàn màn hình.

Nếu bạn sử dụng trình quản lý gói Homebrew , bạn có thể cài đặt Emacs với hỗ trợ toàn màn hình qua

brew install emacs --cocoa

Sau đó, bạn sẽ muốn liên kết Homebrew Emacs.appvới một trong /Applicationsthư mục của bạn :

ln -s `brew --prefix`/Cellar/emacs/23.2/Emacs.app /Applications/Emacs.app

Bây giờ bạn sẽ có thể sử dụng chế độ toàn màn hình thông qua ns-toggle-fullscreen.


2
fwiw, câu trả lời này không còn áp dụng cho emacs 24+, xem superuser.com/a/599029/78325 để biết câu trả lời gần đây hơn.
Aaron Jensen

4

Nếu bạn muốn giữ phiên bản GNU Emacs của mình, đây là hai cách tiếp cận được thử nghiệm có thể.

Từ suy nghĩ của Amit: Emacs: toàn màn hình trên Mac OS X cho GNU (Ca cao / Bước tiếp theo) Emacs 23:

Tôi đang sử dụng phiên bản vá của maxframe.el và chức năng này từ trang EmacsWiki:

(defvar maxframe-maximized-p nil "maxframe is in fullscreen mode")
(defun toggle-maxframe ()
  "Toggle maximized frame"
  (interactive)
  (setq maxframe-maximized-p (not maxframe-maximized-p))
  (cond (maxframe-maximized-p (maximize-frame))
        (t (restore-frame))))
(define-key global-map [(alt return)] 'toggle-maxframe)

Thật không may, điều này không che giấu thanh thực đơn hoặc thanh tiêu đề.

Một bài viết khác khuyến nghị:

Nếu bạn muốn tạo toàn màn hình GNU Emacs, có ba điều bạn nên làm:

  1. Vô hiệu hóa thanh công cụ
    Điều này có thể được thực hiện (bên trong Emacs)(tool-bar-mode -1)
  2. Vô hiệu hóa thanh menu
    Điều này có thể được thực hiện(menu-bar-mode -1)
  3. Chuyển đến chế độ toàn màn hình
    Bạn phải thực hiện(set-frame-parameter nil 'fullscreen 'fullboth)

Nếu bạn muốn vô hiệu hóa luôn thanh công cụ và thanh menu, như tôi và bạn muốn có thể truy cập toàn màn hình bằng tổ hợp phím (ví dụ F11), hãy thêm phần này vào .emacs của bạn:

;; F11 = Full Screen
(defun toggle-fullscreen (&optional f)
  (interactive)
  (let ((current-value (frame-parameter nil 'fullscreen)))
    (set-frame-parameter nil 'fullscreen
      (if (equal 'fullboth current-value)
        (if (boundp 'old-fullscreen) old-fullscreen nil)
        (progn (setq old-fullscreen current-value)
          'fullboth)))))
(global-set-key [f11] 'toggle-fullscreen)

;; Disable tool-bar
(tool-bar-mode -1)

;; Disable Menu Bar
(menu-bar-mode -1)

3
Điều này dường như cho màn hình tối đa, không phải toàn màn hình, nếu bạn hiểu ý tôi.
qazwsx

Bài viết thứ 2 của bạn không dành riêng cho Mac OS X và được viết bởi nhà phát triển Debian, nó bao gồm lỗi tập trung.
Tamara Wijsman

@harrymc: May mắn là tôi đã đi qua đây, vì bạn đã đánh máy sau tên tôi. Lỗi tiêu điểm nằm trong một hàm được gọi bởi tập lệnh của bạn và do đó không thể sửa trong chính tập lệnh.
Tamara Wijsman

2

Tôi đã thực hiện thành công điều này trong quá khứ bằng cách sử dụng các bộ lệnh này:

Toàn màn hình thực sự cho bản dựng Ca cao trong Emacs 23

Cái ngã ba này có các bản vá cho toàn màn hình thực sự và nó hoạt động tuyệt vời.

git clone git://github.com/typester/emacs.git
cd emacs
./configure --with-ns
make bootstrap
make install
mv nextstep/Emacs.app /Applications

Sau đó, bạn có thể chỉ cần đặt khóa toàn cầu và sử dụng nó:

(global-set-key (kbd "M-RET") 'ns-toggle-fullscreen)

M-RET dịch thành Alt+Return . Bạn có thể cần phải cài đặt git trước ...

Ngoài ra, bạn có thể tìm thấy một số nhị phân cũ ở đây bao gồm bản vá để bạn chỉ phải đặt khóa toàn cầu; mặc dù tôi thực sự sẽ khuyên không nên tải xuống các tệp nhị phân của người khác, chúng vẫn cũ và không thể tin cậy được ...


Nếu bạn có / cài đặt homebrew , bạn có thể biên dịch phiên bản tháng 3 năm 2012 cho phép hỗ trợ toàn màn hình:

brew install https://gist.github.com/raw/1946398/e7bbb52a4fe3ae0060e65df3d4a7462730ddc822/emacs.rb --force --HEAD --cocoa --use-git-head

Tôi đã tìm thấy điều này trong EmacsWiki: Toàn màn hình - Mac OS X - Vá nhị phân .


1

Nhấp vào tối đa hóa / phóng to màu xanh lá cây hai lần. Lần đầu tiên tối đa hóa chiều cao, lần nhấp thứ hai tối đa hóa chiều rộng.



0

Mặc dù hỗ trợ toàn màn hình đã được thêm vào phiên bản NextStep (Ca cao) của Emacs nhiều lần, nhưng nó không được chấp nhận ngược dòng, vì vậy các bản dựng vanilla Emacs không có nó. Bạn có thể tìm thấy các bản vá trực tuyến và tự áp dụng nó.

Theo tôi, tùy chọn khả thi nhất là sử dụng iTerm (hoặc Apple Terminal trên OS X 10.7) ở chế độ toàn màn hình với phiên bản console của emacs. Bạn có thể muốn tạo một bí danh cho /Applications/Emacs-23.3.app/Contents/MacOS/Emacs -nw

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.