]> code.delx.au - gnu-emacs/blobdiff - man/building.texi
(Basic Picture, Rectangles in Picture) [ifnottex]: Conditional xref's for
[gnu-emacs] / man / building.texi
index ccabf22b549e6b91b5b253c90f3941e90d2c1b6e..0cbaa5d1826c485dc4c3b1acc99972034a79a75b 100644 (file)
@@ -323,7 +323,7 @@ method to conditionalize them.
 subprocesses; to work around this lack, @kbd{M-x compile} runs the
 compilation command synchronously on MS-DOS.  As a consequence, you must
 wait until the command finishes before you can do anything else in
-Emacs.  @xref{MS-DOS}.
+Emacs.  @xref{MS-DOS,,,emacs-xtra,Specialized Emacs Features}.
 
 @node Grep Searching
 @section Searching with Grep under Emacs
@@ -335,10 +335,12 @@ treating the matches reported by @code{grep} as if they were ``errors.''
 
 @table @kbd
 @item M-x grep
+@item M-x lgrep
 Run @code{grep} asynchronously under Emacs, with matching lines
 listed in the buffer named @samp{*grep*}.
 @item M-x grep-find
 @itemx M-x find-grep
+@itemx M-x rgrep
 Run @code{grep} via @code{find}, with user-specified arguments, and
 collect output in the buffer named @samp{*grep*}.
 @item M-x kill-grep
@@ -373,6 +375,27 @@ initial default for the command---one that runs both @code{find} and
 @code{grep}, so as to search every file in a directory tree.  See also
 the @code{find-grep-dired} command, in @ref{Dired and Find}.
 
+@findex lgrep
+@findex rgrep
+  The commands @kbd{M-x lgrep} (local grep) and @kbd{M-x rgrep}
+(recursive grep) are more user-friendly versions of @code{grep} and
+@code{grep-find}, which prompt separately for the regular expression
+to match, the files to search, and the base directory for the search
+(rgrep only).  Case sensitivitivy of the search is controlled by the
+current value of @code{case-fold-search}.
+
+These commands build the shell commands based on the variables
+@code{grep-template} (for @code{lgrep}) and @code{grep-find-template}
+(for @code{rgrep}).
+
+The files to search can use aliases defined in the variable
+@code{grep-files-aliases}.
+
+Subdirectories listed in the variable
+@code{grep-find-ignored-directories} such as those typically used by
+various version control systems, like CVS and arch, are automatically
+skipped by @code{rgrep}.
+
 @node Flymake
 @section Finding Syntax Errors On The Fly
 @cindex checking syntax
@@ -676,7 +699,7 @@ This key is available only in the GUD interaction buffer.
 @kindex C-c C-f @r{(GUD)}
 @itemx C-x C-a C-f
 @findex gud-finish
-Run the program until the selected stack frame returns or 
+Run the program until the selected stack frame returns or
 stops for some other reason (@code{gud-finish}).
 
 @item C-x C-a C-j
@@ -743,8 +766,6 @@ the command to @kbd{C-c @var{binding}} in the GUD buffer's mode and to
 The name of the current source file.  If the current buffer is the GUD
 buffer, then the ``current source file'' is the file that the program
 stopped in.
-@c This said, ``the name of the file the program counter was in at the last breakpoint.''
-@c But I suspect it is really the last stop file.
 
 @item %l
 The number of the current source line.  If the current buffer is the GUD
@@ -752,7 +773,9 @@ buffer, then the ``current source line'' is the line that the program
 stopped in.
 
 @item %e
-The text of the C lvalue or function-call expression at or adjacent to point.
+In transient-mark-mode the text in the region, if it is active.
+Otherwise the text of the C lvalue or function-call expression at or
+adjacent to point.
 
 @item %a
 The text of the hexadecimal address at or adjacent to point.
@@ -764,6 +787,13 @@ empty string.
 
 If you don't use @samp{%p} in the command string, the command you define
 ignores any numeric argument.
+
+@item %d
+The name of the directory of the current source file.
+
+@item %c
+Fully qualified class name derived from the expression surrounding point
+(jdb only).
 @end table
 
 @node GDB Graphical Interface
@@ -929,20 +959,26 @@ the new frame.
 @cindex Watching expressions in GDB
 
 @findex gud-watch
+@kindex C-x C-a C-w @r{(GUD)}
   If you want to see how a variable changes each time your program
 stops, move point into the variable name and click on the watch icon
-in the tool bar (@code{gud-watch}).
+in the tool bar (@code{gud-watch}) or type @kbd{C-x C-a C-w}.  If you
+specify a prefix argument, you can enter the variable name in the
+minibuffer.
 
   Each watch expression is displayed in the speedbar.  Complex data
 types, such as arrays, structures and unions are represented in a tree
 format.  Leaves and simple data types show the name of the expression
 and its value and, when the speedbar frame is selected, display the
 type as a tooltip.  Higher levels show the name, type and address
-value for pointers and just the name and type otherwise.
+value for pointers and just the name and type otherwise.  Root expressions
+also display the frame address as a tooltip to help identify the frame
+in which they were defined.
 
   To expand or contract a complex data type, click @kbd{Mouse-2}
 on the tag to the left of the expression.
 
+@kindex D @r{(GDB speedbar)}
 @findex gdb-var-delete
   To delete a complex watch expression, move point to the root
 expression in the speedbar and type @kbd{D} (@code{gdb-var-delete}).
@@ -965,9 +1001,8 @@ edit its value.
 @vindex gdb-use-colon-colon-notation
   If the variable @code{gdb-use-colon-colon-notation} is
 non-@code{nil}, Emacs uses the @samp{@var{function}::@var{variable}}
-format to display variables in the speedbar.  Since this does not work
-for variables defined in compound statements, the default value is
-@code{nil}.
+format.  This allows the user to display watch expressions which share
+the same variable name.  The default value is @code{nil}.
 
 @vindex gdb-speedbar-auto-raise
 To automatically raise the speedbar every time the display of watch