coldnew / linum-relative

display relative line number in the left margin in emacs
169 stars 20 forks source link

linum-relative should respect user's linum-format #9

Closed tuhdo closed 9 years ago

tuhdo commented 10 years ago

When toggling on/off linum-relative, it removes user setting for linum-format. User option should be reserved.

tuhdo commented 10 years ago

Here is the change that I made to make linum-relative respect user's format:

diff --git a/elpa/linum-relative-20131210.2053/linum-relative.el b/elpa/linum-relative-20131210.2053/linum-relative.el
index 1da995b..8e6c356 100644
--- a/elpa/linum-relative-20131210.2053/linum-relative.el
+++ b/elpa/linum-relative-20131210.2053/linum-relative.el
@@ -80,6 +80,8 @@ linum-releative will show the real line number at current line."
 (defvar linum-relative-last-pos 0
   "Store last position.")

+(defvar user-format 'dynamic
+  "Store user format")
 ;;;; Advices
 (defadvice linum-update (before relative-linum-update activate)
   "This advice get the last position of linum."
@@ -103,9 +105,10 @@ linum-releative will show the real line number at current line."
 (defun linum-relative-toggle ()
   "Toggle between linum-relative and linum."
   (interactive)
-  (if (eq linum-format 'dynamic)
-      (setq linum-format 'linum-relative)
-    (setq linum-format 'dynamic)))
+  (if (eq linum-format 'linum-relative)
+      (setq linum-format user-format)
+    (setq user-format linum-format)
+    (setq linum-format 'linum-relative)))

 (setq linum-format 'linum-relative)