vim 将快速修复窗口全局定位到自下而上

5us2dqdw  于 2022-11-11  发布在  其他
关注(0)|答案(1)|浏览(159)

我用amix/vimrc设置了我的vim。Quickfix窗口在NERDTree下面,如下所示。

如何将其从下往上移动?我遵循this thread,并将以下代码添加到my_configs.vim中。

augroup DragQuickfixWindowDown
    autocmd!
    autocmd FileType qf wincmd J
augroup end

但是,Quickfix窗口仍位于右下角。
我想要的行为,

  • 运行后自动打开Quickfix窗口:make
  • Quickfix窗口位于底部,为全宽窗口

我相关设置是,

"a global quickfix window on the bottom down
augroup DragQuickfixWindowDown
    autocmd!
    autocmd FileType qf wincmd J
augroup end

" Open Quickfix window automatically after running :make
augroup OpenQuickfixWindowAfterMake
        autocmd QuickFixCmdPost [^1]* nested cwindow
        autocmd QuickFixCmdPost    1* nested lwindow
augroup END

"compile and run
" Quick compile and run kinds of files via ,p
nmap <F10> :call <SID>compile_and_run()<CR>

function! s:compile_and_run()
    exec 'w'
    exec 'vertical rightbelow copen 80'
    exec 'wincmd w'
    if &filetype ==# 'c'
        exec 'AsyncRun! gcc % -o %<; time ./%<'
    elseif &filetype ==# 'cpp'
       exec 'AsyncRun! g++ -std=c++11 % -o %<; time ./%<'
    elseif &filetype ==# 'rust'
       exec 'AsyncRun! rustc %; time ./%<'
    elseif &filetype ==# 'java'
       exec 'AsyncRun! javac %; time java %<; rm -f *.class'
    elseif &filetype ==# 'sh'
       exec 'AsyncRun! time bash %'
    elseif &filetype ==# 'python'
       exec 'AsyncRun! time python3 "%"'
vd2z7a6w

vd2z7a6w1#

将此命令放入存储在~/.vim/after/ftplugin/qf.vim路径下的文件中:

wincmd J " Forces QFW to go to bottom of screen across all windows

重新加载vim,quickfix窗口应该位于底部。

相关问题