~ubuntu-branches/ubuntu/saucy/ecb/saucy

« back to all changes in this revision

Viewing changes to info-help/ecb.info-6

  • Committer: Bazaar Package Importer
  • Author(s): Joerg Jaspert
  • Date: 2004-09-01 22:15:18 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20040901221518-0jfdt2apb2rj69ey
Tags: 2.27-1
And include latest Upstream too...

Show diffs side-by-side

added added

removed removed

Lines of Context:
32
32
   This options takes only effect for semantic-sources - means sources
33
33
   supported by semantic!
34
34
 
 
35
 - User Option: auto-expand-tag-tree-collapse-other
 
36
   Auto. expanding the tag-tree collapses all not related nodes. There are
 
37
   several choices:
 
38
 
 
39
    - Only if on tag: This means collapsing all nodes which have no relevance
 
40
      for the currently highlighted node will be collapsed, because they are
 
41
      not necessary to make the highlighted node visible. But do this only if
 
42
      point stays onto a tag in the selected edit-window.
 
43
 
 
44
    - Always: Same as before but collapse also when point doesn't stays on a
 
45
      tag (e.g. between two defuns in elisp) in the selected edit-window. This
 
46
      means in such a situation a full collapsing of the methods-buffer.
 
47
 
 
48
    - Never: Do not automatically collapse the methods-buffer.
 
49
 
35
50
 - User Option: auto-update-methods-after-save
36
51
   Automatically updating the ECB method buffer after saving a source.
37
52
 
 
53
 - User Option: default-tag-filter
 
54
   Default tag-filters for certain files. This option allow to define default
 
55
   tag-filters for certain files which are applied automatically after
 
56
   loading such a file into a buffer. The possible filters are the same as
 
57
   offered by the command `ecb-methods-filter' and they are applied in the
 
58
   same manner - the only difference is they are applied automatically.
 
59
   Please be aware that symbol-filters (e.g.  protection-symbols like public
 
60
   or private) must not be inserted with quotes whereas a filter-regexp has
 
61
   to be inserted with surrounding double-quotes! In addition backslashes in
 
62
   a regexp have to be doubled!
 
63
 
 
64
   For each file-spec (a major-mode plus a file-regexp which both specify a
 
65
   file for which filters should be applied) there can be as much filters as
 
66
   needed - they are layered like with `ecb-methods-filter' too.
 
67
 
 
68
   Tag-classes which are completely hidden or excluded by the option
 
69
   `ecb-show-tags' will never being displayed in the Methods-buffer
 
70
   regardless of the filters of this option!
 
71
 
 
72
 - User Option: display-image-icons-for-semantic-tags
 
73
   Display nice and pretty icons for semantic-tags in the Methods-buffer.
 
74
   This option takes only effect if Emacs can display images and if
 
75
   `ecb-tree-buffer-style' is set to `image'.
 
76
 
38
77
 - User Option: exclude-parents-regexp
