12

Есть ли способ использовать Emacs в полноэкранном режиме в OSX.

В настоящее время я использую Emacs с http://emacsforosx.com/

Редактировать: Этот вопрос больше не актуален с момента выпуска Emacs версии 24.4. Пожалуйста, смотрите принятый ответ.

7 ответов7

10

Сборка Emacs, распространяемая через http://emacsforosx.com , не включает полноэкранный вариант.

Если вы используете менеджер пакетов Homebrew , вы можете установить Emacs с полноэкранной поддержкой через

brew install emacs --cocoa

Затем вы захотите связать Emacs.app Homebrew с тем, что находится в каталоге /Applications :

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

Теперь вы сможете использовать полноэкранный режим через ns-toggle-fullscreen.

8

Эта функция присутствует в Emacs 24.4. Из файла NEWS:

Изменения в Emacs 24.4 в несвободных операционных системах

...

Улучшена полноэкранная поддержка в Mac OS X.

Поддерживаются как родной (> = OSX 10.7), так и полноэкранный "старый стиль". Настройте `ns-use-native-fullscreen ', чтобы изменить стиль. Для> = 10,7 по умолчанию используется нативный.

А также:

Новые команды toggle-frame-fullscreen и toggle-frame-maximized , привязанные к <f11> и M-<f10> соответственно.

4

Если вы хотите сохранить свою версию GNU Emacs, вот два возможных проверенных подхода.

Из мыслей Амита: Emacs: полноэкранный режим в Mac OS X для GNU (Какао /Nextstep) Emacs 23:

Я использую исправленную версию maxframe.el и эту функцию со страницы 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)

К сожалению, это не скрывает строку меню или заголовок.

Другая статья рекомендует:

Если вы хотите сделать GNU Emacs полноэкранным, вы должны сделать три вещи:

  1. Отключить панель инструментов
    Это можно выполнить, выполнив (внутри Emacs) (tool-bar-mode -1)
  2. Отключить строку меню
    Это можно сделать, выполнив (menu-bar-mode -1)
  3. Перейти в полноэкранный режим
    Вы должны выполнить (set-frame-parameter nil 'fullscreen 'fullboth)

Если вы хотите всегда отключать панель инструментов и строку меню, как я, и хотите, чтобы вы могли переходить в полноэкранный режим нажатием клавиши (например, F11), добавьте это в ваш .emacs:

;; 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)
2

Я успешно делал это в прошлом, используя этот набор команд:

Полноэкранный режим для сборки какао в Emacs 23

У этой вилки есть патчи для настоящего полноэкранного режима, и он прекрасно работает.

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

Затем вы можете просто установить глобальный ключ и использовать его:

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

M-RET переводится как Alt+Return. Возможно, вам придется установить git заранее ...

Кроме того , вы можете найти некоторые старые бинарники здесь , включая патч , так что вы должны установить только глобальный ключ; хотя я бы действительно советовал не загружать чужие двоичные файлы, они старые и им нельзя доверять ...


Если у вас есть / установите homebrew, вы можете скомпилировать версию за март 2012 года, которая включает полноэкранную поддержку:

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

Я нашел это в EmacsWiki: Full Screen - Mac OS X - Исправление двоичного файла.

1

Нажмите на зеленый максимизировать / увеличить дважды. Первый раз максимизирует высоту, второй щелчок максимизирует ширину.

1

Если вы запускаете emacs в терминале, получаете новую версию iTerm, она имеет режим "Полный экран".

0

Хотя полноэкранная поддержка была добавлена в версию Emacs NextStep (Cocoa) несколько раз, она не принята в апстриме, поэтому в ванильных сборках Emacs ее нет. Вы можете найти патч онлайн и применить его самостоятельно.

На мой взгляд, наиболее жизнеспособным вариантом является использование iTerm (или Apple Terminal на OS X 10.7) в полноэкранном режиме с консольной версией emacs. Вы можете захотеть создать псевдоним для /Applications/Emacs-23.3.app/Contents/MacOS/Emacs -nw

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .