]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/doc/refcard.tex
Update copyright year range in all GDB files
[thirdparty/binutils-gdb.git] / gdb / doc / refcard.tex
index 0c77c4c7b30514c1f2bfea2514c8cac2da185ff9..157ca24abcee6ea71b2d040cc8297d11b987817e 100644 (file)
@@ -1,8 +1,7 @@
 %%%%%%%%%%%%%%%% gdb-refcard.tex %%%%%%%%%%%%%%%%
 
 %This file is TeX source for a reference card describing GDB, the GNU debugger.
-%$Id$
-%Copyright (C) 1991 Free Software Foundation, Inc.
+%Copyright (C) 1991-2018 Free Software Foundation, Inc.
 %Permission is granted to make and distribute verbatim copies of
 %this reference provided the copyright notices and permission notices
 %are preserved on all copies.
@@ -12,7 +11,7 @@
 %
 %This program is free software; you can redistribute it and/or modify
 %it under the terms of the GNU General Public License as published by
-%the Free Software Foundation; either version 1, or (at your option)
+%the Free Software Foundation; either version 3, or (at your option)
 %any later version.
 %
 %This program is distributed in the hope that it will be useful, but
 %MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 %General Public License for more details.
 %
-%You can find a copy of the GNU General Public License in the GDB
-%manual; or write to the Free Software Foundation, Inc.,
-%675 Mass Ave, Cambridge, MA 02139, USA.
+%You should have received a copy of the GNU General Public License
+%along with this program.  If not, see <http://www.gnu.org/licenses/>.
 %
-%You can contact the author as:  pesch@cygnus.com
+%You can contact the maintainer at:  doc@cygnus.com
+%
+%                                Documentation Department
+%                                Cygnus Solutions
+%                                1325 Chesapeake Terrace
+%                                Sunnyvale, CA 94089  USA
+%
+%                                +1 800 CYGNUS-1
+%
+%
+%
+% 22-AUG-1993 Andreas Vogel
+%
+%   Modifications made in order to handle different papersizes correctly.
+%   You only have to set the total width and height of the paper, the
+%   horizontal and vertical margin space measured from *paper edge*
+%   and the interline and interspec spacing.
+%   In order to support a new papersize, you have to fiddle with the
+%   latter four dimensions. Just try out a few values.
+%   All other values will be computed at process time so it should be
+%   quite easy to support different paper sizes - only four values to
+%   guess :-)
+%
+%   To find the configuration places, just search for the string
+%   "CONFIGURATION".
+%
+%   Andreas Vogel (av@ssw.de)
 %
-%                                Roland Pesch
-%                                Cygnus Support
-%                                814 University Ave.
-%                                Palo Alto, CA 94301 USA
 %
