4

Emacs for some reason did not vacate equal spaces for each line number, So the lines were starting at different places which made it harder to keep track of alignment. It wasn't just the relative mode which had this problem, even the absolute mode does. Linum mode is quite heavy when compared to display-line-numbers.el.

3
  • 2
    If there is an issue with display-line-numbers-mode you should report it via M-x report-emacs-bug RET.
    – Basil
    Commented Jan 28, 2020 at 12:23
  • @Basil I am not sure if it's a bug or the intended behavior. Commented Jan 29, 2020 at 14:19
  • 1
    There is no harm in submitting a bug report you are unsure about. Either way I suggest you provide more information, e.g. in the form of diagrams, screenshots, or a screencast.
    – Basil
    Commented Jan 29, 2020 at 14:22

1 Answer 1

4

This is what fixed my issue. All this is doing is, when the buffer is being setup for reading it would read the last line number and add the width of the number as the display-line-numbers-width.

(defun display-line-numbers-equalize ()
  "Equalize The width"
  (setq display-line-numbers-width (length (number-to-string (line-number-at-pos (point-max))))))
(add-hook 'find-file-hook 'display-line-numbers-equalize)
3
  • 1
    Leaving display-line-numbers-width to the default nil value should do the same thing. If it does not, you should report it.
    – NickD
    Commented Jan 28, 2020 at 16:27
  • @NickD So the help menu shows this. The default value of nil means compute the space dynamically. I am not sure what dynamic means in this context, per buffer or per line? Commented Jan 29, 2020 at 14:18
  • 2
    Actually, I was wrong: it does not do the same thing. "Dynamic" means that it leaves enough space for the longest visible line number in the buffer. When you scroll down and you get to longer line numbers, the display will shift to accommodate them.
    – NickD
    Commented Jan 29, 2020 at 14:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.