全螢幕 Emacs

作者:   發佈於:   #emacs

既然工作環境基本上是純 Emacs,那麼基本上 Emacs 視窗都是一直處於全螢幕狀態,不必縮小也沒差。

首先是讓啟動視窗(inital frame)直接開到全螢幕,並且把視窗外框關掉。在 macOS 上這麼做會讓左上角紅綠燈消失,基本上讓 Emacs 視窗變成無法輕易以滑鼠關掉的狀態。

(set-frame-parameter nil 'undecorated t)
(set-frame-parameter nil 'fullscreen 'maximized)

再來為了不讓文字直接頂到螢幕邊界,可在視窗四周加上 24px 的留白:

(set-frame-parameter nil 'internal-border-width 24)

在 macOS GUI 上 C-zC-x C-z 兩組按鍵會讓視窗縮小至 Dock,其作用類似於按下紅綠燈按鈕上的黃燈。由於這操作基本上是不需要的,所以可直接使這兩組按鍵無效:

(if (and (eq system-type 'darwin) (display-graphic-p))
    (progn
      (global-unset-key (kbd "C-z"))
      (global-unset-key (kbd "C-x C-z"))))

加入這幾步設定之後,新開的 Emacs.app 視窗就會直接放到最大。在 macOS 上這跟全螢幕模式不太一樣,但比較好用(個人意見)。

最近在某 Emacs 群組看到 elegant-emacs 這套風格設定,看來很簡潔,跟自製的 grey-paper-theme 很合。大致上仿照 elegant-emacs 把 header-line 與 mode-line 改完之後,效果也不錯。