- Notifications
You must be signed in to change notification settings - Fork19
cute-jumper/ace-pinyin
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Jump to Chinese characters usingavy
orace-jump-mode
.
使用avy
或者ace-jump-mode
跳转到中文字符。
Install viamelpa.
Or if you prefer to install this package manually:
(add-to-list 'load-path "/path/to/ace-pinyin.el")(require 'ace-pinyin)
By default this package is usingavy
. If you want to useace-jump-mode
, setace-pinyin-use-avy
tonil
.
Noteace-pinyin-use-avy
variable should be setBEFORE you callace-pinyin-global-mode
orturn-on-ace-pinyin-mode
.
Example config to useace-pinyin
globally:
;; (setq ace-pinyin-use-avy nil) ;; uncomment if you want to use `ace-jump-mode'(ace-pinyin-global-mode +1)
When usingavy
, allavy
commands (as of 05/06/2016) related to char/word jumping are supported:
avy-goto-char
avy-goto-char-2
avy-goto-char-in-line
avy-goto-word-0
avy-goto-word-1
avy-goto-subword-0
avy-goto-subword-1
avy-goto-word-or-subword-1
When usingace-jump-mode
, the following command is supported:
ace-jump-char-mode
When theace-pinyin-mode
is enabled, the supported commands will be able to jump to both Chinese and English characters/words. That is, you don’t need remember extra commands or create extra key bindings in order to jump to Chinese characters. All you need to do is to enable the minor mode and use youravy
orace-jump-mode
key bindings to jump to Chinese characters.
In addition, you can also use English punctuations to jump to Chinese/English punctuations. For example, use.
to jump to both。
and.
, and<
to jump to both《
and<
etc. Behind the scene,ace-pinyin
usespinyinlib.el to translate the letter to Simplified/Traditional Chinese characters and English punctuations to Chinese punctuations. To see the full list of punctuations that are supported, seepinyinlib.el.
Besides, all other packages usingace-jump-mode
(oravy
) will also be able to handle Chinese characters. For example, if you’ve installedace-jump-zap, it will also be able to zap to a Chinese character by the first letter of pinyin. Noteace-jump-zap
is implemented by usingace-jump-mode
, so you can’t useavy
in this case. You can check out my fork oface-jump-zap
usingavy
:avy-zap.
By default,ace-pinyin
only supports simplified Chinese characters. You can makeace-pinyin
aware of traditional Chinese characters by the following setting:
(setq ace-pinyin-simplified-chinese-only-p nil)
By default,ace-pinyin
will remap both word jumping and character jumping methods inavy
. If you only want to remap character jumping methods, use:
(setq ace-pinyin-treat-word-as-char nil)
After setting this, the following commands inavy
are not able to jump to Chinese characters:
avy-goto-word-0
avy-goto-word-1
avy-goto-subword-0
avy-goto-subword-1
avy-goto-word-or-subword-1
If you don’t like the punctuation support(i.e., using English punctuations to jump to both Chinese/English punctuations), use the following code to disable it:
(setq ace-pinyin-enable-punctuation-translation nil)
These commands are not provided in eitheravy
orace-jump-mode
. They’re provided in this package in case someone finds them useful. You need to assign key bindings for the commands if you want to use them.
If called with no prefix, it can jump to both Chinese characters and English letters. If called with prefix, it can only jump to Chinese characters.
Using this command, you can jump to the start of a sequence of Chinese characters(i.e. Chinese word) by typing the sequence of the first letters of these character’s pinyins. If called without prefix, this command will read user’s input with a default timeout 1 second(You can customize the timeout value). If called with prefix, then it will read input from the minibuffer and starts search after you pressenter.
WARNING: The following demos are a little bit outdated.
Enableace-pinyin-mode
and useace-jump-char-mode
to jump to Chinese characters:
If you have installedace-jump-zap, then enablingace-pinyin-mode
will also makeace-jump-zap-to-char
capable of handling Chinese characters.
UPDATE(2015-11-26): Now jumping to traditional Chinese characters is supported by settingace-pinyin-simplified-chinese-only-p
tonil
.
UPDATE(2016-05-01): Nowace-pinyin
usesavy
by default. If you want to useace-jump-mode
, use:
(setq ace-pinyin-use-avy nil)
UPDATE(2016-05-02): A new variableace-pinyin-treat-word-as-char
is added and its default value ist
. When this variable ist
,ace-pinyin
remaps both word and character jumping commands inavy
orace-jump-mode
. For example, if you’re usingavy
, setting this variable tot
will makeavy-goto-word-*
andavy-goto-subword-*
be able to jump to Chinese characters as well as English words.
UPDATE(2015-05-05): Addace-pinyin-enable-punctuation-translation
.
UPDATE(2015-05-05): Nowace-pinyin
depends onpinyinlib.el.
About
Jump to Chinese character by pinyin with `avy' or `ace-jump-mode`