is there any way to get a separator like the one for the split buffers (line in the middle of the image) for the line numbers/fringe?
I tried (setq linenum-format "%4d \u2502 ")
but that gives me a buggy weird broken lines with varying widths -.-
is there any way to get a separator like the one for the split buffers (line in the middle of the image) for the line numbers/fringe?
I tried (setq linenum-format "%4d \u2502 ")
but that gives me a buggy weird broken lines with varying widths -.-
There are a few ways to do this -- my preferred method is to set the frame defaults for the fringes:
(set-face-attribute 'fringe nil :background "red")
(add-to-list 'default-frame-alist '(left-fringe . 11))
(add-to-list 'default-frame-alist '(right-fringe . 0))
It is possible to set the windows fringes globally:
(setq-default left-fringe-width 11)
(setq-default right-fringe-width 0)
It is also possible to set the windows fringes locally:
(setq left-fringe-width 11)
(setq right-fringe-width 0)
Here is the doc-string for left-fringe-width
and right-fringe-width
:
Automatically becomes buffer-local when set.
Documentation:
Width of this buffer's left/right fringe (in pixels).
A value of 0 means no left/right fringe is shown in this buffer's window.
A value of nil means to use the left/right fringe width from the window's frame.
Setting this variable does not take effect until a new buffer is displayed
in a window. To make the change take effect, call `set-window-buffer'.
I too want a way to differentiate between the line number column and code. This is how I do that.
(set-face-attribute 'line-number nil :background "gray96" :foreground "gray42")
(set-face-attribute 'line-number-current-line nil :foreground "gray6")
Here is a screenshot of this...
You have other options that you can find in the faces.el file.
It doesn't answer the question, but solves the underlying problem for me. This is also how vim often does it.