2016-03-02 55 views
0

我想寫一個如果語句在.vimrc文件中符合我的要求。但是我不知道如何如果語句在.vimrc中執行。當vim啓動時或每次發生事件時,它們只執行一次嗎?例如我打算在.vimrc裏如何執行.vimrc中的語句

"Check if the drop down menu is active 
if pumvisible() 
    "pass 'down' key to vim 
    \<lt>Down> 
endif 

插入下面的代碼將這個如果代碼被執行每次pumvisible()是在vim工作區活躍,否則將無法在所有的工作?

+3

什麼是你想實現的方式嗎? if語句僅在文件爲':source'd(在啓動時自動發生)時執行,但要提出替代方案則需要您告知我們您要實現的目標。 –

+0

@ dash-tom-bang:我恭敬地不同意你的意見。 'if'只是一個分支結構。當週圍的代碼或函數塊被執行時,它會被執行。 –

+0

你可以不同意,這很好,但它聽起來像你有什麼不符合你的要求。如果你想陳述你的要求,那麼你會得到滿足這些要求的幫助。 –

回答

1

if只是一個條件。
它不聽事件。 你可以閱讀更多關於它here

在你的使用情況來看,我認爲自動命令是去
This是一個很好的介紹自動命令

+0

你有一個autocmd與pumvisible()一起使用的例子。我得到錯誤,pumvisible()不適用於autocmnd – hellfragger