2012-04-11 20 views
74

Stavo solo eseguendo il debug di un programma in gdb e in qualche modo ho trovato una nuova funzione che non avevo mai visto o sentito prima, una vista divisa in cui posso vedere e sfogliare il codice oltre a dare comandi :gdb split view con codice

Sorry about the picture, but ttys don't have screenshots.

Che cosa è questo? Cosa ho fatto, o, più specificamente, come posso ottenere nuovamente questa modalità a schermo diviso? C'è un nome per questa modalità, o da qualche parte dove posso leggere su come usarlo?

+0

Sono stato codificato in vim, ma è solo gdb in esecuzione. emacs non è nemmeno installato su questa macchina. – Kevin

+1

Strano ... +1 per qualcosa che non ho mai visto prima ... – jimw

risposta

58

Si chiama TUI (non scherzo). Inizia ad esempio con gdbtui o gdb -tui ...

+2

Quindi, grazie.Apparentemente sono riuscito a ingrassare una C-xa o simili. – Kevin

+0

@Kevin Non sei l'unico, in qualche modo sono riuscito a farlo. – Leandros

10

Tu e anche avviarlo dalla shell gdb usando il comando "-" (trattino). Non so come spegnerlo dinamicamente però.

+0

Questo sembra essere il più facile da usare e ricordare. –

+1

Puoi uscire facendo Cx Ca, Cx a o Cx A. Vedi http://stackoverflow.com/questions/14147117/how-to-exit-the-wh-mode-in-gdb – dmonopoly

61

È possibile attivare in modo dinamico dalla spinta Ctrl +x e Ctrl +un.

+0

ctrl-x e un (senza il ctrl) funziona anche. –

5

Quando GDB è nella modalità standard, utilizzando win passa automaticamente nella modalità TUI.
altro comando per la modalità di TUI:

  • info win
    lista e dare la dimensione di tutte le finestre visualizzate.
  • focus next | prev | src | asm | regs | split
    Impostare lo stato attivo sulla finestra denominata. Questo comando consente di modificare la finestra attiva in modo che i tasti di scorrimento possano essere modificati in un'altra finestra.

Leggi here modulo di ulteriore aiuto.

8

Digitare layout come comando in gdb e verrà visualizzata la finestra divisa.