2012-12-22 Glenn Morris <rgm@gnu.org>
+ * ada-mode.texi, ebrowse.texi, ediff.texi, ert.texi, eshell.texi:
+ * eudc.texi, idlwave.texi, rcirc.texi, remember.texi, ses.texi:
+ * speedbar.texi, vip.texi: Nuke hand-written node pointers.
+
* Makefile.in (gfdl): New variable. Use throughout where
appropriate so that targets depend on doclicense.texi.
@contents
-@node Top, Overview, (dir), (dir)
+@node Top
@top Ada Mode
@ifnottex
@end menu
-@node Overview, Installation, Top, Top
+@node Overview
@chapter Overview
The Emacs mode for programming in Ada helps the user in understanding
See the Emacs info manual, section 'Running Debuggers Under Emacs',
for general information on debugging.
-@node Installation, Customization, Overview, Top
+@node Installation
@chapter Installation
Ada mode is part of the standard Emacs distribution; if you use that,
@end itemize
-@node Customization, Compiling Executing, Installation, Top
+@node Customization
@chapter Customizing Ada mode
Here we assume you are familiar with setting variables in Emacs,
* Other customization::
@end menu
-@node Non-standard file names, Other compiler, Customization, Customization
+@node Non-standard file names
@section Non-standard file names
By default, Ada mode is configured to use the GNAT file naming
is beyond the scope of this manual; see the current definitions in
@file{ada-mode.el} and @file{ada-xref.el} for examples.
-@node Other compiler, Other customization, Non-standard file names, Customization
+@node Other compiler
@section Other compiler
By default, Ada mode is configured to use the Gnu Ada compiler GNAT.
Ada mode project files. See @ref{Project file variables} for the list
of project variables, and the corresponding lisp variables.
-@node Other customization, , Other compiler, Customization
+@node Other customization
@section Other customization
All user-settable Ada mode variables can be set via the menu
(setq variable-name value)
@end example
-@node Compiling Executing, Project files, Customization, Top
+@node Compiling Executing
@chapter Compiling Executing
Ada projects can be compiled, linked, and executed using commands on
* Compiler errors::
@end menu
-@node Compile commands, Compiler errors, Compiling Executing, Compiling Executing
+@node Compile commands
@section Compile commands
Here are the commands for building and using an Ada project, as
@end enumerate
-@node Compiler errors, , Compile commands, Compiling Executing
+@node Compiler errors
@section Compiler errors
The @code{Check file}, @code{Compile file}, and @code{Build} commands
references are also clickable in the same way, or put point after the
line number and press @key{RET}.
-@node Project files, Compiling Examples, Compiling Executing, Top
+@node Project files
@chapter Project files
An Emacs Ada mode project file specifies what directories hold sources
* Project file variables::
@end menu
-@node Project File Overview, GUI Editor, Project files, Project files
+@node Project File Overview
@section Project File Overview
Project files have a simple syntax; they may be edited directly. Each
project file. Any other extension is treated as an Emacs Ada mode
project file.
-@node GUI Editor, Project file variables, Project File Overview, Project files
+@node GUI Editor
@section GUI Editor
The project file editor is invoked with the menu @samp{Ada | Projects
buffer, or the @kbd{C-x C-s} binding. To cancel your modifications,
kill the buffer or click on the @samp{[cancel]} button.
-@node Project file variables, , GUI Editor, Project files
+@node Project file variables
@section Project file variables
The following variables can be defined in a project file; some can
@end table
-@node Compiling Examples, Moving Through Ada Code, Project files, Top
+@node Compiling Examples
@chapter Compiling Examples
We present several small projects, and walk thru the process of
* Use multiple GNAT project files::
@end menu
-@node No project files, Set compiler options, Compiling Examples, Compiling Examples
+@node No project files
@section No project files
This example uses no project files.
@end enumerate
-@node Set compiler options, Set source search path, No project files, Compiling Examples
+@node Set compiler options
@section Set compiler options
This example illustrates using an Emacs Ada mode project file to set a
Fixing the error, linking and running the code proceed as in @ref{No
project files}.
-@node Set source search path, Use GNAT project file, Set compiler options, Compiling Examples
+@node Set source search path
@section Set source search path
In this example, we show how to deal with files in more than one
Fixing the error, linking and running the code proceed as in @ref{No
project files}.
-@node Use GNAT project file, Use multiple GNAT project files, Set source search path, Compiling Examples
+@node Use GNAT project file
@section Use GNAT project file
In this example, we show how to use a GNAT project file, with no Ada
Fixing the error, linking and running the code proceed as in @ref{No
project files}.
-@node Use multiple GNAT project files, , Use GNAT project file, Compiling Examples
+@node Use multiple GNAT project files
@section Use multiple GNAT project files
In this example, we show how to use multiple GNAT project files,
demonstrating that @file{hello_5.gpr} and @file{hello_4.gpr} are being
used to set the compilation search path.
-@node Moving Through Ada Code, Identifier completion, Compiling Examples, Top
+@node Moving Through Ada Code
@chapter Moving Through Ada Code
There are several easy to use commands to navigate through Ada code. All
will try to run GNAT for you whenever cross-reference information is
needed, and is older than the current source file.
-@node Identifier completion, Automatic Smart Indentation, Moving Through Ada Code, Top
+@node Identifier completion
@chapter Identifier completion
Emacs and Ada mode provide two general ways for the completion of
Complete identifier using buffer information (not Ada-specific).
@end table
-@node Automatic Smart Indentation, Formatting Parameter Lists, Identifier completion, Top
+@node Automatic Smart Indentation
@chapter Automatic Smart Indentation
Ada mode comes with a full set of rules for automatic indentation. You
indentation.
@end table
-@node Formatting Parameter Lists, Automatic Casing, Automatic Smart Indentation, Top
+@node Formatting Parameter Lists
@chapter Formatting Parameter Lists
@table @kbd
argument names and argument types, and aligns the @code{in},
@code{out} and @code{in out} keywords.
-@node Automatic Casing, Statement Templates, Formatting Parameter Lists, Top
+@node Automatic Casing
@chapter Automatic Casing
Casing of identifiers, attributes and keywords is automatically
@code{ada-case-exception-file} (@code{ada-case-read-exceptions}).
@end table
-@node Statement Templates, Comment Handling, Automatic Casing, Top
+@node Statement Templates
@chapter Statement Templates
Templates are defined for most Ada statements, using the Emacs
type (@code{ada-type}).
@end table
-@node Comment Handling, GNU Free Documentation License, Statement Templates, Top
+@node Comment Handling
@chapter Comment Handling
By default, comment lines get indented like Ada code. There are a few
autofill the current comment.
@end table
-@node GNU Free Documentation License, Index, Comment Handling, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Index, , GNU Free Documentation License, Top
+@node Index
@unnumbered Index
@printindex fn
@contents
@ifnottex
-@node Top, Overview, (dir), (dir)
+@node Top
@top Ebrowse
You can browse C++ class hierarchies from within Emacs by using
-@node Overview, Generating browser files, Top, Top
+@node Overview
@chapter Introduction
When working in software projects using C++, I frequently missed
-@node Generating browser files, Loading a Tree, Overview, Top
-@comment node-name, next, previous, up
+@node Generating browser files
@chapter Processing Source Files
@cindex @command{ebrowse}, the program
@comment name, next, prev, up
-@node Input files, Output file, Generating browser files, Generating browser files
+@node Input files
@section Specifying Input Files
@table @samp
@comment name, next, prev, up
-@node Output file, Structs and unions, Input files, Generating browser files
+@node Output file
@section Changing the Output File Name
@table @samp
@comment name, next, prev, up
-@node Structs and unions, Matching, Output file, Generating browser files
+@node Structs and unions
@section Structs and Unions
@cindex structs
@cindex unions
@comment name, next, prev, up
-@node Matching, Verbosity, Structs and unions, Generating browser files
+@node Matching
@section Regular Expressions
@cindex regular expressions, recording
-@node Verbosity, , Matching, Generating browser files
-@comment node-name, next, previous, up
+@node Verbosity
@section Verbose Mode
@cindex verbose operation
-@node Loading a Tree, Tree Buffers, Generating browser files, Top
-@comment node-name, next, previous, up
+@node Loading a Tree
@chapter Starting to Browse
@cindex loading
@cindex browsing
@comment ***
@comment ****************************************************************
-@node Tree Buffers, Member Buffers, Loading a Tree, Top
-@comment node-name, next, previous, up
+@node Tree Buffers
@chapter Tree Buffers
@cindex tree buffer mode
@cindex class trees
-@node Source Display, Member Display, Tree Buffers, Tree Buffers
-@comment node-name, next, previous, up
+@node Source Display
@section Viewing and Finding Class Declarations
@cindex viewing, class
@cindex finding a class
-@node Member Display, Go to Class, Source Display, Tree Buffers
-@comment node-name, next, previous, up
+@node Member Display
@section Displaying Members
@cindex @samp{*Members*} buffer
@cindex @samp{*Globals*}
-@node Go to Class, Quitting, Member Display, Tree Buffers
-@comment node-name, next, previous, up
+@node Go to Class
@section Finding a Class
@cindex locate class
@cindex expanding branches
-@node Quitting, File Name Display, Go to Class, Tree Buffers
-@comment node-name, next, previous, up
+@node Quitting
@section Burying a Tree Buffer
@cindex burying tree buffer
-@node File Name Display, Expanding and Collapsing, Quitting, Tree Buffers
-@comment node-name, next, previous, up
+@node File Name Display
@section Displaying File Names
@table @kbd
@end example
-@node Expanding and Collapsing, Tree Indentation, File Name Display, Tree Buffers
-@comment node-name, next, previous, up
+@node Expanding and Collapsing
@section Expanding and Collapsing a Tree
@cindex expand tree branch
@cindex collapse tree branch
-@node Tree Indentation, Killing Classes, Expanding and Collapsing, Tree Buffers
-@comment node-name, next, previous, up
+@node Tree Indentation
@section Changing the Tree Indentation
@cindex tree indentation
@cindex indentation of the tree
-@node Killing Classes, Saving a Tree, Tree Indentation, Tree Buffers
-@comment node-name, next, previous, up
+@node Killing Classes
@section Removing Classes from the Tree
@cindex killing classes
@cindex class, remove from tree
-@node Saving a Tree, Statistics, Killing Classes, Tree Buffers
-@comment node-name, next, previous, up
-@comment node-name, next, previous, up
+@node Saving a Tree
@section Saving a Tree
@cindex save tree to a file
@cindex tree, save to a file
-@node Statistics, Marking Classes, Saving a Tree, Tree Buffers
-@comment node-name, next, previous, up
+@node Statistics
+@section Statistics
@cindex statistics for a tree
@cindex tree statistics
@cindex class statistics
-@node Marking Classes, , Statistics, Tree Buffers
-@comment node-name, next, previous, up
+@node Marking Classes
+@section Marking Classes
@cindex marking classes
@cindex operations on marked classes
@c ***
@c ****************************************************************
-@node Member Buffers, Tags-like Functions, Tree Buffers, Top
-@comment node-name, next, previous, up
+@node Member Buffers
@chapter Member Buffers
@cindex members
@cindex member buffer mode
-@node Switching Member Lists, Finding/Viewing, Member Buffers, Member Buffers
-@comment node-name, next, previous, up
+@node Switching Member Lists
@section Switching Member Lists
@cindex member lists, in member buffers
@cindex static members
-@node Finding/Viewing, Inherited Members, Switching Member Lists, Member Buffers
-@comment node-name, next, previous, up
+@node Finding/Viewing
@section Finding and Viewing Member Source
@cindex finding members, in member buffers
@cindex viewing members, in member buffers
-@node Inherited Members, Searching Members, Finding/Viewing, Member Buffers
-@comment node-name, next, previous, up
+@node Inherited Members
@section Display of Inherited Members
@cindex superclasses, members
@cindex base classes, members
-@node Searching Members, Switching to Tree, Inherited Members, Member Buffers
-@comment node-name, next, previous, up
+@node Searching Members
@section Searching Members
@cindex searching members
-@node Switching to Tree, Filters, Searching Members, Member Buffers
-@comment node-name, next, previous, up
+@node Switching to Tree
@section Switching to Tree Buffer
@cindex tree buffer, switch to
@cindex buffer switching
-@node Filters, Attributes, Switching to Tree, Member Buffers
-@comment node-name, next, previous, up
+@node Filters
@section Filters
@cindex filters
-@node Attributes, Long and Short Display, Filters, Member Buffers
-@comment node-name, next, previous, up
+@node Attributes
@section Displaying Member Attributes
@cindex attributes
@cindex member attribute display
-@node Long and Short Display, Regexp Display, Attributes, Member Buffers
-@comment node-name, next, previous, up
+@node Long and Short Display
@section Long and Short Member Display
@cindex display form
@cindex long display
-@node Regexp Display, Switching Classes, Long and Short Display, Member Buffers
-@comment node-name, next, previous, up
+@node Regexp Display
@section Display of Regular Expressions
@cindex regular expression display
-@node Switching Classes, Killing/Burying, Regexp Display, Member Buffers
-@comment node-name, next, previous, up
+@node Switching Classes
@section Displaying Another Class
@cindex base class, display
@cindex derived class, display
-@node Killing/Burying, Column Width, Switching Classes, Member Buffers
-@comment node-name, next, previous, up
+@node Killing/Burying
@section Burying a Member Buffer
@cindex burying member buffers
-@node Column Width, Redisplay, Killing/Burying, Member Buffers
-@comment node-name, next, previous, up
+@node Column Width
@section Setting the Column Width
@cindex column width
@cindex member indentation
-@node Redisplay, Getting Help, Column Width, Member Buffers
-@comment node-name, next, previous, up
+@node Redisplay
@section Forced Redisplay
@cindex redisplay of member buffers
-@node Getting Help, , Redisplay, Member Buffers
-@comment node-name, next, previous, up
+@node Getting Help
+@section Getting Help
@cindex help
@table @kbd
@comment *** TAGS LIKE FUNCTIONS
@comment **************************************************************
-@node Tags-like Functions, GNU Free Documentation License, Member Buffers, Top
-@comment node-name, next, previous, up
+@node Tags-like Functions
@chapter Tags-like Functions
Ebrowse provides tags functions similar to those of the standard
-@node Finding and Viewing, Position Stack, Tags-like Functions, Tags-like Functions
-@comment node-name, next, previous, up
+@node Finding and Viewing
@section Finding and Viewing Members
@cindex finding class member, in C++ source
@cindex viewing class member, in C++ source
-@node Position Stack, Search & Replace, Finding and Viewing, Tags-like Functions
-@comment node-name, next, previous, up
+@node Position Stack
@section The Position Stack
@cindex position stack
-@node Search & Replace, Members in Files, Position Stack, Tags-like Functions
-@comment node-name, next, previous, up
+@node Search & Replace
@section Searching and Replacing
@cindex searching multiple C++ files
@cindex replacing in multiple C++ files
-@node Members in Files, Apropos, Search & Replace, Tags-like Functions
-@comment node-name, next, previous, up
+@node Members in Files
@section Members in Files
@cindex files
@cindex members in file, listing
-@node Apropos, Symbol Completion, Members in Files, Tags-like Functions
-@comment node-name, next, previous, up
+@node Apropos
@section Member Apropos
@cindex apropos on class members
@cindex members, matching regexp
-@node Symbol Completion, Member Buffer Display, Apropos, Tags-like Functions
-@comment node-name, next, previous, up
+@node Symbol Completion
@section Symbol Completion
@cindex completion
@cindex symbol completion
-@node Member Buffer Display, , Symbol Completion, Tags-like Functions
+@node Member Buffer Display
@section Quick Member Display
@cindex member buffer, for member at point
in on with the command @kbd{C-c C-m m}.
-@node GNU Free Documentation License, Concept Index, Tags-like Functions, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Concept Index, , GNU Free Documentation License, Top
+@node Concept Index
@unnumbered Concept Index
@printindex cp
@contents
-@node Top, Introduction, (dir), (dir)
+@node Top
@top Ediff
@insertcopying
* Index::
@end menu
-@node Introduction, Major Entry Points, Top, Top
+@node Introduction
@chapter Introduction
@cindex Comparing files and buffers
extends Emerge, much of the functionality in Ediff is influenced by Emerge.
The architecture and the interface are, of course, drastically different.
-@node Major Entry Points, Session Commands, Introduction, Top
+@node Major Entry Points
@chapter Major Entry Points
When Ediff starts up, it displays a small control window, which accepts the
related Ediff sessions by taking a directory and comparing (or merging)
versions of files in that directory.
-@node Session Commands, Registry of Ediff Sessions, Major Entry Points, Top
+@node Session Commands
@chapter Session Commands
All Ediff commands are displayed in a Quick Help window, unless you type
* Other Session Commands:: Commands that are not bound to keys.
@end menu
-@node Quick Help Commands,Other Session Commands,,Session Commands
+@node Quick Help Commands
@section Quick Help Commands
@cindex command help
@cindex important commands
@end table
-@node Other Session Commands,,Quick Help Commands,Session Commands
+@node Other Session Commands
@section Other Session Commands
The following commands can be invoked from within any Ediff session,
profiling of ediff commands.
@end table
-@node Registry of Ediff Sessions, Session Groups, Session Commands, Top
+@node Registry of Ediff Sessions
@chapter Registry of Ediff Sessions
Ediff maintains a registry of all its invocations that are
but you don't need to memorize them, since they are listed at the top of
the registry buffer.
-@node Session Groups, Remote and Compressed Files, Registry of Ediff Sessions, Top
+@node Session Groups
@chapter Session Groups
Several major entries of Ediff perform comparison and merging on
-@node Remote and Compressed Files, Customization, Session Groups, Top
+@node Remote and Compressed Files
@chapter Remote and Compressed Files
Ediff works with remote, compressed, and encrypted files. Ediff
of the patch is placed into the file source-name (@file{_orig} is used
on systems like DOS, etc.)
-@node Customization, Credits, Remote and Compressed Files, Top
+@node Customization
@chapter Customization
Ediff has a rather self-explanatory interface, and in most cases you
* Notes on Heavy-duty Customization:: Customization for the gurus.
@end menu
-@node Hooks, Quick Help Customization, Customization, Customization
+@node Hooks
@section Hooks
The bulk of customization can be done via the following hooks:
bindings for different kinds of meta buffers.
@end table
-@node Quick Help Customization, Window and Frame Configuration, Hooks, Customization
+@node Quick Help Customization
@section Quick Help Customization
@vindex ediff-use-long-help-message
@vindex ediff-control-buffer
the variable @code{ediff-help-message}, which is local to
@code{ediff-control-buffer}.
-@node Window and Frame Configuration, Selective Browsing, Quick Help Customization, Customization
+@node Window and Frame Configuration
@section Window and Frame Configuration
On a non-windowing display, Ediff sets things up in one frame, splitting
to another control panel. (Different control panel buffers are
distinguished by a numerical suffix, e.g., @samp{Ediff Control Panel<3>}.)
-@node Selective Browsing, Highlighting Difference Regions, Window and Frame Configuration, Customization
+@node Selective Browsing
@section Selective Browsing
Sometimes it is convenient to be able to step through only some difference
When case sensitivity is toggled, all difference
regions are recomputed.
-@node Highlighting Difference Regions, Narrowing, Selective Browsing, Customization
+@node Highlighting Difference Regions
@section Highlighting Difference Regions
The following variables control the way Ediff highlights difference
or @code{set/make-face-@dots{}} as shown above. Emacs's low-level
face-manipulation functions should be avoided.
-@node Narrowing, Refinement of Difference Regions, Highlighting Difference Regions, Customization
+@node Narrowing
@section Narrowing
If buffers being compared are narrowed at the time of invocation of
that existed before the current invocation.
@end table
-@node Refinement of Difference Regions, Patch and Diff Programs, Narrowing, Customization
+@node Refinement of Difference Regions
@section Refinement of Difference Regions
Ediff has variables to control the way fine differences are
different states: auto-refining, no-auto-refining, and no-highlighting
of fine differences.
-@node Patch and Diff Programs, Merging and diff3, Refinement of Difference Regions, Customization
+@node Patch and Diff Programs
@section Patch and Diff Programs
This section describes variables that specify the programs to be used for
@code{diff}. Instead, make sure you are using some implementation of POSIX
@code{diff}, such as @code{gnudiff}.
-@node Merging and diff3, Support for Version Control, Patch and Diff Programs, Customization
+@node Merging and diff3
@section Merging and diff3
Ediff supports three-way comparison via the functions @code{ediff-files3} and
specified by the variable @code{ediff-merge-filename-prefix}. The default
is @code{merge_}, but this can be changed by the user.
-@node Support for Version Control, Customizing the Mode Line, Merging and diff3, Customization
+@node Support for Version Control
@section Support for Version Control
@code{run-ediff-from-cvs-buffer}---see the documentation string for this
function.
-@node Customizing the Mode Line, Miscellaneous, Support for Version Control, Customization
+@node Customizing the Mode Line
@section Customizing the Mode Line
When Ediff is running, the mode line of @samp{Ediff Control Panel}
@pindex @file{uniquify.el}
@pindex @file{mode-line.el}
-@node Miscellaneous, Notes on Heavy-duty Customization, Customizing the Mode Line, Customization
+@node Miscellaneous
@section Miscellaneous
Here are a few other variables for customizing Ediff:
@end table
-@node Notes on Heavy-duty Customization, , Miscellaneous, Customization
+@node Notes on Heavy-duty Customization
@section Notes on Heavy-duty Customization
Some users need to customize Ediff in rather sophisticated ways, which
the control buffer is in its own frame.
@end table
-@node Credits, GNU Free Documentation License, Customization, Top
+@node Credits
@chapter Credits
Ediff was written by Michael Kifer <kifer@@cs.stonybrook.edu>. It was inspired
Eli Zaretskii (eliz at is.elta.co.il)
@end example
-@node GNU Free Documentation License, Index, Credits, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Index, , GNU Free Documentation License, Top
+@node Index
@unnumbered Index
@printindex cp
@end quotation
@end copying
-@node Top, Introduction, (dir), (dir)
+@node Top
@top ERT: Emacs Lisp Regression Testing
ERT is a tool for automated testing in Emacs Lisp. Its main features
@end detailmenu
@end menu
-@node Introduction, How to Run Tests, Top, Top
+@node Introduction
@chapter Introduction
ERT allows you to define @emph{tests} in addition to functions,
Environment}.
-@node How to Run Tests, How to Write Tests, Introduction, Top
+@node How to Run Tests
@chapter How to Run Tests
You can run tests either in the Emacs you are working in, or on the
@end menu
-@node Running Tests Interactively, Running Tests in Batch Mode, How to Run Tests, How to Run Tests
+@node Running Tests Interactively
@section Running Tests Interactively
You can run the tests that are currently defined in your Emacs with
of the expression.
-@node Running Tests in Batch Mode, Test Selectors, Running Tests Interactively, How to Run Tests
+@node Running Tests in Batch Mode
@section Running Tests in Batch Mode
ERT supports automated invocations from the command line or from
files that it requires are on your @code{load-path}.
-@node Test Selectors, , Running Tests in Batch Mode, How to Run Tests
+@node Test Selectors
@section Test Selectors
Functions like @code{ert} accept a @emph{test selector}, a Lisp
@code{:causes-redisplay}.
-@node How to Write Tests, How to Debug Tests, How to Run Tests, Top
+@node How to Write Tests
@chapter How to Write Tests
ERT lets you define tests in the same way you define functions. You
* Useful Techniques:: Some examples.
@end menu
-@node The @code{should} Macro, Expected Failures, How to Write Tests, How to Write Tests
+@node The @code{should} Macro
@section The @code{should} Macro
Test bodies can include arbitrary code; but to be useful, they need to
@code{should} reports.
-@node Expected Failures, Tests and Their Environment, The @code{should} Macro, How to Write Tests
+@node Expected Failures
@section Expected Failures
Some bugs are complicated to fix, or not very important, and are left as
@end lisp
-@node Tests and Their Environment, Useful Techniques, Expected Failures, How to Write Tests
+@node Tests and Their Environment
@section Tests and Their Environment
The outcome of running a test should not depend on the current state
hook variables to nil. This avoids the above problems.
-@node Useful Techniques, , Tests and Their Environment, How to Write Tests
+@node Useful Techniques
@section Useful Techniques when Writing Tests
Testing simple functions that have no side effects and no dependencies
well.
-@node How to Debug Tests, Extending ERT, How to Write Tests, Top
+@node How to Debug Tests
@chapter How to Debug Tests
This section describes how to use ERT's features to understand why
@end menu
-@node Understanding Explanations, Interactive Debugging, How to Debug Tests, How to Debug Tests
+@node Understanding Explanations
@section Understanding Explanations
Failed @code{should} forms are reported like this:
function registered. @xref{Defining Explanation Functions}.
-@node Interactive Debugging, , Understanding Explanations, How to Debug Tests
+@node Interactive Debugging
@section Interactive Debugging
Debugging failed tests essentially works the same way as debugging any
@end itemize
-@node Extending ERT, Other Testing Concepts, How to Debug Tests, Top
+@node Extending ERT
@chapter Extending ERT
There are several ways to add functionality to ERT.
@end menu
-@node Defining Explanation Functions, Low-Level Functions for Working with Tests, Extending ERT, Extending ERT
+@node Defining Explanation Functions
@section Defining Explanation Functions
The explanation function for a predicate is a function that takes the
explanation function.
-@node Low-Level Functions for Working with Tests, , Defining Explanation Functions, Extending ERT
+@node Low-Level Functions for Working with Tests
@section Low-Level Functions for Working with Tests
Both @code{ert-run-tests-interactively} and @code{ert-run-tests-batch}
Contributions to ERT are welcome.
-@node Other Testing Concepts, GNU Free Documentation License , Extending ERT, Top
+@node Other Testing Concepts
@chapter Other Testing Concepts
For information on mocks, stubs, fixtures, or test suites, see below.
* Fixtures and Test Suites:: How ERT differs from tools for other languages.
@end menu
-@node Mocks and Stubs, Fixtures and Test Suites, Other Testing Concepts, Other Testing Concepts
+@node Mocks and Stubs
@section Other Tools for Emacs Lisp
Stubbing out functions or using so-called @emph{mocks} can make it
offers mocks for Emacs Lisp and can be used in conjunction with ERT.
-@node Fixtures and Test Suites, , Mocks and Stubs, Other Testing Concepts
+@node Fixtures and Test Suites
@section Fixtures and Test Suites
In many ways, ERT is similar to frameworks for other languages like
often. This can be achieved with the @code{:tag} argument to
@code{ert-deftest} and @code{tag} test selectors.
-@node GNU Free Documentation License, , Other Testing Concepts, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
@c ================================================================
@ifnottex
-@node Top, What is Eshell?, (dir), (dir)
+@node Top
@top Eshell
Eshell is a shell-like command interpreter
@contents
@ifnottex
-@node Top, Overview, (dir), (dir)
+@node Top
@top Emacs Unified Directory Client
-@comment node-name, next, previous, up
@insertcopying
@end ifnottex
-@node Overview, Installation, Top, Top
-@comment node-name, next, previous, up
+@node Overview
@chapter Overview
EUDC, the @dfn{Emacs Unified Directory Client}, provides a common user
-@node LDAP, CCSO PH/QI, Overview, Overview
-@comment node-name, next, previous, up
+@node LDAP
@section LDAP
LDAP, @dfn{the Lightweight Directory Access Protocol}, is a communication
(@pxref{LDAP Requirements})
-@node CCSO PH/QI, BBDB, LDAP, Overview
-@comment node-name, next, previous, up
+@node CCSO PH/QI
@section CCSO PH/QI
The Central Computing Services Office (CCSO) of the University of
EUDC.
-@node BBDB, , CCSO PH/QI, Overview
-@comment node-name, next, previous, up
+@node BBDB
@section BBDB
BBDB is the @dfn{Big Brother's Insidious Database}, a package for Emacs
EUDC also offers a means to insert results from directory queries into
your own local BBDB (@pxref{Creating BBDB Records})
-@node Installation, Usage, Overview, Top
-@comment node-name, next, previous, up
+@node Installation
@chapter Installation
Add the following to your @file{.emacs} init file:
* LDAP Requirements:: EUDC needs external support for LDAP
@end menu
-@node LDAP Requirements, , Installation, Installation
-@comment node-name, next, previous, up
+@node LDAP Requirements
@section LDAP Requirements
LDAP support is added by means of @file{ldap.el}, which is part of Emacs.
(@url{http://www.openldap.org/}).
-@node Usage, Credits, Installation, Top
-@comment node-name, next, previous, up
+@node Usage
@chapter Usage
This chapter describes the usage of EUDC@. Most functions and
@end menu
-@node Querying Servers, Query Form, Usage, Usage
-@comment node-name, next, previous, up
+@node Querying Servers
@section Querying Servers
EUDC's basic functionality is to let you query a directory server and
* Duplicate Attributes:: What to do when records have duplicate attributes
@end menu
-@node Selecting a Server, Return Attributes, Querying Servers, Querying Servers
+@node Selecting a Server
@subsection Selecting a Server
Before doing any query you will need to set the directory server. You
new directory server and protocol.
@end deffn
-@node Return Attributes, Duplicate Attributes, Selecting a Server, Querying Servers
+@node Return Attributes
@subsection Return Attributes
Directory servers may be configured to return a default set of
attributes are ignored. Default is @code{t}.
@end defopt
-@node Duplicate Attributes, , Return Attributes, Querying Servers
+@node Duplicate Attributes
@subsection Duplicate Attributes
Directory standards may authorize different instances of the same
-@node Query Form, Display of Query Results, Querying Servers, Usage
-@comment node-name, next, previous, up
+@node Query Form
@section Query Form
The simplest way to query your directory server is to use the query
names defined in @code{eudc-user-attribute-names-alist}.
@end defvar
-@node Display of Query Results, Inline Query Expansion, Query Form, Usage
-@comment node-name, next, previous, up
+@node Display of Query Results
@section Display of Query Results
Upon successful completion of a form query, EUDC will display a buffer
@end defvar
-@node Inline Query Expansion, The Server Hotlist, Display of Query Results, Usage
-@comment node-name, next, previous, up
+@node Inline Query Expansion
@section Inline Query Expansion
Inline query expansion is a powerful method to get completion from your
-@node The Server Hotlist, Multi-server Queries, Inline Query Expansion, Usage
-@comment node-name, next, previous, up
+@node The Server Hotlist
@section The Server Hotlist
EUDC lets you maintain a list of frequently used servers so that you
* The Hotlist Edit Buffer:: An interactive hotlist editing facility
@end menu
-@node The Hotlist Edit Buffer, , The Server Hotlist, The Server Hotlist
-@comment node-name, next, previous, up
+@node The Hotlist Edit Buffer
@subsection The Hotlist Edit Buffer
The hotlist edit buffer offers a means to manage a list of frequently
@end deffn
-@node Multi-server Queries, Creating BBDB Records, The Server Hotlist, Usage
-@comment node-name, next, previous, up
+@node Multi-server Queries
@section Multi-server Queries
When using inline query expansion (@pxref{Inline Query Expansion}), EUDC
-@node Creating BBDB Records, Server/Protocol Locals, Multi-server Queries, Usage
-@comment node-name, next, previous, up
+@node Creating BBDB Records
@section Creating BBDB Records
@findex eudc-insert-record-at-point-into-bbdb
actually be inserted as part of the newly created BBDB record.
-@node Server/Protocol Locals, , Creating BBDB Records, Usage
-@comment node-name, next, previous, up
+@node Server/Protocol Locals
@section Server/Protocol Locals
EUDC can be customized independently for each server or directory
* Manipulating local bindings:: Functions to set and query local bindings
@end menu
-@node Manipulating local bindings, , Server/Protocol Locals, Server/Protocol Locals
-@comment node-name, next, previous, up
+@node Manipulating local bindings
@subsection Manipulating local bindings
EUDC offers functions that let you set and query variables on a per
-@node Credits, GNU Free Documentation License, Usage, Top
-@comment node-name, next, previous, up
+@node Credits
@chapter Credits
EUDC was written by Oscar Figueiredo based on @file{ph.el} by the
Thanks to Soren Dayton for his suggestions, his enthusiasm and his help
in testing and proofreading the code and docs of @file{ph.el}.
-@node GNU Free Documentation License, Command and Function Index, Credits, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Command and Function Index, Variables Index, GNU Free Documentation License, Top
-@comment node-name, next, previous, up
+@node Command and Function Index
@unnumbered Command and Function Index
@printindex fn
-@node Variables Index, , Command and Function Index, Top
-@comment node-name, next, previous, up
+@node Variables Index
@unnumbered Variables Index
@printindex vr
@contents
@ifnottex
-@node Top, Introduction, (dir), (dir)
+@node Top
@top IDLWAVE
IDLWAVE is a package which supports editing source code written in the
@end detailmenu
@end menu
-@node Introduction, IDLWAVE in a Nutshell, Top, Top
+@node Introduction
@chapter Introduction
@cindex Introduction
@cindex CORBA (Common Object Request Broker Architecture)
with @kbd{C-h v}). Some configuration examples are also given in the
appendix.
-@node IDLWAVE in a Nutshell, Getting Started, Introduction, Top
+@node IDLWAVE in a Nutshell
@chapter IDLWAVE in a Nutshell
@cindex Summary of important commands
@cindex IDLWAVE in a Nutshell
<A NAME="TUTORIAL"></A>
@end html
-@node Getting Started, The IDLWAVE Major Mode, IDLWAVE in a Nutshell, Top
+@node Getting Started
@chapter Getting Started (Tutorial)
@cindex Quick-Start
@cindex Tutorial
* Lesson III---User Catalog::
@end menu
-@node Lesson I---Development Cycle, Lesson II---Customization, Getting Started, Getting Started
+@node Lesson I---Development Cycle
@section Lesson I: Development Cycle
The purpose of this tutorial is to guide you through a very basic
Change the code to plot 100 years and see that every 28 years, the
sequence of weekdays repeats.
-@node Lesson II---Customization, Lesson III---User Catalog, Lesson I---Development Cycle, Getting Started
+@node Lesson II---Customization
@section Lesson II: Customization
Emacs is probably the most customizable piece of software ever written,
(local-set-key [f8] 'idlwave-shell-clear-all-bp)))
@end lisp
-@node Lesson III---User Catalog, , Lesson II---Customization, Getting Started
+@node Lesson III---User Catalog
@section Lesson III: User and Library Catalogs
We have already used the routine info display in the first part of this
(with @kbd{C-h v idlwave<-variable-name> @key{RET}}) and ask the
remaining questions on the newsgroup @code{comp.lang.idl-pvwave}.
-@node The IDLWAVE Major Mode, The IDLWAVE Shell, Getting Started, Top
+@node The IDLWAVE Major Mode
@chapter The IDLWAVE Major Mode
@cindex IDLWAVE major mode
@cindex Major mode, @code{idlwave-mode}
* Misc Options:: Things that fit nowhere else
@end menu
-@node Code Formatting, Routine Info, The IDLWAVE Major Mode, The IDLWAVE Major Mode
+@node Code Formatting
@section Code Formatting
@cindex Code formatting
@cindex Formatting, of code
rely on it to help keep your code neat and organized.
-@node Code Indentation, Continued Statement Indentation, Code Formatting, Code Formatting
+@node Code Indentation
@subsection Code Indentation
@cindex Code indentation
@cindex Indentation
BEGIN lines.
@end defopt
-@node Continued Statement Indentation, Comment Indentation, Code Indentation, Code Formatting
+@node Continued Statement Indentation
@subsection Continued Statement Indentation
@cindex Indentation, continued statement
@cindex Continued statement indentation
@code{idlwave-max-extra-continuation-indent} limit is satisfied.
@end defopt
-@node Comment Indentation, Continuation Lines, Continued Statement Indentation, Code Formatting
+@node Comment Indentation
@subsection Comment Indentation
@cindex Comment indentation
@cindex Hanging paragraphs
IDL code.
@end defopt
-@node Continuation Lines, Syntax Highlighting, Comment Indentation, Code Formatting
+@node Continuation Lines
@subsection Continuation Lines and Filling
@cindex Continuation lines
@cindex Line splitting
@code{idlwave-indent-regexp}.
@end defopt
-@node Syntax Highlighting, Octals and Highlighting, Continuation Lines, Code Formatting
+@node Syntax Highlighting
@subsection Syntax Highlighting
@cindex Syntax highlighting
@cindex Highlighting of syntax
2.
@end defopt
-@node Octals and Highlighting, , Syntax Highlighting, Code Formatting
+@node Octals and Highlighting
@subsection Octals and Highlighting
@cindex Syntax highlighting, Octals
@cindex Highlighting of syntax, Octals
@noindent This simultaneously solves the font-lock problem and is more
consistent with the notation for hexadecimal numbers, e.g., @code{'C5'XB}.
-@node Routine Info, Online Help, Code Formatting, The IDLWAVE Major Mode
+@node Routine Info
@section Routine Info
@cindex Routine info
@cindex Updating routine info
@html
<A NAME="ONLINE_HELP"></A>
@end html
-@node Online Help, Completion, Routine Info, The IDLWAVE Major Mode
+@node Online Help
@section Online Help
@cindex Online Help
* Help with Source::
@end menu
-@node Help with HTML Documentation, Help with Source, Online Help, Online Help
+@node Help with HTML Documentation
@subsection Help with HTML Documentation
@cindex HTML Help
@cindex Help using HTML manuals
The face for links to IDLWAVE online help.
@end defopt
-@node Help with Source, , Help with HTML Documentation, Online Help
+@node Help with Source
@subsection Help with Source
@cindex Help using routine source
@end defopt
-@node Completion, Routine Source, Online Help, The IDLWAVE Major Mode
+@node Completion
@section Completion
@cindex Completion
@cindex Keyword completion
* Structure Tag Completion:: Completing state.Tag
@end menu
-@node Case of Completed Words, Object Method Completion and Class Ambiguity, Completion, Completion
+@node Case of Completed Words
@subsection Case of Completed Words
@cindex Case of completed words
@cindex Mixed case completion
completion.
@end defopt
-@node Object Method Completion and Class Ambiguity, Object Method Completion in the Shell, Case of Completed Words, Completion
+@node Object Method Completion and Class Ambiguity
@subsection Object Method Completion and Class Ambiguity
@cindex Object methods
@cindex Class ambiguity
class text property.
@end defopt
-@node Object Method Completion in the Shell, Class and Keyword Inheritance, Object Method Completion and Class Ambiguity, Completion
+@node Object Method Completion in the Shell
@subsection Object Method Completion in the Shell
@cindex Method Completion in Shell
In the IDLWAVE Shell (@pxref{The IDLWAVE Shell}), objects on which
info, or help. If unsuccessful, information from all known classes will
be used (as in the buffer).
-@node Class and Keyword Inheritance, Structure Tag Completion, Object Method Completion in the Shell, Completion
+@node Class and Keyword Inheritance
@subsection Class and Keyword Inheritance
@cindex Inheritance, class
@cindex Keyword inheritance
class-driven keyword inheritance will be used for Completion.
@end defopt
-@node Structure Tag Completion, , Class and Keyword Inheritance, Completion
+@node Structure Tag Completion
@subsection Structure Tag Completion
@cindex Completion, structure tag
@cindex Structure tag completion
@noindent will complete with all structure fields of the structure
@code{st}.
-@node Routine Source, Resolving Routines, Completion, The IDLWAVE Major Mode
+@node Routine Source
@section Routine Source
@cindex Routine source file
@cindex Module source file
(@code{idlwave-kill-autoloaded-buffers}) can be used to easily remove
these buffers.
-@node Resolving Routines, Code Templates, Routine Source, The IDLWAVE Major Mode
+@node Resolving Routines
@section Resolving Routines
@cindex @code{RESOLVE_ROUTINE}
@cindex Compiling library modules
@xref{Sources of Routine Info}, for more information on the ways IDLWAVE
collects data about routines, and how to update this information.
-@node Code Templates, Abbreviations, Resolving Routines, The IDLWAVE Major Mode
+@node Code Templates
@section Code Templates
@cindex Code templates
@cindex Templates
All code templates are also available as abbreviations
(@pxref{Abbreviations}).
-@node Abbreviations, Actions, Code Templates, The IDLWAVE Major Mode
+@node Abbreviations
@section Abbreviations
@cindex Abbreviations
between the parentheses of a function call.
@end defopt
-@node Actions, Doc Header, Abbreviations, The IDLWAVE Major Mode
+@node Actions
@section Actions
@cindex Actions
@cindex Coding standards, enforcing
* Case Changes:: Enforcing upper case keywords
@end menu
-@node Block Boundary Check, Padding Operators, Actions, Actions
+@node Block Boundary Check
@subsection Block Boundary Check
@cindex Block boundary check
@cindex @code{END} type checking
Non-@code{nil} means re-indent line after END was typed.
@end defopt
-@node Padding Operators, Case Changes, Block Boundary Check, Actions
+@node Padding Operators
@subsection Padding Operators
@cindex Padding operators with spaces
@cindex Operators, padding with spaces
Non-@code{nil} means space-pad the @samp{=} in keyword assignments.
@end defopt
-@node Case Changes, , Padding Operators, Actions
+@node Case Changes
@subsection Case Changes
@cindex Case changes
@cindex Upcase, enforcing for reserved words
@end defopt
-@node Doc Header, Motion Commands, Actions, The IDLWAVE Major Mode
+@node Doc Header
@section Documentation Header
@cindex Documentation header
@cindex DocLib header
Regexp matching the start of a document library header.
@end defopt
-@node Motion Commands, Misc Options, Doc Header, The IDLWAVE Major Mode
+@node Motion Commands
@section Motion Commands
@cindex Motion commands
@cindex Program structure, moving through
@end multitable
-@node Misc Options, , Motion Commands, The IDLWAVE Major Mode
+@node Misc Options
@section Miscellaneous Options
@cindex Hooks
Normal hook. Executed when @file{idlwave.el} is loaded.
@end defopt
-@node The IDLWAVE Shell, Acknowledgments, The IDLWAVE Major Mode, Top
+@node The IDLWAVE Shell
@chapter The IDLWAVE Shell
@cindex IDLWAVE shell
@cindex Major mode, @code{idlwave-shell-mode}
* Custom Expression Examination::
@end menu
-@node Starting the Shell, Using the Shell, The IDLWAVE Shell, The IDLWAVE Shell
+@node Starting the Shell
@section Starting the Shell
@cindex Starting the shell
@cindex Shell, starting
Hook for customizing @code{idlwave-shell-mode}.
@end defopt
-@node Using the Shell, Commands Sent to the Shell, Starting the Shell, The IDLWAVE Shell
+@node Using the Shell
@section Using the Shell
@cindex Comint
@cindex Shell, basic commands
modes.
@end defopt
-@node Commands Sent to the Shell, Debugging IDL Programs, Using the Shell, The IDLWAVE Shell
+@node Commands Sent to the Shell
@section Commands Sent to the Shell
@cindex Commands in shell, showing
@cindex Showing commands in shell
(e.g., stepping to an error).
@end defopt
-@node Debugging IDL Programs, Examining Variables, Commands Sent to the Shell, The IDLWAVE Shell
+@node Debugging IDL Programs
@section Debugging IDL Programs
@cindex Debugging
@cindex Keybindings for debugging
@end menu
-@node A Tale of Two Modes, Debug Key Bindings, Debugging IDL Programs, Debugging IDL Programs
+@node A Tale of Two Modes
@subsection A Tale of Two Modes
@cindex Electric Debug Mode
@cindex Debugging Interface
prevented from activating automatically by customizing the variable
@code{idlwave-shell-automatic-electric-debug}.
-@node Debug Key Bindings, Breakpoints and Stepping, A Tale of Two Modes, Debugging IDL Programs
+@node Debug Key Bindings
@subsection Debug Key Bindings
@kindex C-c C-d
@cindex Key bindings
@code{alt}, and @code{shift}.
@end defopt
-@node Breakpoints and Stepping, Compiling Programs, Debug Key Bindings, Debugging IDL Programs
+@node Breakpoints and Stepping
@subsection Breakpoints and Stepping
@cindex Breakpoints
@cindex Stepping
@end defopt
-@node Compiling Programs, Walking the Calling Stack, Breakpoints and Stepping, Debugging IDL Programs
+@node Compiling Programs
@subsection Compiling Programs
@cindex Compiling programs
@cindex Programs, compiling
very useful. A temporary file is created holding the contents of the
current region (with @code{END} appended), and run from the shell.
-@node Walking the Calling Stack, Electric Debug Mode, Compiling Programs, Debugging IDL Programs
+@node Walking the Calling Stack
@subsection Walking the Calling Stack
@cindex Calling stack, walking
@html
<A NAME="EDEBUG"></A>
@end html
-@node Electric Debug Mode, , Walking the Calling Stack, Debugging IDL Programs
+@node Electric Debug Mode
@subsection Electric Debug Mode
@cindex Electric Debug Mode
@cindex @samp{*Debugging*}
@html
<A NAME="EXAMINE"></A>
@end html
-@node Examining Variables, Custom Expression Examination, Debugging IDL Programs, The IDLWAVE Shell
+@node Examining Variables
@section Examining Variables
@cindex @code{PRINT} expressions
@cindex @code{HELP}, on expressions
array expressions.
@end defopt
-@node Custom Expression Examination, , Examining Variables, The IDLWAVE Shell
+@node Custom Expression Examination
@section Custom Expression Examination
@cindex Expressions, custom examination
@cindex Custom expression examination
(three underscores) are replaced by the indicated expression.
@end defopt
-@node Acknowledgments, Sources of Routine Info, The IDLWAVE Shell, Top
+@node Acknowledgments
@chapter Acknowledgments
@cindex Acknowledgments
@cindex Maintainer, of IDLWAVE
@noindent
Thanks to everyone!
-@node Sources of Routine Info, HTML Help Browser Tips, Acknowledgments, Top
+@node Sources of Routine Info
@appendix Sources of Routine Info
@cindex Sources of routine information
* Documentation Scan:: Scanning the IDL Manuals
@end menu
-@node Routine Definitions, Routine Information Sources, Sources of Routine Info, Sources of Routine Info
+@node Routine Definitions
@appendixsec Routine Definitions
@cindex Routine definitions
@cindex IDL variable @code{!PATH}
except by querying the Shell for calling information (DLMs only).
@end enumerate
-@node Routine Information Sources, Catalogs, Routine Definitions, Sources of Routine Info
+@node Routine Information Sources
@appendixsec Routine Information Sources
@cindex Routine info sources
@cindex Builtin list of routines
@html
<A NAME="CATALOGS"></A>
@end html
-@node Catalogs, Load-Path Shadows, Routine Information Sources, Sources of Routine Info
+@node Catalogs
@appendixsec Catalogs
@cindex Catalogs
@html
<A NAME="LIBRARY_CATALOGS"></A>
@end html
-@node Library Catalogs, User Catalog, Catalogs, Catalogs
+@node Library Catalogs
@appendixsubsec Library Catalogs
@cindex @file{.idlwave_catalog}
@cindex Library catalogs
performance is a problem and/or the catalogs are not needed.
@end defopt
-@node User Catalog, , Library Catalogs, Catalogs
+@node User Catalog
@appendixsubsec User Catalog
@cindex User catalog
@cindex IDL library routine info
labeling in routine-info display.
@end defopt
-@node Load-Path Shadows, Documentation Scan, Catalogs, Sources of Routine Info
+@node Load-Path Shadows
@appendixsec Load-Path Shadows
@cindex Load-path shadows
@cindex Shadows, load-path
Another way to find out if a specific routine has multiple definitions
on the load path is routine info display (@pxref{Routine Info}).
-@node Documentation Scan, , Load-Path Shadows, Sources of Routine Info
+@node Documentation Scan
@appendixsec Documentation Scan
@cindex @file{get_html_rinfo}
@cindex @file{idlw-rinfo.el}
Instructions on how to use @file{get_html_rinfo} are in the program
itself.
-@node HTML Help Browser Tips, Configuration Examples, Sources of Routine Info, Top
+@node HTML Help Browser Tips
@appendix HTML Help Browser Tips
@cindex Browser Tips
@code{w3m} using @kbd{M}.
@end itemize
-@node Configuration Examples, Windows and MacOS, HTML Help Browser Tips, Top
+@node Configuration Examples
@appendix Configuration Examples
@cindex Configuration examples
@cindex Example configuration
@html
<A NAME="WINDOWS_MAC"></A>
@end html
-@node Windows and MacOS, Troubleshooting, Configuration Examples, Top
+@node Windows and MacOS
@appendix Windows and MacOS
@cindex Windows
@cindex MacOS
@html
<A NAME="TROUBLE"></A>
@end html
-@node Troubleshooting, GNU Free Documentation License, Windows and MacOS, Top
+@node Troubleshooting
@appendix Troubleshooting
@cindex Troubleshooting
@end enumerate
-@node GNU Free Documentation License, Index, Troubleshooting, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Index, , GNU Free Documentation License, Top
+@node Index
@unnumbered Index
@printindex cp
@contents
@ifnottex
-@node Top, Basics, (dir), (dir)
+@node Top
@top rcirc Manual
@code{rcirc} is an Emacs IRC client.
@end detailmenu
@end menu
-@node Basics, Reference, Top, Top
+@node Basics
@chapter Basics
This chapter contains a brief introduction to IRC (Internet Relay Chat),
* Getting started with rcirc::
@end menu
-@node Internet Relay Chat, Getting started with rcirc, Basics, Basics
+@node Internet Relay Chat
@section Internet Relay Chat
@cindex internet relay chat
@cindex irc
@kindex TAB
Since this is so common, you can use @key{TAB} to do nick completion.
-@node Getting started with rcirc, , Internet Relay Chat, Basics
+@node Getting started with rcirc
@section Getting started with rcirc
@cindex getting started
@cindex connecting to a server
Use @kbd{C-c C-@key{SPC}} to switch to these buffers.
-@node Reference, Fighting Information Overload, Basics, Top
+@node Reference
@chapter Reference
@cindex reference
* Configuration::
@end menu
-@node rcirc commands, Useful IRC commands, Reference, Reference
+@node rcirc commands
@section rcirc commands
@cindex rcirc commands
@cindex commands
@code{/quit ZZZzzz...}.)
@end table
-@node Useful IRC commands, Configuration, rcirc commands, Reference
+@node Useful IRC commands
@section Useful IRC commands
@cindex irc commands
@cindex commands
@uref{http://www.irchelp.org/, the Internet Relay Chat (IRC) help
archive}.
-@node Configuration, , Useful IRC commands, Reference
+@node Configuration
@section Configuration
@cindex configuring rcirc
@end table
-@node Fighting Information Overload, Hacking and Tweaking, Reference, Top
+@node Fighting Information Overload
@chapter Fighting Information Overload
@cindex information overload
* Notices::
@end menu
-@node Channels, People, Fighting Information Overload, Fighting Information Overload
+@node Channels
@section Channels
@cindex channels
@cindex modeline
have to ignore it. Use @kbd{C-c @key{TAB}} to ignore the current
channel.
-@node People, Keywords, Channels, Fighting Information Overload
+@node People
@section People
@cindex people, how to ignore
@cindex nicks, how to ignore
@end table
-@node Keywords, Notices, People, Fighting Information Overload
+@node Keywords
@section Keywords
@cindex keywords
listed. Example: @code{/keyword manual}.
@end table
-@node Notices, , Keywords, Fighting Information Overload
+@node Notices
@section Notices
@cindex part notices, how to omit
@cindex join notices, how to omit
window @code{rcirc} considers is controlled by the
@code{rcirc-omit-threshold} variable.
-@node Hacking and Tweaking, GNU Free Documentation License, Fighting Information Overload, Top
+@node Hacking and Tweaking
@chapter Hacking and Tweaking
@cindex hacking and tweaking
* Reconnecting after you have lost the connection::
@end menu
-@node Skipping /away messages using handlers, Using fly spell mode, Hacking and Tweaking, Hacking and Tweaking
+@node Skipping /away messages using handlers
@section Skipping @code{/away} messages using handlers
@cindex /away messages
"/away message handler.")
@end example
-@node Using fly spell mode, Scrolling conservatively, Skipping /away messages using handlers, Hacking and Tweaking
+@node Using fly spell mode
@section Using fly spell mode
@cindex fly spell
@cindex spelling
@xref{Spelling, , Flyspell mode, emacs, The GNU Emacs Manual},
for details.
-@node Scrolling conservatively, Changing the time stamp format, Using fly spell mode, Hacking and Tweaking
+@node Scrolling conservatively
@section Scrolling conservatively
@cindex input line
@cindex scrolling
@xref{Scrolling, , Scrolling conservatively, emacs, The GNU Emacs
Manual}, for details.
-@node Changing the time stamp format, Defining a new command, Scrolling conservatively, Hacking and Tweaking
+@node Changing the time stamp format
@section Changing the time stamp format
@cindex time stamp
@cindex date time
(setq rcirc-time-format "%Y-%m-%d %H:%M ")
@end example
-@node Defining a new command, Reconnecting after you have lost the connection, Changing the time stamp format, Hacking and Tweaking
+@node Defining a new command
@section Defining a new command
@cindex defining commands
@cindex commands, defining
(concat "I use " rcirc-id-string))))
@end smallexample
-@node Reconnecting after you have lost the connection, , Defining a new command, Hacking and Tweaking
+@node Reconnecting after you have lost the connection
@section Reconnecting after you have lost the connection
@cindex reconnecting
@cindex disconnecting servers, reconnecting
channels))))
@end smallexample
-@node GNU Free Documentation License, Key Index, Hacking and Tweaking, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Key Index, Variable Index, GNU Free Documentation License, Top
+@node Key Index
@unnumbered Key Index
@printindex ky
-@node Variable Index, Index, Key Index, Top
+@node Variable Index
@unnumbered Variable Index
@printindex vr
-@node Index, , Variable Index, Top
+@node Index
@unnumbered Index
@printindex cp
@contents
@ifnottex
-@node Top, Preface, (dir), (dir)
-@comment node-name, next, previous, up
+@node Top
@top Remember
@insertcopying
@end detailmenu
@end menu
-@node Preface, Introduction, Top, Top
-@comment node-name, next, previous, up
+@node Preface
@chapter Preface
This document describes remember-el, which was written by John Wiegley,
This document is a work in progress, and your contribution will be
greatly appreciated.
-@node Introduction, Installation, Preface, Top
-@comment node-name, next, previous, up
+@node Introduction
@chapter Introduction
Todo lists, schedules, phone databases... everything we use databases
manual-ness which computers from the very beginning have been championed
as being able to reduce.
-@node Installation, Implementation, Introduction, Top
-@comment node-name, next, previous, up
+@node Installation
@chapter Installation
Installing Remember Mode is as simple as adding the following lines to
(require 'remember)
@end lisp
-@node Implementation, Quick Start, Installation, Top
-@comment node-name, next, previous, up
+@node Implementation
@chapter Implementation
Hyperbole, as a data presentation tool, always struck me as being very
hierarchy. Well, as the future arrives, hopefully experience and user
feedback will help to make this as intuitive a tool as possible.
-@node Quick Start, Function Reference, Implementation, Top
-@comment node-name, next, previous, up
+@node Quick Start
@chapter Quick Start
@itemize
(call-interactively 'remember)))
@end lisp
-@node Function Reference, Keystrokes, Quick Start, Top
-@comment node-name, next, previous, up
+@node Function Reference
@chapter Function Reference
@file{remember.el} defines the following interactive functions:
the data for latter retrieval, and possible indexing.
@end defun
-@node Keystrokes, Backends, Function Reference, Top
-@comment node-name, next, previous, up
+@node Keystrokes
@chapter Keystroke Reference
@file{remember.el} defines the following keybindings by default:
@end table
-@node Backends, GNU Free Documentation License, Keystrokes, Top
-@comment node-name, next, previous, up
+@node Backends
@chapter Backends
You can save remembered notes to a variety of backends.
* Org:: Saving to an Org Mode file.
@end menu
-@node Text File, Diary, Backends, Backends
-@comment node-name, next, previous, up
+@node Text File
@section Saving to a Text File
@cindex text file, saving to
The text used to begin each remember item.
@end defopt
-@node Diary, Mailbox, Text File, Backends
-@comment node-name, next, previous, up
+@node Diary
@section Saving to a Diary file
@cindex diary, integration
If this is nil, then @code{diary-file} will be used instead."
@end defopt
-@node Mailbox, Org, Diary, Backends
-@comment node-name, next, previous, up
+@node Mailbox
@section Saving to a Mailbox
@cindex mailbox, saving to
The default priority for remembered mail messages.
@end defopt
-@node Org, , Mailbox, Backends
-@comment node-name, next, previous, up
+@node Org
@section Saving to an Org Mode file
@cindex org mode, integration
For instructions on how to integrate Remember with Org Mode,
consult @ref{Capture, , , org}.
-@node GNU Free Documentation License, Concept Index, Backends, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Concept Index, , GNU Free Documentation License, Top
-@comment node-name, next, previous, up
+@node Concept Index
@unnumbered Index
@printindex cp
@c ===================================================================
@ifnottex
-@node Top, Sales Pitch, (dir), (dir)
+@node Top
@comment node-name, next, previous, up
@top @acronym{SES}: Simple Emacs Spreadsheet
@c ===================================================================
-@node Sales Pitch, The Basics, Top, Top
+@node Sales Pitch
@comment node-name, next, previous, up
@chapter Sales Pitch
@cindex features
@c ===================================================================
-@node The Basics, Advanced Features, Sales Pitch, Top
+@node The Basics
@comment node-name, next, previous, up
@chapter The Basics
@cindex basic commands
* Customizing @acronym{SES}::
@end menu
-@node Formulas, Resizing, The Basics, The Basics
+@node Formulas
@section Cell formulas
@cindex formulas
@cindex formulas, entering
Recalculate the entire spreadsheet (@code{ses-recalculate-all}).
@end table
-@node Resizing, Printer functions, Formulas, The Basics
+@node Resizing
@section Resizing the spreadsheet
@cindex resizing spreadsheets
@findex ses-insert-row
@end table
-@node Printer functions, Clearing cells, Resizing, The Basics
+@node Printer functions
@section Printer functions
@cindex printer functions
@findex ses-read-cell-printer
@end table
-@node Clearing cells, Copy/cut/paste, Printer functions, The Basics
+@node Clearing cells
@section Clearing cells
@cindex clearing commands
@findex ses-clear-cell-backward
@end table
-@node Copy/cut/paste, Customizing @acronym{SES}, Clearing cells, The Basics
+@node Copy/cut/paste
@section Copy, cut, and paste
@cindex copy
@cindex cut
yank. This doesn't make any difference?
@end table
-@node Customizing @acronym{SES}, , Copy/cut/paste, The Basics
+@node Customizing @acronym{SES}
@section Customizing @acronym{SES}
@cindex customizing
@vindex enable-local-eval
@c ===================================================================
-@node Advanced Features, For Gurus, The Basics, Top
+@node Advanced Features
@chapter Advanced Features
@cindex advanced features
@findex ses-read-header-row
* Spreadsheets with details and summary::
@end menu
-@node The print area, Ranges in formulas, Advanced Features, Advanced Features
+@node The print area
@section The print area
@cindex print area
@findex widen
(@code{ses-reprint-all}).
@end table
-@node Ranges in formulas, Sorting by column, The print area, Advanced Features
+@node Ranges in formulas
@section Ranges in formulas
@cindex ranges
@findex ses-insert-range-click
corresponding matrix is flattened.
@end table
-@node Sorting by column, Standard formula functions, Ranges in formulas, Advanced Features
+@node Sorting by column
@section Sorting by column
@cindex sorting
@findex ses-sort-column
range.
-@node Standard formula functions, More on cell printing, Sorting by column, Advanced Features
+@node Standard formula functions
@section Standard formula functions
@cindex standard formula functions
@cindex *skip*
as a single argument, since you'll probably use it with @code{ses-range}.
@end table
-@node More on cell printing, Import and export, Standard formula functions, Advanced Features
+@node More on cell printing
@section More on cell printing
@cindex cell printing, more
@findex ses-truncate-cell
argument type''.
-@node Import and export, Virus protection, More on cell printing, Advanced Features
+@node Import and export
@section Import and export
@cindex import and export
@cindex export, and import
To import text, use any of the yank commands where the text to paste
contains tabs and/or newlines. Imported formulas are not relocated.
-@node Virus protection, Spreadsheets with details and summary, Import and export, Advanced Features
+@node Virus protection
@section Virus protection
@cindex virus protection
your style as a formula-writer. See the documentation in @file{unsafep.el}
for more info on how Lisp forms are classified as safe or unsafe.
-@node Spreadsheets with details and summary, , Virus protection, Advanced Features
+@node Spreadsheets with details and summary
@section Spreadsheets with details and summary
@cindex details and summary
@cindex summary, and details
@c ===================================================================
-@node For Gurus, Index, Advanced Features, Top
+@node For Gurus
@chapter For Gurus
@cindex advanced features
* Uses of defadvice in @acronym{SES}::
@end menu
-@node Deferred updates, Nonrelocatable references, For Gurus, For Gurus
+@node Deferred updates
@section Deferred updates
@cindex deferred updates
@cindex updates, deferred
can type ahead without worrying about the glitch.
-@node Nonrelocatable references, The data area, Deferred updates, For Gurus
+@node Nonrelocatable references
@section Nonrelocatable references
@cindex nonrelocatable references
@cindex references, nonrelocatable
kind of dependency is also not recorded.
-@node The data area, Buffer-local variables in spreadsheets, Nonrelocatable references, For Gurus
+@node The data area
@section The data area
@cindex data area
@findex ses-reconstruct-all
@end table
-@node Buffer-local variables in spreadsheets, Uses of defadvice in @acronym{SES}, The data area, For Gurus
+@node Buffer-local variables in spreadsheets
@section Buffer-local variables in spreadsheets
@cindex buffer-local variables
@cindex variables, buffer-local
(put 'your-function-name 'safe-function t)
@end lisp
-@node Uses of defadvice in @acronym{SES}, , Buffer-local variables in spreadsheets, For Gurus
+@node Uses of defadvice in @acronym{SES}
@section Uses of defadvice in @acronym{SES}
@cindex defadvice
@cindex undo-more
@end table
@c ===================================================================
-@node Index, Acknowledgments, For Gurus, Top
+@node Index
@unnumbered Index
@printindex cp
@c ===================================================================
-@node Acknowledgments, GNU Free Documentation License, Index, Top
+@node Acknowledgments
@chapter Acknowledgments
Coding by:
@c ===================================================================
-@node GNU Free Documentation License, , Acknowledgments, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
@contents
-@node Top, , , (dir)Top
-@comment node-name, next, previous, up
+@node Top
@top Speedbar
Speedbar is a program for Emacs which can be used to summarize
* Index::
@end menu
-@node Introduction, Basic Navigation, , Top
-@comment node-name, next, previous, up
+@node Introduction
@chapter Introduction
@cindex introduction
@code{speedbar-get-focus}. This function will toggle between frames, and
it's useful to bind it to a key in terminal mode. @xref{Customizing}.
-@node Basic Navigation, File Mode, Introduction, Top
-@comment node-name, next, previous, up
+@node Basic Navigation
@chapter Basic Navigation
Speedbar can display different types of data, and has several display
* Displays Submenu::
@end menu
-@node Basic Key Bindings, Basic Visuals, Basic Navigation, Basic Navigation
-@comment node-name, next, previous, up
+@node Basic Key Bindings
@section Basic Key Bindings
@cindex key bindings
Contract the current group, hiding sub items.
@end table
-@node Basic Visuals, Mouse Bindings, Basic Key Bindings, Basic Navigation
-@comment node-name, next, previous, up
+@node Basic Visuals
@section Basic Visuals
@cindex visuals
do not use files will attempt to use the same colors on analogous
entries.
-@node Mouse Bindings, Displays Submenu, Basic Visuals, Basic Navigation
-@comment node-name, next, previous, up
+@node Mouse Bindings
@section Mouse Bindings
@cindex mouse bindings
this can contain extra information such as file permissions, or tag
location.
-@node Displays Submenu, , Mouse Bindings, Basic Navigation
-@comment node-name, next, previous, up
+@node Displays Submenu
@section Displays Submenu
@cindex displays submenu
would include Files, Quick Buffers, and Buffers. Other major display
modes such as Info are loaded separately.
-@node File Mode, Buffer Mode, Basic Navigation, Top
-@comment node-name, next, previous, up
+@node File Mode
@chapter File Mode
@cindex file mode
* File Key Bindings:: Performing file operations.
@end menu
-@node Directory Display, Hidden Files, File Mode, File Mode
-@comment node-name, next, previous, up
+@node Directory Display
@section Directory Display
@cindex directory display
indicating that all symbols which alphabetically fall between those
categories are included in that sub-group. @xref{Tag Hierarchy Methods}.
-@node Hidden Files, File Key Bindings, Directory Display, File Mode
-@comment node-name, next, previous, up
+@node Hidden Files
@section Hidden Files
@cindex hidden files
determine their presence by the @samp{#} and @samp{!} file indicators.
@xref{Directory Display}.
-@node File Key Bindings, , Hidden Files, File Mode
-@comment node-name, next, previous, up
+@node File Key Bindings
@section File Key Bindings
@cindex file key bindings
also displayed, but they are prefixed with the @samp{[?]} symbol. This
means that it is a file, but Emacs doesn't know how to expand it.
-@node Buffer Mode, Minor Modes, File Mode, Top
-@comment node-name, next, previous, up
+@node Buffer Mode
@chapter Buffer Mode
@cindex buffer mode
press @kbd{b}, click on the buffer you want, and speedbar will revert
back to File mode.
-@node Minor Modes, Customizing, Buffer Mode, Top
-@comment node-name, next, previous, up
+@node Minor Modes
@chapter Minor Display Modes
@cindex minor display modes
stack trace.
@end menu
-@node RMAIL, Info, Minor Modes, Minor Modes
-@comment node-name, next, previous, up
+@node RMAIL
@section RMAIL
@cindex RMAIL
In this way you can manage your existing RMAIL folders fairly easily
using the mouse.
-@node Info, GDB, RMAIL, Minor Modes
-@comment node-name, next, previous, up
+@node Info
@section Info
@cindex Info
the @samp{[+]} button, sometimes a @samp{[?]} will appear when you click on
a @samp{[+]}, indicating that there are no sub-topics.
-@node GDB, , Info, Minor Modes
-@comment node-name, next, previous, up
+@node GDB
@section GDB
@cindex gdb
@cindex gud
level. You can then check variables local to that level at the GDB
prompt.
-@node Customizing, Extending, Minor Modes, Top
-@comment node-name, next, previous, up
+@node Customizing
@chapter Customizing
@cindex customizing
* Hooks:: The many hooks you can use.
@end menu
-@node Frames and Faces, Tag Hierarchy Methods, Customizing, Customizing
-@comment node-name, next, previous, up
+@node Frames and Faces
@section Frames and Faces
@cindex faces
@cindex frame parameters
In XEmacs, change the plist @code{speedbar-frame-plist}. This is the
XEmacs way of doing the same thing.
-@node Tag Hierarchy Methods, Version Control, Frames and Faces, Customizing
-@comment node-name, next, previous, up
+@node Tag Hierarchy Methods
@section Tag Hierarchy Methods
@cindex tag hierarchy
@cindex tag groups
items is reached.
@end table
-@node Version Control, Hooks, Tag Hierarchy Methods, Customizing
-@comment node-name, next, previous, up
+@node Version Control
@section Version Control
@cindex version control
@cindex vc extensions
Lastly, you can change the VC indicator using the variable
@code{speedbar-vc-indicator}, and specify a single character string.
-@node Hooks, , Version Control, Customizing
-@comment node-name, next, previous, up
+@node Hooks
@section Hooks
@cindex hooks
state data.
@end table
-@node Extending, GNU Free Documentation License, Customizing, Top
-@comment node-name, next, previous, up
+@node Extending
@chapter Extending
@cindex extending
* Creating a display:: How to insert buttons and hierarchies.
@end menu
-@node Minor Display Modes, Major Display Modes, Extending, Extending
+@node Minor Display Modes
@section Minor Display Modes
@cindex create minor display mode
display. If it needs to be cleared, you need to erase the speedbar
buffer yourself, and start drawing buttons. @xref{Creating a display}.
-@node Major Display Modes, Tagging Extensions, Minor Display Modes, Extending
+@node Major Display Modes
@section Major Display Modes
@cindex create major display mode
Once you have done all this, speedbar will show an entry in the
@samp{Displays} menu declaring that your extension is available.
-@node Tagging Extensions, Creating a display, Major Display Modes, Extending
+@node Tagging Extensions
@section Tagging Extensions
It is possible to create new methods for tagging files in speedbar.
is either a buffer local modification, or that the tag generator returns
@code{t} for non valid buffers.
-@node Creating a display, , Tagging Extensions, Extending
+@node Creating a display
@section Creating a display
@cindex creating a display
@end defun
-@node GNU Free Documentation License, Index, Extending, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi
-@node Index, , GNU Free Documentation License, Top
-@comment node-name, next, previous, up
+@node Index
@unnumbered Concept Index
@printindex cp
@end direntry
@ifnottex
-@node Top, Survey,, (DIR)
+@node Top
@top VIP
VIP is a Vi emulating package written in Emacs Lisp. VIP implements most
@code{masahiko@@unsun.riec.tohoku.junet} if you are in Japan.
@end iftex
-@node Survey, Basic Concepts, Top, Top
+@node Survey
@chapter A Survey of VIP
In this chapter we describe basics of VIP with emphasis on the features not
* Differences from Vi:: Differences of VIP from Vi is explained.
@end menu
-@node Basic Concepts, Loading VIP, Survey, Survey
+@node Basic Concepts
@section Basic Concepts
We begin by explaining some basic concepts of Emacs. These concepts are
local map, however, the function bound to the key in the global map becomes
in effect.@refill
-@node Loading VIP, Modes in VIP, Basic Concepts, Survey
+@node Loading VIP
@section Loading VIP
The recommended way to load VIP automatically is to include the line:
@end example
@noindent
-@node Modes in VIP, Emacs Mode, Loading VIP, Survey
+@node Modes in VIP
@section Modes in VIP
@kindex 032 @kbd{C-z} (@code{vip-change-mode-to-vi})
know enough Emacs commands.
@end menu
-@node Emacs Mode, Vi Mode, Modes in VIP, Modes in VIP
+@node Emacs Mode
@subsection Emacs Mode
@kindex 032 @kbd{C-z} (@code{vip-change-mode-to-vi})
bound to @code{vip-change-mode-to-vi}. So, if you type @kbd{C-z} in this mode
then you will be in vi mode.@refill
-@node Vi Mode, Insert Mode, Emacs Mode, Modes in VIP
+@node Vi Mode
@subsection Vi Mode
This mode corresponds to Vi's command mode. Most Vi commands work as they
do in Vi. You can go back to emacs mode by typing @kbd{C-z}. You can
enter insert mode, just as in Vi, by typing @kbd{i}, @kbd{a} etc.
-@node Insert Mode, Differences from Vi, Vi Mode, Modes in VIP
+@node Insert Mode
@subsection Insert Mode
The key bindings in this mode is the same as in the emacs mode except for
@kbd{ESC x} in emacs mode.
@end table
-@node Differences from Vi, Undoing, Insert Mode, Survey
+@node Differences from Vi
@section Differences from Vi
The major differences from Vi are explained below.
* Misc Commands:: Other useful commands.
@end menu
-@node Undoing, Changing, Differences from Vi, Differences from Vi
+@node Undoing
@subsection Undoing
@kindex 165 @kbd{u} (@code{vip-undo})
changes. Undo is undoable as in Vi. So the content of the buffer will
be the same before and after @kbd{u u}.@refill
-@node Changing, Searching, Undoing, Differences from Vi
+@node Changing
@subsection Changing
Some commands which change a small number of characters are executed
@kindex 007 @kbd{C-g} (@code{vip-keyboard-quit})
you can abort a partially formed command by typing @kbd{C-g}.@refill
-@node Searching, z Command, Changing, Differences from Vi
+@node Searching
@subsection Searching
@kindex 057 @kbd{/} (@code{vip-search-forward})
the buffer as in Vi. You can change this by rebinding the variable
@code{vip-search-wrap-around}. @xref{Customization}, for how to do this.@refill
-@node z Command, Counts, Searching, Differences from Vi
+@node z Command
@subsection z Command
@kindex 1723 @kbd{z H} (@code{vip-line-to-top})
@kbd{M} and @kbd{L} to place the current line in the Home (Middle, and
Last) line of the window.@refill
-@node Counts, Marking, z Command, Differences from Vi
+@node Counts
@subsection Counts
Some Vi commands which do not accept a count now accept one
Given a count @var{n}, @var{n}-th occurrence will be searched.
@end table
-@node Marking, Region Commands, Counts, Differences from Vi
+@node Marking
@subsection Marking
Typing an @kbd{m} followed by a lower-case character @var{ch} marks the
Jump to mark (and pop mark off the mark ring).
@end table
-@node Region Commands, New Commands, Marking, Differences from Vi
+@node Region Commands
@subsection Region Commands
@cindex region
smallest region containing the original region and consisting of whole
lines. Thus @kbd{m .@: d R} will have the same effect as @kbd{d d}.@refill
-@node New Commands, New Bindings, Region Commands, Differences from Vi
+@node New Commands
@subsection Some New Commands
Note that the keys below (except for @kbd{R}) are not used in Vi.
Call last keyboard macro.
@end table
-@node New Bindings, Window Commands, New Commands, Differences from Vi
+@node New Bindings
@subsection New Key Bindings
In VIP the meanings of some keys are entirely different from Vi. These key
This is equivalent to @kbd{C-x 1 C-x 2} (1 + 2 = 3).
@end table
-@node Window Commands, Buffer Commands, New Bindings, Differences from Vi
+@node Window Commands
@subsection Window Commands
In this and following subsections, we give a summary of key bindings for
Show current buffer in two windows.
@end table
-@node Buffer Commands, File Commands, Window Commands, Differences from Vi
+@node Buffer Commands
@subsection Buffer Commands
@table @kbd
Save the current buffer in the file associated to the buffer.
@end table
-@node File Commands, Misc Commands, Buffer Commands, Differences from Vi
+@node File Commands
@subsection File Commands
@table @kbd
Insert specified file at point.
@end table
-@node Misc Commands, Vi Commands, File Commands, Differences from Vi
+@node Misc Commands
@subsection Miscellaneous Commands
@table @kbd
Replace.
@end table
-@node Vi Commands, Numeric Arguments, Misc Commands, Top
+@node Vi Commands
@chapter Vi Commands
This chapter describes Vi commands other than Ex commands implemented in
* Commands in Insert Mode:: Commands for entering insert mode.
@end menu
-@node Numeric Arguments, Important Keys, Vi Commands, Vi Commands
+@node Numeric Arguments
@section Numeric Arguments
@cindex numeric arguments
For instance, @kbd{5 d d} deletes 5 lines while simple @kbd{d d} deletes a
line. In this manual the metavariable @var{n} will denote a count.@refill
-@node Important Keys, Buffers and Windows, Numeric Arguments, Vi Commands
+@node Important Keys
@section Important Keys
The keys @kbd{C-g} and @kbd{C-l} are unique in that their associated
@samp{+++++} before point.@refill
@end table
-@node Buffers and Windows, Files, Important Keys, Vi Commands
+@node Buffers and Windows
@section Buffers and Windows
@cindex buffer
and you can select it by giving a simple @key{RET}. See GNU Emacs Manual
for details of completion.
-@node Files, Viewing the Buffer, Buffers and Windows, Vi Commands
+@node Files
@section Files
We have the following commands related to files. They are used to visit,
you can type @kbd{X W}. You will then get a similar prompt as you get for
@kbd{v}, to which you can enter the file name.@refill
-@node Viewing the Buffer, Mark Commands, Files, Vi Commands
+@node Viewing the Buffer
@section Viewing the Buffer
In this and next section we discuss commands for moving around in the
Center point in window and redisplay screen (@code{recenter}).
@end table
-@node Mark Commands, Motion Commands, Viewing the Buffer, Vi Commands
+@node Mark Commands
@section Mark Commands
The following commands are used to mark positions in the buffer.
the command `@kbd{m ,}' you can visit older and older marked positions. You
will eventually be in a loop as the mark ring is a ring.
-@node Motion Commands, Searching and Replacing, Mark Commands, Vi Commands
+@node Motion Commands
@section Motion Commands
Commands for moving around in the current buffer are collected here. These
opposite direction (@code{vip-repeat-find-opposite}).
@end table
-@node Searching and Replacing, Modifying Commands, Motion Commands, Vi Commands
+@node Searching and Replacing
@section Searching and Replacing
Following commands are available for searching and replacing.
The commands @kbd{/} and @kbd{?} mark point before move, so that you can
return to the original point by @w{@kbd{` `}}.
-@node Modifying Commands, Delete Commands, Searching and Replacing, Vi Commands
+@node Modifying Commands
@section Modifying Commands
In this section, commands for modifying the content of a buffer are
* Change Commands:: Commands for changing text.
* Repeating and Undoing Modifications::
@end menu
-@node Delete Commands, Yank Commands, Modifying Commands, Modifying Commands
+@node Delete Commands
@subsection Delete Commands
@table @kbd
(@code{vip-delete-backward-char}).
@end table
-@node Yank Commands, Put Back Commands, Delete Commands, Modifying Commands
+@node Yank Commands
@subsection Yank Commands
@cindex yank
Expand current region and yank it.
@end table
-@node Put Back Commands, Change Commands, Yank Commands, Modifying Commands
+@node Put Back Commands
@subsection Put Back Commands
Deleted or yanked texts can be put back into the buffer by the command
below.
specified, @var{n}-th previously deleted/yanked text will be put back. It
is an error to specify a number register for the delete/yank commands.
-@node Change Commands, Repeating and Undoing Modifications, Put Back Commands, Modifying Commands
+@node Change Commands
@subsection Change Commands
Most commonly used change command takes the following form.
Expand current region and change it.
@end table
-@node Repeating and Undoing Modifications, Other Vi Commands, Change Commands, Modifying Commands
+@node Repeating and Undoing Modifications
@subsection Repeating and Undoing Modifications
VIP records the previous modifying command, so that it is easy to repeat
modifying command is used again (@code{vip-repeat}).
@end table
-@node Other Vi Commands, Commands in Insert Mode, Repeating and Undoing Modifications, Vi Commands
+@node Other Vi Commands
@section Other Vi Commands
Miscellaneous Vi commands are collected here.
(@code{kill-region}).
@end table
-@node Commands in Insert Mode, Ex Commands, Other Vi Commands, Vi Commands
+@node Commands in Insert Mode
@section Insert Mode
You can enter insert mode by one of the following commands. In addition to
command will not really repeat insertion if you move point by emacs
commands while in insert mode.
-@node Ex Commands, Ex Command Reference, Commands in Insert Mode, Top
+@node Ex Commands
@chapter Ex Commands
@kindex 072 @kbd{:} (@code{vip-ex})
@menu
* Ex Command Reference:: Explain all the Ex commands available in VIP.
@end menu
-@node Ex Command Reference, Customization, Ex Commands, Ex Commands
+@node Ex Command Reference
@section Ex Command Reference
In this section we briefly explain all the Ex commands supported by VIP@.
Most Ex commands expect @var{address} as their argument, and they use
@kbd{unabbreviate}, @kbd{xit}, @kbd{z}
@end example
-@node Customization, Customizing Constants, Ex Command Reference, Top
+@node Customization
@chapter Customization
If you have a file called @file{.vip} in your home directory, then it
* Customizing Key Bindings:: How to change key bindings.
@end menu
-@node Customizing Constants, Customizing Key Bindings, Customization, Customization
+@node Customizing Constants
@section Customizing Constants
An easy way to customize VIP is to change the values of constants used
in VIP@. Here is the list of the constants used in VIP and their default
(setq vip-case-fold-search t)
@end example
-@node Customizing Key Bindings,, Customizing Constants, Customization
+@node Customizing Key Bindings
@section Customizing Key Bindings
@cindex local keymap
(define-key vip-command-mode-map "X" 'vip-delete-backward-char)
@end example
-@node GNU Free Documentation License,,, Top
+@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include doclicense.texi