(calc-get-operator): Remove extra format
[bpt/emacs.git] / man / ada-mode.texi
index 13c0ffa..a74150f 100644 (file)
@@ -1,19 +1,16 @@
 \input texinfo  @c -*-texinfo-*-
 @setfilename ../info/ada-mode
 @settitle Ada Mode
-@dircategory Emacs
-@direntry
-* Ada mode: (ada-mode). The GNU Emacs mode for editing Ada.
-@end direntry
 
 @comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 @comment The following lines inserts the copyright notice
 @comment into the Info file.
 @comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
-@ifnottex
-Copyright @copyright{} 1999, 2000, 2001 Free Software Foundation, Inc.
+@copying
+Copyright @copyright{} 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
 
+@quotation
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.1 or
 any later version published by the Free Software Foundation; with the
@@ -31,11 +28,13 @@ This document is part of a collection distributed under the GNU Free
 Documentation License.  If you want to distribute this document
 separately from the collection, you can do so by adding a copy of the
 license to the document, as described in section 6 of the license.
-@end ifnottex
+@end quotation
+@end copying
 
-@comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-@comment TeX title page
-@comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+@dircategory Emacs
+@direntry
+* Ada mode: (ada-mode). Emacs mode for editing Ada code.
+@end direntry
 
 @titlepage
 @sp 10
@@ -44,28 +43,9 @@ license to the document, as described in section 6 of the license.
 @subtitle An Emacs major mode for programming Ada 95 with GNAT
 @subtitle July 1998 for Ada Mode Version 3.0
 @sp 2
-
 @page
 @vskip 0pt plus 1filll
