VIM svn tortoise 集成:如何只提交当前缓冲区?
VIM svn tortoise integration: how to commit current buffer only?
以下代码来自a vim wiki。它使用乌龟来提交所有打开的缓冲区。
如果打开了一个不在回购协议中的缓冲区,乌龟将出错。
仅提交当前缓冲区的此代码的版本是什么?
另外,vim 应该在调用 tortoise 之前写入缓冲区。
func! CommitSVNAll()
let buflist = []
for b in range(1, bufnr('$'))
if buflisted(b) && filereadable(bufname(b))
call add(buflist, fnamemodify(bufname(b), ':p'))
endif
endfor
let files = join(buflist, '*')
if files != ''
silent exec '!start "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:"'.files.'" /closeonend:4'
else
call confirm('No files loaded')
endif
endfunc
你可以试一试,未测试:
func! CommitSVNAll()
let files = fnamemodify(bufname('%'), ':p')
if files != ''
silent exec '!start "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:"'.files.'" /closeonend:4'
else
call confirm('No files loaded')
endif
endfunc
基本上,我只是将 files
设置为当前缓冲区名称。没有使用过tortoiseSVN,需要自己测试。
以下代码来自a vim wiki。它使用乌龟来提交所有打开的缓冲区。
如果打开了一个不在回购协议中的缓冲区,乌龟将出错。
仅提交当前缓冲区的此代码的版本是什么?
另外,vim 应该在调用 tortoise 之前写入缓冲区。
func! CommitSVNAll()
let buflist = []
for b in range(1, bufnr('$'))
if buflisted(b) && filereadable(bufname(b))
call add(buflist, fnamemodify(bufname(b), ':p'))
endif
endfor
let files = join(buflist, '*')
if files != ''
silent exec '!start "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:"'.files.'" /closeonend:4'
else
call confirm('No files loaded')
endif
endfunc
你可以试一试,未测试:
func! CommitSVNAll()
let files = fnamemodify(bufname('%'), ':p')
if files != ''
silent exec '!start "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:"'.files.'" /closeonend:4'
else
call confirm('No files loaded')
endif
endfunc
基本上,我只是将 files
设置为当前缓冲区名称。没有使用过tortoiseSVN,需要自己测试。