(Undo revision 32599 by 134.58.49.122 (talk)) |
|||
Line 28: | Line 28: | ||
<pre> |
<pre> |
||
" Underline the current line with dashes in normal mode |
" Underline the current line with dashes in normal mode |
||
− | nnoremap <F5> |
+ | nnoremap <F5> yyp<c-v>$r- |
" Underline the current line with dashes in insert mode |
" Underline the current line with dashes in insert mode |
||
− | inoremap <F5> <Esc> |
+ | inoremap <F5> <Esc>yyp<c-v>$r-A |
</pre> |
</pre> |
||
Revision as of 15:54, 29 February 2012
created 2004 · complexity intermediate · author Chris X Edwards · version 6.0
This tip shows how to underline text document headings with, for example, a dashed line.
Using a mapping
Starting with a line of text like:
A Very Important Tip!
the mapping below inserts a row of dashes like this:
A Very Important Tip! ---------------------
This is useful to highlight headings. Add the following to your vimrc:
" Underline the current line with dashes in normal mode nnoremap <F5> yyp<c-v>$r- " Underline the current line with dashes in insert mode inoremap <F5> <Esc>yyp<c-v>$r-A
Of course you can use other characters instead of -, for example, = or _.
In case you want to get a line above and below the heading, do this in normal mode:
<F5>yykP
Using substitute
You can use the global and substitute commands (:help :g, :help :s) to underline all headings matching a pattern. For example, the following adds a row of dashes under each line that starts with "Chapter":
:g/^Chapter/t.|s/./-/g
It works by finding each matching line, then copying it (:help :t), then substituting each character (.) in the line.
See also
Comments
TO DO
- Decide what to do with new tip Underline text. Perhaps it should be merged to here? JohnBeckett 04:57, August 9, 2011 (UTC)
yypVr-
also works well. Great tip for Markdown and WikiTex users.
Linktohack 15:37, February 3, 2012 (UTC)
- Thanks. There is a subtle feature about the method in the tip. If you have the default 'virtualedit' setting (""), and if there is a tab in the line, using Vr- replaces each tab with a single dash, while the method in the tip uses the correct number of dashes depending on the width of the tab. JohnBeckett 06:50, February 4, 2012 (UTC)