39
 
   Regexp which parent classes should not be shown in the methods buffer (see
40
 
   also `ecb-show-parents'). If nil then all parents will be shown if
 
78
   Regexps which parent classes should not be shown in the methods buffer
 
79
   (see also `ecb-show-parents'). If nil then all parents will be shown if
41
80
   `ecb-show-parents' is not nil.
42
81
 
43
82
   This options takes only effect for semantic-sources - means sources
110
149
   Changes for this option at runtime will take affect only after
111
150
   deactivating and then activating ECB again!
112
151
 
 
152
 - User Option: methods-filter-replace-existing
 
153
   How the methods-filter should be applied to existing filters. There are
 
154
   three different choices:
 
155
 
 
156
    - `never': This is the default and means that calling `ecb-methods-filter'
 
157
      always adds the new filter on top of already existing filters. So you
 
158
      can combine several filter to one combined like this example: 'Display
 
159
      only all public methods having the string "test" in its name.' With
 
160
      this setting the filters can only be cleared by calling
 
161
      `ecb-methods-filter' and then choosing "nothing".
 
162
 
 
163
    - `always': This means that `ecb-methods-filter' always clears a previous
 
164
      filter before applying the new one.
 
165
 
 
166
    - `ask': ECB asks if the new filter should replace the existing ones.
 
167
 
113
168
 - User Option: methods-menu-sorter
114
169
   Function which re-sorts the menu-entries of the directories buffer.
115
170
 
174
229
   This options takes only effect for semantic-sources - means sources
175
230
   supported by semantic!
176
231
 
 
232
 - User Option: methods-separate-prototypes
 
233
   Separate function-prototypes from the real functions. This is for example
 
234
   useful for C++ and C because these languages distinct between a
 
235
   method-prototype (rsp. function-prototype for C) and the method (rsp.
 
236
   function for C) itself. If this option is not nil then ECB separates the
 
237
   prototypes from the real function/methods. Then with `ecb-show-tags' the
 
238
   user can define different display-settings for each of them. If this
 
239
   option is nil then the prototypes and the real functions are filled in the
 
240
   same bucket and displayed plain and there is no sorting between prototypes
 
241
   and functions possible. If this option is switched on then it is senseful
 
242
   that `ecb-show-tags' contains for all modes which distinct between
 
243
   prototypes and real functions/methods two entries for the tag-type
 
244
   'function - see the documentation of this option.
 
245
 
177
246
 - User Option: post-process-semantic-taglist
178
247
   Define mode-dependent post-processing for the semantic-taglist. This is an
179
248
   alist where the car is a major-mode symbol and the cdr is a list of
211
280
 
212
281
 - User Option: show-tags
213
282
   How to show tags in the methods buffer first time after find-file.  This
214
 
   variable is a list where each element represents a type of tags:
 
283
   functionality is set on a major-mode base, i.e. for every major-mode a
 
284
   different setting can be used. The value of this option is a list of
 
285
   cons-cells:
 
286
 
 
287
   The car is either a major-mode symbol or the special symbol 'default which
 
288
   means if no setting for a certain major-mode is defined then the cdr of
 
289
   the 'default cons-cell is used. This option should always contain a
 
290
   default-setting!
 
291
 
 
292
   The cdr is a list where each element represents a type of tags:
215
293
 
216
294
      (<tag type> <display type> <sort method>)
217
295
 
 
296
   There can be more than 1 element for a certain <tag type>. This is for
 
297
   example useful for C++ and C because these languages distinct between a
 
298
   method-prototype (rsp. function-prototype for C) and the method (rsp.
 
299
   function for C) itself. The default value of these option contains two
 
300
   entries for <tag type> is `function' whereas the first one is responsible
 
301
   for the "real" methods (rsp. functions) and the second one for the
 
302
   prototypes. So if the methods should be flattened and the prototypes
 
303
   collapsed the show-tags-list for C++ and C must contain two entries for
 
304
   <tag type> `function', the first one defined as `flattened' and the second
 
305
   one defined as `collapsed'.
 
306
 
218
307
   The tags in the methods buffer are displayed in the order as they appear in
219
308
   this list.
220
309
 
342
431
   documentation of these function for details what they do.
343
432
 
344
433
   But you can add any arbitrary function if the following conditions are
345
 
   fulfilled: The function gets the semantic tag as argument returns the
346
 
   (new) point after finishing its job.
 
434
   fulfilled: The function gets the semantic tag as argument, returns the
 
435
   (new) point after finishing its job and the function must not put the
 
436
   point outside the tag-boundaries of the tag-argument.
347
437
 
348
438
 - User Option: type-tag-display
349
439
   How to display semantic type-tags in the methods buffer. Normally all tag
463
553
   Changes for this option at runtime will take affect only after
464
554
   deactivating and then activating ECB again!
465
555
 
 
556
 - User Option: history-exclude-file-regexps
 
557
   List of regexps which exclude source-files from being historized. Be aware
 
558
   that each always full filenames (ie. incl. full path) are matched against
 
559
   these regexps! Therefore be carefore with regexps beginning with ^!
 
560
 
466
561
 - User Option: history-item-name
467
562
   The name to use for items in the history buffer.
468
563
 
499
594
   extensions of `ecb-history-menu-user-extension' but the whole menu can be
500
595
   re-arranged with `ecb-history-menu-sorter'.
501
596
 
 
597
 - User Option: history-sort-ignore-case
 
598
   Ignore case for sorting the history-entries. See also
 
599
   `ecb-history-sort-method'.
 
600
 
 
601
 - User Option: history-sort-method
 
602
   Defines how the entries in the history-buffer are sorted.
 
603
    - `name': Sorting by name (default).
 
604
 
 
605
    - `extension': Sorting first by extension and then by name.
 
606
 
 
607
    - `nil': No sorting, means the most recently used buffers are on the top
 
608
      of the history and the seldom used buffers at the bottom.
 
609
 
 
610
   See also `ecb-history-sort-ignore-case'.
 
611
 
502
612
 - User Option: kill-buffer-clears-history
503
613
   Define if `kill-buffer' should also clear the history. There are three
504
614
   options:
510
620
 
511
621
    - `nil': `kill-buffer' does not affect the history (this is the default).
512
622
 
513
 
 - User Option: sort-history-items
514
 
   Sorts the items in the history buffer.
515
 
 
516
 
 
517
 
File: ecb.info,  Node: ecb-layout,  Next: ecb-compilation,  Prev: ecb-history,  Up: Customizable options
518
 
 
519
 
Group ecb-layout
520
 
----------------
521
 
 
522
 
This group contains settings for the screen-layout of the ECB:
523
 
 
524
 
 - User Option: activate-before-new-frame-created-hook
525
 
   Normal hook run before the new ECB-frame is created if `ecb-new-ecb-frame'
526
 
   is not nil (otherwise this hook is not evaluated).
527
 
 
528
 
 - User Option: advice-window-functions
529
 
   Advice functions to be more intelligent if used with ECB. You can choose
530
 
   the following functions to be adviced by ECB so they behave as if the
531
 
   edit-window(s) of ECB would be the only windows(s) of the ECB-frame:
532
 
 
533
 
    * `other-window' For this one see also the option
534
 
      `ecb-other-window-behavior'!
535
 
 
536
 
    * `delete-window'
537
 
 
538
 
    * `delete-other-windows'
539
 
 
540
 
    * `delete-windows-on'
541
 
 
542
 
    * `split-window-horizontally'
543
 
 
544
 
    * `split-window-vertically'
545
 
 
546
 
    * `split-window' If this advice is enabled then `split-window-vertically'
547
 
      and `split-window-horizontally' are autom. enabled too!
548
 
 
549
 
    * `switch-to-buffer'
550
 
 
551
 
    * `switch-to-buffer-other-window'
552
 
 
553
 
    * `display-buffer' Especially if `ecb-compile-window-height' is not nil
554
 
      it is strongly recommended not to disable this advice!
555
 
 
556
 
    * `other-window-for-scrolling' If this advice is enabled then the
557
 
      behavior of the following functions depends on
558
 
      `ecb-other-window-behavior':
559
 
       - `scroll-other-window'
560
 
 
561
 
       - `scroll-other-window-down'
562
 
 
563
 
       - `beginning-of-buffer-other-window'
564
 
 
565
 
       - `end-of-buffer-other-window'
566
 
 
567
 
    * `balance-windows': Only the edit-windows are balanced
568
 
 
569
 
   For working most conveniently with ECB it is the best to advice all these
570
 
   functions, because then all the standard shortcuts of these functions are
571
 
   also usable with ECB without doing anything else. Also other packages can
572
 
   interact best with ECB if these functions are all adviced. If these
573
 
   adviced functions are called in another frame than the ECB-frame they
574
 
   behave all exactly like the not adviced versions!
575
 
 
576
 
   But please read also the following:
577
 
 
578
 
   Normally all packages should work correct with ECB and it�s adviced
579
 
   functions but if there occur problems with a package cause of some of
580
 
   these adviced functions ECB offers the following fall-back solution:
581
 
 
582
 
   1. Deactivate in `ecb-advice-window-functions' all the adviced-functions
583
 
      which make problems with other packages.
584
 
 
585
 
   2. For every of the advice-able functions <adv-func> ECB offers a
586
 
      interactively function named "ecb-<adv-func>" which does exactly the
587
 
      same as the adviced version of <adv-func>. Use "ecb-<adv-func>" instead
588
 
      the original one to get the proper ECB behavior even if the function is
589
 
      not adviced anymore.
590
 
 
591
 
   3. You can bind in `ecb-activate-hook' the standard-shortcut of <adv-func>
592
 
      to "ecb-<adv-func>" and rebind it in `ecb-deactivate-hook' to
593
 
      <adv-func>.
594
 
 
595
 
   4. Now you have the best of both worlds: The problematic package works and
596
 
      you have the ECB-behavior of <adv-func> as if it would be adviced.
597
 
 
598
 
   Here is an example: Suppose you must deactivating the advice for
599
 
   `switch-to-buffer-other-window'. Then you deactivate this function with
600
 
   this option and you can use `ecb-switch-to-buffer-other-window' instead.
601
 
   Bind the shortcut you normally use for `switch-to-buffer-other-window' to
602
 
   `ecb-switch-to-buffer-other-window' (use `ecb-activate-hook' for this) and
