Open roachsinai opened 3 years ago
我在我的环境上用你的配置没有复现。vim用的是8.2.2282.
8.2.2339也没有复现。
Y大,你用的是哪个发行版,还有终端。我看看能不能找到对应的环境试试。因为我这里目前是稳定复现的。
centOS 7, gnome. 我觉得跟这些可能没关系。 既然你那里可以稳定复现,可以尝试不用LeaderF能不能复现,就像https://github.com/vim/vim/issues/7598 里面的做法。
嗯嗯。
把BufOnly
换成下面的命令没有错误,
" https://github.com/vim-scripts/BufOnly.vim/blob/master/plugin/BufOnly.vim
command! -nargs=? -complete=buffer -bang Bonly
\ :call BufOnly('<args>', '<bang>')
command! -nargs=? -complete=buffer -bang BOnly
\ :call BufOnly('<args>', '<bang>')
command! -nargs=? -complete=buffer -bang Bufonly
\ :call BufOnly('<args>', '<bang>')
command! -nargs=? -complete=buffer -bang BufOnly
\ :call BufOnly('<args>', '<bang>')
function! BufOnly(buffer, bang)
if a:buffer == ''
" No buffer provided, use the current buffer.
let buffer = bufnr('%')
elseif (a:buffer + 0) > 0
" A buffer number was provided.
let buffer = bufnr(a:buffer + 0)
else
" A buffer name was provided.
let buffer = bufnr(a:buffer)
endif
if buffer == -1
echohl ErrorMsg
echomsg "No matching buffer for" a:buffer
echohl None
return
endif
let last_buffer = bufnr('$')
let delete_count = 0
let n = 1
while n <= last_buffer
if n != buffer && buflisted(n)
if a:bang == '' && getbufvar(n, '&modified')
echohl ErrorMsg
echomsg 'No write since last change for buffer'
\ n '(add ! to override)'
echohl None
else
silent exe 'bdel' . a:bang . ' ' . n
if ! buflisted(n)
let delete_count = delete_count+1
endif
endif
endif
let n = n+1
endwhile
if delete_count == 1
echomsg delete_count "buffer deleted"
elseif delete_count > 1
echomsg delete_count "buffers deleted"
endif
endfunction
你的这个.vimrc,我不设一下set nocp
都没法跑,你确定你那边没问题?
我这里第一次打开vimrc,可看到内容是完全一样的,应该是没有问题,用的gvim.
然后是复现。
我这里还有一种情况在:Leaderf file会遇到ml_get. 情况有点特殊,存在某些文件名组合的时候会出现。感觉和 https://github.com/vim/vim/issues/7598 有点像,但是用那里的方法没有办法脱离leaderf复现。
我用vim -u vimrc tt.cpp
就会报错。
vimrc就是你那个vimrc。
我用
vim -u vimrc tt.cpp
就会报错。 vimrc就是你那个vimrc。
-u vimrc 会把compatible 设上。
非popup模式可以出现吗?
非popup模式可以出现吗?
非popup没有错误。
终端vim可以出现吗?我一直在终端vim上试的。 换个环境能复现吗?
我就是在终端中用的gvim,然后卸载gvim安装vim也可以复现。
我这几天改成不用popup了,目前没有出现过ml_get的问题。因为在其他地方popup也出现过ml_get的问题。其他,发行版还没有试验。
vim --version
ornvim --version
: gvim-lily 8.2.2339-1:echo has("python")
: 0:echo has("python3")
: 1:echo &pythondll
(only vim, not neovim)::echo &pythonthreedll
(only vim, not neovim):libpython3.9.so.1.0:py3 print(sys.version)
: 3.9.1Describe your question, feature request, or bug.
使用了Leaderf对asynctasks的扩展,先进行代码编译会打开一个窗口,然后进行代码执行再打开一个窗口。之后使用map同时关闭编译窗口和执行窗口。再次打开leaderf对于asynctasks的扩展时报错:
minimal vimrc
.vimrc
~/.vim/tasks.ini
tt.cpp
Steps to reproduce
<tab>t
调出leaderf对asynctask的扩展窗口直接<Enter>
进行编译<C-W>k
切换到tt.cpp对应的窗口,执行映射<leader>bo
关闭其他的buffer<tab>t
报错More infos
操作系统 Manjaro Linux,安装的vim包含了最新的vim提交。