Layar penuh Emacs di OSX

12

Apakah ada cara menggunakan Emacs dalam mode layar penuh di OSX.

Saat ini saya menggunakan Emacs dari http://emacsforosx.com/

Sunting : Pertanyaan ini tidak relevan lagi sejak rilis Emacs versi 24.4. Silakan lihat jawaban yang diterima.

licorna
sumber
1
Nah, jika Anda hanya mengakses emacs di terminal, Anda dapat membuat layar terminal layar penuh.
Billjk

Jawaban:

9

Fitur ini hadir di Emacs 24.4. Dari file NEWS:

Perubahan Emacs 24,4 tentang Sistem Operasi Tidak Bebas

...

Dukungan layar penuh ditingkatkan pada Mac OS X.

Layar penuh asli (> = OSX 10.7) dan "gaya lama" didukung. Kustomisasi `ns-use-native-fullscreen 'untuk mengubah gaya. Untuk> = 10.7 asli adalah default.

Dan:

Perintah baru toggle-frame-fullscreendan toggle-frame-maximized, terikat <f11>dan M-<f10>, masing-masing.

legoscia
sumber
1
Sebagai penulis asli maxframe.el, saya sepenuhnya mendukung jawaban ini.
Ryan McGeary
1
Terima kasih. toggle-frame-fullscreenmembantu keluar dari status layar penuh di desktop terpisah di mana tidak ada hal lain yang jelas akan terjadi - tidak ada ikon jendela dekat pada desktop yang dibuat, misalnya.
kjhughes
10

Pembuatan Emacs yang didistribusikan melalui http://emacsforosx.com tidak termasuk opsi layar penuh.

Jika Anda menggunakan pengelola paket Homebrew , Anda dapat menginstal Emacs dengan dukungan layar penuh via

brew install emacs --cocoa

Anda kemudian ingin menautkan Homebrew Emacs.appke yang ada di /Applicationsdirektori Anda :

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

Sekarang Anda dapat menggunakan mode layar penuh via ns-toggle-fullscreen.

andrewsardone
sumber
2
fwiw, jawaban ini tidak lagi berlaku untuk emacs 24+, lihat superuser.com/a/599029/78325 untuk jawaban yang lebih baru.
Aaron Jensen
4

Jika Anda ingin mempertahankan versi GNU Emacs Anda, berikut adalah dua pendekatan yang mungkin diuji.

Dari Amit's Thoughts: Emacs: layar penuh pada Mac OS X untuk GNU (Cocoa / Nextstep) Emacs 23:

Saya menggunakan versi patch maxframe.el , dan fungsi ini dari halaman 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)

Sayangnya ini tidak menyembunyikan menu atau bilah judul.

Artikel lain merekomendasikan:

Jika Anda ingin membuat layar penuh GNU Emacs, ada tiga hal yang harus Anda lakukan:

  1. Nonaktifkan bilah alat
    Ini dapat dilakukan mengeksekusi (di dalam Emacs)(tool-bar-mode -1)
  2. Nonaktifkan bilah menu
    Ini dapat dilakukan mengeksekusi(menu-bar-mode -1)
  3. Pergi ke mode layar penuh
    Anda harus menjalankan(set-frame-parameter nil 'fullscreen 'fullboth)

Jika Anda ingin menonaktifkan selalu bilah alat dan bilah menu, seperti saya, dan Anda ingin dapat ke layar penuh dengan penekanan tombol (F11, misalnya), tambahkan ini ke .emacs Anda:

;; 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)
harrymc
sumber
3
Ini tampaknya memberikan layar maksimal, bukan layar penuh, jika Anda tahu apa yang saya maksud.
qazwsx
Artikel ke-2 Anda tidak khusus untuk Mac OS X dan ditulis oleh pengembang Debian, termasuk bug fokus.
Tamara Wijsman
@harrymc: Untungnya saya menemukan di sini, karena Anda membuat kesalahan ketik di belakang nama saya. Bug fokus ada dalam fungsi yang dipanggil oleh skrip Anda, dan karenanya tidak dapat diperbaiki dalam skrip itu sendiri.
Tamara Wijsman
2

Saya telah berhasil melakukan ini di masa lalu menggunakan set perintah ini:

Layar penuh sebenarnya untuk bangunan Kakao di Emacs 23

Garpu ini memiliki tambalan untuk layar penuh yang benar dan berfungsi dengan sangat baik.

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

Kemudian, Anda cukup mengatur kunci global dan menggunakannya:

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

M-RET diterjemahkan menjadi Alt+ Return. Anda mungkin perlu menginstal git terlebih dahulu ...

Atau, Anda dapat menemukan beberapa binari lama di sini termasuk tambalan sehingga Anda hanya perlu mengatur kunci global; meskipun saya akan sangat menyarankan agar tidak mengunduh binari orang lain, itu sudah tua dan tidak dapat dipercaya ...


Jika Anda memiliki / menginstal homebrew , Anda dapat mengkompilasi versi Maret 2012 yang memungkinkan dukungan layar penuh:

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

Saya menemukan ini di EmacsWiki: Layar Penuh - Mac OS X - Menambal biner .

Tamara Wijsman
sumber
1

Klik hijau maksimalkan / perbesar dua kali. Pertama kali memaksimalkan ketinggian, klik kedua memaksimalkan lebar.

Doug Harris
sumber
1

Jika Anda menjalankan emacs di terminal, dapatkan versi baru iTerm , ia memiliki mode "Layar Penuh".

Steve Lianoglou
sumber
0

Sementara dukungan layar penuh telah ditambahkan ke versi NextStep (Cocoa) dari Emacs beberapa kali, itu tidak diterima di bagian hulu, jadi vanilla Emacs build tidak memilikinya. Anda mungkin menemukan tambalan secara online dan menerapkannya sendiri.

Menurut pendapat saya, opsi yang paling layak adalah menggunakan iTerm (atau Apple Terminal pada OS X 10.7) dalam mode layar penuh dengan emacs versi konsol. Anda mungkin ingin membuat alias untuk /Applications/Emacs-23.3.app/Contents/MacOS/Emacs -nw

marchdown
sumber