603
 
   rebind it to the original function in the `ecb-deactivate-hook'.
604
 
 
605
 
 - User Option: advice-window-functions-signal-error
606
 
   Signal an error if an adviced function can not do its job. If not nil then
607
 
   an error is signaled if one of the adviced functions (see
608
 
   `ecb-advice-window-functions') can not do its job. So for example if the
609
 
   user tries to split the compile-window or an ecb-tree-window or if one
610
 
   tries to switch to another buffer in one of the ecb-tree-windows. For
611
 
   details see the documentation of each of the adviced functions to get info
612
 
   when an error is signaled.
613
 
 
614
 
   If this option is nil then no error is signaled but the called adviced
615
 
   function does simply nothing.
616
 
 
617
 
   Default is nil but it can also be useful to signal errors - so you see
618
 
   when call a function in a situation which is not supported by this
619
 
   function.
620
 
 
621
 
 - User Option: fix-window-size
622
 
   Fix size of the ECB-windows/buffers even after frame-resizing. The fix
623
 
   type (valid values are nil, t, width and height) can either be set on a
624
 
   layout-basis (means a different value for each layout) or one value can be
625
 
   set for all layouts.
626
 
 
627
 
   For a detailed description of the valid values see description of
628
 
   `window-size-fixed' which is newly introduced in GNU Emacs 21 and is only
629
 
   available there. Therefore this option takes only effect with GNU Emacs 21.
630
 
 
631
 
   Note1: Manually resizing the ECB-windows via `enlarge-window',
