저는 Vim에서 Conque-GDB를 플러그인으로 사용합니다.
보시다시피 저는 Nerdtree를 사용하고 있으며 크기를 쉽게 변경할 수 있습니다. https://codeyarns.com/2014/05/08/how-to-change-size-of-nerdtree-window/
하지만 Conque-GDB의 크기를 변경하는 방법을 모르겠습니다.
답변1
ConqueGDB는 vim에서 분할되어 있으므로 vim 명령을 사용하여 언제든지 크기를 조정할 수 있습니다. 예를 들면 다음과 같습니다.
:resize +20
:res -20
여기서 +20
및 -20
는 현재 분할 크기에 추가되거나 뺄 픽셀 수입니다.
같은 방법으로 NERDTree의 크기를 늘리거나 줄일 수 있습니다.
:vertical resize +20
ConqueGDB가 시작될 때 기본 분할 크기를 지정하는 방법이 있는지 확실하지 않지만 ConqueGDB가 시작된 후 더 빠른 크기 조정을 위해 언제든지 위 명령을 매핑할 수 있습니다.
자세히 알아보기vim 분할 크기를 더 빠르게 조정하는 방법.
답변2
소스 코드를 수정하려는 경우 :ConqueGdb
명령 정의는 다음에서 찾을 수 있습니다 plugin/conque_gdb.vim
.
" Commands to open conque gdb
command! -nargs=* -complete=file ConqueGdb call conque_gdb#open(<q-args>, [
\ get(g:conque_gdb_src_splits, g:ConqueGdb_SrcSplit, g:conque_gdb_default_split),
\ 'buffer ' . bufnr("%"),
\ 'wincmd w',
\ 'res -15'])
보시다시피 res -15
마지막에 내용을 추가했는데 제대로 작동하는 것 같습니다. 또한 나중에 분할을 다시 열 때 크기를 유지하려면 다음 conque_gdb#command
의 함수 정의에서 동일한 명령을 호출 해야 합니다 autoload/conque_gdb.vim
.
" Send a command to the gdb subprocess.
function! conque_gdb#command(cmd)
if !(bufloaded(s:gdb.buffer_number) && s:gdb.active)
echohl WarningMsg | echomsg "GDB is not running" | echohl None
return
endif
if bufwinnr(s:gdb.buffer_number) == -1
let s:src_buf = bufnr("%")
let s:src_bufwin = winnr()
sil exe 'noautocmd ' . get(g:conque_gdb_src_splits, g:ConqueGdb_SrcSplit, g:conque_gdb_default_split)
sil exe 'noautocmd wincmd w'
sil exe 'noautocmd buffer ' . s:gdb.buffer_number
" CUSTOMIZATION: Always resize the split a little
sil exe 'res -15'
sil exe 'noautocmd wincmd p'
endif
"...
endfunction
Huggy, 하지만 효과가 있어서 별로 신경쓰지 않아요.