" https://github.com/arp242/startscreen.vim/blob/master/plugin/startscreen.vim scriptencoding utf-8 if exists('g:Hello_Loaded') | finish | endif let g:Hello_Loaded = 1 let s:save_cpo = &cpo set cpo&vim fun! Hello#start() " Don't run if: " - there are commandline arguments; " - the buffer isn't empty (e.g. cmd | vi -); " - we're not invoked as vim or gvim; " - we're starting in insert mode. if argc() || line2byte('$') != -1 || v:progname !~? '^[-gmnq]\=vim\=x\=\%[\.exe]$' || &insertmode return endif " Start a new buffer... enew " ...set it's name... keepalt file [Hello] " ...and set some options for it. setlocal \ bufhidden=wipe \ buftype=nofile \ nobuflisted \ nocursorcolumn \ nocursorline \ nolist \ nonumber \ noswapfile \ norelativenumber " Now we can just write to the buffer whatever you want. let pole = [' .', ' (` `)', ' `\./`', ' __|`|__', '/ |_| \', '|_______|', '\_______/', ' | |', ' | |', ' | |', ' `.| |.`', ' /| |\', ' / | | \', ' | |', ' .`| |`.', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |', ' | |'] for i in reverse(range(0, len(pole) - 1)) call append('0', ' '.pole[i]) endfor :1 redraw! "call writefile([output], '/proc/self/fd/0', 'b') " No modifications to this buffer. setlocal nomodifiable nomodified " When we go to insert mode start a new buffer, and start insert. nnoremap e :enew nnoremap i :enew startinsert nnoremap p :enewp endfun augroup Hello autocmd! autocmd VimEnter * call Hello#start() augroup end let &cpo = s:save_cpo unlet s:save_cpo " " " " " " " " " Sketch " " " " " " " " " " " " https://www.asciiart.eu/buildings-and-places/fences " . " (` `) " `\./` " __|`|__ " / |_| \ " |_______| " \_______/ " | | " | | " | | " `.| |.` " /| |\ " / | | \ " | | " .`| |`. " | | " | | " | | " | | " | | " | | " | | " | | " | | " | | " | | " | | " | | " | | " | | " | | " " " " " " "