-Copyright @copyright{} 1999, 2000, 2001 Free Software Foundation, Inc.
-@sp 1
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.1 or
-any later version published by the Free Software Foundation; with the
-Invariant Sections being ``The GNU Manifesto'', ``Distribution'' and
-``GNU GENERAL PUBLIC LICENSE'', with the Front-Cover texts being ``A GNU
-Manual'', and with the Back-Cover Texts as in (a) below.  A copy of the
-license is included in the section entitled ``GNU Free Documentation
-License'' in the Emacs manual.
-
-(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
-this GNU Manual, like GNU software.  Copies published by the Free
-Software Foundation raise funds for GNU development.''
-
-This document is part of a collection distributed under the GNU Free
-Documentation License.  If you want to distribute this document
-separately from the collection, you can do so by adding a copy of the
-license to the document, as described in section 6 of the license.
+@insertcopying
 @end titlepage
 
 
@@ -84,7 +64,7 @@ license to the document, as described in section 6 of the license.
                                      defined in your application
 * File Browser::                  Easy access to your files
 * Automatic Smart Indentation::   Indenting your code automatically as you type
-* Formatting Parameter Lists::    Formating subprograms parameter lists
+* Formatting Parameter Lists::    Formatting subprograms' parameter lists
                                      automatically
 * Automatic Casing::              Adjusting the case of words automatically
 * Statement Templates::           Inserting code templates
@@ -93,6 +73,7 @@ license to the document, as described in section 6 of the license.
 * Debugging::                     Debugging your application
 * Using non-standard file names:: Configuring Emacs for special file names
 * Working Remotely::              Working on a different machine
+* Index::
 @end menu
 
 
@@ -148,7 +129,7 @@ automatic color highlighting of the various entities in Ada code.
 switching between spec and body files with eventually
 auto-generation of body files,
 @item
-automatic formating of subprograms parameter lists.
+automatic formatting of subprograms' parameter lists.
 @item
 automatic smart indentation according to Ada syntax,
 @item
@@ -175,12 +156,21 @@ files into  the Emacs  library directories. Every  time you open  a file
 with  a  file  extension  of  @file{.ads}  or  @file{.adb},  Emacs  will
 automatically load and activate Ada mode.
 
-@xref{Using non-standard  file names}, if your  files do
+@xref{Using non-standard file names}, if your files do
 not use these extensions and if you want Emacs to automatically start the
 Ada mode every time you edit an Ada file.
 
-See also the Emacs Manual (@pxref{(Top,,,emacs, The Emacs Manual)}),
-for general usage variables that you might want to set.
+Also, for general usage variables that you might want to set,
+see
+@iftex
+@cite{The GNU Emacs Manual}.
+@end iftex
+@ifhtml
+@cite{The GNU Emacs Manual}.
+@end ifhtml
+@ifinfo
+@ref{Top, , The GNU Emacs Manual, emacs, The GNU Emacs Manual}.
+@end ifinfo
 
 @c ---------------------------------------------------------------------
 @section Required files
@@ -345,14 +335,18 @@ choice is to use this variable settings, and otherwise
 
 @table @kbd
 @item C-c u
+@findex ada-customize
 Create or edit the project file for the current buffer (@code{ada-customize}).
-@item C-c c   
+@item C-c c
+@findex ada-change-prj
 Change the project file associated with the current Ada buffer (@code{ada-change-prj}).
 @item C-c d
-Change the  default project  file for the  current directory.  Every new
-file opened  from this  directory will be  associated with that  file by
-default.
+@findex ada-change-default-project
+Change the  default project  file for the  current directory
+(@code{ada-change-default-project}).  Every new file opened  from this
+directory will be  associated with that  file by default.
 @item ada-set-default-project-file
+@findex ada-set-default-project-file
 Set the default  project file to use for *any*  Ada file opened anywhere
 on your system. This sets this file only for the current Emacs session.
 @end table
@@ -475,18 +469,18 @@ default project file for this directory and is used implicitly for other
 sources unless specified otherwise by the user.
 
 @item
-look for the corresponding .ali file in the @code{obj_dir} defined
+look for the corresponding @samp{.ali} file in the @code{obj_dir} defined
 in the project  file.  If this file can not be  found, emacs proposes to
 compile the source using the @code{comp_cmd} defined in the project file
 in order to create the ali file.
 
 @item
-when cross referencing is requested, the .ali  file is parsed to
+when cross referencing is requested, the @samp{.ali}  file is parsed to
 determine  the  file and  line  of  the  identifier definition.   It  is
-possible for  the .ali file to be  older than the source  file, in which
-case it will be recompiled if the variable @code{ada-xref-create-ali} is
-set, otherwise the  reference is searched in the  obsolete ali file with
-possible inaccurate results.
+possible for  the @samp{.ali} file to be  older than the source  file,
+in which case it will be recompiled if the variable
+@code{ada-xref-create-ali} is set, otherwise the  reference is searched
+in the  obsolete ali file with possible inaccurate results.
 
 @item
 look  for   the file containing the declaration using the source
@@ -541,33 +535,41 @@ these functions are available through the Ada menu, and you can also use
 the following key bindings or the command names:
 
 @table @kbd
-@item M-C-e
+@item C-M-e
+@findex ada-next-procedure
 Move to the next function/procedure/task, which ever comes next
 (@code{ada-next-procedure}).
-@item M-C-a
+@item C-M-a
+@findex ada-previous-procedure
 Move to previous function/procedure/task
 (@code{ada-previous-procedure}).
 @item M-x ada-next-package
+@findex ada-next-package
 Move to next package.
 @item M-x ada-prev-package
+@findex ada-prev-package
 Move to previous package.
 @item C-c C-a
+@findex ada-move-to-start
 Move to matching start of @code{end} (@code{ada-move-to-start}).  If
 point is at the end of a subprogram, this command jumps to the
 corresponding @code{begin} if the user option
 @code{ada-move-to-declaration} is @code{nil} (default), it jumps to
 the subprogram declaration otherwise.
 @item C-c C-e
+@findex ada-move-to-end
 Move point to end of current block (@code{ada-move-to-end}).
 @item C-c o
 Switch between corresponding spec and body file
 (@code{ff-find-other-file}).  If the cursor is on a subprogram, switch
 between declaration and body.
 @item C-c c-d
+@findex ada-goto-declaration
 Move  from   any  reference  to  its  declaration   and  switch  between
 declaration  and body  (for  procedures, tasks,  private and  incomplete
 types).
 @item C-c C-r
+@findex ada-find-references
 runs the @file{gnatfind} command to search for all references to the
 entity pointed by the cursor (@code{ada-find-references}).  Use
 @kbd{C-x `} (@code{next-error}) to visit each reference (as for
@@ -621,8 +623,8 @@ This is a very  fast way to do completion, and the  casing of words will
 also be respected.
 
 The second  method is specific to Ada  buffer, and even to  users of the
-Gnat compiler. Emacs will search the cross-information found in the .ali
-files generated by Gnat for possible completions.
+Gnat compiler. Emacs will search the cross-information found in the
+@samp{.ali} files generated by Gnat for possible completions.
 
 The  main advantage  is  that  this completion  is  more accurate:  only
 existing identifier  will be  suggested, you don't  need to have  a file
@@ -638,6 +640,7 @@ identifier.
 
 @table @kbd
 @item C-@key{TAB}
+@findex ada-complete-identifier
 Complete accurately current identifier using information in @samp{.ali} file
 (@code{ada-complete-identifier}).
 @item M-/
@@ -679,7 +682,7 @@ you  can directly click  on them  to open  the right  file at  the right
 place.
 
 You can activate  this mode by typing @key{M-x  speedbar} in the editor.
-This  will open  a new  frame. A  better way  might be  to  assicate the
+This  will open  a new  frame. A  better way  might be  to  associate the
 following key binding
 
 @example
@@ -777,7 +780,7 @@ name of the variable.
 @table @kbd
 @item @key{TAB}
 Indent the current line or the current region.
-@item M-C-\
+@item C-M-\
 Indent lines in the current selected block.
 @item C-c @key{TAB}
 Indent the current line and prints the name of the variable used for
@@ -799,6 +802,7 @@ separating argument names and argument types, plus align the
 
 @table @kbd
 @item C-c C-f
+@findex ada-format-paramlist
 Format the parameter list (@code{ada-format-paramlist}).
 @end table
 
@@ -867,14 +871,15 @@ which  should  point  to  a  system-wide  file that  each  of  them  can
 write.  That  way,  you  will  ensure  that  the  casing  is  consistent
 throughout your application(s).
 
+@findex ada-create-case-exception
 There are two ways to add new items to this file: you can simply edit it
 as you  would edit any  text file, and  add or suppress entries  in this
 file.  Remember that  you should  put one  entity per  line.  The other,
 easier way, is to position the cursor  over the word you want to add, in
 an Ada buffer.  This word should have the casing  you want.  Then simply
 select  the  menu @samp{Ada->Edit->Create  Case  Exception},  or the  key
-@kbd{C-c C-y}. The word will  automatically be added to the current list
-of exceptions and to the file.
+@kbd{C-c C-y} (@code{ada-create-case-exception}). The word will
+automatically be added to the current list of exceptions and to the file.
 
 It  is sometimes  useful to  have multiple  exception files  around (for
 instance,  one could  be  the  standard Ada  acronyms,  the second  some
@@ -892,13 +897,15 @@ Automatic casing can be performed on port or whole buffer using:
 
 @table @kbd
 @item C-c C-b
-Adjust case in the whole buffer.
+@findex ada-adjust-case-buffer
+Adjust case in the whole buffer (@code{ada-adjust-case-buffer}).
 @item C-c C-y
 Create a new entry in the exception dictionary, with the word under
-the cursor
+the cursor (@code{ada-create-case-exception})
 @item C-c C-t
+@findex ada-case-read-exceptions
 Rereads the exception dictionary from the file
-@code{ada-case-exception-file}.
+@code{ada-case-exception-file} (@code{ada-case-read-exceptions}).
 @end table
 
 @c -----------------------------------------------------------------------
@@ -914,57 +921,86 @@ buffer using the following commands:
 
 @table @kbd
 @item C-c t b
-exception Block
+@findex ada-exception-block
+exception Block (@code{ada-exception-block}).
 @item C-c t c
-case.
+@findex ada-case
+case (@code{ada-case}).
 @item C-c t d
-declare Block.
+@findex ada-declare-block
+declare Block (@code{ada-declare-block}).
 @item C-c t e
-else.
+@findex ada-else
+else (@code{ada-else}).
 @item C-c t f
-for Loop.
+@findex ada-for-loop
+for Loop (@code{ada-for-loop}).
 @item C-c t h
-Header.
+@findex ada-header
+Header (@code{ada-header}).
 @item C-c t i
-if.
+@findex ada-if
+if (@code{ada-if}).
 @item C-c t k
-package Body.
+@findex ada-package-body
+package Body (@code{ada-package-body}).
 @item C-c t l
-loop.
+@findex ada-loop
+loop (@code{ada-loop}).
+@item C-c p
+@findex ada-subprogram-body
+subprogram body (@code{ada-subprogram-body}).
 @item C-c t t
-task Body.
+@findex ada-task-body
+task Body (@code{ada-task-body}).
 @item C-c t w
-while Loop.
+@findex ada-while
+while Loop (@code{ada-while}).
 @item C-c t u
-use.
+@findex ada-use
+use (@code{ada-use}).
 @item C-c t x
-exit.
+@findex ada-exit
+exit (@code{ada-exit}).
 @item C-c t C-a
-array.
+@findex ada-array
+array (@code{ada-array}).
 @item C-c t C-e
-elsif.
+@findex ada-elsif
+elsif (@code{ada-elsif}).
 @item C-c t C-f
-function Spec.
+@findex ada-function-spec
+function Spec (@code{ada-function-spec}).
 @item C-c t C-k
-package Spec.
+@findex ada-package-spec
+package Spec (@code{ada-package-spec}).
 @item C-c t C-p
-procedure Spec.
+@findex ada-procedure-spec
+procedure Spec (@code{ada-package-spec}.
 @item C-c t C-r
-record.
+@findex ada-record
+record (@code{ada-record}).
 @item C-c t C-s
-subtype.
+@findex ada-subtype
+subtype (@code{ada-subtype}).
 @item C-c t C-t
-task Spec.
+@findex ada-task-spec
+task Spec (@code{ada-task-spec}).
 @item C-c t C-u
-with.
+@findex ada-with
+with (@code{ada-with}).
 @item C-c t C-v
-private.
+@findex ada-private
+private (@code{ada-private}).
 @item C-c t C-w
-when.
+@findex ada-when
+when (@code{ada-when}).
 @item C-c t C-x
-exception.
+@findex ada-exception
+exception (@code{ada-exception}).
 @item C-c t C-y
-type.
+@findex ada-type
+type (@code{ada-type}).
 @end table
 
 @c -----------------------------------------------------------------------
@@ -1008,7 +1044,7 @@ One   of   the  variables   you   can   set   in  your   project   file,
 environment, and if  yes for which target. The  default command used for
 compilation  will add  this @code{cross_prefix}  in front  of  the name:
 @code{gcc}  will become  @code{cross_prefix}-@code{gcc}, @code{gnatmake}
-will become @code{cross_prefix}-@code{gnatmake}, ...
+will become @code{cross_prefix}-@code{gnatmake}, @enddots{}
 
 This  will also modify  the way  your application  is run  and debugged,
 although this is not implemented at the moment.
@@ -1154,7 +1190,7 @@ complicated.  You then need to rewrite the function
 for an example).
 
 @c ---------------------------------------------------------------------
-@node Working Remotely, ,Using non-standard file names, Top
+@node Working Remotely, Index, Using non-standard file names, Top
 @chapter Working Remotely
 @c ---------------------------------------------------------------------
 
@@ -1236,5 +1272,14 @@ For instance, if your command was @code{$@{main@}}, you could replace it with
 However, this would not work on vxworks, for instance, where
 @command{rsh} is not supported.
 
+@node Index, , Working Remotely, Top
+@unnumbered Index
+
+@printindex fn
+
 @contents
 @bye
+
+@ignore
+   arch-tag: 68cf0d8a-55cc-4190-a28d-4984fa56ed1e
+@end ignore