Completion back-ends for for math unicode symbols and latex tags
Switch branches/tags
Nothing to show
Clone or download
vspinu Merge pull request #15 from Kaligule/patch-1
Enable latex backend in org-mode per default
Latest commit 3481f03 Oct 16, 2017
Type Name Latest commit message Commit time
Failed to load latest commit information.
img Add initial stuff Nov 16, 2014
.dir-locals.el Untabify and add .dir-locals Feb 28, 2016
company-math.el Enable latex backend in org-mode per default Oct 15, 2017 Readme Jul 29, 2017

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))

(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)

Further Customization

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.