function! MakeStamp() let time = strftime("%Y-%m-%d at %H:%M:%S") let line = getline(1) redi @+ echo time redi END let match = '\d\{4}\-\d\{2}\-\d\{2} at \d\{2}:\d\{2}:\d\{2}' if match(line, match) >= 0 exe '1,1s/'.match.'/'.time.'/i' else normal ggO normal ggO normal "+p normal dd endif return "" endfunction map :call MakeStamp()