From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Nick Roberts Newsgroups: gmane.emacs.devel Subject: Re: gdba probs Date: Sun, 8 Dec 2002 01:55:06 +0000 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <15858.42618.90759.591751@nick.uklinux.net> References: <15855.47556.171128.631234@nick.uklinux.net> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: main.gmane.org 1039312879 28000 80.91.224.249 (8 Dec 2002 02:01:19 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sun, 8 Dec 2002 02:01:19 +0000 (UTC) Cc: emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 18Kqkv-0007HU-00 for ; Sun, 08 Dec 2002 03:01:17 +0100 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 18KquI-0001QV-00 for ; Sun, 08 Dec 2002 03:10:58 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 18Kqhb-0005PJ-00 for emacs-devel@quimby.gnus.org; Sat, 07 Dec 2002 20:57:51 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10.13) id 18KqhI-0005Od-00 for emacs-devel@gnu.org; Sat, 07 Dec 2002 20:57:32 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10.13) id 18KqhF-0005OK-00 for emacs-devel@gnu.org; Sat, 07 Dec 2002 20:57:31 -0500 Original-Received: from bts-0341.dialup.zetnet.co.uk ([194.247.49.85] helo=nick.uklinux.net) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 18KqhE-0005OA-00; Sat, 07 Dec 2002 20:57:28 -0500 Original-Received: by nick.uklinux.net (Postfix, from userid 501) id 4043176037; Sun, 8 Dec 2002 01:55:06 +0000 (GMT) Original-To: rms@gnu.org In-Reply-To: X-Mailer: VM 6.97 under Emacs 21.3.50.15 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Emacs development discussions. List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:9969 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:9969 Richard Stallman writes: > > The totalview debugger starts with 6 windows. But, hey!, lets be open > > minded about this. How do you know you don't want them before you know > > what they do ? > Is there a way to make it more self-evident what these windows do? > What measures are taken in the code as it is now > to show the user what these windows do and how to use them? At the moment there's only what you get from `C-h f gdba' (reproduced below). As far as layout goes, I share some of Miles' reservations. There are a further 3 buffers (assembler, registers, display) that the user might want to display and each user will have his/her own preferences. I have looked at trying to save a window configuration and I note that this concept has been on the TODO list of desktop.el for a long time. I can imagine this is not an easy thing to do. As for what each buffer does I could start to document it in info format but its still evolving and I don't know if there is sufficient interest yet. Apart from the errors, I like to think much of the functionality is self evident. What do others think ? Nick --------------------------- gdba is an interactive compiled Lisp function in `gdb-ui'. (gdba COMMAND-LINE) Run gdb on program FILE in buffer *gdb-FILE*. The directory containing FILE becomes the initial working directory and source-file directory for your debugger. If `gdb-many-windows' is set to t this works best in X (depending on the size of your monitor) using most of the screen. After a short delay the following layout will appear (keybindings given in relevant buffer) : --------------------------------------------------------------------- GDB Toolbar --------------------------------------------------------------------- GUD buffer (I/O of gdb) | Locals buffer | | | --------------------------------------------------------------------- Source buffer | Input/Output (of debuggee) buffer | (comint-mode) | | | | | | --------------------------------------------------------------------- Stack buffer | Breakpoints buffer [mouse-2] gdb-frames-mouse-select | SPC gdb-toggle-bp-this-line | g gdb-goto-bp-this-line | d gdb-delete-bp-this-line --------------------------------------------------------------------- All the buffers share the toolbar and source should always display in the same window e.g after typing g on a breakpoint in the breakpoints buffer. Breakpoint icons are displayed both by setting a break with gud-break and by typing break in the GUD buffer. Displayed expressions appear in separate frames. Arrays may be displayed as slices and visualised using the graph program from plotutils if installed. If `gdb-many-windows' is set to nil then gdb starts with just two windows : the GUD and the source buffer. The following interactive lisp functions help control operation : `gdb-many-windows' - Toggle the number of windows gdb uses. `gdb-restore-windows' - to restore the layout if its lost. `gdb-quit' - to delete (most) of the buffers used by gdb.