使用了 rime-predicate-org-latex-mode-p
,行内公式自动切换为英文正常,行间公式要先输入第一个中文词后才会自动切换。输入中文的效果像下面这样
\begin{equation}
输入yicivswfhbclhvzidsqxhr
\end{equation}
emacs中rime的配置文件如下
(use-package rime
:custom
(default-input-method "rime")
:config
;; rime-disable-predicates 是编辑代码时自动切换中英文的配置:如果在代码中,只有在注释和字符串里才可以输入中文。在别的场景中如 markdown,输入字母为大写或当前的中文字符之后有空格会自动切换为英文模式。此外,在一行的开头和以字母开头的英文字符串之后也会自动切换为英文模式
(setq rime-disable-predicates
'(
;; rime-predicate-prog-in-code-p
;; rime-predicate-punctuation-line-begin-p
;; rime-predicate-space-after-cc-p
;; rime-predicate-current-uppercase-letter-p
;; rime-predicate-after-alphabet-char-p
;; rime-predicate-tex-math-or-command-p
rime-predicate-org-latex-mode-p))
(setq mode-line-mule-info '((:eval (rime-lighter))))
(setq rime-show-candidate 'posframe)
:bind
("M-j" . 'rime-inline-ascii) ;; 临时强制开启输入中文
("S-SPC" . 'toggle-input-method)) ;; 按 Shift + 空格 切换到 rime