2016-11-15 158 views
1

每當我跑有沒有辦法禁用vim的交換文件警告?

git commit --amend 

,我認爲其他一些命令也

我從VIM警告之前我編輯提交信息,說像:

E325: ATTENTION 
Found a swap file by the name "~/Desktop/code/web/.git/.COMMIT_EDITMSG.swp" 

我總是忽略警告,然後寫我的提交信息並保存文件。有沒有辦法可以永久禁用此警告?

+3

只需刪除交換文件... –

+3

刪除交換文件將停止警告提示。 –

+0

啊謝謝!沒有意識到這是事實,問題解決了:) – maxfowler

回答

3

刪除交換文件擺脫了警告:

rm ~/Desktop/code/web/.git/.COMMIT_EDITMSG.swp 
1

如果您正在編輯用vim/gvim的編輯器中的文件,那麼在你的.vimrc/.gvimrc裏文件,以避免產生設置以下命令交換文件

set noswapfile 
0

添加到您的.vimrc

" Don't let Vim's "Found a swap file" message block input 
set shortmess=A 

而且從來w ^再次討厭煩人的交換文件消息!

0

您也可以在Vim中的提示符中刪除違規的交換文件。你會看到這樣的事情:

E325: ATTENTION 
Found a swap file by the name "~/.vim/tmp/test.txt.swp" 
      owned by: jim dated: Mon Nov 21 00:54:03 2016 
     [cannot be read] 
While opening file "test.txt" 
      dated: Mon Nov 21 00:53:38 2016 

(1) Another program may be editing the same file. If this is the case, 
    be careful not to end up with two different instances of the same 
    file when making changes. Quit, or continue with caution. 
(2) An edit session for this file crashed. 
    If this is the case, use ":recover" or "vim -r test.txt" 
    to recover the changes (see ":help recovery"). 
    If you did this already, delete the swap file "/Users/jim/.vim/tmp/test.txt.swp" 
    to avoid this message. 

Swap file "~/.vim/tmp/test.txt.swp" already exists! 
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort: 

如果你打D在這裏,它會刪除導致錯誤信息的交換文件,您將不會再看到它是一個文件。然後您可以再次編寫文件,並且不會出現錯誤。

與您的問題沒有直接關係,但您可能要考慮的是更改directory選項,以便交換文件不會與您正在編輯的文件在同一目錄中創建。我用:

set directory=~/.vim/tmp,/var/tmp,/tmp 

這將嘗試使用這些目錄,按順序。這有助於保持交換文件在同一個地方,所以它更容易將它們全部刪除一次,如果Vim的崩潰,當你有一大堆文件的打開:

rm ~/.vim/tmp/* 

它還可以防止交換文件在你自己的Git樹結束了,而不用擔心.gitignore

相關問題