edit
Comando GDB
Abre un editor en la línea actual usando el comando:
$EDITOR +<current-line> <current-file>
El valor predeterminado editor
es ex
, pero vim
también comprende el +<current-line>
formato.
Cuando abandonas el editor, vuelves a entrar gdb
.
Esto le permite navegar libremente por la fuente y es especialmente potente si tiene ctags
integración.
Esta es una integración integrada de gdb a vim de un hombre pobre: lo principal que falta es establecer puntos de interrupción desde Vim.
edit
y centro
edit
no centra Vim de forma predeterminada alrededor de la fuente, por lo que he creado un script de Python que lo hace: ¿Cómo abrir el archivo actual en la línea actual en un editor de texto de GDB?
Comando de punto de interrupción para ayuda del portapapeles
Este comando vim copia un especificador de punto de interrupción de tipo:
b <file-path>:<line-number>
al portapapeles:
command! Xg :let @+ = 'b ' . expand('%:p') . ':' . line('.')
Entonces puedes pegar eso gdb
.
Esta es la integración de vim a gdb de un hombre pobre para facilitar el establecimiento de puntos de interrupción.
Panel de GDB
https://github.com/cyrus-and/gdb-dashboard
Esto no tiene nada que ver con Vim, pero es una solución ligera que logra mucho y podría adaptarse a otros Vimmers.
Otros han mencionado GDB TUI, pero lo encontré demasiado roto y no lo suficientemente poderoso como para ser soportable.
Por lo tanto, me mudé a soluciones basadas en API de Python como GDB Dashboard.
Describí el uso y la justificación con más detalle en: vista dividida de gdb con código
Aquí hay una captura de pantalla de lo que te da:
Ver también: /vi/2046/how-can-i-integrate-gdb-with-vim
Ríndete y usa un IDE real
Con todo lo dicho, esta es la mejor solución para la mayoría de las personas, incluido yo mismo. La mayoría de las personas solo ganarán toneladas de tiempo si pueden saltar las definiciones de una manera consciente de la clase C ++ sin seleccionar e instalar varios complementos diferentes, y eso incluye mientras se depuran los pasos. A partir de 2020, el menos peor para mí fue Eclipse: https://www.slant.co/topics/1411/~best-ides-for-c-on-linux