2014-01-23 74 views
1

我得到了極好的bookmarks.vim插件給我的vim。我特別喜歡命名的書籤並使用QuickFix窗口列出它們。如何在選擇QuickFix窗口中的項目後關閉QuickFix窗口?

在顯示書籤列表的代碼中,我想添加一些導致QuickFix窗口在選擇選項後關閉的內容。我怎麼做?

" Open all bookmarks in the quickfix window 
command! CopenBookmarks call s:CopenBookmarks() 
function! s:CopenBookmarks() 
let choices = [] 

for [name, place] in items(g:BOOKMARKS) 
let [filename, cursor] = place 

call add(choices, { 
\ 'text': name, 
\ 'filename': filename, 
\ 'lnum': cursor[1], 
\ 'col': cursor[2] 
\ }) 
endfor 

call setqflist(choices) 
copen 
endfunction 
+0

聽起來好像它可能有幫助:一種切換quickfix窗口的手段(如果它打開,關閉它,如果不是,打開它)在http://vim.wikia.com/wiki/Toggle_to_open_or_close_the_quickfix_window給出。 –

+0

@ebenezer我會保留這一個在現在的後門。我有''和''映射爲在上下窗口和'F3'映射之間移動以退出,所以' F3'與給定的解決方案一樣少/許多按鍵。 –

回答

2

覆蓋了在quickfix窗口用來選擇一個條目<CR>映射:

:autocmd FileType qf nnoremap <buffer> <CR> <CR>:cclose<CR> 

注:如果你不希望這個應用到位置清單做,你需要調整映射一下。