632
 
   `shrink-window', `mouse-drag-vertical-line' and `mouse-drag-mode-line' is
633
 
   still possible even if the window-sizes are fixed for frame-resizing!
634
 
 
635
 
   Note2: The description of `window-size-fixed' in the Elisp-info-manual is
636
 
   more detailed than the description offered by `C-h v'!
637
 
 
638
 
   Note3: With current Emacs 21.2.X there seems to be no distinction between
639
 
   `width', `height' and `t'. Therefore this option takes no effect (means
640
 
   all ecb-windows have always unfixed sizes) if `ecb-compile-window-height'
641
 
   is not `nil'.
642
 
 
643
 
   Per default no window-size fixing has been done.
644
 
 
645
 
 - User Option: hide-ecb-windows-after-hook
646
 
   Hooks run direct after the ECB windows have been hidden. Hiding was done
647
 
   either by `ecb-toggle-ecb-windows' or `ecb-hide-ecb-windows'.
648
 
 
649
 
   IMPORTANT: Hiding the ECB-windows is internally done by calling
650
 
   `ecb-redraw-layout' and therefore also the hooks
651
 
   `ecb-redraw-layout-before-hook' and `ecb-redraw-layout-after-hook' are
652
 
   evaluated. The hook-sequence is analogous to that described in
653
 
   `ecb-show-ecb-windows-after-hook'.
654
 
 
655
 
 - User Option: hide-ecb-windows-before-hook
656
 
   Hook run direct before the ECB windows will be hidden. Hiding is done
657
 
   either by `ecb-toggle-ecb-windows' or `ecb-hide-ecb-windows'. This means
658
 
   that at runtime of this hook all the ECB-tree-windows of current layout
659
 
   are visible.
660
 
 
661
 
   IMPORTANT: Hiding the ECB-windows is internally done by calling
662
 
   `ecb-redraw-layout' and therefore also the hooks
663
 
   `ecb-redraw-layout-before-hook' and `ecb-redraw-layout-after-hook' are
664
 
   evaluated. The hook-sequence is analogous to that described in
665
 
   `ecb-show-ecb-windows-before-hook'.
666
 
 
667
 
 - User Option: ignore-display-buffer-function
668
 
   Adviced `display-buffer' ignores `display-buffer-function'.  This means,
669
 
   that the adviced version of `display-buffer' (see
670
 
   `ecb-advice-window-functions') ignores the value of
671
 
   `display-buffer-function' when called for the `ecb-frame'.  If this
672
 
   variable should not be ignored then the function of
673
 
   `display-buffer-function' is completely responsible which window is used
674
 
   for the buffer to display - no smart ECB-logic will help to deal best with
675
 
   the ECB-window-layout! You can define if and when
676
 
   `display-buffer-function' should be ignored:
