forked from ChasManRors/ecb
-
Notifications
You must be signed in to change notification settings - Fork 20
/
NEWS
1209 lines (825 loc) · 49.1 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
* Changes for ECB version 1.94
** Supporting of non-semantic-sources.
*** Native parsing and displaying source-contents of imenu supported files
*** Native parsing and displaying source-contents of etags supported files
*** There are some new options like `ecb-process-non-semantic-files',
`ecb-non-semantic-parsing-function' and `ecb-method-non-semantic-face' and
one new face `ecb-method-non-semantic-face'. See new customize group
"ecb-non-semantic"!
** Better speedbar integration into the ECB-frame
*** Now speedbar can be used not only as replacement for the
ECB-directory-browser in the directory-window but also instead of the
sources- or the methods-buffer/window. See new option
`ecb-use-speedbar-instead-native-tree-buffer' which replaces the old
option `ecb-use-speedbar-for-directories'.
*** Now speedbar can be integrated into an arbitrary layout in the same way as
the other four special buffers (directories, sources, methods and
history). See new example layout with name "left-dir-plus-speedbar".
*** New option `ecb-directories-update-speedbar' which helps you
to update a speedbar-window to the current selected directory of the
ECB-directories-window.
** New option `ecb-compilation-predicates' for better specifying which buffers
should be treated as compilation-buffers and therefore be displayed in the
compile-window of ECB - if there is any.
** Better customizing of the mode-line of an ECB-tree-buffer.
See the new option `ecb-mode-line-data'.
** Fixed bugs:
*** Using "Add source path" from the popup-menu now doesn't open the Windows
file-dialog-box onto Windows-systems because this would prevent this
command from working.
*** Smart arrowkey-navigation in the tree-buffers is now even smarter.
Thanks to John Russel <jorussel@cisco.com> for suggestion.
*** If ECB was activated with a layout which does not contain a
directory-buffer then you got always an empty directory-buffer even after
switching to a layout with a directory-buffer. This is fixed now.
* Changes for ECB version 1.93
** Fixed bugs:
*** The adviced version of `other-window' now works correct too if a
minibuffer-window is active.
*** The commands of `winner-mode' are now only forbidden in the ECB-frame
but work in any other frame.
*** `scroll-all-mode' now works correct in other frames than the ECB-frame.
*** Removed the annoying message "Partial reparsing..."
** Enhancements to the layout:
*** Slightly better redrawing current layout especially if the layout contains
a compile-window.
*** ECB autom. displays hidden compile-window before starting a compilation.
This is done if `ecb-compile-window-height' is not nil but the
compile-window is currently hidden by `ecb-toggle-compile-window'. Of
course this works also for grep and other compile-modes. Same for
`switch-to-buffer' and `switch-to-buffer-other-window' if called for a
compilation-buffer in the sense of `ecb-compilation-buffer-p'.
*** `switch-to-buffer-other-window' now works more naturally within the
ECB-frame, especially if a compile-window is used.
*** `ecb-toggle-compile-window' now has a default key-binding: [C-c . \]
*** Now also layouts with user-defined special ecb-windows can be created
interactively. See the online-manual for further details.
** Enhancements to the tree-buffers:
*** Now user-extensions can be added to the popup-menues of the tree-buffers.
See new options `ecb-directories-menu-user-extension',
`ecb-sources-menu-user-extension', `ecb-methods-menu-user-extension',
`ecb-history-menu-user-extension'.
*** The methods-buffer now has a popup-menu with senseful actions
** New option `ecb-sources-exclude-cvsignore' which allows to exclude files from
being displayed in the sources-buffer if they are contained in a .cvsignore
file.
** ECB now also works with buffers "online" extracted from archives.
Buffers extracted from an archive in `tar-mode' or `archive-mode' are now
correct handled as if they were normal file-buffers. This feature doesn't
work with XEmacs cause of its tar-mode and arc-mode implementation which
does not handle extracted files as normal files.
** ECB now checks at load-time if the required packages semantic and eieio are
at least available - regardless of the needed version. If at least one of
these packages is missing then ECB offers to download and install it. More
details are available in the installation instructions.
* Changes for ECB version 1.92.1
** Fixed bugs:
*** Fixing eating up a lot of CPU-power just for updating the menu-
entries of current compilation-buffers in the ECB-menu. Now the mechanism
is based on a idle-timer and a cache.
Fixed with great testing-help by Dan Debertin <airboss@nodewarrior.org>
*** Fixed a bug which always truncates lines in the ECB-windows regardless
of the value of `ecb-truncate-lines'
*** The upgrade library of ECB now explicitly requires and loads the
library executable.el because Emacs 20.X does not autoload the
function `executable-find'.
*** `ecb-toggle-compile-window' now works also correct if called with
a prefix arg.
* Changes for ECB version 1.92
** Fixed bugs:
*** Fixed small bugs in the popup-menu of the history-buffer.
*** Fixed some not working links in the FAQ.
** ECB now includes a file "ecb-autoloads.el" which contains all available
autoloads of ECB. Therefore loading this file is enough.
** Enhancements to the layout
*** The sizes of the ecb-windows can be fixed even during frame-resizing
This new feature is only available with GNU Emacs 21.X. See new option
`ecb-fix-window-size'.
Suggested by Gunther Ohrner <G.Ohrner@post.rwth-aachen.de>
*** The command `ecb-store-window-sizes' can now also store fixed sizes.
If called with a prefix arg then fixed sizes are stored instead of
fractions of frame-width resp. -height.
*** The command `split-window' is now also adviced to work properly.
** Enhancements for the tree-buffers
*** "Create Source" in the popup-menues now work also for non-java-files.
*** ecb-truncate-lines can now be set different for each ECB-tree-buffer.
*** Easy horizontal mouse-scrolling of the ECB tree-buffers. See new option
`ecb-tree-easy-hor-scroll'.
** Added a command `ecb-jde-display-class-at-point' which displays the contents
of the java-class under point in the methods-buffer of ECB.
** Renamed previous HISTORY file to NEWS and reformate it for outline-mode.
* Changes for ECB version 1.91.1
** Fixed bugs:
*** Fixes a bug in the speedbar integration which prevented clicking onto a
directory in the speedbar: Always after clicking onto a directory speedbar
has re-synced itself to the directory of the current source-buffer in the
edit-window. This bug is fixed, now directory navigation in the speedbar
works. (Klaus)
*** Fixes a bug in upgrading stored window-sizes from ECB 1.80 to ECB >= 1.90.
Fixes also two bugs in `ecb-store-window-sizes' if default-values are used in
`ecb-layout-window-sizes' or if ecb-windows have frame-height as height
(resp. frame-width as width) . (Klaus)
*** Fixed a bug in the navigation-history of ECB which sometimes has prevented
that a user can open files from the sources/history buffer or clicking onto
tokens in the method-buffer. Now the back-forward-navigation works stable.
(Klaus)
** Enhanced the downloading feature of ECB
*** Fixed a bug in the downloading feature of ECB. (Klaus)
*** Now ECB autom. checks at the download sites which versions are available.
With the new option `ecb-download-package-version-type' you can define
which types of version you allow to download (only stable, stable and betas
or stable, betas and alphas); see related section in the online-manual!
(Klaus)
*** New command `ecb-download-semantic' for easy getting latest semantic
versions. (Klaus)
* Changes for ECB version 1.90
** The website of ECB has moved from http://home.swipnet.se/mayhem/ecb.html to
http://ecb.sourceforge.net. Maintainance has switched from Jesper Nordenberg
to Klaus Berndl.
** Fixed bugs:
*** Fixed an annoying bug which results in an error "Wrong type argument:
integer-or-marker-p nil)" after a full buffer reparse. ECB 1.80 has repaired
its internal state but nevertheless the user had to reclick on the same
token after this error to really jump to a token. With ECB 1.90 this bug has
been gone (Klaus).
*** Fixed a small bug in `ecb-add-all-buffers-to-history': If
`ecb-sort-history-items' is nil then now the most recently used buffers are
added to the top of the history, the seldom used buffers at the bottom.
Thanks to Stefan Reichör <xsteve@riic.at>! (Klaus).
*** Fixed some bugs concerning the eshell-integration (Klaus):
**** Synchronizing does not set the mark anymore
**** No longer synchronizing after every command if current source resides in
the HOME directory.
**** Redrawing the layout preserves the eshell-buffer in the compile-window.
**** Standard emacs-hooks are not clobbered with ecb-eshell-functions if ECB is
not active.
** General enhancements:
*** Now ECB displays at every start a "Tip of the day" in a dialog-box. This can
be switched off with option `ecb-tip-of-the-day'. There is also a new
command `ecb-show-tip-of-the-day' (Klaus).
*** Advicing `scroll-all-mode' so it works correct with ECB, means
`scroll-all-mode' scrolls only the windows of the edit-area, i.e. max. the
two edit-windows (Klaus).
*** Autom. preventing `winner-mode' from being activated as long as ECB is
running (Klaus).
*** Now autom. (de)activating ECB via the options ecb-major-modes-activate and
ecb-major-modes-deactivate also works when opening files via dired (Klaus).
*** Now ECB can be "autoloaded", i.e.
+ ecb-activate,
+ ecb-minor-mode,
+ ecb-byte-compile and
+ ecb-show-help
are autoload-able via '(autoload ...)' (Klaus)
*** Silencing the byte-compiler, i.e. byte-compilation of ECB should now be
warning free. If byte-compilation still throws warnings during
byte-compilation with 'ecb-byte-compile' (resp. using the Makefile or
make.bat) please send this to our mailing list. (Klaus)
** Enhancements to the methods/variable/token tree-buffer:
*** New feature: Now the methods buffer is auto. expanded if the node related to
the current token in the edit-window is not visible (probably because its
parent is collapsed). See new options `ecb-auto-expand-token-tree' and
`ecb-expand-methods-switch-off-auto-expand' and the new comand
`ecb-toggle-auto-expand-token-tree' (Klaus).
*** New command `ecb-expand-methods-nodes' which allows precisely expanding
tokens with a certain indentation-level. There are also two new related
options `ecb-methods-nodes-expand-spec' and
`ecb-methods-nodes-collapse-spec' (Klaus).
** Enhancements to the directories tree-buffer:
*** New command `ecb-expand-directory-nodes' which does the same for the
directories tree-buffer as the new command `ecb-expand-methods-nodes' for
the methods tree-buffer (Klaus).
*** Rewritten cache-mechanism for directories and sources:
Depending on the value of the option ecb-cache-directory-contents the
following is cached for a directory:
- The disk-contents of the directory means subdirs and files
- If ecb-show-sources-in-directories-buffer is nil (i.e. sources are
displayed in the extra ECB-sources-window) then also the complete
sources-buffer is cached. This results in a speed-boost for big-size
directories.
The cache of a directory is refreshed and actualized with a POWER-click onto
the related directory in the directories-buffer (s.b.) (Klaus)
** Enhancements to the sources tree-buffer:
*** The option ecb-source-file-regexps now works on a directory-base, which means
for each directory-regexp the files to display can be specified. Default is
an all-matching directory-regexp. Old saved values are autom. upgraded
(Klaus).
** Enhancements to the layout-customization:
*** Naming and managing of layouts has been changed! Now a layout is not longer
identified by an integer but by an arbitrary string! Example: The layout
with index 0 in ECB <= 1.80 is now named "left1" in ECB 1.90.
**** Therefore the name of the option 'ecb-layout-nr' has changed to
'ecb-layout-name'! See the docstring of 'ecb-layout-name' for the names
of all buildin layouts.
**** In this context also the type of ecb-show-sources-in-directories-buffer has
changed so it is now a list of layout-names where the sources should be
displayed in the directories window (or 'always/'never). Now every change of
the layout also checks the value of ecb-show-sources-in-directories-buffer.
**** This change also introduces three new commands:
- ecb-change-layout: Change layouts by selecting a name
- ecb-delete-new-layout: Delete an user-created (by 'ecb-create-new-layout')
layout.
- ecb-show-layout-help: Displays the docstring of a layout which at least
for buildin layouts contains a picture of the outline of this layout.
All three commands offer TAB-completion for easy selecting a layout name.
**** ECB autom. upgrades the following options to theirs new names/types:
- ecb-layout-nr: The stored value is transformed to the new name of the
related layout and stored in 'ecb-layout-name'
- ecb-toggle-layout-sequence: The stored value is transformed to the new
type with layout-names instead of layout-numbers.
- ecb-major-modes-activate: The stored value is transformed to the new type
with layout-names instead of layout-numbers.
- ecb-layout-window-sizes: The stored value is transformed to the new type
with layout-names instead of layout-numbers.
- ecb-show-sources-in-directories-buffer: Reset to the new default value.
(Klaus)
*** Adding a new layout type "left-right" which allows the ECB-tree-windows to
be located at the left and the right side of the ECB-frame. See the new
layouts "leftright1", "leftright2" and "leftright3" for examples. Other
layouts of this type can be created or programmed very easy with
'ecb-create-newlayout' resp. the macro 'ecb-layout-define'. (Klaus)
*** Now ECB offers a command `ecb-create-new-layout' for interactively creating
new layouts "by example". Read the online-help. (Klaus)
*** Rewritten the mechanism for storing customized window-sizes. See option
ecb-layout-window-sizes and the command ecb-store-window-sizes and
ecb-restore-window-sizes. Now the sizes are always saved as fractions of
the width (resp. height) of the ECB-frame, so the stored sizes are always
correct regardless of the current frame-size (Klaus). Suggested and first
implementation by Geert Ribbers [geert.ribbers@realworld.nl]
** General Enhancements of the tree-windows:
*** Introduced a POWER-click (was SHIFT-click before) in the ECB-tree-windows -
see documentation of ecb-primary-secondary-mouse-buttons and see also the
online-help section "Usage of ECB --> Using the mouse" (Klaus).
*** Now the ECB-tree-buffers offer in their popup-menus a "Grep" and a "Grep
recursive" (= grep-find) command where you can perform an easy grep in every
directory without buffer-switching before. See also the new options
`ecb-grep-function' and `ecb-grep-find-function'. (Klaus)
*** Modified syntax-table for all tree-buffers with all paren, braces and
brackets handled as whitespace so for example no paren-matching takes place
(Klaus).
** Enhancements to the layout-engine of ECB:
*** Added a complete new section "The layout-engine of ECB" to the online-help
which describes in detail how to program new layouts and new special
windows. This is for foreign packages which want to display own informations
in own special windows and synchronizing these windows with the edit-window
of ECB (a graphical debugger could be an example). Also a full working
example is added in the new file ecb-examples.el. (Klaus)
*** Completely rewritten how to program new layouts. Now there is a new macro
`ecb-layout-define' which offers very easy programming of new layouts.
(Klaus).
** Enhancements to the compile-window
*** ECB now has a list of valid compilation buffers within the ECB menu. (Kevin)
*** ECB now supports `ecb-enlarged-compilation-window-max-height' which can be
used for defining the max. height of the ecb-compile-window if enlarged by
`ecb-toggle-enlarged-compilation-window'. (burton)
*** Added new command 'ecb-toggle-compile-window': Toggle the visibility of the
compile-window of ECB (Klaus).
** Speedbar is now integrated in ECB and can be used instead of the standard
ECB-directories buffer (or instead of all tree-buffers if you like :-). Most
of the important basic work has been done by Kevin A. Burton.
*** See new option 'ecb-use-speedbar-for-directories' and the node "Integrating
speedbar" in the online-help. (Klaus)
*** Version-checking for correct speedbar version (>= 0.14beta1). For lower
versions ecb-use-speedbar-for-directories has no effect. (Klaus)
*** ecb-speedbar and speedbar first loaded direct before drawing the layout
with integrated speedbar. (Klaus)
*** The speedbar-commands speedbar, speedbar-get-focus are adviced during
running speedbar within ECB, so they behave in a senseful way. (Klaus)
** Enhancements to the ehell-support of ECB:
*** ecb-eshell now recenters after command execution. (burton)
*** ecb-eshell now recenters if there are any window resizes. This is done so
that the prompt is always at the bottom of the window. (burton)
*** ecb-eshell integration now protects against buffer-list modifications during
transparent eshell updates in the compile window. In the past, if the eshell
was running, and you want from buffer "foo", to "bar", and then tries to go
back to "foo" the next entry in your buffer list is "*eshell*" so this would
break a lot of completion tools like 'switch-to-buffer. (burton)
*** Added online documentation for the eshell integration. See section
"Tips and tricks". (Klaus)
** New hooks:
*** New or renamed hooks:
- ecb-redraw-layout-after-hook (new)
- ecb-redraw-layout-before-hook (new)
- ecb-hide-ecb-windows-after-hook (new)
- ecb-hide-ecb-windows-before-hook (was ecb-hide-ecb-windows-hook)
- ecb-show-ecb-windows-after-hook (new)
- ecb-show-ecb-windows-before-hook (was ecb-show-ecb-windows-hook)
Read the documentation! (Klaus)
*** Added two general hooks:
+ ecb-before-activate-hook: Activate ECB only if all added hooks return not
nil
+ ecb-before-deactivate-hook: Deactivate ECB only if all added hooks return
not nil
(Klaus)
*** Added 5 new hooks for the ECB tree-buffers:
+ ecb-common-tree-buffer-after-create-hook
+ ecb-directories-buffer-after-create-hook
+ ecb-sources-buffer-after-create-hook
+ ecb-methods-buffer-after-create-hook
+ ecb-history-buffer-after-create-hook
These hooks are called directly after tree-buffer creation so they can be
used for example to add personal local keybindings either to all
tree-buffers (ecb-common-tree-buffer-after-create-hook) or just to a certain
tree-buffer. Please read the documentation. (Klaus)
* Changes for ECB version 1.80
** ECB now requires:
+ Latest stable release of semantic: Version 1.4
+ Latest stable release of eieio: Version 0.17
ECB checks at start-time if the correct versions are available and if not
ECB offers you to download and install them from within Emacs. After this
you have only to restart Emacs and you are fine. (Klaus)
** Fixed bugs:
*** Fixed: Now no empty tooltips are displayed if mouse moves over nodes in the
tree-buffers of ECB which can be displayed completely in the tree-window.
(Klaus)
*** Fixed a bug in ecb-eshell. If we are running with current buffer sync, and
there is garbage on the current line, when we change buffers this garbage will
be executed which could result in a 'command not found' or even worse, a
damaging command executed. We now cleanse the command line prior to directory
changed. (Kevin A. Burton)
*** Fixed a bug in ecb-speedbar. The speedbar was doing its own updating outside
of the ECB. This means that if you were to change buffers in a frame outside
of the ECB frame, the ECB's Speedbar would be updated to reflect a buffer not
within the ECB. We now disable Speedbar's automatic update and have ECB
handle this. (Kevin A. Burton)
*** Fixed a bug: Sometimes there occurs a a "wrong-type-argument"-error (or
"destroyed extent"-error with XEmacs) under some circumstances. Now ECB
auto-reparses the buffer and after that ECB is in correct state again.
(Klaus)
*** Fixed formatting of "Parent" nodes in token buffer. (Jesper)
** Byte compiling ECB either interactive with `ecb-byte-compile' or with the
supplied Makefile now checks also the versions of semantic and eieio.
(Klaus)
** ECB now displays the section "First steps" of the online-manual after
activating first time. (Klaus)
** Now the adviced versions of `delete-window' and `delete-other-windows' can
also handle the optional WINDOW argument of the original versions correctly
so the adviced versions now also work correct if called from program (Klaus).
** New adviced window command: `delete-windows-on' now works correct with ECB.
See `ecb-advice-window-functions'. (Klaus)
** In the ECB-directories buffer now F4 adds a new source-path instead of F1.
That is because F1 is such an important key in many OS and tools (e.g. opens
help in all windows-programs), so ECB should not hardly "rebind" it. (Klaus)
** Enhancing the option 'ecb-window-sync': Now the synchronisation can take
place for all buffers which have a relation to files AND directories, i.e.
now also for dired-buffers. But per default this is switched off, see the
doc-string. (Klaus)
** Now the ECB online help is available in the standard Info-format and also in
HTML-format. With the new option 'ecb-show-help-format' you can choose which
format is used by the function 'ecb-show-help'. (Klaus)
** New feature and command: ecb-download-ecb. With this function you can
download and install any arbitrary ECB-version from the ECB-website from
within Emacs. This is especially usefull for upgrading to the latest
version. (Klaus)
** New debug mode for ECB which prints some debug informations in the message
buffer for certain critical operations with semantic-overlays/extends.
New option 'ecb-debug-mode' (also available in the Help-menu of ECB).
(Klaus)
** Some default keybindings have changed; see `ecb-key-map'. (Klaus)
** New feature: Possibility to define a sequence of layouts with new option
`ecb-toggle-layout-sequence' and toggle very fast between them via
`ecb-toggle-layout'. Read the online-help section "Simulation a speedbar
without an extra frame"! (Klaus).
** Two new hooks: ecb-hide-ecb-windows-hook and ecb-show-ecb-windows-hook. Read
the documentation. (Klaus)
Suggested by Daniel Hegyi <daniel_hegyi@hotmail.com>
** Two new options: ecb-major-modes-activate and ecb-major-modes-deactivate.
Allow (de)activation of ECB on major-mode base. Instead of deactivation also
just hiding the ECB-windows is possible. Read the docstrings. (Klaus)
Suggested by Daniel Hegyi <daniel_hegyi@hotmail.com>
** Redefining of the option 'ecb-compile-window-temporally-enlarge': Now you
can specify that the compile-window is auto. enlarged after selecting it and
auto. shrinked after leaving it. Read the docstring! (Klaus)
Suggested by Daniel Hegyi <daniel_hegyi@hotmail.com>
** Much better and more powerful auto. upgrading-mechanism of incompatible or
renamed ECB-options to latest ECB-version. See the option
ecb-auto-compatibility-check! (Klaus)
** New option ecb-tree-RET-selects-edit-window: Possibility not to select the
edit-window of hitting RET in a tree-buffer; see the doc-string. There is
also a new function ecb-toggle-RET-selects-edit-window which is bound to
[C-t] in each tree-buffer. (Kevin A. Burton, Klaus)
** Better grouping of external methods, i.e. methods which are implemented
outside the class-definition, like in C++, CLOS and EIEIO. Now this is done
completely by semantic. (Klaus)
** For application programmers using the tree-buffer library:
+ The function tree-buffer-create has a new argument NODE-DATA-EQUAL-FN. See
the doc-string for a description (Klaus).
+ For each tree-buffer a special user-data-storage (for any arbitrary data)
is ceated which can be accessed via `tree-buffer-set-data-store' and
`tree-buffer-get-data-store'. See the docstring of `tree-buffer-create'.
(Klaus)
* Changes for ECB version 1.70
** New option ecb-bucket-token-display. See doc-string for details. (Klaus)
** Reorganisation of the faces used by ECB. The group 'ecb-face-options'
contains now all options which type is 'face (i.e. the defcustom's) and the
group 'ecb-faces' contains all face-definition (the defface's). In addition
it is now possible to change easily and fast the general face for ALL
ECB-tree-buffers (same for the highlighting face). See the docstring of the
new faces 'ecb-default-general-face' and 'ecb-default-highlight-face' for
further details. (Klaus).
** Smarter incr. search in a tree-buffer with the [end]-key: If there are at
least two nodes with the same greatest common-prefix than every hit of
[end] jumps to the next node with this common prefix. (Klaus)
** New feature ecb-auto-compatibility-check: ECB checks on startup if the
current value of an ECB-option OPT is not compatible with the type of OPT in
current ECB-release. This is done during activation. If there are
incompatible options ECB resets them to the default value of current ECB
release and displays after activation in a temporary window which options
have been reset, inkl. their old-value (before the reset) and new-value
(after the reset). (Klaus)
** New feature ecb-tree-navigation-by-arrow: Smarter navigation in the
tree-windows with left- and right-arrow key (Klaus).
Thanks for the suggestion and a first implementation to Geert Ribbers
<geert.ribbers@realworld.nl>!
** New feature 'ecb-type-token-display'. See the doc-string of this new option
for a description. (Klaus)
** Now the option 'ecb-post-process-semantic-tokenlist' has per default an
entry for emacs-lisp-mode, so for eieio-code the methods (defmethod) of a
class are grouped with respect to the class they belong. The new default
value of this option does this for c++- and eieio-code. (Klaus)
** Now in the ECB-tree-buffers RETURN works like the primary button (already in
previous versions) and C-RETURN works like the secondary button (new in
version 1.70). For an explanation of primary and secondary see the option
ecb-primary-secondary-mouse-buttons. (Klaus)
** New feature: Now the token-display function can be defined separated for
each major-mode. Furthermore the token-display for C++ has enhanced,
especially for template-classes (but template displaying is first available
with semantic > version 14beta13!).
For this the option ecb-token-display-function has been completely rewritten
and is now incompatible with the old values before ECB 1.61. (Klaus)
** Fixed a bug with mouse-avoidance-mode (only relevant for GNU Emacs 20.X)
Klaus.
** New feature, ecb-select-edit-window-on-redraw. Mostly used if you are running
with ecb-redraw-layout-quickly and want to make sure you are always in the
edit window. (Kevin)
** New feature, ecb-auto-activate. If non-nil we can start the ECB after Emacs
is started. See `ecb-auto-activate' for more information. (Kevin)
** New package, ecb-cycle.el. Supports cycling through all known compilation
buffers. (Kevin)
+ ecb-cycle-switch-to-compilation-buffer - switch to available compilation
buffers.
+ ecb-cycle-through-compilation-buffers - cycle through all compilation
buffers.
** Much better performance of the directory and file-browser in ECB, especially
for directories with a lot of entries (means ~ >1000, dependend on your
machine and the net-connection in case of network-drives). See also the new
feature: ecb-cache-directory-contents. (Klaus)
** ecb-eshell now supports customization. (Kevin)
** New feature: ecb-layout-always-operate-in-edit-window. Look at the
documentation. (Kevin & Klaus)
** Fixed a bug in `ecb-toggle-ecb-windows'. For starters we weren't setting
`ecb-window-hidden' when we redraw the layout. This means that the ecb
windows could be hidden but never shown.
Other things:
+ ecb-windows-hidden now has documentation
+ we display status messages when we hide windows. (Kevin)
** Fixed bug in `ecb-redraw-layout-quickly'. If for come reason any of the ECB
windows are not alive, we do not return with a hard error. Instead, we use
the scratch buffer. (Kevin)
** New function ecb-toggle-enlarged-compilation-window allows users to expand and
then contract the compilation window with a new key binding C-c . / (Kevin)
** new option ecb-add-path-for-not-matching-files. Look at the documentation
(Klaus).
* Changes for ECB version 1.60
** ecb-highlight-token-header-after-jump is now a boolean; which face is used
for highlighting is defined in ecb-token-header-face. (Klaus)
** New option 'ecb-post-process-semantic-tokenlist': Special postprocessing of
the semantic tokenlist for certain major-modes. This is usefull for
c++-mode. Now with the default value of this option all methods in a
c++-implementation-file (no class/method-declaration but only method
implementations) are grouped with respect to the class they belong. (Klaus)
** Now also with C++ Sources the method- and variable-protection is displayed
correct in the ECB-method buffer (Klaus).
** Fixed a bug which prevented ECB using the root path "/" on unix-like systems
as a source-path. (Klaus)
** If a file via the standard-mechanisms of Emacs (e.g. find-file) is openend,
then the auto. window synch (see `ecb-window-sync') has worked only correct
if the new file is located in any of the paths in `ecb-source-path'. Now ECB
adds the path of the new file at least temporally via `ecb-add-source-path'
to the list of paths in `ecb-source-path', so the window-synch works always
correct. ECB asks the user if the new path should saved also for future
sessions. (Klaus)
** Added ecb-redraw-layout-hooks so that code can be executed after we redraw the
ecb layout.
** New hook ecb-current-buffer-sync-hook allows developers to add code to be
evaluated after the ECB is synchronized with the current buffer.
** Now all faces used by ECB for highlighting and displaying it´s own stuff are
customizable. See new group 'ecb-faces' (Klaus).
** ECB is now fully prepared for Emacs 21. The new feature
`ecb-show-node-info-in-minibuffer' is implemented with the new 'help-echo
property of Emacs 21, therefore the ugly `track-mouse' mechanism is not
needed anymore with Emacs 21. (Klaus).
** The options `ecb-show-node-name-in-minibuffer',
`ecb-show-complete-file-name-in-minibuffer' and
`ecb-show-file-info-in-minibuffer' are gone and have been replaced by one
single new option `ecb-show-node-info-in-minibuffer' where you can define
separately for every tree-buffer when and which node info should be
displayed in the minibuffer (Klaus).
** ecb-auto-expand-directory-tree now offers two options:
- best: Expand always the best matching source-path for a file
- first: Expand always the first matching source-path for a file (Klaus)
** Fixed a bug in auto. expanding directories if a source-path has an alias.
(Klaus)
** If mouse is moved over an alias in the directories buffer then the real path
is shown in the echo-area; see also 'ecb-show-node-info-in-minibuffer'
(Klaus).
** If mouse is moved over an history-entry then the full path is shown in the
echo-area so you can distinct better between two entries with the same name
but with differnt pathes; see also 'ecb-show-node-info-in-minibuffer'
(Klaus).
** New option for the history: ecb-kill-buffer-clears-history defines if
`kill-buffer' should also remove the corresponding history entry. There are
several options (Klaus).
* Changes for ECB version 1.52
** Added EIEIO requirement to ECB.
* Changes for ECB version 1.51
** Now the names of all ECB buffers begin with a SPC per default. (Klaus)
** ECB now can handle not only full but also partial buffer reparsing if done
by semantic and other tools (e.g. JDE >= 2.2.9). The method buffer will
always be uptodate if for a major-mode auto. reparsing after buffer changes
is enabled (the auto. buffer reparsing itself is not an ECB feature but must
be supplied by the major-mode, e.g. JDE). (Klaus)
** Incremental node-search in the ECB-buffers now uses the value of
`case-fold-search'. (Klaus)
** Complete new customization of the ECB-keybindings. The option
`ecb-prefix-key' has been removed. There is one new option `ecb-key-map'
where you can customize all keysettings of ECB (including a common
prefixkey). (Klaus)
** ecb-add-source-path and ecb-delete-source-path now ask if saving should be
done for future sessions (Klaus).
** Added new navigator functionality. Makes it easy to go to the back and forward
in navigated tokens and buffers. See ecb-nav-goto-next and
ecb-nav-goto-previous. (Jesper)
** Added an option to narrow the buffer to the token that is jumped to. See
ecb-token-jump-narrow. (Jesper)
** Fixed a small bug that placed the window start at the beginning of the token
instead of the beginning of the token line. (Jesper)
* Changes for ECB version 1.50
** Fixed a minor bug that occured when de-activating ECB under XEmacs. (Jesper)
** ecb-layout-window-sizes variable is now an association list, which makes it
easier to add and remove layouts. (Jesper)
** Added a new layout (nr. 12). Thanks to Nick Cross
<nick.cross@prismtechnologies.com> for this layout.
** Each source path can now have an alias that is displayed instead of the path
name in the directories buffer. (Jesper)
** The history items can now use the buffer name instead of the file
name. Customizable with ecb-history-item-name. (Jesper)
** When jumping to a token the window can be scrolled so that the token starts
at the top or center of the window. This behaviour is customizable with
the variable ecb-scroll-window-after-jump. (Jesper)
** Fixed a bug when retrieving parent names for a token. (Jesper)
** Now the option 'ecb-prefix-key' is customizable so you can define another
prefix if there are conflicts with other minor-modes or packages (Klaus).
* Changes for ECB version 1.41
** Fixed bug when clicking on token in the methods buffer in XEmacs.
* Changes for ECB version 1.40
** Tree-incremental-search in the ecb-windows now ignores all non interesting
stuff:
+ any leading spaces
+ expand/collapse-buttons: [+] resp. [-]
+ protection-signs (+, -, #) in the method-window if uml-notation is used
+ variables types or returntypes in front of variable- or method-names.
+ const specifier for variables
This makes incremental-searching in a tree-buffer much faster and easier.
(Klaus)
** ECB now uses Semantic DB to find parents of types. (Jesper)
** Long source paths in the directories buffer are now truncated at the
beginning. Customizable with variable ecb-truncate-long-names. (Jesper)
** Tokens can now be sorted by access. (Jesper)
** Added a function to semantic-clean-token-hooks that just updates the token
changed instead of re-building the entire token tree. (Jesper)
** Implemented a token tree cache that stores recently opened buffers' token
trees. This makes the buffer switching much faster and also saves expanded
nodes and window positions. The cache is unlimited at the moment. (Jesper)
** Added a speedbar-like layout nr. 11. This is very useful (like also layout
nr. 10) either for users with small screens or users which normally do not
need/want the ECB-windows but sometimes browsing/selecting
methods/variables. (Klaus)
** Better extraction of tokens from current buffer. ECB now displays any token
type in any order. (Jesper)
** ECB now uses Semantic to display tokens in the methods buffer. (Jesper)
** Much saver ecb-redraw-layout: Now the layout can be restored ALWAYS
regardless what messy thing has been done before. (Klaus)
** New advice for 'other-window-for-scrolling', so all scroll-functions for the
"other" window can also scroll the first edit-window if point stays in the
second one. (Klaus)
** ecb-toggle-ecb-windows now preserves the split, the split-amount, the buffer
contents, the window starts and current point. (Klaus)
** Some important changes in the ECB-layout concerning displaying compilation-
and temp-buffers. (Klaus):
*** 'ecb-select-compile-window' has been gone.
*** 'ecb-use-dedicated-windows' is not longer a user-customizable option but
it is always set to t, because this is essential for correct working of
the ecb-layout engine!
*** 'ecb-compile-window-temporally-enlarge' is now a boolean option.
*** Now ECB does all necessary that your edit-window of ECB seems to be a
normal Emacs frame, especially concerning displaying temp-buffers (like
help- and completion-buffers) and compilation-buffers.
*** The variables 'compilation-window-height' and 'temp-buffer-shrink-to-fit'
(XEmacs) and 'temp-buffer-resize-mode' (GNU Emacs) are now fully supported
by ECB if no durable compilation-window is shown.
** New function to toggle visibility of the ECB windows. Now it´s possible to
hide all ECB windows without deactivating ECB (see 'ecb-toggle-ecb-windows')
(Klaus).
** ECB is now a global minor mode with it´s own menu "ECB" and it´s own keymap
with prefix "C-c .". New function to (de)activate/toggle ECB with
'ecb-minor-mode'. (Klaus)
** Fixed a bug in highlighting current token in the method-buffer when
font-lock-mode is nil for the source-buffer. (Klaus)
** New option for highlighting the method-header in the edit-window after
clicking onto the method in the method-window (like Speedbar does). (Klaus)
** Function for automatically submitting a problem report to the ECB mailing
list: ecb-submit-problem-report. (Klaus)
** Now not only for method-highlighting an idle delay can be set but also for
synchronizing the ECB windows with current edit window (see option
ecb-window-sync and ecb-window-sync-delay; default is 0.25 sec delay)
(Klaus).
** Smarter highlighting of current method (Klaus).
** All tree-buffers now have as default-directory the current selected
directory in the directory buffer. So you can also open files with find-file
etc. from within the tree-buffers. (Klaus).
* Changes for ECB version 1.32
** Nil parent bug fixed. (Jesper)
** New advices for find-file and switch-to-buffer (Klaus).
** Now possible to set an idle delay before the current method is highlighted;
useful for slow machines but prevents also "jumping backward/forward" during
scrolling within java-classes if point goes out of method-definition into
class-definition. Default is an idle time of 0.25 seconds. (Klaus).
* Changes for ECB version 1.31
** Parents (extends and implements) of the classes in the current buffer is now
shown in the methods buffer. (Jesper). Possibility to define a regexp which
parents should not be shown. (Klaus).
** Now displaying the complete node name in minibuffer with the track-mouse
mechanism works also with mouse-avoidance-mode on; the mouse-avoidance will
be deactivated as long ECB is activated and the node-name display-mechanism
is on. This refers only to GNU Emacs! (Klaus)
** Fixed a bug in 'ecb-current-buffer-sync' and 'ecb-redraw-layout' (Klaus)
** Fixed a bug in loading semantic 1.3.3 or semantic 1.4 (Klaus)
* Changes for ECB version 1.30
** If not all ECB-tree-windows of current layout are visible at redraw-time
('ecb-redraw-layout') then the redraw synchronizes the contents of the
tree-windows with the source displayed in current edit-window (Klaus).
** Added a section "Tips and Tricks" to the ECB online-help. (Klaus)
** Added a new layout Nr. 10 for very small screen resolutions where all
squarecentimeters are needed for the editing itself. This layout only
displays a method-window and a edit-window. (Klaus).
** The messages displayed after moving the mouse over a node in a tree-buffer
do not longer wasting the log, means they will not be logged (Klaus).
** ECB now also works with semantic >= 1.4 (Klaus).
** Now the ecb-compile-window-height is also preserved after displaying
temp-buffers (e.g. help-buffers after C-h f) - if you want this. See the
documentation of the option 'ecb-compile-window-temporally-enlarge'. (Klaus)
** Added menu items for modification of the source paths in the directories
buffer. (Jesper)
** Added buttons to directories buffer. (Jesper)
** Mouse over files, methods etc. now work even if follow-mouse isn't
activated (Jesper). ECB adds a more intelligent mouse tracking mechanism, so
not only the mouse-over-node stuff of ECB works now very well and savely but
also follow-mouse itself works better and saver as without activated ECB.
(Klaus)
** Popup menus now work in XEmacs. (Jesper)
** You can now specify paths with env-vars like $HOME in the option
`ecb-source-path'. (Klaus)
** The user must now confirm if he tries to delete the ECB frame. If he wants
to proceed then ECB will be first deactivated before deleting the frame.
This works for all ways to delete a frame (shortcut, window-manager-button,
...). (Klaus)
** ECB now optionally create its own frame when activated. See the new option
'ecb-new-ecb-frame'. (Klaus)
** Intelligent recentering of tree-buffers now completely implemented without
the function 'recenter'. This means no flickering and flashing the whole
frame anymore after each 'recenter'. Now the ECB display is stable like a
rock :-) (Klaus)
** Mouse over directories now shows directory path. (Jesper)
** Methods and variables with point are now highlighted. (Jesper)
** ECB windows are now updated when saving new files and deleting files. (Jesper)
** incremental-search in every tree-buffer for easier and faster selecting
nodes with the keyboard (see new option `ecb-tree-incremental-search' and
new function 'tree-buffer-incremental-node-search') for more details.
(Klaus)
** ecb-redraw-layout now restores both edit window buffers and the edit window
start. (Jesper)
** Spelling corrections. Thanks to Colin Marquardt
<colin.marquardt@usa.alcatel.com> for spotting them.
** Mode line prefixes can now be set individually for each ECB-buffer. There is
a default-prefix for each buffer but the user can also define a custom