aboutsummaryrefslogtreecommitdiff
path: root/vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim')
-rw-r--r--vim/autoload/markdown.vim12
1 files changed, 12 insertions, 0 deletions
diff --git a/vim/autoload/markdown.vim b/vim/autoload/markdown.vim
index 5b4ea205..c0818246 100644
--- a/vim/autoload/markdown.vim
+++ b/vim/autoload/markdown.vim
@@ -1,10 +1,22 @@
" Add an underline under a heading
function! markdown#Heading(char) abort
+
+ " Get current position
let pos = getpos('.')
+
+ " Get heading text from current line
let heading = getline(pos[1])
+
+ " Build underline string by repeating character by the string length of the
+ " heading text
let underline = repeat(a:char, strlen(heading))
+
+ " Append the heading text to the buffer on a new line after the heading
call append(pos[1], underline)
+
+ " Move to the first column of the underline we just inserted
let pos[1] += 1
let pos[2] = 1
call setpos('.', pos)
+
endfunction