677
 
 
678
 
    - only when durable compile window is used - i.e. if
679
 
      `ecb-compile-window-height' is not nil
680
 
 
681
 
    - always when ECB is active - that means ignore when ECB is active
682
 
      otherwise not - this is the default value
683
 
 
684
 
    - never, the adviced version of `display-buffer' always uses the value of
685
 
      `display-buffer-function' if the value is a function.
686
 
 
687
 
 - User Option: ignore-special-display
688
 
   Ignore special-display-handling. This means, that all values of
689
 
   `special-display-function', `special-display-buffer-names' and
690
 
   `special-display-regexps' are ignored
691
 
 
692
 
    * only when durable compile window is used - i.e. if
693
 
      `ecb-compile-window-height' is not nil - this is the default value.
694
 
 
695
 
    * always when ECB is active - that means no special-display-handling of
696
 
      buffers when ECB is active
697
 
 
698
 
    * never, i.e. special-dislay-handling depends on the values of the
699
 
      options `special-display-function', `special-display-buffer-names' and
700
 
      `special-display-regexps'.
701
 
 
702
 
 
703
 
 - User Option: layout-always-operate-in-edit-window
704
 
   Adviced window functions work always in the edit-window. If we are in an
705
 
   ECB special buffer (methods, directories, etc), and any of the adviced
706
 
   windowing functions is called interactively (see
707
 
   `ecb-advice-window-functions'), we will select first an edit-window
708
 
   according to the value of `ecb-mouse-click-destination'. This is useful if
709
 
   you have any functions that use such functions and you don't want them to
710
 
   fail with an error complaining that the current buffer can not be split, or
711
 
   something similar.
712
 
 
713
 
   Because this may not be desirable in all situations and for all adviced
714
 
   functions this can be enabled separately for every advicable function (see
715
 
   also `ecb-advice-window-functions'). If the symbol of an adviced function
716
 
   is contained in the value of this option, then a edit-window is first
717
 
   selected otherwise either an error is reported or some other special
