Я хочу, чтобы сочетание клавиш открыло emacs в максимизируемом окне. Я попробовал emacs --fullscreen
, но это - полный экран, а не максимизируемое окно... Таким образом, emacs окно покрывает строки меню человечности. emacs -fw
получает полное окно width и emacs -fh
получает полное окно высоты, но если Вы помещаете обе опции, оно только читает второй. В данный момент у меня просто есть другое сочетание клавиш для увеличения окна. Существует ли способ заставить emacs запускаться максимизируемый?
Ubuntu 9.10, emacs 22, если это имеет значение.
У меня есть это в моем .emacs, который я затем связываю с ключом:
(defun my-frame-toggle ()
"Maximize/Restore Emacs frame using 'wmctrl'."
(interactive)
(shell-command "wmctrl -r :ACTIVE: -btoggle,maximized_vert,maximized_horz"))
(global-set-key [(control f4)] 'my-frame-toggle)
Можно затем поразить CtrlF4 и переключатель между регулярным и полноэкранным (но не покрытие строки меню Ubuntu и панели внизу экрана, на имени которой я очищаю в данный момент). Для запуска того пути просто вызывают его:
$ emacs -e "my-frame-toggle"
У меня есть следующие функции в моем .emacs, который сначала определяет коды для отправки менеджера окон, чтобы максимизировать кадр на X.org и Win32 соответственно, и затем добавить это как рычаг установки, если применимо:
(defun x-maximize-frame ()
"Maximize the current frame (to full screen)"
(interactive)
(x-send-client-message nil 0 nil "_NET_WM_STATE" 32 '(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0))
(x-send-client-message nil 0 nil "_NET_WM_STATE" 32 '(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0)))
(defun w32-maximize-frame ()
"Maximize the current frame (to full screen)"
(interactive)
(w32-send-sys-command 61488))
(defun maximize-frame ()
(if (eq window-system 'w32)
(w32-maximize-frame)
(x-maximize-frame)))
(if window-system
(add-hook 'window-setup-hook 'maximize-frame t))