Update years in copyright notice; nfc.
[bpt/emacs.git] / man / building.texi
index 99bc202..fabf2a5 100644 (file)
@@ -1,5 +1,6 @@
 @c This is part of the Emacs manual.
-@c Copyright (C) 1985,86,87,93,94,95,97,2000,2001 Free Software Foundation, Inc.
+@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
+@c   2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 @c See file emacs.texi for copying conditions.
 @node Building, Maintaining, Programs, Top
 @chapter Compiling and Testing Programs
@@ -52,7 +53,7 @@ Invoke a compiler with the same command as in the last invocation of
 Run @code{grep} asynchronously under Emacs, with matching lines
 listed in the buffer named @samp{*grep*}.
 @item M-x grep-find
-@item M-x find-grep
+@itemx M-x find-grep
 Run @code{grep} via @code{find}, with user-specified arguments, and
 collect output in the buffer named @samp{*grep*}.
 @item M-x kill-compilation
@@ -223,6 +224,14 @@ commands advance from there.  When @kbd{C-x `} gets to the end of the
 buffer and finds no more error messages to visit, it fails and signals
 an Emacs error.
 
+When the left fringe is displayed, an arrow points to the
+current message in the compilation buffer. The variable
+@code{compilation-context-lines} controls the number of lines of
+leading context in the window before the current message.  If it is
+@code{nil} and the left fringe is displayed, the window doesn't
+scroll.  If there is no left fringe, no arrow is displayed and a value
+of @code{nil} means display the message at the top of the window.
+
   You don't have to be in the compilation buffer in order to use
 @code{next-error}.  If one window on the selected frame can be the
 target of the @code{next-error} call, it is used.  Else, if a buffer
@@ -317,7 +326,7 @@ Emacs.  @xref{MS-DOS}.
 
 @findex grep
   Just as you can run a compiler from Emacs and then visit the lines
-where there were compilation errors, you can also run @code{grep} and
+with compilation errors, you can also run @code{grep} and
 then visit the lines on which matches were found.  This works by
 treating the matches reported by @code{grep} as if they were ``errors.''
 
@@ -336,9 +345,9 @@ can find the corresponding lines in the original files using @kbd{C-x
 
   Some grep programs accept a @samp{--color} option to output special
 markers around matches for the purpose of highlighting.  You can make
-use of this feature by setting @code{grep-highlight-matches} to t.
-When displaying a match in the source buffer, the exact match will be
-highlighted, instead of the entire source line.
+use of this feature by setting @code{grep-highlight-matches} to
+@code{t}.  When displaying a match in the source buffer, the exact
+match will be highlighted, instead of the entire source line.
 
 @findex grep-find
 @findex find-grep
@@ -504,8 +513,13 @@ with a C program, you can also display the @code{#define} directive
 associated with an identifier when the program is not executing.  This
 operates in the GUD buffer and in source buffers with major modes in
 the list @code{gud-tooltip-modes}.  If the variable
-@code{gud-tooltip-echo-area} is non-@code{nil} then the help text is
-displayed in the echo area.
+@code{gud-tooltip-echo-area} is non-@code{nil} then the variable's
+value is displayed in the echo area.
+
+With GDB in text command mode (@pxref{GDB Graphical Interface}),
+it is possible that use of GUD tooltips can cause a function to be
+called with harmful side-effects.  In this case, Emacs disables
+them.
 
 @node Commands of GUD
 @subsection Commands of GUD
@@ -515,7 +529,7 @@ commands of Shell mode are available (@pxref{Shell Mode}).  GUD mode
 also provides commands for setting and clearing breakpoints, for
 selecting stack frames, and for stepping through the program.  These
 commands are available both in the GUD buffer and globally, but with
-different key bindings.  It also has its own toolbar from which you
+different key bindings.  It also has its own tool bar from which you
 can invoke the more common commands by clicking on the appropriate
 icon.  This is particularly useful for repetitive commands like
 gud-next and gud-step and allows the user to hide the GUD buffer.
@@ -742,7 +756,7 @@ that line, this action will remove it
 (@code{gdb-mouse-set-clear-breakpoint}). Where Emacs uses the margin
 to display breakpoints, it is also possible to enable or disable them
 when you click @kbd{Mouse-3} there
-(@code{gdb-mouse-toggle--breakpoint}).
+(@code{gdb-mouse-toggle-breakpoint}).
 
 @vindex gud-gdb-command-name
 @findex gdba
@@ -751,7 +765,7 @@ for input and output to GDB.  To do this, set
 @code{gud-gdb-command-name} to @code{"gdb --fullname"} or edit the
 startup command in the minibuffer to say that.  You need to do use
 text command mode to run multiple debugging sessions within one Emacs
-session.  If you have customised @code{gud-gdb-command-name} in that
+session.  If you have customized @code{gud-gdb-command-name} in that
 way, then you can use @kbd{M-x gdba} to invoke GDB in graphical mode.
 
 @menu
@@ -869,7 +883,7 @@ the variables that are local to the new frame.
 
 If you want to see how a variable changes each time your program stops
 then place the cursor over the variable name and click on the watch
-icon in the toolbar (@code{gud-watch}).
+icon in the tool bar (@code{gud-watch}).
 
 Each watch expression is displayed in the speedbar.  Complex data
 types, such as arrays, structures and unions are represented in a tree
@@ -919,7 +933,8 @@ separately to examine their values.  @xref{Watch Expressions}.
 
 @item Registers Buffer
 The registers buffer displays the values held by the registers
-(@pxref{Registers,,, gdb, The GNU debugger}).
+(@pxref{Registers,,, gdb, The GNU debugger}).  Press @key{SPC} to
+toggle the display of floating point registers.
 
 @item Assembler Buffer
 The assembler buffer displays the current frame as machine code.  An
@@ -931,7 +946,7 @@ appear in the fringe or margin.
 
 The threads buffer displays a summary of all threads currently in your
 program (@pxref{Threads,,, gdb, The GNU debugger}).  Move point to
-any thread in the list and type @key{RET} to make it become the
+any thread in the list and press @key{RET} to make it become the
 current thread (@code{gdb-threads-select}) and display the associated
 source in the source buffer.  Alternatively, click @kbd{Mouse-2} to
 make the selected thread become the current one.
@@ -1136,10 +1151,11 @@ mode.  It does not treat @code{defvar} specially.
 @kbd{C-x C-e} a second time to display the value of the integer result
 in additional formats (octal, hexadecimal, and character).
 
-  If @kbd{C-M-x}, @kbd{C-x C-e}, or @kbd{M-:} is given a numeric
-argument, it inserts the value into the current buffer at point, rather
-than displaying it in the echo area.  The argument's value does not
-matter.
+  If @kbd{C-x C-e}, or @kbd{M-:} is given a numeric argument, it
+inserts the value into the current buffer at point, rather than
+displaying it in the echo area.  The argument's value does not matter.
+@kbd{C-M-x} with a numeric argument instruments the function
+definition for Edebug (@pxref{Instrumenting, Instrumenting for Edebug,, elisp, the Emacs Lisp Reference Manual}).
 
 @findex eval-region
 @findex eval-current-buffer