718
 
   reaction (depends on `ecb-advice-window-functions-signal-error'); see the
719
 
   documentation of the adviced functions for this.
720
 
 
721
 
   For `other-window', `other-window-for-scrolling' and
722
 
   `switch-to-buffer-other-window' this makes no sense, therefore you can not
723
 
   enable this for them.
724
 
 
725
 
   Per default this is enabled for `switch-to-buffer' and `display-buffer'.
726
 
 
727
 
 - User Option: layout-debug-mode
728
 
   Write debug-information about layout-operations in the Messages-buffer.
729
 
   Normally there should be no need to set this option to true but if there
730
 
   are problems to display buffers in the compile-window of ECB (e.g. buffers
731
 
   which should be displayed there aren't or the temporally
732
 
   enlarging-mechanism does not do what you think it should do etc...) then
733
 
   please do the following steps:
734
 
 
735
 
   1. Set `ecb-layout-debug-mode' to not nil
736
 
 
737
 
   2. Reproduce the wrong behavior exactly by repeating all the operations
738
 
      which lead to the problem.
739
 
 
740
 
   3. Now send immediately a bug report with `ecb-submit-problem-report'.
741
 
 
742
 
   4. Set `ecb-layout-debug-mode' back to nil if you do not want further
743
 
      debugging output in the *Messages* buffer
744
 
 
745
 
 - User Option: layout-name
746
 
   Select a window layout of ECB. Value is any arbitrary string. There are
747
 
   four different types of layouts: left, right, top and left-right, which
748
 
   means the location of the ECB-tree-windows in the ECB-frame.  Currently
749
 
   there are 20 predefined layouts; names see below. You can savely try out
750
 
   any of them by changing this value and saving it only for the current
751
 
   session. If you are sure which layout you want you can save it for future
752
 
   sessions. To get a picture of the layout for name <name> call
753
 
   `ecb-show-layout-help'. `ecb-layout-function-9'.
754
 
 
755
 
   Currently available layouts:
756
 
 
757
 
    * Left layouts: left1 left2 left3 left4 left5 left6 left7 left8 left9
758
 
      left10 left11 left12 left13 left14 left15
759
 
 
760
 
    * Right layouts: right1
761
 
 
762
 
    * Top layouts: top1 top2
763
 
 
764
 
    * Left-right layouts: leftright1 leftright2
765
 
 
766
 
   Regardless of the settings you define here: If you have destroyed or
767
 
   changed the ECB-screen-layout by any action you can always go back to this
768
 
   layout with `ecb-redraw-layout'
769
 
 
770
 
 - User Option: layout-window-sizes
771
 
   Specifies the sizes of the ECB windows for each layout. The easiest way
772
 
   (and also the strongly recommended way) to change this variable is to
773
 
   change the window sizes by dragging the window borders using the mouse and
774
 
   then store the window sizes by calling the command
775
 
   `ecb-store-window-sizes'. Next time the layout is redrawn the values
776
 
   stored in this option will be used.
777
 
 
778
 
   If `ecb-store-window-sizes' is used then the windows sizes are stored per
779
 
   default as fractions of current frame-width and -height of the ecb-frame,
780
 
   so the stored values will "work" for other frame sizes too. But if you
781
 
   call `ecb-store-window-sizes' with a prefix-argument then the fixed values
782
 
   of current width and height are stored!
783
 
 
784
 
   If this option is set "by hand" (i.e. not by `ecb-store-window-sizes')
785
 
   then the following is important:
786
 
    - It is recommended to use fractions of frame-width and -height!.
787
 
 
788
 
    - The order of the sequence of the inserted window sizes must be the same
789
 
      as `other-window' (the not-adviced version!) would walk!
790
 
 
791
 
 - User Option: maximize-ecb-window-after-selection
792
 
   If not nil maximize current tree-window after selection. When selecting
793
 
   another not-tree-window after such an automatic maximizing all
794
 
   tree-windows of current layout are displayed again. But a tree-window is
795
 
   not maximized if either a node has been selected via primary- oder
796
 
   secondarc mouse-button or the popup-menu of that tree-buffer has been
797
 
   opened.
798
 
 
799
 
 - User Option: new-ecb-frame
800
 
   Create a new frame at activation time of ECB.
801
 
 
802
 
 - User Option: other-window-behavior
803
 
   The behavior of ECB concerning getting an "other window". This has an
804
 
   effect if either `other-window' or `other-window-for-scrolling' is adviced
805
 
   by ECB, see `ecb-advice-window-functions'. The following settings are
806
 
   possible:
807
 
 
808
 
   `all':
809
 
 
810
 
   ECB will cycle through all windows of the ECB-frame or scroll simply the
811
 
   next window in the ECB-frame, means it behaves like the original
812
 
   `other-window' rsp. the original `other-window-for-scrolling'.
813
 
 
814
 
   `only-edit':
815
 
 
816
 
   ECB will only cycle through the edit-windows of ECB or only scroll another
817
 
   edit-window. If the selected window is not an edit-window then it behaves
818
 
   like with value `all'.
819
 
 
820
 
   `edit-and-compile':
821
 
 
822
 
   Like `only-edit' plus the compile window if any. If the selected window is
823
 
   neither an edit-window nor the compile-window then it behaves like with
824
 
   value `all'.
825
 
 
826
 
   `smart':
827
 
 
828
 
   With this setting ECB tries to choose the `other-window'-destination or
829
 
   the "other window" to scroll in a smart and intuitive way: If point is in
830
 
   one of the edit-windows and if the edit-area is splitted then always the
831
 
   "next" edit-window is choosen (whereas the next edit-window of the last
832
 
   edit-window is the first edit-window)- if the edit-area is unsplitted then
833
 
   the compile-window is used if there is one. In the context of an
834
 
   `other-window'-call the ARG of `other-window' will be taken into account.
835
 
 
836
 
   If one of the special ecb-windows is selected then always the "next"
837
 
   ecb-window is choosen (whereas the next ecb-window of the last ecb-window
838
 
   is the first ecb-window). In the context of an `other-window'-call the ARG
839
 
   of `other-window' will be taken into account.
840
 
 
841
 
   If the compile-window is selected then always the last edit-window which
842
 
   had the point will be used unless `other-window' has been called with a
843
 
   prefix-argument unequal 1.
844
 
 
845
 
   If there is an active minibuffer:
846
 
 
847
 
   Regardless of the allowed values above ECB handles the situation of an
848
 
   active minibuffer during a call to `other-window' or `scroll-other-window'
849
 
   like follows:
850
 
 
851
 
   If the minibuffer-window is selected then ECB always chooses the window
852
 
   `minibuffer-scroll-window' points to (when this variable is set, otherwise
853
 
   the compile-window or the last selected edit-window is choosen) when the
854
 
   called command is called to choose the 1. next window (always true for
855
 
   scrolling another window or true when `other-window' called without
856
 
   prefix-arg or with prefix-arg equal 1). Otherwise the window ARG steps
857
 
   away is choosen (in case of `other-window').
858
 
 
859
 
   If there is an active minibuffer but the minibuffer-window is not selected
860
 
   then `other-window' and `scroll-other-window' behave like the original
861
 
   version.
862
 
 
863
 
   In addition to the allowed values above the value of this option can also
864
 
   be a function:
865
 
 
866
 
   A function:
867
 
 
868
 
   This function gets seven arguments:
869
 
   1. A canonical list of all currently visible windows of the `ecb-frame'
870
 
 
871
 
   2. A canonical list of all currently visible edit-windows
872
 
 
873
 
   3. A canonical list of all currently visible ecb-windows
874
 
 
875
 
   4. The window-object of the compile-window if there is any.
876
 
 
877
 
   5. The minibuffer-window of the ECB-frame if there is an active minibuffer.
878
 
 
879
 
   6. The result of the function `ecb-where-is-point' - see the documentation
880
 
      of this function for details.
881
 
 
882
 
   7. An integer which indicates how many steps away from the current
883
 
      selected window the "other-window" is. Is nil when this function is
884
 
      called in another context then for `other-window'.
885
 
 
886
 
   The function has to return a window-object which is then used as "other
887
 
   window" for the command `other-window' or for scrolling another window
888
 
   (e.g. with `scroll-other-window'). Such a function has to handle properly
889
 
   all situation for itself.  `ecb-get-other-window-smart' is an example for
890
 
   such a function.
891
 
 
892
 
 - User Option: redraw-layout-after-hook
893
 
   Hooks run direct before the ECB windows will be shown either by
894
 
   `ecb-toggle-ecb-windows' or `ecb-show-ecb-windows'. This means that at
895
 
   runtime of this hook the ECB-windows are already visible.
896
 
 
897
 
 - User Option: redraw-layout-before-hook
898
 
   Hooks run direct before the ECB-layout will be redrawn by either
899
 
   `ecb-redraw-layout'.
900
 
 
901
 
 - User Option: redraw-layout-quickly
902
 
   If non-nil, we will attempt to redraw the layout quickly. Please read also
903
 
   carefully the documentation of `ecb-redraw-layout'.
904
 
 
905
 
 - User Option: select-edit-window-on-redraw
906
 
   Select the first edit window on `ecb-redraw-layout'.
907
 
 
908
 
 - User Option: show-ecb-windows-after-hook
909
 
   Hooks run direct before the ECB windows will be shown either by
910
 
   `ecb-toggle-ecb-windows' or `ecb-show-ecb-windows'. This means that at
911
 
   runtime of this hook the ECB-windows are already visible.
912
 
 
913
 
   IMPORTANT: Showing the hidden ECB-windows is internally done by calling
914
 
   `ecb-redraw-layout' and therefore also the hooks
915
 
   `ecb-redraw-layout-before-hook' and `ecb-redraw-layout-after-hook' are
916
 
   evaluated. So there is the following sequence of hooks during the process
917
 
   of showing the hidden ECB-windows:
918
 
   1. `ecb-show-ecb-windows-before-hook'
919
 
 
920
 
   2. `ecb-redraw-layout-before-hook'
921
 
 
922
 
   3. <redrawing the layout to show the hidden ECB-windows>
923
 
 
924
 
   4. `ecb-redraw-layout-after-hook'
925
 
 
926
 
   5. `ecb-show-ecb-windows-after-hook'
927
 
      So be aware which code you add to which hook!
928
 
 
929
 
 - User Option: show-ecb-windows-before-hook
930
 
   Hooks run direct before the ECB windows will be shown either by
931
 
   `ecb-toggle-ecb-windows' or `ecb-show-ecb-windows'. This means that at
932
 
   runtime of this hook the ECB-windows are still hidden.
933
 
 
934
 
   IMPORTANT: Showing the hidden ECB-windows is internally done by calling
935
 
   `ecb-redraw-layout' and therefore also the hooks
936
 
   `ecb-redraw-layout-before-hook' and `ecb-redraw-layout-after-hook' are
937
 
   evaluated. So there is the following sequence of hooks during the process
938
 
   of showing the hidden ECB-windows:
939
 
   1. `ecb-show-ecb-windows-before-hook'
940
 
 
941
 
   2. `ecb-redraw-layout-before-hook'
942
 
 
943
 
   3. <redrawing the layout to show the hidden ECB-windows>
944
 
 
945
 
   4. `ecb-redraw-layout-after-hook'
946
 
 
947
 
   5. `ecb-show-ecb-windows-after-hook'
948
 
      So be aware which code you add to which hook!
949
 
 
950
 
 - User Option: split-edit-window-after-start
951
 
   Sets if and how the edit window should be splitted after ECB-start.  But
952
 
   be aware: This option determines only if and how the edit-window should be
953
 
   splitted at start-time of ECB. There are five different values allowed for
954
 
   this option:
955
 
 
956
 
    - `nil': Do not split the edit-area of ECB after activation, i.e. there
957
 
      will be only one edit-window after starting ECB.
958
 
 
959
 
    - `horizontal': Split the edit-area in 2 edit-windows side by side.
960
 
 
961
 
    - `vertical': Split the edit-area in 2 edit-windows, one above the other.
962
 
 
963
 
    - `before-activation': Split the edit-area as before the ECB-start, i.e.
964
 
      the edit-area will have after start a window-layout as the whole frame
965
 
      had before the start of ECB.
966
 
 
967
 
    - `before-deactivation': Split the edit-area into a window-layout ECB had
968
 
      in its edit-area direct before the ECB-deactivation. This value
969
 
      preserves the full state between activations of ECB, i.e. the
970
 
      visibility of the ECB-windows, the visibility of a compile-window and
971
 
      also the full split-state of the edit-area. But this can only be done
972
 
      if important layout-options have not been changed in the meanwhile.
973
 
      These are the options `ecb-layout-name', `ecb-compile-window-height',
974
 
      `ecb-compile-window-width', `ecb-windows-width' and
975
 
      `ecb-windows-height'.
976
 
 
977
 
   Default value is `before-deactivation'.
978
 
 
979
 
   Some remarks to the value `before-activation': If this value has been set
980
 
   then ECB needs three permanent adivces even when ECB is deactivated:
981
 
   `split-window', `delete-window' and `delete-other-windows'. But these
982
 
   advices do not change any behavior of these functions but only storing in
983
 
   an internal ECB-variable the facts that a window has been splitted or
984
 
   deleted. In addition to this these advices are 100% error-save, means the
985
 
   functionality of the original functions will be performed in every(!)
986
 
   case even if within the advice an error occurs (but normally there can no
987
 
   errors occur in these advices because they are very simple).  Conclusion:
988
 
   If you want really all ECB-advices being disabled after deactivating ECB
989
 
   then you have to set this option to other values then `before-activation'.
990
 
   But setting this variable to this value is really completely save.
991
 
 
992
 
 - User Option: toggle-layout-sequence
993
 
   Toggle sequence for layout toggling with `ecb-toggle-layout'.  Every
994
 
   element of this list has to be a valid layout-name i.e. either one of the
995
 
   predefined layouts or one of the user-defined layouts.
996
 
 
997
 
   You can add here as many layouts as you want but to use this option most
998
 
   effective you should not add more than 2 or 3 layouts so every layout can
999
 
   be accessed very fast by toggling with `ecb-toggle-layout'. It is also
1000
 
   senseful to add layouts which have the same principal outline, i.e. all
1001
 
   their tree-buffers are on the same side of the frame and the
1002
 
   tree-buffer-"column" (or -"row") has identical size for the layouts.
1003
 
 
1004
 
   Recommended values are for example:
1005
 
 
1006
 
    - ("left10" "left15"), toggles between methods and directories/history
1007
 
 
1008
 
    - ("left10" "left13"), toggles between methods and directories
1009
 
 
1010
 
    - ("left10" "left14"), toggles between methods and history
1011
 
 
1012
 
    - ("left10" "left13" "left14"), toggles between methods, history and
1013
 
      directories
1014
 
 
1015
 
   See also option `ecb-show-sources-in-directories-buffer'.
1016
 
 
1017
 
   This option makes only sense if the value is a list with more than 1
1018
 
   element!
1019
 
 
1020
 
 - User Option: windows-height
1021
 
   The height of the ECB windows in lines for top-layouts. If the number is
1022
 
   less than 1.0 the width is a fraction of the frame height.
1023
 
 
1024
 
 - User Option: windows-width
1025
 
   The width of the ECB windows in columns for left- and right layouts.  If
1026
 
   the number is less than 1.0 the width is a fraction of the frame width.
1027