This add-on defines three company-mode backends:
-
company-math-symbols-latex
- math latex tags (by default, active only on latex math faces) -
company-math-symbols-unicode
- math unicode symbols and sub(super)scripts (by default, active everywhere except math faces) -
company-latex-commands
- latex commands
Start math completion by typing the prefix \
key. To select the
completion type RET. Depending on the context and your configuration
unicode symbol or latex tag will be inserted.
Since version 1.2 sub(super)script completion is available for the
company-math-symbols-unicode
backend. Subscripts are inserted with either __
or \_
prefixes. Superscripts with ^^
or \^
. Customize
company-math-subscript-prefix
and company-math-superscript-prefix
if you
don't like this default.
Install from ELPA or MELPA repositories.
You can either register each backend globally:
;; global activation of the unicode symbol completion
(add-to-list 'company-backends 'company-math-symbols-unicode)
or locally per emacs mode:
;; local configuration for TeX modes
(defun my-latex-mode-setup ()
(setq-local company-backends
(append '((company-math-symbols-latex company-latex-commands))
company-backends)))
(add-hook 'tex-mode-hook 'my-latex-mode-setup)
If you are using AUCTeX
you might need to use TeX-mode-hook
instead:
(add-hook 'TeX-mode-hook 'my-latex-mode-setup)
Set company-tooltip-align-annotations
to t in order to align symbols to the
right as in the snapshots from above.
By default unicode symbols backend (company-math-symbols-unicode
) is not
active in latex math environments and latex math symbols
(company-math-symbols-latex
) is not available outside of math latex
environments. You can use the following custom lists of faces to change this
behavior: company-math-disallow-unicode-symbols-in-faces
,
company-math-allow-unicode-symbols-in-faces
,
company-math-disallow-latex-symbols-in-faces
,
company-math-allow-latex-symbols-in-faces
.