ECB 2.32 is released!



What's new in the new release:
------------------------------

* Changes for ECB version 2.32

** New backbone-add-on of ECB for getting the definition of the symbol at point

   It allows to display in a new special ECB-window the semantic (do not
   confuse this term with the semantic-library!) context of the definition of
   the current symbol under point. Per default ECB tries to find this context
   via semanticdb (part of cedet) and etags (shipped with (X)Emacs) but in
   general this is completely customizable; see the options of the new
   options-group "ecb-symboldef".

   Either use the layout "left-symboldef" (e.g. via [C-c . l c]) or create a
   new ecb-layout via the command `ecb-create-new-layout' and add a buffer of
   type "other" and name "symboldef" into this new layout.

   This add-on interactior can be seen as a "backbone" infrastructure, because
   it is/should be highly customizable how to get the definition of the symbol
   at point (e.g. via semanticdb or etags or whatever).

   Thanks to Hauke Wintjen <[EMAIL PROTECTED]> for having the idea
   and writing the first implementation

   This add-on interactor of ECB is currently in beta or gamma stage but works
   already quite well. So please try it out and send feedback to the
   ECB-mailing-list. Every suggestion is highly appretiated!

** New native ECB-display interactor for the semantic-analyzer
   There is a new tree-buffer ECB-analyse which displays the tags and
   informations of the semanic-analyzer in a smooth way. There are already new
   prebuild layouts "left-analyse" and "leftright-analyse" which contain this
   new tree-buffer interactor. But of course it can be added to own build
   layouts - either via the command `ecb-create-new-layout' (add a buffer of
   type "other" and name "analyse" into the new layout) or via a
   elisp-rogrammed new layout.
   
