doomemacs/modules/input/chinese/config.el

46 lines
1.2 KiB
EmacsLisp
Raw Normal View History

2019-05-13 12:48:04 +08:00
;;; input/chinese/config.el -*- lexical-binding: t; -*-
(def-package! pyim
:after-call (after-find-file pre-command-hook)
2019-05-13 12:48:04 +08:00
:config
(setq pyim-dcache-directory (concat doom-cache-dir "pyim/")
pyim-page-tooltip t
default-input-method "pyim"))
(def-package! pangu-spacing
:hook (text-mode . pangu-spacing-mode)
2019-05-13 12:48:04 +08:00
:config
;; Always insert `real' space in org-mode.
(setq-hook! 'org-mode-hook pangu-spacing-real-insert-separtor t))
(def-package! fcitx
:after evil
:config
(when (executable-find "fcitx-remote")
(fcitx-evil-turn-on)))
2019-05-13 12:48:04 +08:00
(def-package! ace-pinyin
:after avy
:init (setq ace-pinyin-use-avy t)
:config (ace-pinyin-global-mode t))
2019-05-13 12:48:04 +08:00
;;
;;; Hacks
(defun +chinese*org-html-paragraph (paragraph contents info)
"Join consecutive Chinese lines into a single long line without unwanted space
when exporting org-mode to html."
(let* ((fix-regexp "[[:multibyte:]]")
(origin-contents contents)
(fixed-contents
(replace-regexp-in-string
(concat "\\(" fix-regexp "\\) *\n *\\(" fix-regexp "\\)")
"\\1\\2"
origin-contents)))
(list paragraph fixed-contents info)))
(advice-add #'org-html-paragraph :filter-args #'+chinese*org-html-paragraph)