我的vim得到了很棒的bookmarks.vim插件。我特别喜欢命名书签并使用 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
Run Code Online (Sandbox Code Playgroud)
Ing*_*kat 10
覆盖<CR>在 quickfix 窗口中使用的映射以选择条目:
:autocmd FileType qf nnoremap <buffer> <CR> <CR>:cclose<CR>
Run Code Online (Sandbox Code Playgroud)
注意:如果您不想将其应用于位置列表,则需要稍微调整映射。
小智 6
在卢阿:
-- close quickfix menu after selecting choice
vim.api.nvim_create_autocmd(
"FileType", {
pattern={"qf"},
command=[[nnoremap <buffer> <CR> <CR>:cclose<CR>]]})
Run Code Online (Sandbox Code Playgroud)