execute ':%s/²/\^2/&'
endfunction
+function! s:texTableBfEntries()
+ execute 's/\( *\)\([^ &][^&]*[^ &]\)\( \+\)/\1\\textbf{\2}\3/g'
+endfunction
+
+command! -range TexTableBfEntries call s:texTableBfEntries()
"Open current file with a specific program
function OpenIn(prog)
function InsertIncludeGuardsWithoutEndif()
- let gatename = substitute(expand("%:t"), "\\.", "_", "g") . '_' . strpart(system('pwgen -c 16 1'), 0, 16)
- execute "normal! i#ifndef " . gatename
- execute "normal! o#define " . gatename
+ " Build name of guard: Take filename, replace some chars by _ and
+ " prepend a random sequence to make guard robust against file name
+ " collisions.
+ let guardname = substitute(expand("%:t"), "[\\.-]", "_", "g") . '_' . strpart(system('pwgen -c 16 1'), 0, 16)
+ execute "normal! i#ifndef " . guardname
+ execute "normal! o#define " . guardname
endfunction
endfunction
+function RunPandoc()
+ " If pandoc.css exists, use it
+ let cssopts = ""
+ if findfile("pandoc.css", ".") == "pandoc.css"
+ let cssopts = "-c pandoc.css"
+ endif
+
+ execute ":!pandoc " . cssopts . " --self-contained --toc '" . @% . "' -o '" . @% . "'.html"
+endfunction
+
+
+function RunMarkdownpy(prog)
+ execute ":!" . a:prog . " " . @% . " > " . @% . ".html"
+endfunction
+
+
+function RunAsciidoctor()
+ execute ":!asciidoctor " . @%
+endfunction
+
+
+function RunMarkdown()
+ if executable("pandoc")
+ call RunPandoc()
+ elseif executable("markdown2")
+ call RunMarkdownpy("markdown2")
+ elseif executable("markdown_py")
+ call RunMarkdownpy("markdown_py")
+ else
+ echo "No markdown implementation found."
+ endif
+endfunction
+
+
+function RunAsciidoc()
+ if executable("asciidoctor")
+ call RunAsciidoctor()
+ else
+ echo "No asciidoc implementation found."
+ endif
+endfunction
+
+
+function OnBattery()
+ if has('macunix')
+ return match(system('pmset -g batt'), "Now drawing from 'Battery Power'") != -1
+ elseif has('unix')
+ if filereadable('/sys/class/power_supply/AC/online')
+ return readfile('/sys/class/power_supply/AC/online') == ['0']
+ endif
+ endif
+ return 0
+endfunction
+
+
if filereadable($HOME . '/.vim/macros-local.vim')
source ~/.vim/macros-local.vim
endif