Table of Contents

Chinese layer

Table of ContentsClose

China.png Chinese.png

1 Description

This Layer adds Chinese related packages:

  • chinese-pyim : The best Chinese Pinyin(拼音) input method.
  • chinese-wbim: The best Chinese Wubi(五笔) input method.
  • cute-jumper/fcitx.el: This package provides a set of functions to make fcitx work better in Emacs.
  • youdao-dictionary: The Youdao(有道) Dictionary interface for Emacs.
  • find-by-pinyin-dired: Find file by first Pinyin characters of Chinese Hanzi.
  • ace-pinyin: Jump to Chinese character by pinyin with ace-jump-mode.
  • coldnew/pangu-spacing : emacs minor-mode to add space between Chinese and English characters.
  • Join consecutive Chinese lines into a single long line without unwanted space when exporting org-mode to html.

2 Install

2.1 Layer

To use this configuration layer, add it to your ~/.spacemacs. You will need to add chinese to the existing dotspacemacs-configuration-layers list in this file.

2.2 Configuration

2.2.1 Configure the Default Input Method(配置默认中文输入法)

The default Chinese input method is Chinese-pyim, if you are a Wubi(五笔) user, you could set the variable chinese-default-input-method to wubi:

(setq-default dotspacemacs-configuration-layers '(
  (chinese :variables chinese-default-input-method 'wubi)))

2.2.2 Configure the Chinese-pyim Input Method(配置中文拼音输入法)

When the first time you use Chinese-pyim, you should install the lexicon(词库) file. You could call pyim-dicts-manager to open up the settings buffer and press i e to install the default lexicon. The lexicon is about 20M, so you should be patient when downloading starts. After the lexicon file is downloaded, just press s to save and R to restart configuration.

2.2.3 Enable fcitx

(setq-default dotspacemacs-configuration-layers '((chinese :variables
                                                           chinese-enable-fcitx t)))

If you don’t need to type Chinese in minibuffer, you could temporarily disable fcitx in minibuffer with the following configuration.

  1. Requirement
    1. Linux

      You need use this with fcitx and make sure fcitx-remote is in your search path.

    2. Mac OS X

      We don't have a fcitx in OS X yet but we already added an emulation called fcitx-remote to make you happy with other Chinese input-methods.

      You can install fcitx-remote-for-osx from homebrew.

      brew install fcitx-remote-for-osx --with-input-method=baidu-pinyin

      --with-input-method=baidu-pinyin means install for Baidu-pinyin Input Method.

      You can use brew info fcitx-remote-for-osx to get more options info for input method support.

        Select input method: baidu-pinyin(default), baidu-wubi, sogou-pinyin, qq-wubi, squirrel-rime, osx-pinyin
    3. Windows

      In order to use fcitx.el in Windows, you should install fcitx-remote-for-windows.

2.2.4 Enable YouDao(有道) Dictionary(激活有道字典)

The YouDao Dictionary is disabled by default, if you want enable it. You should set chinese-enable-youdao-dict to t.

(setq-default dotspacemacs-configuration-layers '((chinese :variables
                                                           chinese-enable-youdao-dict t)))

2.2.5 Set monospaced font size(设置等宽字体)

If you are mixing Chinese words with English words, the text is not perfectly aligned in org table. That's because normally the Chinese font size is not equal to the English font size. You could call spacemacs//set-monospaced-font with your own Chinese font name in dotspacemacs/user-config function.

Example configuration:

;; Note: The Hiragino Sans GB is bundled with MacOS X.
;; If you are not using MacOS X, you should change it to another Chinese font name.
(spacemacs//set-monospaced-font   "Source Code Pro" "Hiragino Sans GB" 14 16)

2.2.6 Enable/Disable ace-pinyin in avy-goto-char

You can use avy-goto-char with pinyin supported by default, if you want to disable it.You can set chinese-enable-avy-pinyin to nil.

(setq-default dotspacemacs-configuration-layers '((chinese :variables
                                                           chinese-enable-avy-pinyin nil)))

3 Key Bindings

Currently, there are no built-in key bindings for this layer. You could define your own preference.

Here are a few suggested key bindings (remember that SPC o is reserved for personal usage, spacemacs won´t put any binding under this prefix):

3.1 Youdao Dictionary

Bind SPC o y to youdao-dictionary-search-at-point+.

3.2 Find-by-pinyin-dired

Bind SPC o d to find-by-pinyin-dired

Author: Sylvain Benner

Created: 2016-10-03 Mon 00:56