-%                                +1 415 322 3811
 %
 % Uncomment the following `magnification' command if you want to print
 % out in a larger font.  Caution!  You may need larger paper.  You had
 % all variations of a command.
 % The GDB-under-Emacs section omits gdb-mode functions without default
 % keybindings.  GDB startup options are not described.
-% set print sevenbit-strings, set symbol-reloading omitted.
+% set print sevenbit-strings omitted.
 % printsyms, printpsyms, omitted since they're for GDB maintenance primarily
 % share omitted due to obsolescence
 % set check range/type omitted at least til code is in GDB.
 %
-{%
-\def\$#1${{#1}}%   Kluge: collect RCS revision info without $...$
-\xdef\manvers{\$Revision$}%
-}%
 %-------------------- Three column format -----------------------
 
 %%%% --- To disable three column format, comment out this entire section
 
-% Three-column format for landscape printing on 8.5x11 paper
+% Three-column format for landscape printing
+
+%-------- Papersize defs:
+
+\newdimen\totalwidth \newdimen\totalheight
+\newdimen\hmargin    \newdimen\vmargin
+\newdimen\secskip    \newdimen\lskip
+\newdimen\barwidth   \newdimen\barheight
+\newdimen\intersecwidth
+
+%%
+%%  START CONFIGURATION - PAPERSIZE DEFINITIONS
+%------- Papersize params:
+%%  US letter paper (8.5x11in)
+%%
+\totalwidth=11in    % total width of paper
+\totalheight=8.5in  % total height of paper
+\hmargin=.25in      % horizontal margin width
+\vmargin=.25in      % vertical margin width
+\secskip=1pc        % space between refcard secs
+\lskip=2pt          % extra skip between \sec entries
+\ifx\pdfoutput\undefined\else   % check if we are using pdfTeX
+  \pdfpagewidth=\totalwidth     % width of paper in pdf output
+  \pdfpageheight=\totalheight   % height of paper in pdf output
+\fi
+%------- end papersize params
+%%
+%%  change according to personal taste, not papersize dependent
+%%
+\barwidth=.1pt       % width of the cropmark bar
+\barheight=2pt       % height of the cropmark bar
+\intersecwidth=0.5em % width between \itmwid and \dfnwid
+%%
+%%  END CONFIGURATION - PAPERSIZE DEFINITIONS
+%%
+
+%%
+%%  values to be computed - nothing to configure
+%%
+\newdimen\fullhsize     % width of area without margins
+\newdimen\itmwid        % width of item column
+\newdimen\dfnwid        % width of definition column
+\newdimen\temp          % only for temporary use
+
+%%
+%%  adjust the offsets so the margins are measured *from paper edge*
+%%
+\hoffset=-1in \advance \hoffset by \hmargin
+\voffset=-1in \advance \voffset by \vmargin
+
+%%
+%%  fullhsize = totalwidth - (2 * hmargin)
+%%
+\fullhsize=\totalwidth
+\temp=\hmargin \multiply \temp by 2 \advance \fullhsize by -\temp
+
+%%
+%%  hsize = (fullhsize - (4 * hmargin) - (2 * barwidth)) / 3
+%%
+\hsize=\fullhsize
+\temp=\hmargin \multiply \temp by 4 \advance \hsize by -\temp
+\temp=\barwidth \multiply \temp by 2 \advance \hsize by -\temp
+\divide \hsize by 3
+
+%%
+%%  vsize = totalheight - (2 * vmargin)
+%%
+\vsize=\totalheight
+\temp=\vmargin \multiply \temp by 2 \advance \vsize by -\temp
+
+%%
+%%  itmwid = (hsize - intersecwidth) * 1/3
+%%  dfnwid = (hsize - intersecwidth) * 2/3
+%%
+\temp=\hsize \advance \temp by -\intersecwidth \divide \temp by 3
+\itmwid=\temp
+\dfnwid=\hsize \advance \dfnwid by -\itmwid
+
+%-------- end papersize defs
+
 
-% We want output .25 inch *from paper edge*; i.e. -.75in from TeX default
-\hoffset=-0.8in \voffset=-0.75in
-\newdimen\fullhsize
-\fullhsize=10.5in \hsize=3.3in
 \def\fulline{\hbox to \fullhsize}
 \let\lcr=L \newbox\leftcolumn\newbox\centercolumn
 \output={\if L\lcr
          \fi
 %         \ifnum\outputpenalty>-20000 \else\dosupereject\fi
       }
-%
-%ALTERNATIVE FOLDING GUIDES:
-%
-%For NO printed folding guide, comment out other \def\vdecor's and uncomment:
-%\def\vdecor{\hskip .2in plus1fil}
-%
-%For SOLID LINE folding guide, comment out other \def\vdecor's and uncomment:
-%\def\vdecor{\hskip .1in plus1fil \vrule width .1pt \hskip .1in plus1fil}
-%
-%For SMALL MARKS NEAR TOP AND BOTTOM as folding guide,
-%comment out other \def\vdecor's and uncomment:
-\def\vdecor{\hskip .1in plus1fil 
-\vbox to \vsize{\hbox to .1pt{\vrule height 2pt width .1pt}\vfill
-\hbox to .1pt{\vrule height 2pt width .1pt}}
-\hskip .1in plus1fil}
-%
-%END OF ALTERNATIVES FOR FOLDING GUIDES
-%
+
+%%
+%%  START CONFIGURATION - ALTERNATIVE FOLDING GUIDES
+%%
+%%  For NO printed folding guide,
+%%  comment out other \def\vdecor's and uncomment:
+
+%\def\vdecor{\hskip\hmargin plus1fil\hskip\barwidth plus1fil\hskip\hmargin plus1fil}
+
+%%  For SOLID LINE folding guide,
+%%  comment out other \def\vdecor's and uncomment:
+
+%\def\vdecor{\hskip\hmargin plus1fil \vrule width \barwidth \hskip\hmargin plus1fil}
+
+%%  For SMALL MARKS NEAR TOP AND BOTTOM as folding guide,
+%%  comment out other \def\vdecor's and uncomment:
+
+\def\vdecor{\hskip\hmargin plus1fil
+\vbox to \vsize{\hbox to \barwidth{\vrule height\barheight width\barwidth}\vfill
+\hbox to \barwidth{\vrule height\barheight width\barwidth}}%THIS PERCENT SIGN IS ESSENTIAL
+\hskip\hmargin plus1fil}
+
+%%
+%%  END CONFIGURATION - ALTERNATIVES FOR FOLDING GUIDES
+%%
+
 \def\tripleformat{\shipout\vbox{\fulline{\box\leftcolumn\vdecor
-                                         \box\centercolumn\vdecor
-                                         \columnbox}
+                                        \box\centercolumn\vdecor
+                                        \columnbox}
                               }
                  \advancepageno}
 \def\columnbox{\leftline{\pagebody}}
 %-------------------- end font defs ---------------------------------
 
 %
-\vsize=8in
 \hyphenpenalty=5000\tolerance=2000\raggedright\raggedbottom
 \normalbaselineskip=9pt\baselineskip=9pt
 %
 \def\opt#1{{\brm[{\rm #1}]}}
 \def\xtra#1{\noalign{\smallskip{\tt#1}}}
 %
-\long\def\sec#1;#2\endsec{\vskip 1pc
+\long\def\sec#1;#2\endsec{\vskip \secskip
 \halign{%
 %COL 1 (of halign):
-\vtop{\hsize=1.1in\tt
-##\par\vskip 2pt }\hfil
+\vtop{\hsize=\itmwid\tt
+##\par\vskip \lskip }\hfil
 %COL 2 (of halign):
-&\vtop{\hsize=2.1in\hangafter=1\hangindent=0.5em
-\rm ##\par\vskip 2pt}\cr
+&\vtop{\hsize=\dfnwid\hangafter=1\hangindent=\intersecwidth
+\rm ##\par\vskip \lskip}\cr
 %Tail of \long\def fills in halign body with \sec args:
-\noalign{{\bbf #1}\vskip 2pt}
+\noalign{{\bbf #1}\vskip \lskip}
 #2
 }
 }
 
-{\vbbf GDB QUICK REFERENCE}\hfil{\smrm GDB Version 4}\qquad
+{\vbbf GDB QUICK REFERENCE}\hfil{\smrm GDB Version 5}\qquad
 
 \sec Essential Commands;
 gdb {\it program} \opt{{\it core}}&debug {\it program} \opt{using
@@ -193,7 +290,7 @@ set args {\it arglist}&specify {\it arglist} for next
 set args&specify empty argument list\cr
 show args&display argument list\cr
 \cr
-show environment&show all environment variables\cr
+show env&show all environment variables\cr
 show env {\it var}&show value of environment variable {\it var}\cr
 set env {\it var} {\it string}&set environment variable {\it var}\cr
 unset env {\it var}&remove {\it var} from environment\cr
@@ -210,14 +307,14 @@ shell {\it cmd}&execute arbitrary shell command string\cr
 \line{\smrm \opt{ } surround optional arguments \hfill $\ldots$ show
 one or more arguments}
 \vskip\baselineskip
-\centerline{\smrm \copyright 1991, 1992 Free Software Foundation, Inc.\qquad Permissions on back}
+\centerline{\smrm \copyright 1998-2018 Free Software Foundation, Inc.\qquad Permissions on back}
 \eject
 \sec Breakpoints and Watchpoints;
 break \opt{\it file\tt:}{\it line}\par
 b \opt{\it file\tt:}{\it line}&set breakpoint at {\it line} number \opt{in \it file}\par 
 eg:\quad{\tt break main.c:37}\quad\cr
-break \opt{\it file\tt:}{\it function}&set breakpoint at {\it
-function} \opt{in \it file}\cr
+break \opt{\it file\tt:}{\it func}&set breakpoint at {\it
+func} \opt{in \it file}\cr
 break +{\it offset}\par
 break -{\it offset}&set break at {\it offset} lines from current stop\cr
 break *{\it addr}&set breakpoint at address {\it addr}\cr
@@ -226,9 +323,11 @@ break $\ldots$ if {\it expr}&break conditionally on nonzero {\it expr}\cr
 cond {\it n} \opt{\it expr}&new conditional expression on breakpoint
 {\it n}; make unconditional if no {\it expr}\cr
 tbreak $\ldots$&temporary break; disable when reached\cr
-rbreak {\it regex}&break on all functions matching {\it regex}\cr
+rbreak \opt{\it file\tt:}{\it regex}&break on all functions matching {\it
+regex} \opt{in \it file}\cr
 watch {\it expr}&set a watchpoint for expression {\it expr}\cr
-catch {\it x}&break at C++ handler for exception {\it x}\cr
+catch {\it event}&break at {\it event}, which may be {\tt catch}, {\tt throw},
+{\tt exec}, {\tt fork}, {\tt vfork}, {\tt load}, or {\tt unload}.\cr
 \cr
 info break&show defined breakpoints\cr
 info watch&show defined watchpoints\cr
@@ -274,10 +373,9 @@ info frame \opt{\it addr}&describe selected frame, or frame at
 {\it addr}\cr
 info args&arguments of selected frame\cr
 info locals&local variables of selected frame\cr
-info reg \opt{\it rn}\par
-info all-reg \opt{\it rn}&register values \opt{for reg {\it rn\/}} in
+info reg \opt{\it rn}$\ldots$\par
+info all-reg \opt{\it rn}&register values \opt{for regs {\it rn\/}} in
 selected frame; {\tt all-reg} includes floating point\cr
-info catch&exception handlers active in selected frame\cr
 \endsec
 
 \vfill\eject
@@ -373,7 +471,7 @@ $\tt\{${\it type}$\tt\}${\it addr}&read memory at {\it addr} as specified
 \cr
 show values \opt{{\it n}}&show last 10 values \opt{or surrounding
 \${\it n}}\cr
-show convenience&display all convenience variables\cr
+show conv&display all convenience variables\cr
 \endsec
 
 \sec Symbol Table;
@@ -425,7 +523,7 @@ detach&release target from GDB control\cr
 set {\it param} {\it value}&set one of GDB's internal parameters\cr
 show {\it param}&display current setting of parameter\cr
 \xtra{\rm Parameters understood by {\tt set} and {\tt show}:}
-\quad complaints {\it limit}&number of messages on unusual symbols\cr
+\quad complaint {\it limit}&number of messages on unusual symbols\cr
 \quad confirm {\it on/off}&enable or disable cautionary queries\cr
 \quad editing {\it on/off}&control {\tt readline} command-line editing\cr
 \quad height {\it lpp}&number of lines before pause in display\cr
@@ -494,8 +592,8 @@ show dir&show current source path\cr
 \cr
 list&show next ten lines of source\cr
 list -&show previous ten lines\cr
-list {\it lines}&display source centered around {\it lines}, 
-specified as one of:\cr
+list {\it lines}&display source surrounding {\it lines}, 
+specified as:\cr
 \quad{\opt{\it file\tt:}\it num}&line number \opt{in named file}\cr
 \quad{\opt{\it file\tt:}\it function}&beginning of function \opt{in
 named file}\cr
@@ -534,15 +632,16 @@ statement.\cr
 
 \vfill
 {\smrm\parskip=6pt
-\centerline{Copyright \copyright 1991, 1992 Free Software Foundation, Inc.}
-\centerline{Roland Pesch (pesch@cygnus.com), January 1992---\manvers}
-\centerline{The author assumes no responsibility for any errors on this card.}
+Copyright \copyright 1991-2018 Free Software Foundation, Inc.
+Author: Roland H. Pesch
+
+The author assumes no responsibility for any errors on this card.
 
 This card may be freely distributed under the terms of the GNU
 General Public License.
 
-\centerline{Please contribute to development of this card by
-annotating it.}
+Please contribute to development of this card by
+annotating it.  Improvements can be sent to bug-gdb@gnu.org.
 
 GDB itself is free software; you are welcome to distribute copies of
 it under the terms of the GNU General Public License.  There is