speedbar: Directory Display

 
 3.1 Directory Display
 =====================
 
 There are three major sections in the display.  The first line or two is
 the root directory speedbar is currently viewing.  You can jump to one
 of the parent directories by clicking on the name of the directory you
 wish to jump to.
 
    Next, directories are listed.  A directory starts with the group
 indicator button ‘<+>’.  Clicking the directory name makes speedbar load
 that directory as the root directory for its display.  Clicking the
 ‘<+>’ button will list all directories and files beneath.
 
    Next, files are listed.  Files start with the group indicator ‘[+]’
 or ‘[?]’.  You can jump to a file in the attached frame by clicking on
 the file name.  You can expand a file and look at its tags by clicking
 on the ‘[+]’ symbol near the file name.
 
    A typical session might look like this:
 
      ~/lisp/
      <+> checkdoc
      <+> eieio
      <-> speedbar
       [+] Makefile
       [+] rpm.el #
       [+] sb-gud.el #
       [+] sb-info.el #
       [+] sb-rmail.el #
       [+] sb-w3.el
       [-] speedbar.el *!
        {+} Types
        {+} Variables
        {+} def (group)
        {+} speedbar-
       [+] speedbar.texi *
      <+> testme
      [+] align.el
      [+] autoconf.el
 
    In this example, you can see several directories.  The directory
 ‘speedbar’ has been opened inline.  Inside the directory ‘speedbar’, the
 file ‘speedbar.el’ has its tags exposed.  These tags are extensive, and
 they are summarized into tag groups.
 
    Files get additional boolean flags associated with them.  Valid flags
 are:
 
 ‘*’
      This file has been checked out of a version control system.  See
      Version Control.
 ‘#’
      This file has an up to date object file associated with it.  The
      variable ‘speedbar-obj-alist’ defines how speedbar determines this
      value.
 ‘!’
      This file has an out of date object file associated with it.
 
    A Tag group is prefixed with the symbol ‘{+}’.  Clicking this symbol
 will show all symbols that have been organized into that group.
 Different types of files have unique tagging methods as defined by their
 major mode.  Tags are generated with either the ‘imenu’ package, or
 through the ‘etags’ interface.
 
    Tag groups are defined in multiple ways which make it easier to find
 the tag you are looking for.  Imenu keywords explicitly create groups,
 and speedbar will automatically create groups if tag lists are too long.
 
    In our example, Imenu created the groups ‘Types’ and ‘Variables’.
 All remaining top-level symbols are then regrouped based on the variable
 ‘speedbar-tag-hierarchy-method’.  The subgroups ‘def’ and ‘speedbar-’
 are groupings where the first few characters of the given symbols are
 specified in the group name.  Some group names may say something like
 ‘speedbar-t to speedbar-v’, indicating that all symbols which
 alphabetically fall between those categories are included in that
 sub-group.  SeeTag Hierarchy Methods.