using-chinese-in-emacs.org
Description
This layer adds support for traditional Chinese script to Spacemacs.
Features:
- Support for the Pinyin(拼音) input method via chinese-pyim.
- Support for the Wubi(五笔) input method via chinese-wbim.
- Integration of the native input method framework fcitx via cute-jumper/fcitx.el.
- Integration of the Youdao(有道) Dictionary via youdao-dictionary.
- Support for file searches in
dired
using Chinese Pinyin characters via find-by-pinyin-dired. - Support for jumping to Chinese Pinyin characters with
ace-jump-mode
via ace-pinyin. - Automatic visual separation of Chinese and Latin characters via coldnew/pangu-spacing.
- Automatic joining of consecutive Chinese lines into a single long line without unwanted space when exporting org-mode to html.
Install
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.
Configuration
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)))
Configure the Chinese-pyim
Input Method(配置中文拼音输入法)
The first time you use Chinese-pyim
, you need to install the lexicon(词库)
file. Call pyim-dicts-manager
to open up the settings buffer and
press i e
to install the default lexicon. The lexicon is about 20MB, so you
should be patient when downloading starts. After the lexicon file is downloaded,
just press s
to save and R
to restart configuration.
Enable fcitx
(setq-default dotspacemacs-configuration-layers '((chinese :variables
chinese-enable-fcitx t)))
If you don’t need to type Chinese in minibuffer, you can temporarily disable fcitx in the minibuffer with the following configuration.
(fcitx-aggressive-setup)
Requirement
Linux
You need to install fcitx
and fcitx-remote
on your machine.
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.
--with-input-method= Select input method: baidu-pinyin(default), baidu-wubi, sogou-pinyin, qq-wubi, squirrel-rime, osx-pinyin
Windows
In order to use fcitx.el
in Windows, you should install fcitx-remote-for-windows.
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)))
Set monospaced font size(设置等宽字体)
If you are mixing Chinese script with Latin script, the text is not perfectly
aligned in org table. That's because normally the Chinese font size is not equal
to the Latin 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)
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)))
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):
Youdao Dictionary
Bind SPC o y
to youdao-dictionary-search-at-point+
.
Find-by-pinyin-dired
Bind SPC o d
to find-by-pinyin-dired