** New smart-arrow-navigation in a tree-buffer with up- and down-arrow
   Point jumps to the first character of the previous (up) rsp. next node
   (down). "First" character means either the first character of the
   expand-symbol (in case `ecb-tree-expand-symbol-before' is not nil) or of
   the displayed node-name. Or with other words: The first non-indentation and
   non-guide-line (see `ecb-tree-buffer-style') character of a node.

   Left- and right-arrow were already smart - see the existing option
   `ecb-tree-navigation-by-arrow'.
         
** Better handling of maximized ecb-windows

*** Smarter handling of node-selections in maximized tree-windows

    Now the default behavior of ECB is:

    Maximized directories-window: When selecting a directory then first
    automatically the maximized directories-window will be "minimized" (i.e.
    all ecb-windows of current layout are displayed) if the current layout
    contains a sources-buffer and no sources are shown in the
    directories-window. So the source-files can be displayed in the
    sources-window.
    
    Maximized sources- or history-window: When selecting a source-file in one of
    these buffers then first automatically the maximized window will be
    "minimized" (i.e. all ecb-windows of current layout are displayed) if the
    current layout contains a methods-buffer. So the tag-contents of the
    selected source-file can be displayed in the methods-window.

    For a even smarter behavior ECB introduces a new option
    `ecb-maximize-next-after-maximized-select' which automatically maximizes
    the next logical tree-window after a node selection. The definition of
    "next logical is": Directories --> sources, sources/history --> methods.
    See the docstring of this new option for more detailled informations.
    
    Thanks for suggestion to Michael Reiher.
    
*** Easier maximizing and "minimizing"
    ECB supports the default modeline-mechanisms for deleting other windows.
    GNU Emacs binds `mouse-2' in its modeline to `delete-other-window'. XEmacs
    binds a popup-menu with some window commands to `button-3' in its
    modeline.

    ECB combines the best of both worlds by supporting both of these
    mechanisms for both Xemacs and Emacs: ECB binds a toggle-command to
    `mouse-2' in the modeline of each tree-buffer which maximizes the current
    tree-window if all ECB-windows are visible and displays all ECB-windows if
    current tree-window is maximized. In addition ECB binds a popup-menu to
    `mouse-3' which offers exactly 2 commands: Maximizing current tree-window
    and displaying all ECB-windows.
   
** Renamed options or options with new type
   The following options have been renamed:
   ecb-truncate-lines --> ecb-tree-truncate-lines

   The following options have now a new type:
   ecb-tree-RET-selects-edit-window
   ecb-tree-image-icons-directories

   ECB automatically upgrades the old values to the new options!

** Better assistance fixing errors related to semantic-load problems
   Often users report errors somehow related to problems running ECB with the
   right semantic-version. There are different reasons for this:
   - People do not install the cedet-suite as described in the INSTALL-file of
     cedet.
   - People byte-compile ECB with another semantic (also eieio and speedbar)
     version than loaded into Emacs.
   All of them prevent ECB from working correctly.

   Now ECB detects the error at startup-time and assists the user in finding
   the reason of the problem and how to fix it.

** More robust downloading of new ECB from within Emacs
   Now `ecb-download-ecb' should work also with native Windows-XEmacs and also
   when ECB is installed in a directory which name contains spaces. If there
   are still problems in running this command please check the new options
   `ecb-wget-setup', `ecb-gzip-setup' and `ecb-tar-setup'.

** Support for (X)Emacs < 21 has been officialy removed.
   ECB requires now (X)Emacs >= 21. ECB stops activation with an appropriate
   error-message when (X)Emacs < 21 is detected.

** Full documentation of the library tree-buffer.el
   The ECB-info-manual contains a new section "tree-buffer" in the chapter
   "Entry points for elisp-programers". This describes in detail how to
   program with the library tree-buffer.el which is shipped with ECB.

** Fixed Bugs

*** Version-controlled (VC) and not-VC history-entries are now sorted
    correctly according the setting in `ecb-history-sort-method'.

*** Handles not anymore existing files in the stealthy tasks.
    If a stealthy task detects that a displayed file does not exist anymore it
    removes this source-file from the tree-displays.

*** Fixed a bug when `ecb-process-non-semantic-files' is set to nil.
    This bug only occurs with XEmacs. As a side effect of this fix now the
    methods-buffer is correctly cleared out when loading a
    non-semantic-sourcefile (i.e. not parsable by semantic) and processing of
    non-semantic-files is switched off (`ecb-process-non-semantic-files' is
    set to nil) or the sourcefile is not parsable by a parser like imenu or
    etags/ctags.

*** Fixed a bug in displaying semantic-tags which have plain-string members
    E.g. parsing `defstruct' has failed in previous ECB-version cause of this
    bug.

*** Fixed a bug when Emacs is started with -q so Emacs could not determine the
    `custom-file'. This case is correctly handled now.



How to get it:
--------------

Sorry, it's too big to post the sources here...

If you are using ECB >= 1.80 then you can just call "M-x ecb-download-ecb" if
you are online. ECB will then download autom. latest and newest ECB and
install it for you.

Or go to the homepage at http://ecb.sourceforge.net and download it from
there.



General description of ECB:
---------------------------

ECB stands for "Emacs Code Browser".  While Emacs already has good
*editing* support for many modes, its *browsing* support is somewhat
lacking. That's where ECB comes in: it displays a number of informational
windows that allow for easy source code navigation and overview.

The informational windows can contain:

  - A directory tree,
  - a list of source files in the current directory,
  - a list of functions/classes/methods/... in the current file, (ECB uses the
    Semantic Bovinator, or Imenu, or etags, for getting this list so all
    languages supported by any of these tools are automatically supported by
    ECB too)
  - a history of recently visited files, 
  - the Speedbar and
  - output from compilation (the "*compilation*" window) and other modes like
    help, grep etc. or whatever a user defines to be displayed in this window.

As an added bonus, ECB makes sure to keep these informational windows visible,
even when you use C-x 1 and similar commands.

It goes without saying that you can configure the layout, ie which
informational windows should be displayed where. ECB comes with a number of
ready-made window layouts to choose from.

Here is an ascii-screenshot of what ECB offers you:

------------------------------------------------------------------
|              |                                                 |
| Directories  |                                                 |
|              |                                                 |
|--------------|                                                 |
|              |                                                 |
| Sources      |                                                 |
|              |                                                 |
|--------------|                   Edit-area                     |
|              |    (can be splitted in several edit-windows)    |
| Methods/Vars |                                                 |
|              |                                                 |
|--------------|                                                 |
|              |                                                 |
| History      |                                                 |
|              |                                                 |
------------------------------------------------------------------
|                                                                |
|                 Compilation-window (optional)                  |
|                                                                |
------------------------------------------------------------------

For more details go to http://ecb.sourceforge.net/


Enjoy,
Klaus 
 
Klaus Berndl                     mailto: [EMAIL PROTECTED] <mailto:[EMAIL 
PROTECTED]> 
sd&m AG                         http://www.sdm.de <http://www.sdm.de/> 
software design & management
Carl-Wery-Str. 42, 81739 Muenchen, Germany
Tel +49 89 63812-392, Fax -220

Reply via email to