Emacs packages for typesetting mathematics and text in Bulgarian and Russian

Table of Contents

The University of Manchester
photo of Georgi Boshnakov

I provide some Emacs material which I have written for me but may be useful to others.

The instructions below assume some familiarity with Emacs. If this is not the case but you are interested, search the web for "Emacs". A very good starting point is Vincent Goulet's site.

Emacs package repositories (package archives)

Emacs 24 is distributed with a package system. To make the packages provided here known to the package system you need to add the site georgi to the list of package archives. This can be done, for example, by putting the following command in your .emacs file (and restarting Emacs).

(setq package-archives
      '(("gnu"         . "http://elpa.gnu.org/packages/")
        ("marmalade"   . "http://marmalade-repo.org/packages/")
        ("georgi" . "http://www.maths.manchester.ac.uk/~gb/emacs/packages/")))

This adds the repository discussed here under the name "georgi". The command also assumes that you wish the standard repository, called "gnu" by the above command, to be available (which you probably do). If you do not require the other repository, marmalade, simply delete the line defining it.

Once the above is done the packages described here should appear in the list of available packages when you run the Emacs command list-packages and you can install the ones you need.

Alternatively, the packaged tar files may be downloaded from this directory and installed manually.

Package Kiril

Package Kiril provides several input methods (keyboard layouts) for the Bulgarian and Russian languages. For the Bulgarian language it implements a modified layout of the keyboard, based on a recent (but unapproved) proposal for a change of the Bulgarian standard (BDS) and more suitable for work on a computer. It also provides variants of the encodings suitable for use when the background keyboard layout is the British one.

For details see kiril.pdf. When the package is installed, this documentation is available (in Info format) through the Emacs help system in the standard way(s).

Also, the keyboard layouts become immediately available from the menu system or the keys for changing the input method, e.g. C-\. If this is not the case, put the line

(require 'kiril)

in your .emacs file and restart Emacs.

Note that the input methods are Unicode based (utf8).

Package Kirilmath

Kirilmath provides convenience features for automatic or on demand turning on and off of the language encoding, depending on the context around point. This is most useful for TeX modes, mainly LaTeX, but can be used also in other modes. Functions for inserting math and text environments, as well as moving point out of math environments are provided. These complement functionality provided by AUCTeX. These features are particularly useful for documents in which the text uses the Cyrillic alphabet, where forgetting to switch the encoding appropriately is a major source of frustration. Kirilmath makes manual switching between encodings rarely necessary.

For details see kirilmath.pdf (draft documentation). When the package is installed, this documentation is available (in Info format) through the Emacs help system in the standard way(s). To activate the package, you may need to put the following line in your Emacs file.

(require 'kirilmath)

Although this package does not require AUCtex, it needs some files from it, so currently AUCTeX needs to be installed, as well. Kirilmath should be usable without AUCTeX but I always have AUCtex installed and have not had time to go carefully through the code to take care of this.

Installing AUCTeX on University of Manchester machines.

Installing AUCTeX on university machines may be a bit tricky on University computers due to lack of access rights. The easiest way is to install the latest version of Emacs whose package manager makes installation of packages a breeze.


Author: Georgi Boshnakov

Created: 2014-01-05 Sun 16:31

Emacs 24.3.1 (Org mode 8.2.4)

Validate