2012-04-11 20 views
74

Tôi chỉ đang gỡ lỗi một chương trình bằng gdb và bằng cách nào đó tôi đã tìm thấy một tính năng mới mà tôi chưa bao giờ thấy hoặc thậm chí nghe nói trước đây, một chế độ xem chia nhỏ nơi tôi có thể xem và duyệt mã. :gdb split view with code

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

Đây là gì? Tôi đã làm gì, hoặc cụ thể hơn, làm thế nào tôi có thể nhận lại chế độ chia màn hình này? Có một tên cho chế độ này, hoặc một nơi nào đó tôi có thể đọc về cách sử dụng nó?

+0

Tôi đã được mã hóa trong vim, nhưng nó chỉ chạy gdb. emacs thậm chí không được cài đặt trên máy này. – Kevin

+1

Lạ ... +1 cho một cái gì đó mà tôi chưa từng thấy trước đây ... – jimw

Trả lời

58

Nó được gọi là TUI (không đùa). Bắt đầu ví dụ: gdbtui hoặc gdb -tui ...

+2

Vì vậy, cảm ơn.Dường như tôi đã cố gắng đánh dấu một ngón tay cái C-x a hoặc tương tự. – Kevin

+0

@Kevin Bạn không phải là người duy nhất, tôi bằng cách nào đó đã quản lý nó. – Leandros

10

Bạn cũng có thể khởi động từ vỏ gdb bằng lệnh "-" (dấu gạch ngang). Bạn không chắc chắn làm thế nào để tự động tắt nó đi.

+0

Điều này có vẻ là dễ sử dụng nhất và ghi nhớ. –

+1

Bạn có thể thoát bằng cách thực hiện bất kỳ Cx Ca, Cx a hoặc Cx A. Xem http://stackoverflow.com/questions/14147117/how-to-exit-the-wh-mode-in-gdb – dmonopoly

61

Bạn có thể kích hoạt nó bằng cách tự động push ctrl +xctrl +một.

+0

ctrl-x và một (không có ctrl) cũng hoạt động. –

5

Khi GDB là ở chế độ tiêu chuẩn, sử dụng win sẽ tự động chuyển ở chế độ TUI.
lệnh khác cho chế độ TUI:

  • info win
    Danh sách và đưa ra kích thước của tất cả các cửa sổ hiển thị.
  • focus next | prev | src | asm | regs | split
    Đặt tiêu điểm vào cửa sổ được đặt tên. Lệnh này cho phép thay đổi cửa sổ hiện hoạt để các phím cuộn có thể bị ảnh hưởng đến một cửa sổ khác.

Đọc thêm here tạo thêm trợ giúp.

8

Nhập layout làm lệnh trong gdb và cửa sổ chia sẽ được hiển thị.