/linum-relative

display relative line number in the left margin in emacs

Primary LanguageEmacs Lisp

Emacs Logo

linum-relative.el

display relative line number in emacs.


License GPLv2 MELPA MELPA Stable

Screenshot

linum-relative lets you display relative line numbers for current buffer.

Installation

If you have melpa and emacs24 installed, simply type:

M-x package-install linum-relative

And add the following to your .emacs

(require 'linum-relative)

Setup & Tips

The non-interactive function linum-on (which should already be built into recent GNU Emacs distributions), turns on side-bar line numbering:

(linum-on)

and alternatively, by using command:

M-x linum-relative-mode

Relative line numbering should already be enabled by default (by installing this package), following linum-on or enabling linum-mode. One can also use the linum-relative-toggle interactive function to switch between relative and non-relative line numbering:

M-x linum-relative-toggle

Backends

By default, linum-relative use linum-mode as backend, since linum-mode is based on emacs-lisp, you may have performance issue on large file.

Since linum-relative 0.6, if you also use emacs version 26.1 or above, you can setup linum-relative-backend to make linum-relative-mode use display-line-number-mode as backend, which is implement in C so the performance is really nice.

However some linum-relative's customize function may not work propely.

Here's how to use display-line-number-mode as backend:

     ;; Use `display-line-number-mode` as linum-mode's backend for smooth performance
	(setq linum-relative-backend 'display-line-numbers-mode)

Customization Documentation

linum-relative-current-symbol

The symbol you want to show on the current line, by default it is 0. You can use any string like "->". If this variable is empty string, linum-releative will show the real line number at current line.

This won't take effect if you choose display-line-numbers-mode backend.

linum-relative-plusp-offset

Offset to use for positive relative line numbers.

This won't take effect if you choose display-line-numbers-mode backend.

linum-relative-format

Format for each line. Good for adding spaces/paddings like so: " %3s "

This won't take effect if you choose display-line-numbers-mode backend.

linum-relative-lighter

Lighter of linum-relative-mode

linum-relative-backend

The default backend for linum-relative, by default we use linum-mode (slow), you can switch to display-line-numbers-mode if you has emacs-version greater than 26.0.50.

Function and Macro Documentation

(linum-relative-in-helm-p)

Return non nil when in an helm session.

(linum-relative-on)

Turn ON linum-relative.

(linum-relative-off)

Turn OFF linum-relative.

(linum-relative-toggle)

Toggle between linum-relative and linum.


Markdown README file generated by make-readme-markdown.el