使用 emacs 的 unicode (Python 3/Julia) 制表符补全?
Tab completion for unicode (Python 3/Julia) using emacs?
有没有办法配置 emacs,以便我们可以使用制表符补全来键入用于 Python 3 和 Julia 的 Unicode 变量?例如
\gamma -> tab -> γ
另一种方法是用 C-x RET C-\
调用 set-input-method
,选择 TeX
,然后键入 \gamma
,它将自动替换为 γ
。然后您应该能够使用 C-\
切换输入法。或者,如果您愿意,可以将 (setq default-input-method "TeX")
添加到您的初始文件并使用 C-\
更快地进入 TeX
输入并执行相同的操作。
不久前我为 julia latexsubs 写了一个完成点。它只是以下内容(julia-latexsubs
是 julia-mode
中定义的乳胶符号的散列)
(defun julia-completion-at-point ()
(let ((bnds (bounds-of-thing-at-point 'symbol)))
(when bnds
(cond
;; complete latex symbol when current symbol is prefixed
;; by '\'
((eq (char-before (car bnds)) ?\)
(list (1- (car bnds)) (cdr bnds) julia-latexsubs
:annotation-function
#'(lambda (arg)
(gethash arg julia-latexsubs ""))))))))
然后在你的 julia-mode 挂钩中,或者 ess-julia-mode-hook
(add-hook 'completion-at-point-functions 'julia-completion-at-point nil t)
您可以使用company-math. My config is here
有没有办法配置 emacs,以便我们可以使用制表符补全来键入用于 Python 3 和 Julia 的 Unicode 变量?例如
\gamma -> tab -> γ
另一种方法是用 C-x RET C-\
调用 set-input-method
,选择 TeX
,然后键入 \gamma
,它将自动替换为 γ
。然后您应该能够使用 C-\
切换输入法。或者,如果您愿意,可以将 (setq default-input-method "TeX")
添加到您的初始文件并使用 C-\
更快地进入 TeX
输入并执行相同的操作。
不久前我为 julia latexsubs 写了一个完成点。它只是以下内容(julia-latexsubs
是 julia-mode
中定义的乳胶符号的散列)
(defun julia-completion-at-point ()
(let ((bnds (bounds-of-thing-at-point 'symbol)))
(when bnds
(cond
;; complete latex symbol when current symbol is prefixed
;; by '\'
((eq (char-before (car bnds)) ?\)
(list (1- (car bnds)) (cdr bnds) julia-latexsubs
:annotation-function
#'(lambda (arg)
(gethash arg julia-latexsubs ""))))))))
然后在你的 julia-mode 挂钩中,或者 ess-julia-mode-hook
(add-hook 'completion-at-point-functions 'julia-completion-at-point nil t)
您可以使用company-math. My config is here