GDB- edit
Befehl
Öffnet einen Editor in der aktuellen Zeile mit dem folgenden Befehl:
$EDITOR +<current-line> <current-file>
Die Standardeinstellung editor
ist ex
, versteht aber vim
auch das +<current-line>
Format.
Wenn Sie den Editor verlassen, kehren Sie zurück gdb
.
Dies ermöglicht Ihnen das freie Durchsuchen der Quelle und ist besonders leistungsfähig, wenn Sie eine ctags
Integration haben.
Dies ist die integrierte Einweg-GDB-zu-Vim-Integration eines armen Mannes: Das wichtigste, was fehlt, ist das Setzen von Haltepunkten von Vim.
edit
und zentrieren
edit
zentriert Vim standardmäßig nicht um die Quelle, daher habe ich ein Python-Skript erstellt, das dies tut: Wie öffne ich die aktuelle Datei in der aktuellen Zeile in einem Texteditor von GDB?
Haltepunktbefehl an Zwischenablage-Helfer
Dieser vim-Befehl kopiert einen Haltepunktspezifizierer vom Typ:
b <file-path>:<line-number>
in die Zwischenablage:
command! Xg :let @+ = 'b ' . expand('%:p') . ':' . line('.')
Dann können Sie das einfach einfügen gdb
.
Dies ist die Vim-to-GDB-Integration eines armen Mannes, um das Setzen von Haltepunkten zu vereinfachen.
GDB-Dashboard
https://github.com/cyrus-and/gdb-dashboard
Dies hat nichts mit Vim zu tun, aber es ist eine leichte Lösung, die viel leistet und möglicherweise für andere Vimmer da draußen geeignet ist.
Andere haben GDB TUI erwähnt, aber ich fand es zu kaputt und nicht mächtig genug, um erträglich zu sein.
Also wechselte ich stattdessen zu Python API-basierten Lösungen wie GDB Dashboard.
Ich habe verwendet und Begründung ausführlicher beschrieben unter: gdb split view with code
Hier ist ein Screenshot von dem, was es Ihnen gibt:
Siehe auch: /vi/2046/how-can-i-integrate-gdb-with-vim
Gib auf und benutze eine echte IDE
Trotz alledem ist dies die beste Lösung für die meisten Menschen, einschließlich mir. Die meisten Leute werden nur eine Menge Zeit gewinnen, wenn sie in der Lage sind, Definitionen in einer C ++ - klassenbewussten Weise zu umgehen, ohne selbst mehrere verschiedene Plugins auszuwählen und zu installieren, und dazu gehört auch das schrittweise Debuggen von Dingen. Ab 2020 war Eclipse für mich das am wenigsten schlimmste: https://www.slant.co/topics/1411/~best-ides-for-c-on-linux