X-Git-Url: http://www.git.stargrave.org/?p=codecomm.git;a=blobdiff_plain;f=autoload%2Fcodecomm.vim;fp=autoload%2Fcodecomm.vim;h=ab3fcb3f1a9dd4da01a342f2011cbb4c0f7804f1;hp=22a3fd98a812f7a911df1704e0e1074045ae045f;hb=ca495ac6c5d03265caaa8e2b2357cd704ed80d5c;hpb=96b4b0f835ee3696faccaf4da397a64fd7c26c54 diff --git a/autoload/codecomm.vim b/autoload/codecomm.vim index 22a3fd9..ab3fcb3 100644 --- a/autoload/codecomm.vim +++ b/autoload/codecomm.vim @@ -12,7 +12,10 @@ export def Do(firstline: number, lastline: number, gitDir: string) if bufexists("CodeCommCommenting") != 0 bdelete! CodeCommCommenting endif - g:codecomm_count += 1 + + g:codecomm_ctr_ = -1 + if filereadable(g:codecomm_ctr) | g:codecomm_ctr_ = str2nr(readfile(g:codecomm_ctr)[0]) | endif + g:codecomm_ctr_ += 1 # Determine file's path inside repository var path = expand("%:p") @@ -32,7 +35,7 @@ export def Do(firstline: number, lastline: number, gitDir: string) else header = add(header, path) endif - var ready = [printf("-----#%2d [ %54S ]-----", g:codecomm_count, join(header, " "))] + var ready = [printf("-----#%2d [ %54S ]-----", g:codecomm_ctr_, join(header, " "))] # Collect enumerated selected code block's lines var fmted: string @@ -59,13 +62,12 @@ export def Do(firstline: number, lastline: number, gitDir: string) setlocal noreadonly noswapfile buftype=acwrite filetype=codecomm append(0, ready) - # Separate codecomm_file consolidating function, called when buffer is saved - # autocmd! BufWriteCmd CodeCommCommenting autocmd! BufWriteCmd CodeCommCommenting { var ccprev = [" vim: filetype=codecomm", ""] - if filereadable(g:codecomm_file) | ccprev = readfile(g:codecomm_file) | endif + if filereadable(g:codecomm_txt) | ccprev = readfile(g:codecomm_txt) | endif var ready = ccprev + getline(0, "$") + [""] - writefile(ready, g:codecomm_file) + writefile(ready, g:codecomm_txt) + writefile([string(g:codecomm_ctr_)], g:codecomm_ctr) setlocal nomodified echohl MoreMsg | echomsg "Commented:" len(ready) "lines" | echohl None } @@ -74,8 +76,8 @@ export def Do(firstline: number, lastline: number, gitDir: string) enddef export def Clear() - writefile([], g:codecomm_file) - g:codecomm_count = 0 + delete(g:codecomm_txt) + delete(g:codecomm_ctr) execute "sign unplace * buffer=" .. bufnr("%") echohl WarningMsg | echomsg "Comments are wiped" | echohl None enddef