GUI版本的emacs

概要

以前一直使用 terminal 版本的 emacs, 性能和顯示方面其實也還不錯.
惟一的遺憾在於對圖片和 latex 公式的展現.
terminal 版的 emacs 沒法直接顯示圖片和公式的最終效果, 只能導出以後再查看.html

鑑於此, 決定更換爲使用 GUI 版本的 emacs.linux

emacs 配置

個人 emacs 是遠程使用的, 本機是 windsows10, emacs 在一個 linux 服務器上(Debian10) 經過 SSH 鏈接到遠程服務器上使用 emacs.windows

以前使用的是 terminal 版本的 emacs, 直接使用 putty 鏈接上去就好了.
可是, 使用 GUI 版本的 emacs 時, 須要 X11 Server 提供服務.
若是使用 putty 的話, 須要本機再安裝一個 X11 Server, 很麻煩. 因此我就改用了 MobaXTerm 這個客戶端.bash

MobaXTerm 免費版本已經足夠我使用, 它自帶了 X11 Server, 很是方便.服務器

X11 配置

建立 session 的時候, 選擇 X11-forwarding 就行.
x11 forwardingsession

輸入法配置

切換到 GUI 版本以後, 最大的問題是不能使用本機的輸入法了.
因而在服務器上安裝了 fcitx 輸入法:性能

1  sudo apt install fcitx
2  sudo apt install fcitx-pinyin

我使用的是 zsh, 配置 ~/.zshenv 以下:字體

# fcitx
export GTK_IM_MODULE=xim
export XMODIFIERS="@im=fcitx"
export QT_IM_MODULE=xim

spacemacs 中的配置

我用的是 spacemacs, 若是是 emacs, 配置也差很少spa

dotspacemacs-configuration-layers
'(
  ... 省略 ...
  (chinese :variables
           chinese-enable-fcitx t
           chinese-enable-avy-pinyin t)
  ... 省略 ...
  )


(defun dotspacemacs/user-config ()
  ... 省略 ...
   (setq fcitx-active-evil-states '(insert emacs hybrid))
   (fcitx-aggressive-setup)
   (fcitx-prefix-keys-add "M-m")
   (fcitx-prefix-keys-turn-on)
   (global-set-key (kbd "C-\\") nil) ; 切換輸入法的快捷鍵, 禁用是爲了防止和emacs的快捷鍵衝突)
  ... 省略 ...
  )

fcitx 漢字顯示方塊的問題

整個配置和軟件安裝都很是順利, 只是最後使用的時候發現, 輸入法的候選詞都顯示成方塊,
這個問題調查了至少 3 個小時, 最後的解決方法以下:code

首先, 確保 fcitx 使用的字體是系統中已經有的, 經過

fcitx-configtool

找到以下界面, 設置字體:
fcitx字體設置

我設置的是 Hack 字體, 能夠根據本身的狀況設置.
設置 Hack 字體以後, 我把下載的字體文件放入了系統中.

mv ~/tmp/Hack /usr/share/fonts/truetype

放入字體以後, 下面 2 步很是重要, 我就是由於沒有執行下面 2 步, 致使一直排查不出漢字顯示成方塊的緣由.

sudo chmod 755 /usr/share/fonts/truetype/*
sudo fc-cache -fv

總結

使用 GUI 版本的 emacs, 性能上其實差異不是很大, 主要感覺以下:

優點

  1. 界面更加美觀, 能夠顯示以前沒法顯示的有些圖標, 字體看上去也更加舒服.
  2. 圖片和 latex 公式能夠直接展現, 不須要導出 html 以後再查看了
  3. 能夠直接和系統的剪貼板共享內容(這個太方便了, 以前是經過鼠標框選來複制, 鼠標右鍵來粘貼, 也就是終端的複製粘貼方式)

劣勢

惟一以爲遺憾的地方是不能使用 windows 的輸入法了, 以前由於是 terminal 模式, 使用的就是 windows 系統自帶的輸入法.

相關文章
相關標籤/搜索