X-Git-Url: https://code.delx.au/gnu-emacs-elpa/blobdiff_plain/9b838575be93d8bd2c1d0842b4692dae6090e0b0..1a3ec404888b7cfd4a721768c802c26ff64af72d:/packages/ada-mode/ada-mode.texi diff --git a/packages/ada-mode/ada-mode.texi b/packages/ada-mode/ada-mode.texi index 563ae6f9d..71b612fa1 100644 --- a/packages/ada-mode/ada-mode.texi +++ b/packages/ada-mode/ada-mode.texi @@ -26,7 +26,7 @@ developing GNU and promoting software freedom.'' @titlepage @sp 10 -@title Ada Mode Version 5.1.8 +@title Ada Mode Version 5.1.9 @page @vskip 0pt plus 1filll @insertcopying @@ -36,6 +36,8 @@ developing GNU and promoting software freedom.'' @node Top, Overview, (dir), (dir) +Ada Mode Version 5.1.9 + @ifnottex @insertcopying @end ifnottex @@ -136,24 +138,32 @@ tool @code{gpr_query}, which supports Ada, C, C++, and any other language for which AdaCore gcc provides the @code{-fdump-xref} (@code{-fdump-xref} is an AdaCore extension). +@c FIXME: list xref features supported by gpr_query but not gnatfind +@c at least: +@c C and C++ source code +@c ada-xref-overriding-function +@c ada-xref-overridden-function + @code{gpr_query} requires the @code{gnatcoll} library provided by AdaCore, distributed with GNAT GPL 2014. To build @code{gpr_query}, assuming GNAT GPL 2014 is installed in @file{/usr/gnat-gpl-2014}, and @file{/usr/gnat-gpl-2014/bin} is in PATH (if you are running Windows, use Cygwin bash to run these -commands): +commands, with GNAT GPL bin first in PATH) (note that +gnatcoll-gpl-2014-src.tar.gz unzips to gnatcoll-1.7w-src): @example tar xf ~/Downloads/gnatcoll-gpl-2014-src.tar.gz -cd gnatcoll-gpl-2014-src -./configure --enable-projects --prefix=/usr/gnat-gpl-2014 +cd gnatcoll-1.7w-src +./configure --prefix=/usr/gnat-gpl-2014 +@c on cygwin, finds cygwin as build type; not a problem @c make Gnatcoll_Build=Debug @c sudo make Gnatcoll_Build=Debug install make sudo make install cd ~/.emacs.d/elpa/ada-mode-5.xx/build -make install-gpr_query +make install @end example To build an sqlite3 executable that is compatible with the database @@ -329,6 +339,18 @@ Navigate to subprograms and types by name, from a minibuffer menu. @item speedbar Navigate to subprograms and types by name, from a list in a dedicated window. @item which-func +@item jit-lock-defer-time +In large files, parsing is slow, so it gets in the way of +interactive typing due to immediate font-lock triggering a +parse. Delay the font-lock by setting an Emacs file-local variable +in an Ada comment: + +@example +-- Local Variables: +-- jit-lock-defer-time: 0.5 +-- End: +@end example + @end table The above can all be set by the following code in your @@ -1061,7 +1083,7 @@ Some variables (like @code{src_dir}) are lists; multiple occurrences are concatenated. There must be no space between the variable name and ``='', and no -trailing spaces. +trailing spaces after the value. The current project file is given by the lisp variable @code{ada-prj-default-project-file}, and shown by the menu command @@ -1091,10 +1113,15 @@ just @code{ada-select-prj-file}, or by selecting it from the menu. @section Project file variables To set a project variable that is a list, specify each element of the -list on a separate line in the project file. +list on a separate line in the project file. The value on the last +line is the last element in the list. -Process environment variables can be referenced using the -normal @code{$var} syntax. +A variable name that starts with @code{$} is set as a process +environment variable, for processes launched from Emacs for the +project. + +In variable values, process environment variables can be referenced +using the normal @code{$var} syntax. Most project variables have defaults that can be changed by setting elisp variables; the table below identifies the elisp variable for each @@ -1188,6 +1215,7 @@ project file. @item @code{gpr_project_path} [default: @code{""}] Same as @code{ada_project_path}. +@c FIXME: add ada-build project vars @end table @node Moving Through Ada Code, Identifier completion, Project files, Top @@ -1323,6 +1351,20 @@ Number of columns to indent the continuation of a broken line. If non-nil, comments currently starting in column 0 are left in column 0. Otherwise, they are indented with previous comments or code. +@item @code{ada-indent-comment-gnat} (default value: nil) +If non-nil, comments are indented to meet the GNAT style check; one +of: + @itemize + @item + multiple of @code{ada-indent} + @item + next non-blank line + @item + previous non-blank line + @end itemize + +Otherwise, they are indented with previous comments or code. + @item @code{ada-indent-label} (default value: -3) Number of columns to indent a label.