在termdebug vim中进行初始窗口分割

10

我是vim的新手,最近得知我们可以使用Termdebug和gdb一起在vim中调试代码。我很喜欢这个功能,因为我一直在寻找一个良好的vim与gdb集成的方法。 当我启动Termdebug时,它会在gdb窗口、程序窗口和源代码窗口中水平分割窗口。 我想要将源代码窗口垂直拆分到右侧。目前,我将焦点移动到源代码窗口并按Ctrl + w&L。

分割之前:

enter image description here

分割后:

enter image description here

每次启动Termdebug时都需要执行此操作。 是否有一种方法可以添加到.vimrc中,以便在启动Termdebug时自动将源代码窗口分割到右侧。 我在这里看到建议使用以下方式:

let g:termdebug_wide = 163

这里提供了自动分割的功能,但在调试时会出现一些突出显示代码行的问题,如下图所示:

进入图像描述

请建议我如何更改 .vimrc 文件。

2个回答

16

这种布局——编辑器在右侧,左侧水平拆分的两个GDB窗口——可以通过在.vimrc中配置g:termdebug_wide来设置。

let g:termdebug_wide=1

请参考 :help termdebug_wide 了解详情。

去年(2019年5月),我写了一篇关于termdebug的博客文章,并最近(2020年4月)在评论中解决了同样的问题: https://www.dannyadam.com/blog/2019/05/debugging-in-vim/#comment-251004


6

最后,我通过修改vimrc文件找到了如何做到这一点。我将整个按键序列映射到F6键上以方便使用。

autocmd filetype cpp nnoremap <F6> :Termdebug %:r<CR><c-w>2j<c-w>L

我在vimrc中添加了上述代码,现在按下F6键会自动打开一个窗口,在右边显示源代码窗口,就像上面的问题一样,没有任何奇怪的行为。 解释:
  • :Termdebug %:r<CR> 这将以水平方向打开所有3个窗口。
  • <c-w>2j 这将移动焦点到源代码窗口。
  • <c-w>L 这将把源代码窗口移动到右边。
注意: 如果想要将焦点返回到gdb窗口,可以在上述代码末尾添加<c-w>h

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接