Search code examples
linuxbashvimxterm

Vim - Force extra spacing between lines for underlining


While using Vim for most of my coding, I typically prefer to have the current line under-lined so it's easier to see where I am in my code. I avoid using things like line-highlighting because it usually makes things harder to see with my bright-text-on-dark-background theme (ie: 'torte' colorscheme).

Here is part of my Vim colorscheme:

hi CursorLine    guibg=#0F2130  ctermbg=NONE       cterm=underline
hi CursorColumn  guibg=#0F2130  ctermbg=darkgray   cterm=NONE 

I then enable these features in my .vimrc file (ie: ~/.vimrc).

So, in my case, the current line has a colored underline which is the inverted color of the character above it, while the current column has a dark-grey background, while all other text just has a black background.

The only problem I am having here is that I cannot see underscore ('_') characters while coding because the underline for the current line is the exact same color and thickness as the underscore characters. The only workaround, if its even possible, that would make sense here is to:

  1. Increase the spacing between lines
  2. Make the underline appear a few pixels further below my text

Is anything like this possible in Vim (not gVIM)?

Thank you.


Solution

  • @kev: +1; It works in gVIM

    However, it seems this just can't happen in Vim, as other commenters have noted.

    In the end, I just set the background to be dark grey (ie: ctermbg=253), and then set the cursorline to be darker (ie: ctermbg=black cterm=NONE).

    From there, I updated my BASHRC file to contain the following: export TERM=xterm-256color

    This, of all luck, ends up looking better than my previous colorscheme. I now have a modified version of the standard "slate" color scheme with a very dark gray background (ie: ctermbg=253) while the current line has a solid black background.