Scipad 6.153
[scilab.git] / scilab / modules / scipad / changelog.txt
1 Francois VOGEL, 18/08/08
2  * Avoid Tcl error due to bug 3015 in Scilab5 environment. Compile as help
3    page cannot work in Scilab 5 because no incremental mode is available
4    so far (only the entire help system can be rebuilt, and not a single file)
5  * version --> 6.153
6
7 Francois VOGEL, 26/07/08
8  * All language names (and therefore message file names) are in lowercase
9    because this is needed on Linux since ::msgcat::mclocale stores the locale
10    in lowercase
11  * version --> 6.152
12
13 Francois VOGEL, 26/07/08
14  * The very first time Scipad is launched (i.e. when there is no existing
15    preferences file), Scipad language is the Scilab language. If the Scilab
16    language is not available in Scipad, the fallback is en_US
17  * Changed old language names for new ones matching Scilab ones, the
18    reference list being http://www.i18nguy.com/unicode/language-identifiers.html
19  * Added Scilab5 and Scilab4 global variables, to ease backports
20  * version --> 6.151
21
22 Francois VOGEL, 15/07/08
23  * Fixed the initial height of the breakpoints gui on Linux to be 4 lines
24  * Fixed bug 3269 (non-scilab file can become temporarily debuggable after
25    changing localization)
26  * In scipad.xml:
27     . Added explanations about debugging Scipad ancillaries
28     . Documented the "Break" and "Run to return" debugger commands
29     . Documented conditional breakpoints
30     . Changed references of Tcl/Tk 8.4 into 8.x
31  * version --> 6.150
32
33 Francois VOGEL, 13/07/08
34  * More efficient implementation of lreverse and sreverse
35  * Tcl85 and Tk85 variables definition moved back to scipaddebug1.tcl
36    since they are used for sreverse definition and also for the log file
37  * version --> 6.149
38
39 Francois VOGEL, 12/07/08
40  * CONDITIONAL BREAKPOINTS
41  * Breakpoints can be enabled and disabled, and have an associated conditional
42    expression that is evaluated when the breakpoint location is reached. An
43    enabled breakpoint is hit only if its expression is true
44  * Added a quick toggle for watching the conditional expression as a generic
45    expression, with sync maintained between the watch window and the
46    breakpoints window
47  * The conditional expression of a breakpoint can be tested against a boolean
48    true or against a change of its own value
49  * The hit count is monitored and displayed in the breakpoints gui, and can be
50    reset to zero through a pushbutton dedicated to each breakpoint
51  * Added the "break if" condition on the hit count
52  * The full conditional breakpoints feature is implemented and seems to work
53    OK, with expressions, expression types, expression watching, hit counts,
54    and break conditions on the hit count
55  * The breakpoints gui remembers its geometry across openings
56  * version --> 6.148
57
58 Francois VOGEL, 19/06/08
59  * Fixed missing update of peer titles when saving a textarea: a peer <1>
60    could be in a non modified state while another peer <2> could still
61    display "... <2> (modified)"
62  * changelog file upside down
63  * version --> 6.147
64
65 Francois VOGEL, 16/06/08
66  * Fixed Tcl error - invalid command name "none.margin" - happening when
67    using undo in a textarea having hidden (non displayed) peers
68  * version --> 6.146
69
70 Francois VOGEL, 12/06/08
71  * Fixed bug 3105 (no icon set for Scipad) - Should work on both Linux and
72    Windows as long as Tk version is at least 8.4.8 - Icon courtesy of Enrico
73  * version --> 6.145
74
75 Francois VOGEL, 22/05/08
76  * Fixed bug 3037 (lasterror can produce multiline error messages)
77  * version --> 6.144
78
79 Francois VOGEL, 17/05/08
80  * Fixed slowdown of Scipad when typing after a bracket, reported in:
81    http://groups.google.fr/group/comp.soft-sys.math.scilab/browse_thread/thread/ea6b6dc9bce5f0e6
82    There were two problems:
83      . missing shortcircuit in docolorizeuserfun: this slowed Scipad down
84        with or without a bracket
85      . poor performance of colorization with a lot of numbers in the buffer
86        and a big chunk of continued lines - now, when typing, the colorization
87        bounds are closer to the insert point than before (continued lines
88        can be ignored when simply typing)
89    Global performance improvement, based on the testcase provided in the
90    newsgroup thread: timings divided by 10 to 18, depending on context
91  * Added a saved preference switch for colorizing user functions
92  * Fixed wrong encoding of fr.msg (since 6.139) - now UTF-8 again
93  * version --> 6.143
94
95 ES, 13/5/2008
96  * new version of FormatStringsForWatch.sci: solves several issues related to
97    loss of precision of watched variables (precision was dependent on the value
98    of format()) and display/feedback of large integers and exponential floats
99    (see bugs 1317, 2748); improvement in the display of complex numbers. The price
100    is a slowdown for very large matrices.
101  * version --> 6.142
102
103 Francois VOGEL, 07/05/08
104  * Fixed the elusive bug 2648 (hopefully)
105  * version --> 6.141
106
107 Francois VOGEL, 05/05/08
108  * Made use of Tcl TIP 242 to remember the file type the user selected in
109    the latest open or save action (available in Tk8.5b2 (27/10/07) and above)
110  * version --> 6.140
111
112 Francois VOGEL, 04/05/08
113  * Fixed a whichfun bug throwing a Tcl error when deleting a function name
114    (happened only while background tasks were forbidden because when allowed
115    dokeyposn is catched)
116  * Simplified code in doopenfunsource, and prevented the window from jumping
117    when opening the source code chooser
118  * Softened the message box that pops up when the user tries to configure for
119    debugging Scipad ancillaries
120  * The debugger does no longer step into debugger ancillaries (the ancillary
121    file is no longer opened and then stepped out)
122  * Simplified the code a bit by using proc istoplevelopen
123  * Better usability in proc blinkline
124  * Added a global variable holding the bugzilla URL (easier for further
125    changes from a single place)
126  * version --> 6.139
127
128 Francois VOGEL, 03/05/08
129  * Fixed bug 2879 - negative size returned by font actual not taken into
130    account, which prevented Scipad start on some platforms (Mandriva 2008.1)
131  * version --> 6.138
132
133 Francois VOGEL, 03/04/08
134  * Fixed bug 2856 (introduced in 6.136) - wrong order of variables
135    definition
136  * In find in files, the initial directory used when selecting the new
137    directory in which to search in is the previously selected directory
138    (instead of always the current directory of the application)
139  * version --> 6.137
140
141 Francois VOGEL, 31/03/08
142  * Fixed Scilab bug 2672 by working around the underlying Tk bug
143    with Vista
144  * Fixed Scilab bug 2776 by working around Tk bug 112997: malformed paths
145    when opening multiple files at once
146  * Scipad is GPL in the french About box too
147  * version --> 6.136
148
149 ES, 4/3/2008
150  * msg_files are GPL as well (with the silent consent of most
151    current translators, and the explicit consent of a few); 
152    reference to it in AddingTranslations.txt
153  * english reference to GPL in the aboutme box and its translation
154    in it.msg
155  * new zh_cn.msg received
156  * version --> 6.135
157
158 ES, 20/2/2008
159  * copyright and license (GPL) information added at the head of
160     every *sci and *tcl file (except for msg_files)
161  * version --> 6.134
162
163 Francois VOGEL, 20/02/08
164  * Fixed Scilab bug 2650 by working around Tk bug 1871474: Scipad didn't
165    report a saved buffer as such
166  * By Scilab team: sciprompt permanently set to 0 (scipad.sci)
167                    scicos keywords loading changed (dynamickeywords.sce)
168  * version --> 6.133
169
170 Francois VOGEL, 31/10/07
171  * Fixed bug 2580 so that the syntax function[]=foobar(), without space
172    between function and [], be recognized for colorization of userfuns
173    and for displaying information about cursor location in function
174  * version --> 6.132
175
176 Francois VOGEL, 23/10/07
177  * Fixed fake gettext function used in BUILD4 environment - was broken
178    by commit r19744
179  * version --> 6.131
180
181 Francois VOGEL, 23/10/07
182  * Pushed version number to identify the following changes:
183    - added zh_cn and updated zh_tw ,de, it and no translations [from ES]
184    - bugs about \"' solved in msgdiff.sci [from ES]
185    - restored correct resolution of windows pathnames (was mistakenly
186      broken in 6.122, and affected for instance opening a file in Scipad
187      by double-clicking on it) [from ES]
188    - renamed languages to locales directories [from Sylvestre Ledru]
189    - localization of the .sci part of Scipad [from Sylvestre Ledru]:
190        . modified all tags <module>_<type>_number by a string
191        . added messages.pot
192        . removed old localization scheme, new gettext enabled:
193          gettext("xxxx" becomes gettext(
194        . errors.xml, menus.xml and messages.xml --> plonk!
195    - added a feature to rebuild only a scilab macros library in macros
196      directory - cleanmacros.bat, buildmacros.bat, buildmacros.sce
197      [from Allan Cornet]
198  * version --> 6.130
199
200 Francois VOGEL, 29/08/07
201  * Worked around the old Tk bug 1236306 (still not fixed after all) when
202    closing the watch window with an Alt shortcut
203  * Fixed: the error that may result from watching a generic expression is
204    cleared so that it is not reported at the end of the debug
205  * Fixed: Opening a textbox (e.g. "Changelog") and hitting the Return key
206    when the text widget has focus produced a Tcl Error
207  * version --> 6.129
208
209 ES, 26/08/07
210  * added an emulation of gettext() in msgdiff.sci, for backporting to BUILD_4
211  * version --> 6.128
212
213 Francois VOGEL, 24/08/07
214  * The message box displaying execution errors can be turned off - This is
215    a newsgroup request, see:
216    http://groups.google.com/group/comp.soft-sys.math.scilab/browse_thread/thread/5114c502b986bbf0/
217  * version --> 6.127
218
219 Francois VOGEL, 20/08/07
220  * Scipad shows the Tcl/Tk version in the About box
221  * Fixed wrong detection algorithm of non debuggable functions (Scipad
222    ancillaries), and added a message box to inform the user
223  * Polished the list of non debuggable functions
224  * Added Shift bindings to the generic expressions buttons, active when
225    the watch variables and generic expressions areas are both visible
226  * version --> 6.126
227
228 Francois VOGEL, 17/08/07
229  * Changed the title of the Add dialog when called for a generic expression
230  * Removed double evaluation of the generic expressions when using the
231    Break debugger command
232  * Performance: the watch variables values are not updated and the generic
233    expressions are not evaluated when skipping nocode lines (this was anyway
234    useless)
235  * De-clutter: Added a checkbox allowing to hide errors from generic
236    expressions instead of displaying them in the shell
237  * version --> 6.125
238
239 Francois VOGEL, 16/08/07
240  * Fixed: "Auto watch globals" checkbox is disabled when the watch window
241    is opened if the "Auto watch locals" checkbox is unchecked
242  * Added a new maskable pane in the watch window for generic expressions
243    watching - the expression may be anything, e.g. graphical command, so
244    that an array can be plotted at each debugger stop
245  * version --> 6.124
246
247 Francois VOGEL, 12/08/07
248  * Fixed the broken 8.4 fallback emulating a basic -stretch always option
249    (proc spaceallsasheskeeprelsizes) - Was broken since 6.78
250  * When using the Break command in the debugger, Scilab could stop on a nocode
251    line (a line containing only a comment for instance). If at this point
252    a variable was modified in the watch window by the user, it was not taken
253    into account by Scilab when resuming execution but its current value in
254    Scilab was restored. Now the Break command skips nocode lines like the
255    other debugger commands
256  * Fixed error in proc setwingeom - note that this proc must be called after
257    the content of its toplevel argument has been created
258  * version --> 6.123
259
260 Francois VOGEL, 27/07/07
261  * Added bindings for keypad keys in Linux (by Enrico)
262  * Simplified scipad.sci to avoid yet another difference between the BUILD_4
263    branch and the trunk (by Enrico)
264  * Revised fr.msg and added missing accents since Tk bug #1638905 (which is
265    a duplicate of #1599877) is fixed in both 8.4.15 and 8.5a6 versions of
266    Tcl/Tk, and Scilab is now delivered with Tcl/Tk 8.4.15
267  * version --> 6.122
268
269 Francois VOGEL, 23/07/07
270  * Binding of the replace mode to the non-existing KP_Insert keysym removed
271  * version --> 6.121
272
273 Francois VOGEL, 22/07/07
274  * The -blockcursor option is used with Tk 8.5 for the replace cursor
275  * The replace mode is binded to both Insert and KP_Insert
276  * version --> 6.120
277
278 Francois VOGEL, 22/07/07
279  * Fixed selected watch variable font colorization
280  * Added a mode toggled by the Ins key in which characters replace the existing
281    ones. Visual indicator of this state is the text cursor becoming a block
282    cursor. Works with Tk8.5 (use of .text replace from TIP 155, see
283    http://www.cs.man.ac.uk/fellowsd-bin/TIP/155.html), and also with Tk8.4 by
284    emulation of the .text replace command
285  * version --> 6.119
286
287 ES, 11/7/07
288  * ensured that all files work in the BUILD_4 branch too (though dispatched
289    to different directories). A common codebase eases eventual backports.
290  * version --> 6.118
291
292 Francois VOGEL, 02/07/07
293  * Further colorization of the watch variables
294  * The debugger detects unterminated functions (missing endfunction) and
295    prevents the debug launch when one such function definition is found.
296    The relevant message box is much clearer than before
297  * version --> 6.117
298
299 Francois VOGEL, 30/06/07
300  * Fixed: The configure box opened iconified when the watch window was open
301    and iconified
302  * Fixed: Watching a string containing $unklabel didn't work
303  * Non editable watch variables have their background greyed
304  * Watch variables whose value changed since last debugger stop are displayed
305    in red (declutters the watch window when watching many variables, such as
306    when in auto mode)
307  * Fixed: (non auto) watch variables are updated at the end of the debug
308  * version --> 6.116
309
310 Francois VOGEL, 26/06/07
311  * Fixed Tcl error when calling the Replace dialog box (introduced in 6.113)
312  * Editability of watch variables is now set in function FormatStringsForWatch,
313    which fixes the watching of strings containing << or >>
314  * watchvarsvals and watchvarstysi reworked in a multidimensional array named
315    watchvarsprops that contains also the editability flag
316  * Fixed: Closing and reopening the watch window deleted all the watch
317    variables (this bug was introduced in 6.106)
318  * version --> 6.115
319
320 Francois VOGEL, 18/06/07
321  * Correct binding to $Shift_F11 (instead of <Shift-F11>) in db_states.tcl (by
322    Enrico)
323  * Run to return point (Shift-F11) works correctly with recursive functions
324  * version --> 6.114
325
326 Francois VOGEL, 17/06/07
327  * Minor changes for the initial directory area of the find in files dialog:
328      . the previous value is remembered if the user clicks on Cancel in the
329        directory selection box
330      . the directory entry field is a dnd drop target for text/plain content
331  * Worked around two different Tcl errors in proc button2copypaste arising
332    because of Scilab bug 1544
333  * Fixed Step Out not stepping out of recursive functions
334  * version --> 6.113
335
336 Francois VOGEL, 03/06/07
337  * Added missing default fallbacks to be used when the msgcat package is not
338    present (Scipad couldn't start without them)
339  * In the watch window, the debug state and the Scilab busy state are now
340    reflected in a canvas containing an image
341  * Huge performance improvement and rework in FormatStringsForWatch (by Enrico)
342  * version --> 6.112
343
344 ES 30/5/07
345  * visual indicator of the scilab busy status in the main window 
346   ($pad.statusmes color) and in the watch window
347  * the state of the debugger is now reflected in the color of $pad.statusind2
348  * version --> 6.111
349
350 Francois VOGEL, 28/05/07
351  * Fixed: Variables having special characters (especially $) in their names
352    can be watched
353  * Fixed: The global variable $ was always auto watched when debugging a .sce
354    script because $ was used in the wrapper code. This has been fixed without
355    preventing from watching the real $ if needed (fixed by Enrico)
356  * $env(SCIINSTALLPATH) replaces $env(SCIPATH) which was set outside of the
357    scipad module in SCI/modules/tclsci/tcl/TK_Scilab.tcl - its value is the
358    SCI value. Now env(SCIPATH) is no longer used in Scipad and the new
359    env(SCIINSTALLPATH) is defined in scipad.sci in order to better separate
360    the tclsci module and the scipad module
361  * version --> 6.110
362
363 Francois VOGEL, 14/05/07
364  * Added auto watching of global variables - globals are not editable
365  * Long ScilabEvals no longer display a "mode(-1);" in the shell
366  * Removed the catch for the bubble information display for watch variables:
367    better correctly initialize the missing information...
368  * Better (16 times) performance in proc dogotoline when going to logical line
369    numbers in functions - Significantly improves the performance when updating
370    the active breakpoint tag during a debug session
371  * version --> 6.109
372
373 Francois VOGEL, 12/05/07
374  * Size implicit indices (type 129) are displayed in details in the watch
375    window
376  * Matlab sparse matrices (type 7) are watchable
377  * Fixed: the watch variables must not be sent (written) to Scilab when
378    skipping no code lines (they were already no longer read since 6.106)
379  * Fixed: when only non editable variables were watched, the only way to add
380    a watch variable was to remove all the non editable variables, then add
381    the new variable and re-add the removed ones
382  * The listboxes in the watch window and configure box have always an item
383    selected (when not empty). They must have -exportselection 0, otherwise
384    their selection gets lost when the Add arg box is opened
385  * Catched the bubble information display for watch variables: the information
386    to display in the tooltip might not yet be available (because watch
387    variables can be added in any debugger state but their values and types are
388    only updated in "DebugInProgress" state)
389  * Scipad no longer flashes on executing the first debug command (was due to
390    the temporary buffer packing the time needed for execing it)
391  * scipad.xml: simplified the calling sequence and added a note about the
392    watching capabilities of the debugger
393  * version --> 6.108
394
395 Francois VOGEL, 08/05/07
396  * Created a list of unwatchable variables in db_init.tcl, so that they are
397    in a single place, along with the corresponding rationale about why they
398    cannot be watched
399  * Run to return point icon and menu item is greyed when scheme is not
400    "scilab"
401  * Auto watched variables are no longer updated while skipping no code lines,
402    thus improving a bit the performance
403  * Added better display in the debugger for non editable variable types
404  * version --> 6.107
405
406 Francois VOGEL, 07/05/07
407  * Fixed: Cancelling find in files during the file list construction did not
408    enable the close button of the search results window, and there was
409    therefore no means for closing this window
410  * Added a control in the watch window to gear in an automatic mode for
411    displaying the local variables
412  * The ans variable cannot be watched (see rationale in proc addlocalsinwatch)
413  * version --> 6.106
414
415 Francois VOGEL, 05/05/07
416  * Fixed: when execing a .sce buffer during the configuration step failed
417    (e.g. because of a syntax error), Scipad tried nevertheless to launch the
418    debug
419  * Filtered lines of the .sce debug wrapper when saving during debug
420  * "Go on without any breakpoint" waits for end of execution of the debugged
421    script before resetting the debugger state. "Break" can therefore be used
422    in that situation too
423  * version --> 6.105
424
425 Francois VOGEL, 01/05/07
426  * Fixed the non stopping of the debug on Break in some cases
427  * Reverted to not using getonewatchvarfromshell with sync in proc OKadda_bp
428    because sync does sometimes not return the variable value (visibility issue
429    in a sync parser - not clear) - anyway, the previous (<= 6.101) scheme
430    works: use seq and force the update of the watch window
431  * Added a try/end structure in proc setScipadVersionString to ease future
432    backporting work
433  * De-tab-ified a bit
434  * version --> 6.104
435
436 ES, 01/05/07
437  * scipad(dirname) opens a file chooser, starting in directory dirname
438  * version --> 6.103
439
440 Francois VOGEL, 01/05/07
441  * Fixed sync issues (colorization, version number display) when launching
442    scipad afile.sci
443  * Removed the workaround in proc OKadda_bp since ScilabEval sync works as
444    expected (bug 2384 fixed) - This depends on the flag bug2384_fixed
445  * version --> 6.102
446
447 Francois VOGEL, 30/04/07
448  * Added the Break command in the debugger since I fixed bug 2384 (outside of
449    Scipad ; ScilabEval sync seq execution was interruptible in the Scilab
450    parser)
451  * Availability of the Break command depends on the flag bug2384_fixed
452  * version --> 6.101
453
454 Francois VOGEL, 24/04/07
455  * The watch window displays the type (including real/complex if appropriate)
456    and size of each watched variable in a tooltip
457  * version --> 6.100
458
459 Francois VOGEL, 15/04/07
460  * The debugger shows a new icon from Enrico for "Run to return point"
461  * Fixed: debugging as .sce, when running to return point, one line above the
462    correct line (which is the last executable line from the buffer, excluding
463    the wrapper) was breakpointed
464  * Fixed the non detection of the end of debug when "Run without any
465    breakpoint" was called (only execution errors were checked, but the end of
466    the debug was not detected, thus no cleanup (.sce wrapper stays), and a
467    messed up debug state remaining)
468  * version --> 6.99
469
470 Francois VOGEL, 08/04/07
471  * Find in files raises the find results window when a new find in files
472    starts
473  * New feature for the debugger: Run to return point. This was asked in the
474    newsgroup: http://groups.google.com/group/comp.soft-sys.math.scilab/browse_frm/thread/c482b4e4986a9282
475  * version --> 6.98
476
477 Francois VOGEL, 20/03/07
478  * Extended XML scheme to .xsd and .dtd files
479  * Fixed bug 2334: line numbers display bug that showed up on Suse Linux
480    because on this platform [lindex [$ta dlineinfo @0,0] 1] is 2 instead of 1
481  * Cleaned proc updatelinenumbersmargin
482  * Fixed bug 2335: binding bug with Ctrl-4 and Ctrl-5 (Open in new...)
483  * The first debug command to be issued now execs any non level zero code from
484    all Scilab buffers (provided they are colorized), instead of only the
485    current one and the one containing the configured function. This allows to
486    debug as .sce (i.e. with no wrapper function) mixed .sce/.sci files
487    containing a level zero call to a function defined in that same buffer, for
488    instance dynamickeywords.sce
489  * Fixed update of the scrollbars by textareas that are no longer displayed:
490    the -x/yscrollcommand must be emptied when the textarea is unpacked
491  * Added duplicate function definition check/warning in the debugger
492  * version --> 6.97
493
494 Francois VOGEL, 28/02/07
495  * Worked around an old Tcl bug with glob -tails that does not work with
496    Tcl/Tk 8.4.1 embedded in some cygwin versions
497  * Added missing translation for line numbers foreground in eng.msg
498  * Shortened the name of certain variables of the debugger that produced
499    truncation warnings in Scilab since Scilab now warns the user about
500    names having more than 24 characters
501  * Improved line numbers alignment during debugger use
502  * version --> 6.96
503
504 Francois VOGEL, 24/02/07
505  * Rewrote proc fileunreadable and created proc fileunwritable to work around
506    Tcl bugs with file readable (1394972 and 1613456) and file writable
507    (1613456), and Scilab bug 2243 and 2319
508  * Fixed missing colorization after cut, block cut, or dnd move when these
509    commands were acting on a block selection
510  * version --> 6.95
511
512 Francois VOGEL, 21/02/07
513  * Fixed a block cut bug when the block selection starts column 1 and includes
514    empty lines
515  * dnd uses block cut and block paste when moving or copying a block
516    selection, the drag source being the same buffer as the drop target or not
517  * version --> 6.94
518
519 ES 21/2/07
520  * locale names in their native language, in the file $msgsdir/localenames.tcl
521  * version --> 6.93
522
523 Francois VOGEL, 20/02/07
524  * Shortened the name of certain variables of the debugger that produced
525    truncation warnings in Scilab since Scilab now warns the user about
526    names having more than 24 characters
527  * First implementation of block cut
528  * dnd uses block paste when moving or copying a block selection, the drag
529    source being the same buffer as the drop target or not
530  * version --> 6.92
531
532 Francois VOGEL, 15/02/07
533  * Fixed a block paste glitch related to pasting at the end of the buffer
534  * Fixed a block selection glitch: when selecting from farther than the
535    middle of the line, then empty lines could be missed in the selection
536  * Loosened constraint on breakpointable lines: overzealous fix was
537    introduced in 6.40
538  * Fixed Tcl error that popped up when configuring the debug as .sce and
539    then immediately cancelling the debug
540  * version --> 6.91
541
542 Francois VOGEL, 12/02/07
543  * Fixed issues with the last line of the block selection
544  * Fixed wrong block selection of first or last visible line of the textarea
545    when the mouse goes out of it
546  * Changed insertion cursor positioning scheme during a block selection
547  * Block paste can paste empty lines
548  * version --> 6.90
549
550 Francois VOGEL, 11/02/07
551  * Fixed stupid error in Find/Replace introduced in Scipad 6.88
552  * First implementation of block paste, to be continued
553  * version --> 6.89
554
555 Francois VOGEL, 08/02/07
556  * Added missing continuation antislashes in proc scilaberror
557  * Fixed yet another glitch with block selection: when one line ends exactly
558    at the left column of the block, the \n was not selected
559  * Added dnd support for block selection (move and copy modes, without any
560    new binding)
561  * Execute selection supports block selection
562  * version --> 6.88
563
564 Francois VOGEL, 07/02/07
565  * Fixed nasty substitution needs in proc scilaberror (Tcl special characters
566    need to be escaped in the error string)
567  * Fixed overzealous selection of the entire line when this line is shorter
568    than the block margin (block selection)
569  * Really, this time the cursor should no longer be after the end, nor inside
570    the block selection
571  * version --> 6.87
572
573 Francois VOGEL, 04/02/07
574  * The insertion cursor should no longer be seen after the end of the block
575    selection
576  * A single selection returned by proc gettaseltext could be braced, thus
577    causing some troubles with execselection or helpword for instance. The
578    way the selection text is built and returned has been changed to fix
579    this issue
580  * version --> 6.86
581
582 Francois VOGEL, 04/02/07
583  * Better block selection process, more pixel-like, and now more compatible
584    with tabs, non fixed width fonts, and empty lines as well
585  * version --> 6.85
586
587 Francois VOGEL, 01/02/07
588  * Fixed Tcl error when hitting Shift-Control while a normal selection
589    had been started
590  * Better intuitivity in block selection by making use of a bulletproofed
591    TextClosestGap function from the private internals of Tk (with a fallback
592    using only public interface functions in case the private function
593    changes)
594  * Control-Button1 outside of a selection has the same behavior with or
595    without the tkdnd package: delete selection and move cursor to the
596    clicked location
597  * version --> 6.84
598
599 Francois VOGEL, 30/01/07
600  * Block selection available also when tkdnd package is not found
601  * Fixed: correct line ending characters when cutting or copying a block
602    selection
603  * Added Scipad version number in the title bar
604  * version --> 6.83
605
606 Francois VOGEL, 29/01/07
607  * Chinese translation added, all msg files are now in UTF-8 encoding to be
608    able to handle chinese characters
609  * version --> 6.82
610
611 Francois VOGEL, 27/01/07
612  * First Scipad version with block selection (request 179). Features supported
613    with block selection:
614      . word wrap (automatically temporarily disabled during selection action)
615      . cut/copy/paste
616      . comment/uncomment
617      . indent/unindent
618      . find/replace (in block selection)
619  * Binding for openlibfunsource is now Shift-Control-Button-3 instead of
620    Shift-Control-Button-1
621  * proc srevert (used in undo/redo) really uses string reverse (TIP #272)
622    if Tcl 8.5 is found (this was prepared in Scipad 6.55)
623  * version --> 6.81
624
625 Francois VOGEL, 23/01/07
626  * Fixed Tcl error when opening one of the info boxes from the help menu
627  * Fixed: Line numbers margin does no longer scroll when dragging outside
628    of Scipad with mouse button-1 down
629  * Horizontal scrollbars are automatically removed when wrapping lines since
630    they are useless in this mode
631  * version --> 6.80
632
633 Francois VOGEL, 20/01/07
634  * Fixed: line numbers disappeared when there was no wrapping mode set and
635    the x scrollbar was not completely to the left
636  * Fixed: line numbers could be scrolled by clicking in the area and using
637    the mouse wheel
638  * Fixed: With Tk 8.5 the text widget scrolls smoothly, while with Tk 8.4
639    it scrolls by line increments. This required a slight scrolling of the
640    line numbers margin to always align it perfectly with the textarea
641  * version --> 6.79
642
643 Francois VOGEL, 19/01/07
644  * Fixed: Undo/Redo did not update the line number margin when the undo or
645    redo action did not modify the scrollbar size
646  * Fixed: When creating peers, Scipad does no longer ask the confirmation
647    question for colorizing large files
648  * Line numbers in the margin are now compatible with word wrapping
649  * Great performance improvement when updating line numbers
650  * Huge performance improvement in colorization, continued lines tagging,
651    and functions identification (30% faster), and in some other areas as
652    well, just by bracing all Tcl expr - see the magic arcane at
653    http://wiki.tcl.tk/10225
654  * Pushed size limit for colorization question from 100 kb to 130 kb
655  * version --> 6.78
656
657 Francois VOGEL, 18/01/07
658  * Fixed Tcl error popping up when cancelling a save on buffer close
659  * First Scipad version with line numbers in the textarea margin (request
660    138)
661  * version --> 6.77
662
663 Francois VOGEL, 12/01/07
664  * Separated functions Close File and Close Tile: File/Close closes the
665    file, i.e. the current textarea but also all its peers, whereas the Close
666    button of a tile closes this tile only, i.e. the current textarea (which
667    might result of file closure if the closed tile was the last peer). This
668    distinction is apparent with Tk 8.5 only
669  * Confirmation for saving is not asked when closing a tile if there is any
670    remaining peer of this tile
671  * Added a Hide button in tiles: this is purely unpacking of the textarea,
672    which is not closed
673  * Added tooltip for the Close and Hide buttons of tiles
674  * Proc montretext changes name to become proc showtext
675  * version --> 6.76
676
677 Francois VOGEL, 10/01/07
678  * Better fix for saving over hidden files (6.73). The hidden attribute is
679    removed, the file is saved, and the attribute is set back
680  * Tk 8.5: Added commands in the windows menu to distinguish split tile (and
681    pack a hidden buffer, or create a new empty buffer), from split file (and
682    create a new peer)
683  * After closure of peers, the last remaining peer now properly looses its
684    peer identifier in the displayed name
685  * version --> 6.75
686
687 Francois VOGEL, 10/01/07
688  * Optimized loops on $listoftextarea to avoid unnecessary work on peers
689  * Fixed textarea jump when switching to another one when the cursor is not
690    visible in the leaved textarea
691  * First tests of debug with peers (OK)
692  * version --> 6.74
693
694 Francois VOGEL, 09/01/07
695  * Added tooltips displaying the full filename of the file packed in the
696    buffer whose title is currently hovered (only when filenames display
697    type is not "Full path")
698  * Fixed the bad fix for hidden files introduced in 6.71. When saving, the
699    files must actually be truncated. The workaround for overwriting hidden
700    files is to delete them first
701  * version --> 6.73
702
703 Francois VOGEL, 05/01/07
704  * First Scipad version making peer text widgets available, so that the user
705    can view two different parts of the same text buffer at the same time.
706    This is working either in standalone mode (Scipad launched in wish85),
707    or from Scilab linked with Tcl/Tk 8.5. For the latter, see
708    http://wiki.scilab.org/Linking_Scilab_with_Tcl/Tk_8.5
709  * Removed spaces and tabs from empty lines throughout the Scipad codebase
710  * Fixed: Hidden files could be opened in Scipad but could not be saved with
711    the same filename. This was Tcl bug 1622579 (the open command fails to
712    open hidden files for writing), that was actually not a Tcl bug after all
713    and has been closed as WONT FIX in the Tcl tracker
714  * Workaround hack for Tk bug 1169429 not used in proc dostopcursorblink
715    when Tk 8.5 is used (hack kept for 8.4)
716  * Proc closecur called instead of closefile when clicking on the "Close"
717    button of a tile, which makes closability checks be run first
718  * Fixed: Trying to open an nonexisting file through the MRU list of the file
719    menu popped a Tcl error because proc iswindowsshortcut tried to open the
720    file without checking its existence
721  * Fixed: proc changedmodified could be launched with a non-textarea input
722    argument
723  * version --> 6.72
724
725 Francois VOGEL, 01/01/07
726  * Pushed copyrights to 2007
727  * Fixed wrong syntax for Tcl instruction scan throughout the code
728  * version --> 6.71
729
730 Francois VOGEL, 26/12/06
731  * Improved the fix of Scipad 6.67 about cursor visibility (clarified
732    behavior of TextClosestGap in Tk)
733  * Fixed: Dropping a zero byte file onto Scipad produced a Tcl error
734  * Fixed: After find in files, open a match, and select in Scipad the first
735    character of the line where the match was found, the next button-1 click
736    duplicated the line. This was a very tricky (but correct) percent
737    substitution behavior in the bindings that erase the foundtext tag from
738    the textarea. This issue was introduced in Scipad 5.33
739  * Fixed: Open the find dialog and toggle twice the "In a directory" checkbox.
740    Then the state of the Text types area was not updated (it should be
741    disabled and not normal)
742  * Find in files tells how many files were searched
743  * Find in files highlights the matched text in the matching line displayed
744    in the results window
745  * Find in files can search also in hidden files
746  * Scipad can be launched even if the msgcat package is missing. This is
747    useful in the Tcl/Tk8.5 context for experimenting, see
748    http://wiki.scilab.org/Linking_Scilab_with_Tcl/Tk_8.5
749    Note that named labels such as aboutme_message do not get an english
750    fallback when msgcat cannot be found, and this is somewhat ugly
751  * version --> 6.70
752
753 Francois VOGEL, 22/12/06
754  * Windows shortcuts are detected during the file open process, and are
755    no longer opened in Scipad
756  * version --> 6.69
757
758 Francois VOGEL, 21/12/06
759  * Fixed Tcl error "couldn't compile regexp" in blinkbrace when typing ^(
760  * Added multiple file open in the file dialog, even if Tk bug 1614032
761    (tk_getOpenFile -multiple 1 is wrong with directories on Linux) is in
762    the way
763  * version --> 6.68
764
765 Francois VOGEL, 13/12/06
766  * Fixed: Trying to open the replace dialog during the debug did correctly
767    fail, but then this dialog could not be opened later, even after the debug
768    was aborted
769  * Fixed: clicking in the textarea could hide the cursor outside of the
770    visible part of the buffer (added $w see insert in Button-1 binding)
771  * Scipad uses the new VERSION file to retrieve its version number (the
772    svn revision number is not yet used)
773  * version --> 6.67
774
775 Francois VOGEL, 09/12/06
776  * Fixed: On Windows, opening files and then closing one of them did prevent
777    from selecting the remaining ones in the windows menu. This is Tk bug
778    1224330, that was fixed in Tcl/Tk 8.4.14 and Tcl/Tk 8.5a5. Scilab now
779    comes with 8.4.14 on Windows, therefore this is closed.
780  * Changed all occurrences of index 0.0 in text widgets since lines are
781    numbered from 1 according to the Tcl/Tk help
782  * Rationalized the tests on the existence of a selection in a textarea
783    throughout the code. Removed all uses of the X selection, except where
784    appropriate i.e. in proc button2copypaste
785  * Added a Pause button in the find in files results window
786  * version --> 6.66
787
788 Francois VOGEL, 01/12/06
789  * Ctrl-F6/Ctrl-F7 now switch visible buffers only. F6/F7 still switch all
790    the buffers. This was discussed in request 349
791  * opensourceof dialog resizes nicer: buttons never disappear, entry field
792    fills all the available space
793  * version --> 6.65
794
795 Francois VOGEL, 27/11/06
796  * Fixed IndentSel bug: when the selection contained only the leading blanks
797    of a line and Ctrl-d was hit, a Tcl error did pop up in apply_RE_to_sel_text
798    because the selection had collapsed after the first call to this proc
799  * Fixed: only one undo action is now needed to undo indentation
800  * Added smart indentation (i.e., for automatically indents the next line, end
801    automatically indents back, etc) - just a try for the moment, with a saved
802    preference in the option menu
803  * version --> 6.64
804
805 Francois VOGEL, 26/11/06
806  * Fixed bug 2239: cursor blink now stops before typing a character, and is
807    restored afterwards
808  * The textarea itself is now destroyed when closing a file
809  * version --> 6.63
810
811 Francois VOGEL, 22/11/06
812  * Fixed: Saving a buffer did not update the windows menu order (there is
813    a change when sorting by MRU)
814  * Fixed all "modselection bugs" I'm aware of:
815    . proc selectline, Un/IndentSel and Un/CommentSel use only the sel tag
816      of the text widget, and no longer the X selection
817    . no selection glitches any more (use of marks and code factorization)
818    . Ctrl-d (Indent) with a selection starting in the middle of a line now
819      indents the first line from column 0 instead of from the insert point
820    . Ctrl-m (Comment) without selection now inserts // at the insertion
821      point (and no longer at the beginning of the line)
822    . Unindenting a line with leading tabs does now properly unindent
823    . The indentation scheme takes into account the "Tab inserts..." settings
824      from the option menu. Previously indent/unindent always used spaces.
825      Now indentation uses tabs instead when "Tab inserts spaces" is
826      unchecked
827    . Ctrl-d (Indent) removes leading tabs before inserting spaces, and vice
828      versa (useful when reindenting text that was indented with the "wrong"
829      character)
830  * Removed useless proc scipadindent, as well as the "indentation" and
831    "text" tags
832  * Added a saved preference in the option menu to set the size of the tabs
833  * Pushed the maximum number of recent filenames in the file menu (15, 20 or
834    even 50 items now allowed)
835  * version --> 6.62
836
837 Francois VOGEL, 20/11/06
838  * Added underlined numbers in the Windows menu, so that the buffers can
839    be accessed by Ctrl-[1-9] as shortcut - this was request 342
840  * Fixed: disable/restoremenuesbinds did only deal with the three first
841    entries of the Windows menu
842  * Fixed: when the mouse was hovering over a separator entry in the
843    Windows menu, the showinfo did erroneously display the last entry of
844    the menu
845  * Added an option menu about the sorting of the buffers in the Windows
846    menu. Possible options are to sort by opening order (which is the way
847    it was previously), or to sort alphabetically, or by MRU (Most Recently
848    Used) file, based on the last saving time
849  * version --> 6.61
850
851 Francois VOGEL, 17/11/06
852  * Fixed debugger bug arising from the recent fix in the error handling
853    in Scilab (SVN trunk commit # 13662) - previously the errcatch mode
854    was lost every time Scilab entered a pause mode, now this is fixed and
855    the error must be cleared in function ext_exists
856  * Find/Replace rings a bell when there is no more matches
857  * version --> 6.60
858
859 Francois VOGEL, 16/11/06
860  * Fixed bug 2226 (concurrent launch of several Scipads by clicking
861    quickly on the Scilab "Editor" menu, or Scipad icon)
862  * De-tab-ified scipad.sci, and removed unnecessary global TMPDIR
863  * version --> 6.59
864
865 Francois VOGEL, 15/11/06
866  * Fixed bug 2217 (Scipad window large size on relaunch when Scipad was
867    quit while zoomed, i.e. maximized) - This fix is also included in
868    Scipad 6.0.fix2 (BUILD4 branch)
869  * version --> 6.58
870
871 Francois VOGEL, 14/11/06
872  * Fixed: During a replace session, the sequence Find Next, Replace, Find
873    Next, followed by a change in an option, e.g. Match whole word,
874    followed by Replace triggered a Tcl error
875  * More ergonomic: After a replacement is done, the next match is
876    highlighted
877  * version --> 6.57
878
879 Francois VOGEL, 12/11/06
880  * Improved aesthetics of the find/replace dialog (labelframes and more)
881  * Added find/replace among tagged text only, e.g. among comments
882  * version --> 6.56
883
884 Francois VOGEL, 09/11/06
885  * proc srevert (used in undo/redo) prepares use of string reverse (TIP #272)
886    for when Tcl 8.5 will be available
887  * Outside of scipad: better help for the debugger. help debug now points
888    at help scipad
889  * Added a popup menu providing a list of ready cooked regexps for the
890    find/replace dialog
891  * version --> 6.55
892
893 Francois VOGEL, 05/11/06
894  * Fixed two nasty cases where step over did actually step into
895  * Fixed: Step out (Ctrl-F8) did not step out of the current function
896    when this function was called by itself (recursive case)
897  * Fixed: the busy cursor was still active in tearoff menues (same
898    fix as for menubars in Scipad 6.48)
899  * version --> 6.54
900
901 Francois VOGEL, 02/11/06
902  * When Options/Backup files depth was set to 1, it saved 2 backups instead
903    of one
904  * Moved msgdiff.sci in scipad/macros/scipad_internals
905  * Updated AddingTranslations.txt:
906      . new directory tree
907      . removal of length checks in dialogs (mcmax is now used since 6.45)
908      . msgdiff.sci is now a compiled macro
909  * version --> 6.53
910
911 Francois VOGEL, 30/10/06
912  * Moved dynamickeywords.sce in scipad/macros/scipad_internals
913  * Fixed: quitting Scilab during the debug in Scipad produced a strange
914    error that was due to missing quotes in a ScilabEval
915  * version --> 6.52
916
917 Francois VOGEL, 30/10/06
918  * Compilation of Scipad's internal macros - Step 2
919    . Moved FormatStringsForWatch.sci and FormatWhereForWatch.sci in
920      scipad/macros/scipad_internals
921    . Removed proc getdebuggersciancillaries_bp (now useless)
922  * TCL_EvalStr("set answ [...]");TCL_GetVar("answ") replaced by the use of
923    the evaluation result of TCL_EvalStr (I implemented request 319)
924  * Clarified obfuscated syntax in TCL_EvalStr, to ease maintenance:
925    TCL_EvalStr("scipad eval {...}") becomes TCL_EvalStr("...","scipad")
926  * version --> 6.51
927
928 Francois VOGEL, 30/10/06
929  * Compilation of Scipad's internal macros - Step 1
930    . Shorten names so that they are at most 24 characters long:
931      FormatStringsForDebugWatch -> FormatStringsForWatch,
932      FormatWhereForDebugWatch -> FormatWhereForWatch
933    . Moved ext_exists.sci and LocalizeForScipad.sci in a new directory
934      scipad/macros/scipad_internals
935  * version --> 6.50
936
937 ES, 30/10/06
938  * small bugfix, tcl "Error:0" was popping up when attempting to run erroneous
939    scilab code, causing error messages containing quoted strings: for instance
940    TCL_EvalStr xx.
941  * version --> 6.49
942
943 Francois VOGEL, 29/10/06
944  * Colorization of user functions does not need to be done for each
945    replacement of a replace all, ditto for keyposn - speed improvement
946  * Fixed: Tile all command did forget to colorize user functions
947  * Fixed: Menu bar kept always the busy cursor during debug
948  * Fixed: Situation: when the function to debug has one or more "nocode"
949    lines after the function declaration and before real code lines, and
950    after having debugged a file as a .sce. In that case, re-starting the
951    debug with Shift-F8  did not stop in the function to debug
952  * proc killwin renamed killscipad
953  * version --> 6.48
954
955 Francois VOGEL, 23/10/06
956  * Fixed a visibility problem in the debugger when watching elements of
957    array variables
958  * The configure box does no longer pop up when there is nothing to
959    configure, e.g. for a .sce file
960  * Removed underlines in the docked watch window since the shortcuts are
961    anyway inactive when docked
962  * Fixed: changing locale while the watch window is open does no longer
963    forget about the hide variables/hide stack status
964  * version --> 6.47
965
966 Francois VOGEL, 22/10/06
967  * Adjusted the directories in help file so that they match the new code tree
968  * Factorized directory names creation in the Tcl code
969  * Fixed bug introduced in version 6.44: forgotten directory change of scicos
970    files for "open source of..."
971  * Moved BUGS and CHANGELOG in SCI/modules/scipad
972  * Fixed: button2copypaste was active in proc textbox, thus leading to a
973    Tcl error on button-2 click
974  * version --> 6.46
975
976 Francois VOGEL, 21/10/06
977  * Added a font chooser dialog in order to answer bug 2047
978  * Find/Replace:
979    . Added a message box in case $findreplaceboxalreadyopen == true (I
980      suspect a bug: sometimes findreplaceboxalreadyopen is not reset to
981      false when closing the find dialog)
982    . Prevented button2copypaste from triggering in the find in files
983      results window
984    . Find/Replace box uses the selection to preselect the search string if
985      this selection is less than one line
986    . The cursor does no longer jump to the selection start when closing
987      the dialog - better since now the last match is at the cursor position
988    . Fixed Control-f bug: selection was erased on Ctrl-f, while it was kept
989      using Edit/Search menu
990    . Fixed: Closure of Scipad while find in files was running caused a Tcl
991      error
992    . The bindings in findreplace.tcl used for the F3 case and for find in
993      files were cumulating and living in the textarea forever. This is no
994      longer the case
995    . Scipad rings a bell when find or replace wraps around (but not for
996      replace all)
997    . Fixed: there was a Tcl error when a file to search in could not be
998      opened for reading. Error management on opening was wrong. This
999      problem was present from the very first version of the find in files
1000      function (i.e. since Scipad 5.44)
1001    . Fixed duplicate binding Alt-c in Find box in french locale
1002  * Debugger:
1003    . Added a busy cursor set when the debugger commands are issued. This is
1004      especially useful when automatically stepping through no code lines to
1005      make the user aware that Scilab is busy
1006    . The watch window can now be docked inside the Scipad window (this was
1007      asked for in the discussion of request 261)
1008    . Fixed: the watch window did loose focus when "Hide..." was clicked
1009    . Fixed: breakpoint range for step into was wrong for functions included
1010      in mixed .sce/sci files
1011    . Fixed: closure of files during debug caused Scipad to spit a Tcl error
1012      on next step command
1013    . Fixed: Step over (F8) could step into libfuns (Shift-F8) when the call
1014      to the libfun was in a nested function in a mixed .sce/.sci file
1015      debugged as a .sci file with a wrapper function
1016    . (Almost) fixed: Step over could step into libfuns when the libfun was
1017      in a nested function whose calling function contained the same libfun -
1018      this still occurs when the libfun is in the calling line of the calling
1019      fun - let's live with it for the moment
1020    . Added underlines, keyboard shortcuts and usability bindings for the
1021      watch window buttons. Ditto for the configure dialog and add watch box
1022    . Removed the hardcoded size of the watch window that was used when both
1023      areas were hidden
1024    . Fixed Tcl error "invalid sash index" when changing the locale or fonts
1025      (or font size in older Scipad versions) while the watch window was open
1026      with variables zone or call stack area hidden
1027    . Fixed endless loop when configuring the debugger on a buffer containing
1028      unbalanced function/endfunction keywords
1029  * Made use of mcmax to homogenize the width of buttons in all the dialogs
1030  * Fixed: Trying to print a new file (Ctrl-n followed by Ctrl-p) produced
1031    an error in the Scilab shell
1032  * Fixed: A Tcl error could pop up when launching scipad with no filename and
1033    quickly opening a file through the file menu. This was because execution
1034    of dynamickeywords was not yet over when colorization started, thus
1035    resulting in Tcl errors such as can't read "words(scilab.scicos.c)". This
1036    synchronisation problem could also produce files that were not colorized
1037    in totality. Now $pad is withdrawn during Scipad's launch, and deiconified
1038    only when the complete startup sequence is finished - This fix is also
1039    included in Scipad 6.0.fix2 (BUILD4 branch)
1040  * Fixed: Colorization of XML files did not work correctly because the end
1041    bound for colorization was not properly derived - getendofcolorization
1042    and getstartofcolorization have been updated to deal specifically with
1043    the XML case
1044  * Added a message box for the user in proc highlighttextarea so that the Tcl
1045    error "invalid command name "none"" gets a chance to be fixed, since I
1046    could never reproduce it
1047  * version --> 6.45
1048
1049 Scilab operational team, 03/08/06
1050  * Changed directories to follow reorganization of the Scilab code
1051  * svn: eol-style property set to native
1052  * version --> 6.44 - First version following the reorganized code tree
1053
1054 Francois VOGEL, 18/07/06
1055  * One breakpointed macro counted in excess when the breakpoint was set on
1056    the last line of the macro
1057  * Button-2 release unbounded to the call stack widget (produced a Tcl error)
1058  * Scilab shell is forced at main level when entering the debug
1059  * Stepping deals with nested libfuns constructs, e.g. pmodulo(modulo()), the
1060    outer calls are no longer skipped by the debugger
1061  * version --> 6.43
1062
1063 Francois VOGEL, 16/07/06
1064  * Fixed issue on stepping into calfrq (colorization must be done before
1065    displaying the buffer)
1066  * Clipped userfun tag length to 24 characters to match Scilab's limitation
1067  * version --> 6.42
1068
1069 Francois VOGEL, 15/07/06
1070  * The debugger automatically opens libfun ancillaries on step into
1071  * version --> 6.41
1072
1073 Francois VOGEL, 07/07/06
1074  * Cosmetic changes in the call stack area of the watch window
1075  * More clever way of breakpointing for step into: instead of breakpointing
1076    all lines of all functions of all opened buffers, the debugger now
1077    breakpoints only the current context functions and the userfun
1078    ancillaries called by the function the debugger has currently stopped in.
1079    This contributes to limiting the number of breakpointed macros as well as
1080    the total number of breakpoints
1081  * Better performance while single stepping (avoid to rescan the buffers
1082    while skipping no code lines)
1083  * Added indicators of "debug complexity" showing how close the user is from
1084    the limits in number of breakpointed macros and in total number of
1085    breakpoints
1086  * Prevented the user from breakpointing the function declaration line - this
1087    is anyway illegal in Scilab since it would require to setbpt at line 0
1088  * The user can launch the debugger only when the file is a Scilab file and
1089    when this file is colorized
1090  * Fixed: actbptextFont was updated on font size change but was lost since it
1091    was not a global
1092  * Progressbars now have $textFont by default
1093  * version --> 6.40
1094
1095 Francois VOGEL, 04/07/06
1096  * Double-clicking in the call stack area jumps to the function and line
1097    number displayed in the clicked line - works both during debug and
1098    after an error, cursor changes shape while over a clickable line,
1099    clicked line blinks and target line as well
1100  * Added a vertical scrollbar for the call stack area of the watch
1101    window
1102  * Fixed a bug when trying to open function source of a scicos keyword
1103    through the popupmenu: the file did not open and the shell warned
1104    that it is not a libfun file
1105  * Rewrote proc blinkline in such a way that it uses a dedicated tag to
1106    blink lines instead of using the active breakpoint tag - now blinkline
1107    can be used during debug without destroying the active breakpoint 
1108  * version --> 6.39
1109
1110 Francois VOGEL, 02/07/06
1111  * Trimmed strings used in FormatStringsForDebugWatch
1112  * Prevented the user from debugging the debugger ancillary functions
1113  * version --> 6.38
1114
1115 Francois VOGEL, 30/06/06
1116  * Better localized the strings from FormatStringsForDebugWatch and
1117    FormatWhereForDebugWatch, making use of msgcat and no more of the
1118    global LANGUAGE from Scilab (was eng and fr only)
1119  * version --> 6.37
1120
1121 Francois VOGEL, 28/06/06
1122  * Fixed f***ing line endings issues (hopefully)
1123  * Execution errors retrieved also on "Go on ignoring any breakpoint"
1124  * Changed formatting of the error message in the watch window, and added
1125    a bell
1126  * version --> 6.36
1127
1128 Francois VOGEL, 28/06/06
1129  * The debugger retrieves execution errors from Scilab, reports in the watch
1130    window, and blinks the offending line
1131  * version --> 6.35
1132
1133 Francois VOGEL, 27/06/06
1134  * Removed erroneous double escaping of special characters in proc OKadda_bp
1135  * Worked around a bug in OKadda_bp: when the "Get current value from Scilab"
1136    box was checked, the watched variable value was not updated in certain
1137    cases - This is a ScilabEval "sync" parser issue (Bug 1086 like)
1138  * Removed duplicate -count Matchlength option in proc doonesearch (was not
1139    harmful)
1140  * Fixed hanging of Scipad when searching for a string whose match length
1141    is zero (e.g. regexp searching for ^) - This was partly Tk bug 1513517
1142  * Added a progress bar for replace all (long replaces look like hangs)
1143  * version --> 6.34
1144
1145 Francois VOGEL, 26/06/06
1146  * Variable names area extend again when resizing the watch window, plus
1147    cosmetics about the checkable boxes
1148  * version --> 6.33
1149
1150 Francois VOGEL, 25/06/06
1151  * Added an horizontal scrollbar in the watch window for variables names
1152  * version --> 6.32
1153
1154 Francois VOGEL, 10/05/06
1155  * Fixed: scicos_blocks/*/lib keywords can be colorized, opened as source,
1156    and tab-completed on Windows (apparently only worked before on Linux)
1157  * version --> 6.31
1158
1159 Francois VOGEL, 05/05/06
1160  * Fixed: user function names separated by a single character were not
1161    colorized
1162  * version --> 6.30
1163
1164 Francois VOGEL, 05/05/06
1165  * Fixed: completion of keyword containing a % character inserted a ?? pattern
1166    instead of the percent followed by the next character of the keyword - this
1167    was due to wrong interpretation of the % character as a substitution char
1168    in the completion bindings
1169  * Fixed: clicking quickly on the scrollbar of the Open source of... dialog
1170    validated the currently selected item, which is not what was wanted
1171  * version --> 6.29
1172
1173 Francois VOGEL, 28/04/06
1174  * Made use of TIP #231 implementation (Support for [wm attributes] on X11) in
1175    the context of the watch window being always on top - Uses the Tk85 global
1176    variable
1177  * Since Scilab is now distributed with Tcl/Tk 8.4.13 the patch enforced by
1178    the Scilab team in Scipad 5.67 has been removed (Tcl bugs 1193497 / patch
1179    1344540 are fixed, i.e. file writable is based on the ACL list on Windows
1180    directories instead of on the read-only attribute)
1181  * Fixed: Opening a file with Control-o inserted an empty line in the current
1182    buffer
1183  * version --> 6.28
1184
1185 Francois VOGEL, 21/04/06
1186  * Fixed: Empty lines skipping failed when the debug command just switched
1187    the active buffer
1188  * version --> 6.27
1189
1190 Francois VOGEL, 20/04/06
1191  * Added an horizontal scrollbar in the watch window for variables values,
1192    as requested in the newsgroup
1193  * version --> 6.26
1194
1195 Francois VOGEL, 19/04/06
1196  * Fixed: breakpoints can again be set during debug (was broken in 6.23)
1197  * Breakpoints cannot be set on lines pertaining to the wrapper code used
1198    for .sce files debug
1199  * version --> 6.25
1200
1201 Francois VOGEL, 18/04/06
1202  * Fixed: buffer was not detected as a mixed .sce/sci if the main level code
1203    was only located after the end of the last function definition
1204  * Fixed: debug state returns to NoDebug after a .sce debug session
1205  * version --> 6.24
1206
1207 Francois VOGEL, 10/04/06
1208  * Beta implementation of .sce files debugging through automatic wrapping
1209    in a function - just a try!
1210  * version --> 6.23
1211
1212 Francois VOGEL, 05/04/06
1213  * Fixed bug 1898: on Load into Scilab, the buffer is saved in a temporary
1214    file, therefore no popup to confirm save shows up
1215  * version --> 6.22
1216
1217 Francois VOGEL, 02/04/06
1218  * Simplification of the step by step code since bug 1894 is fixed
1219  * Fixed: Scipad does no longer spit a "Scilab busy" message when quitting
1220    Scilab during a debug session
1221  * version --> 6.21
1222
1223 Francois VOGEL, 30/03/06
1224  * Fixed a bug on step out when line to return to contains no executable
1225    code
1226  * version --> 6.20
1227
1228 Francois VOGEL, 26/03/06
1229  * Fixed a bug in dogotoline when going to an indented function
1230  * The debugger can perform run to cursor
1231  * Updated Scipad help page (run to cursor new feature)
1232  * version --> 6.19
1233
1234 Francois VOGEL, 25/03/06
1235  * Breakpoint insertion takes care of continued lines: only the first
1236    physical line of a continued line is pink-ified
1237  * The debugger can perform step over, i.e. without stepping into deeper
1238    call stack levels
1239  * The debugger can perform step out, i.e. next stop is just after the
1240    current context has returned
1241  * Updated Scipad help page (again step by step new features)
1242  * version --> 6.18
1243
1244 Francois VOGEL, 23/03/06
1245  * Fixed opening of the configure box or add argument box behind the watch
1246    window when the latter is always on top
1247  * No breakpoint can be set on a line that contains no executable code
1248  * Step by step (into) skips lines that does not contain executable code -
1249    This closes request 256
1250  * version --> 6.17
1251
1252 Francois VOGEL, 22/03/06
1253  * Proc openoninit renamed to openfileondisk and cleaned
1254  * Tuned a bit the look of the watch window, particularly when no pane is
1255    shown because it was slightly broken by the addition of the new buttons
1256    in 6.14
1257  * Scipad blinks double quotes (scilab scheme only)
1258  * Added missing bindings for parenleft bracketleft braceleft to blink them
1259  * The watch window can be always on top (setting added in the watch window,
1260    buttons become checkboxes to minimize space used) - Fixes request 261
1261  * Updated Scipad help page (mainly step by step new feature)
1262  * version --> 6.16
1263
1264 Francois VOGEL, 14/03/06
1265  * Impossible ScilabEvals better catched. bsiz (Scilab maximum buffer size)
1266    limit was already taken into account, now lsiz limit (maximum complexity
1267    of a command) is also tested
1268  * Worked around Scilab bug 1894
1269  * version --> 6.15
1270
1271 Francois VOGEL, 12/03/06
1272  * The debugger can perform step-by-step (step into only, and only in opened
1273    buffers) - this is a brute force approach, breakpoints are set on every
1274    line of every function from every buffer, but this is the only way I
1275    found without Scilab team support
1276  * version --> 6.14
1277
1278 Francois VOGEL, 06/03/06
1279  * fileunreadable extended to deal with files locked by another process,
1280    working around Tcl bug 1394972 (this bug was later marked as WONTFIX
1281    in the Tcl tracker)
1282  * version --> 6.13
1283
1284 ES 06/03/06
1285  * procs CommentSel and IndentSel simplified, which removes two bugs relative
1286    to selections beginning or ending with empty lines, or ending after a 
1287    newline
1288  * version --> 6.12
1289
1290 Francois VOGEL, 05/03/06
1291  * Patch for saving in Windows special directories again active (forgot a
1292    comment sign in Scipad 6.9)
1293  * Fixed bug 1785
1294  * version --> 6.11
1295
1296 ES 05/03/06
1297  * fixed bug about keyboard bindings enabled/disabled contextually
1298  * version --> 6.10
1299
1300 Francois VOGEL, 05/03/06
1301  * Fixed a bug in Save as... - reorganized the save procs, but bug 1785 is
1302    still present
1303  * The status bar gets colorized in PeachPuff if at least one buffer is
1304    modified - useful in tile mode when a buffer is modified and focus is in
1305    an unmodified buffer, the user is aware that at least one file is modified
1306  * Added a "Save all" command (saves modified buffers only)
1307  * version --> 6.9
1308
1309 Francois VOGEL, 28/02/06
1310  * Substituted the remaining obsolete Tcl instruction case by switch
1311  * Fixed: colorization was missing after undoing a change that did in fact
1312    not change the buffer content, e.g. Ctrl-a,Ctrl-c,Ctrl-v (no change here
1313    because the paste replaces the selection with the same text),Ctrl-v,
1314    Ctrl-z,Ctrl-z
1315  * Fixed: Edit/Select all did not update the menues contextually
1316  * version --> 6.8
1317
1318 Francois VOGEL, 25/02/06
1319  * Variable varargin can again be watched thanks to addition of a new option
1320    "nolocal" to the Scilab exists function - WARNING: works only with a cvs
1321    version dated 24 Feb. 06 or later
1322  * Fixed: Tcl Error 0 when trying to open function source through the file
1323    menu when Scilab is busy
1324  * F1, ctrl-F1, ctrl-P, ctrl-p display a busy message if Scilab is not idle
1325  * Rationalized tests on $sciprompt throughout the code, and added tests
1326    where they were missing (adding variables in the watch or configure box
1327    for instance)
1328  * version --> 6.7
1329
1330 Francois VOGEL, 22/02/06
1331  * Fixed: Erroneous "Outside of function definition" message when jumping
1332    to an indented function
1333  * Fixed: Tcl Error 0 when trying to add varargin as watch variable - no
1334    error any more, but varargin cannot be watched (always $unklabel, i.e.
1335    <?> in the watch window)
1336  * Candidate fix for bug 1848 and bug 1853 and Tcl Error 0 when trying to
1337    open function source through the popup when Scilab is busy
1338  * version --> 6.6
1339
1340 ES 21/2/06
1341  * bug fixed: double-click on an unfocused split pane pasted wrongly the 
1342    selection inside the focused pane
1343  * removed some duplicate general bindings from emacs.tcl and mac-pc.tcl 
1344  * version --> 6.5
1345
1346 Francois VOGEL, 20/02/06
1347  * Fixed: A user function name starting at line 1 column 1 was not colorized
1348  * Fixed: msgcat collision between Windows menu entry (main menu bar) and the
1349    entry with same name in the Options/Double click sub-menu
1350  * version --> 6.4
1351
1352 ES 20/2/2006
1353  * small fixes to problems created with the switchable bindings, which broke
1354    the commands Revert... and Open Function Source (hopefully doesn't break
1355    other menu commands and accelerators)
1356  * version --> 6.3
1357
1358 Francois VOGEL, 19/02/06
1359  * funcprot(0) is used to prevent function redefinition messages related
1360    to debugger sci files ancillaries (bug 1775)
1361  * Fixed bug 1792 (Linux/Windows different double click behavior), and added
1362    a saved preference for this setting
1363  * Fixed: Find in a single buffer and close the dialog. Switch to another
1364    buffer and hit F3. Wrong matches were found.
1365  * Fixed: When switching for 'colorize strings' to no single quotes string
1366    colorization, keywords, numbers, etc were not colorized properly because
1367    colorizestringsandcomments_sd was called in refreshQuotedStrings, i.e.
1368    only strings and comments were recolorized
1369  * Fixed: Colorization of strings for XML files was wrong because proc
1370    colorizestringsandcomments did always consider a scilab scheme
1371  * Colorization of xml files 10 times faster and corrected (xml tags can now
1372    contain spaces
1373  * Colorization can be switched on and off selectively in each buffer:
1374    Functions that make use of colorization results are disabled when the
1375    buffer is not colorized, i.e. :
1376      - goto line does not propose Scilab functions from a non colorized
1377        buffer
1378      - when colorization is switched off, the line number in the status bar
1379        is always the logical one (no line in function)
1380      - when colorization is switched off, the debugger configure box does
1381        not propose functions from non colorized buffers
1382  * Fixed two different incorrect string colorizations:
1383     - [q1,p1]=find(mat'=='[');  // transpose operator
1384     - a=["[";
1385          "]"];                  // quoted bracket or brace
1386  * Fixed: Undo/Redo after backspace or delete key could make the cursor jump
1387    in the buffer - the edit separator instructions were missing
1388  * Loosen debugger constraints wrt empty values for function parameters - see
1389    http://groups.google.com/group/comp.soft-sys.math.scilab/browse_thread/thread/ea4cc65bf1a79bc2/80f5f4896074fae2?hl=en#80f5f4896074fae2
1390      - varargin case:
1391        Function arguments are still passed by value, and order in the
1392        configure box matters
1393        (note: this is for the true varargin case, i.e. last argument is
1394        varargin, and there is no other argument named varargin)
1395      - no varargin case:
1396        Function arguments are now passed by name - order of arguments in the
1397        configure box does no longer need to be the same as the order of
1398        arguments in the function definition line
1399      - double varargin, ex. foo(a,varargin,b,varargin):
1400        This case is handled like Scilab handles it: the last varargin is
1401        ignored and the previous varargin is a normal argument
1402  * Proc dogotoline accepts the destination parameters as inputs. Simplified
1403    proc updateactbreakpointtag as a consequence
1404  * Speed up of proc getallfunsintextarea (up to 70 times faster, especially
1405    for large buffers containing many functions) by removing the need to use
1406    proc whichfun - Ditto for proc checkarglist
1407  * Slight speed up of proc whichfun
1408  * Fixed bug 1824: Speed up of proc colorize (approx. twice faster) and proc
1409    colorizestringsandcomments (hundreds times faster for long lines)
1410  * Increased increment for background colorization from 5 to 20 lines since
1411    colorization now uses regexp -all instead of .text search -regexp, which
1412    is faster because all the matches are returned at once. Colorization is
1413    now more efficient on larger chunks - balance with Scipad responsivity
1414    during colorization
1415  * User functions are gathered in the words and chset arrays in real time.
1416    This allows for colorization, shortcuts to jump to function definition
1417    line or to open source of..., and also completion with user function
1418    names
1419  * The watch window is deiconified on quick add watch
1420  * Scipad checks if execution of a script or a buffer did change the content
1421    of any already opened buffer and proposes to reload the file in this case
1422  * When switching scheme for new buffers the file extension is changed
1423    accordingly so that when scheme is xml, default extension proposed for
1424    saving a new buffer is .xml (and still .sce for other schemes)
1425  * Fixed: all the tk_optionMenu did miss their $menuFont on Scipad launch
1426    or after changing the locale
1427  * version --> 6.2
1428
1429 ES 15/02/06
1430  *switchable emacs/mac-pc bindings. Currently the feature is disabled 
1431   (bindings are always pc) because emacs is not finished. The files are
1432   committed to allow simultaneous work on other features. Remove "-state
1433   disabled at line 290 of menus.tcl to make it work.
1434  *version 6.1
1435
1436 Francois VOGEL, 01/02/06
1437  * version --> 6.0 - This version comes with Scilab 4.0 final release
1438
1439 Francois VOGEL, 22/01/06
1440  * Fixed bug 1161, partly in Scipad, partly in help_skeleton.sci
1441  * Fixed two different incorrect string colorizations:
1442     - a="hello""" +"world"
1443     - a="hello"""+"world"
1444  * version --> 5.78
1445
1446 Francois VOGEL, 20/01/06
1447  * Fixed: click on the first character of the selection inserted a copy of
1448    this selection in the buffer at the cursor place
1449  * Fixed: after doing a drag and drop (copy or move), if the user hit
1450    Ctrl-Button-1 and moved simultaneously the mouse to select some text,
1451    then the selection did not start at the cursor position. Instead, the
1452    selection started at the position where the cursor was just before the
1453    dnd
1454  * Log files can now contain Text class bindings through a new setting
1455    logTextclassbindings in scipaddebug1.tcl
1456  * version --> 5.77
1457
1458 Francois VOGEL, 15/01/06
1459  * Increased depth of constructs (brackets, braces) nesting for continued
1460    lines detection algorithm
1461  * Fixed: Update of continued lines background color when this color is
1462    changed was missing
1463  * version --> 5.76
1464
1465 Francois VOGEL, 12/01/06
1466  * Debugger works again with functions whose definition logical line is
1467    splitted into many physical lines
1468  * version --> 5.75
1469
1470 Francois VOGEL, 10/01/06
1471  * Fixed (by JP. Chancelier): file rootname might return an empty string
1472    under cygwin - test added in menues.tcl
1473  * Fixed: Goto box did not want to open after having closed a file during
1474    its colorization. Scipad thought colorization was still in progress
1475  * Refined preselection of choices in the Goto dialog box
1476  * Fixed replace dialog bug: Clicking on "In selection only" or on "In all
1477    opened files" after having opened more than one buffer triggered a Tcl
1478    error
1479  * version --> 5.74
1480
1481 Francois VOGEL, 01/01/06
1482  * Fixed stupid error I introduced in 5.72: the find box could only be opened
1483    once in a Scipad session
1484  * version --> 5.73
1485
1486 Francois VOGEL, 30/12/05
1487  * Fixed some races on startup:
1488     - Ctrl-g followed by ctrl-y/m/M/d/D during Scipad startup throwed a Tcl
1489       error because the selection is owned by the goto box when the second
1490       event is fired
1491     - Ctrl-f followed by ctrl-r, or the opposite sequence, triggered another
1492       Tcl error because the second event was fired before the grab $find was
1493       reached
1494  * version --> 5.72
1495
1496 Francois VOGEL, 29/12/05
1497  * Fixed bugs in the find in files results dialog:
1498     - Line number was wrong (one unit too small)
1499     - After getting the find in files results, delete a file containing a
1500       match, and try to show this match. The dialog pops up correctly about
1501       the nonexisting file: click no. The highlight was nevertheless done
1502       (on a wrong buffer)
1503  * Goto physical line in current file is preselected if no function was found
1504    in the opened buffers
1505  * Fixed endless loop in certain cases on Goto dialog opening (issue was in
1506    proc getallfunsintextarea), for instance when opening matsys.f, change
1507    scheme to scilab, then Ctrl-g: Scipad was stuck forever
1508  * version --> 5.71
1509
1510 ES, 25/12/2005
1511  * no tk error, but a popup warning, when trying to open an unreadable file
1512    (should deal with all the instances of opening files, tested on linux
1513    only)
1514  * opensourceof dialog made resizable
1515  * version --> 5.70
1516
1517 Francois VOGEL, 22/12/05
1518  * Debugger: Cancel debug is allowed right after configure execution, and
1519    more generally from the "ReadyForDebug" state
1520  * Fixed: Running Configure execution on an empty file or a pure .sce file
1521    changed the debug state to "ReadyForDebug"
1522  * Fixed: Scilab comments and strings on continued lines are no longer
1523    colorized in schemes other than scilab
1524  * Fixed bug reported on double click in the file open dialog. This was
1525    already fixed in 5.68 but only in case the TkDnD package is present,
1526    which is not the case in Scilab 4.0 RC1
1527  * version --> 5.69
1528
1529 Francois VOGEL, 09/12/05
1530  * Fixed bug reported in the newsgroup on File/Open followed by a double
1531    click on the file to open. References:
1532    http://groups.google.com/group/comp.soft-sys.math.scilab/browse_thread/thread/21cee717df71ab0/d5957386272e17b3
1533    http://groups.google.com/group/comp.soft-sys.math.scilab/browse_thread/thread/875daad29986228e/ae651d1a948ba67c
1534    More than one year later, I found that this is known in Tk as bug 943110...
1535  * DarkMagenta and darkred are not known under hpux11.11, therefore these
1536    colors become magenta4 and red4 (bug 1203)
1537  * ScilabEval command has quotes in proc selectprint_win in order to
1538    work with filenames containing white spaces
1539  * Added "sync" "seq" options to the initial ScilabEval ";" - this solves
1540    startup missing colorisation problems when issuing scipad some_file in
1541    Scilab
1542  * version --> 5.68 - This version comes with Scilab 4.0RC
1543
1544 Francois VOGEL, 08/12/05
1545  * Scipad is deiconified when called
1546  * "Bug fix", well it's a patch, from Allan/Serge to let Scipad to save a
1547    file in C:\Documents and Settings\<account>\My Documents (workaround for
1548    Tcl bug 1193497, whose existing patch is not yet applied to the Tcl cvs
1549    tree) - Fixes also part of bug 1146
1550  * version --> 5.67
1551
1552 Francois VOGEL, 05/12/05
1553  * Added an identifier in front of each proc log entry, so that end of
1554    interlaced events can be easily related to their beginning
1555  * Timestamping in logs is accurate to the millisecond
1556  * Added global variable Tcl85 which is true if Tcl version is at least 8.5
1557    This is useful to prepare the transition of Scipad to Tcl/Tk 8.5. Currently
1558    Scipad works as well under 8.4 or 8.5, but certain options or commands
1559    available only in 8.5 are used when Tcl/Tk 8.5 is present
1560  * Partially fixed Tcl errors that popped when hammering Scipad during its
1561    launch from Scilab (fix is in scipad.sci)
1562  * Dnd bug fixed: When the NumLock mode is active, ctrl dnd did not work
1563    (issue was only on Linux)
1564  * Added automatic backup of files on file save, with configurable and saved
1565    depth of backups
1566  * Fixed: help (Ctrl-F1) on quotes works
1567  * Fixed: Ctrl-v copies inside the find/replace/filename dialogs, and replaces
1568    an existing selection (issue was only on Linux). The selected text can be
1569    copy-pasted outside by button-2 click. The entry boxes have -exportselection
1570    set to true again
1571  * version --> 5.66
1572
1573 Francois VOGEL, 01/12/05
1574  * Update added at the end of scipad.tcl to make background tasks work on
1575    Linux (together with bug 865 fix)
1576  * Dnd of directories work again (this regression came in Scipad 5.38) -
1577    there is no need in this case to prevent concurrent running of the tile
1578    procs (maximizebuffer and splitwindow)
1579  * Continued lines are tagged in scilab language scheme only, and menu entry
1580    is disabled when not in scilab scheme
1581  * Cursor blink re-enabled on Linux thanks to bug 865 fix
1582  * Cursor blink re-enabled on Windows since I found a better way to work
1583    around dnd locks previously caused by the workaround for Tk bug 1169429
1584  * Missing focustextarea binding added in case Scipad is launched without
1585    TkDnD
1586  * Dnd bug fixed: Dragging from a buffer, going out of it, coming back and
1587    dropping in this same buffer did nothing
1588  * version --> 5.65
1589
1590 Francois VOGEL, 30/11/05
1591  * Fixed Find Next bug with F3: the highlighted part of the text was not
1592    correct when the buffer was modified between two searches - now in such
1593    a case, the Find/Replace dialog pops up again
1594  * F3 finds next (forwards or backwards depending on the radiobutton state
1595    in the Find dialog), now Shift-F3 finds next in the reverse direction
1596  * version --> 5.64
1597
1598 Francois VOGEL, 30/11/05
1599  * All background tasks forbidden on Linux
1600  * version --> 5.63
1601
1602 Francois VOGEL, 29/11/05
1603  * Text boxes from help menu improved:
1604     - Escape dismisses the dialog
1605     - Close button and scrollbar no longer clipped when shrinking the window 
1606  * Optimized speed of simultaneous background colorizations
1607  * Performance and response time with large buffers (say 15000 lines) on
1608    keypress much improved by:
1609     - continued lines tagging with an efficient proc
1610     - putting proc keyposn in the background and cancelling pointless launches
1611  * New saved option: Show continued lines, whose background color is a saved
1612    preference
1613  * version --> 5.62
1614
1615 ES, 27/11/05
1616  * Additional items in the Help menu, open scrollable text dialogs which
1617    display the files BUGS, CHANGELOG and AddingTranslations.txt. TBD 
1618    wether to keep all of them
1619  * version --> 5.61
1620
1621 Francois VOGEL, 25/11/05
1622  * Fixed: The first lines of the buffer could be forgot in the foreground
1623    colorization on file opening
1624  * Fixed background colorization of files with filenames containing spaces or
1625    Tcl special characters
1626  * Scipad.sci surrounds the filename to open with curly braces {} instead
1627    of quotes - prevents one round of unwanted substitution for filenames
1628    containing Tcl special characters
1629  * Fixed bug in relaunch of colorization of a file already being colorized
1630  * Fixed Scilab hang if asking for Configuring execution of CHANGELOG file
1631    in scilab language scheme
1632  * version --> 5.60
1633
1634 Francois VOGEL, 23/11/05
1635  * Fixed bug in colorization of multiple matrix transpose: ' following a
1636    closing bracket, brace or parenthesis is not the beginning of a string
1637  * Fixed a bug in the regexp of proc checkarglist, to allow trailing spaces
1638    in the function definition
1639  * Progressbar procs are no more in a namespace (there was a bug on Linux
1640    when launching Scipad multiple times from Scilab)
1641  * On Linux, background colorization proceeds only if there is X activity,
1642    e.g. if the mouse is moved. This when Scipad is opened from Scilab.
1643    Colorization marches by itself if Scipad is launched from wish. To work
1644    around this, background colorization is no more allowed on Linux
1645    (progressbar is however kept, but no cancel is possible)
1646  * Colorization aborted and relaunched if switching language scheme
1647  * Tcl error on Scipad close during colorization is catched (happened when
1648    launched from Scilab only)
1649  * version --> 5.59
1650
1651 Francois VOGEL, 22/11/05
1652  * Colorization bug fixed for strings containing double quotes ("ex""am""ple")
1653  * Background colorization is canceled if the file has been closed
1654  * Colorization progressbar added (one for each file colorized in the
1655    background)
1656  * version --> 5.58
1657
1658 Francois VOGEL, 21/11/05
1659  * Fixed a bug in the regexp of proc checkarglist (how come it worked before?)
1660    and improved it to better fit what is allowed by the Scilab parser
1661  * Fixed a bug in proc getstartofcontline, that produced wrong recolorization
1662    of continued strings starting at the first line of the buffer
1663  * Joining of continued lines in Ctrl-y Execselection is now through a
1664    semicolon
1665  * Colorization of multiple matrix transposes in the same logical line is
1666    correct (i.e. no more as textquoted), the logical line extending on a
1667    single physical line or not. Example: A=A'+B'
1668  * version --> 5.57
1669
1670 Francois VOGEL, 19/11/05
1671  * Highlight of entries in the completion popup on mouse pointing occurs
1672    only when Scipad has focus
1673  * Fixed: no completion was found in the Open source of... dialog when
1674    current language scheme was not "Scilab"
1675  * Changed <= into < for the upper bound of test on selection in proc
1676    tkdndbind for the <Drop> event - same change for the lower bound -
1677    this allows to drop a selection at one of the boundaries of the selection
1678  * The mouse cursor is restored to its default appearance when the user
1679    creates a new buffer through Control-n (it was a hand in the new buffer
1680    if Control-n was hit when the mouse was over the selection)
1681  * Better regexp for numbers colorization: doesn't match e123 or d1, and
1682    includes the possible leading decimal dot in the match
1683  * Continued lines (..) are handled for quoted strings colorization, even
1684    if they contain comments - Colorization for comments and quoted strings
1685    is interlaced and has been completely rewritten using regexps and making
1686    no use of the rem2 tag anymore
1687  * Line number finding in functions and logical line number identification
1688    support:
1689     - Mixed continued lines (i.e. single continued lines splitted in many
1690       buffer lines, some of them containing dots and some other not)
1691     - Nested brackets or braces in continued lines
1692     - Single quote quoted bracket, e.g. mprintf('[');  this is no longer
1693       detected as a continued line if single quotes strings are not
1694       colorized, thus producing a correct logical line number
1695  * Colorization of the buffer is done in the background if the entire buffer
1696    needs recolorization. Scipad is immediately responsive on File/Open,
1697    File/Revert to, and Scheme change, regardless of the buffer size
1698  * version --> 5.56
1699
1700 ES, 10/11/05
1701  * minor fixes to the completion popup:
1702  -trapping of Shift keypress using %K instead of %k, works in windows and linux
1703  -removed 300 msec delay after an entry is selected (previously added for
1704    visual feedback)
1705  * version --> 5.55
1706
1707 Francois VOGEL, 09/11/05
1708  * PgUp and PgDn bindings added for the completion popup
1709  * Keypad Enter key passes the selection completion from the popup the
1710    same way the Return key does
1711  * Improved the look of the popup for Linux (more menu-like)
1712  * Capital letters (shifted keys) can be used during popup completion
1713  * Completion popup size always correct for all the font sizes, even
1714    extremely small or large
1715  * An entry of the completion popup is highlighted when the mouse points
1716    to it
1717  * version --> 5.54
1718
1719 Francois VOGEL, 08/11/05
1720  * Completion popup window, which was a tk_popup menu, replaced by a
1721    text widget posted using the place geometry manager - usability
1722    bindings added. Reasons for this change: the Tcl event loop is not
1723    running on Windows while the menu is posted and this prevents from
1724    updating the list of completions while the user goes on typing when
1725    the menu is already posted. References:
1726    http://wiki.tcl.tk/3713
1727    http://wiki.tcl.tk/10643
1728    http://sourceforge.net/tracker/index.php?func=detail&aid=585003&group_id=12997&atid=112997
1729    http://groups.google.fr/group/comp.lang.tcl/browse_thread/thread/be584c844d3cb442/15630c85782a19a2
1730  * version --> 5.53
1731
1732 ES,
1733  * small improvements to derive the classes of scilab keywords from chset()
1734    for future ease of expandability; textarea tag "comm" renamed "command"
1735    (no new feature)
1736  * The list of possible completions includes the start of word, if it
1737    matches a Scilab keyword
1738  * version --> 5.52
1739
1740 Francois VOGEL, 06/11/05
1741  * Better retrieval of the keyword start for popup completion - the left
1742    boundary of a keyword does no longer need to be a space or start of line
1743  * Popup completion menu binding is a saved preference from the options
1744    menu (since the default Control-Tab may be used for other purposes on
1745    certain platforms)
1746  * Completion binding no longer changes focus from textarea to Close button
1747    in tile mode
1748  * Debug-mode Scipad logs all the (non Tcl/Tk default) bindings of all the
1749    children of $pad instead of only $pad bindings - this setting is
1750    configurable through a global variable
1751  * Cursor blink disabled on Windows to work around dnd locks in drag mode
1752    when clicking quickly in a pre-existing Scipad selection when Scipad
1753    does not have focus (might happen with slow computers)
1754  * version --> 5.51
1755
1756 Francois VOGEL, 02/11/05
1757  * Documented the relevant arrays (chset and words) for colorization and
1758    keyword matching (from Enrico's explanations)
1759  * New: Quick Open source code of... in the file menu
1760  * New: Ctrl-Tab proposes a list of completions from the known keywords
1761  * version --> 5.50
1762
1763 Francois VOGEL, 18/10/05
1764  * Searching for an empty entry in case the Find in files box is checked
1765    now searches for files that match the glob pattern
1766  * version --> 5.49
1767
1768 Francois VOGEL, 11/10/05
1769  * Fixed an error popup when opening the Replace box, typing a string and
1770    launching a search
1771  * version --> 5.48
1772
1773 ES, 11/10/05
1774  * default bindings Control-h,k,i,t in textarea removed, to prevent
1775    text modification without passing through our procs (to recolorize,
1776    take into account editing modes, etc)
1777  * button2copypaste bound to <ButtonRelease-2> (not <Button-2>). Avoids
1778    overlaps with the default <<PasteSelection>>, which caused odd behaviors.
1779  * version --> 5.47
1780
1781 Francois VOGEL, 10/10/05
1782  * Clicking in an existing selection deletes this selection again (this bug
1783    was introduced in 5.44)
1784  * Changed a label for find in files, in order to emphasize that filenames
1785    may be given and not only file patterns
1786  * version --> 5.46
1787
1788 Francois VOGEL, 09/10/05
1789  * Scipad rings a bell when the user tries to modify a buffer during a debug
1790    session
1791  * The full path of the file is displayed in the status bar when passing over
1792    the entries of the Windows menu, analogously to the File menu
1793  * version --> 5.45
1794
1795 Francois VOGEL, 08/10/05
1796  * Little fix in Obtainall_bp for function names containing question marks ?
1797    in their name
1798  * Fix in FormatStringsForDebugWatch for strings containing special TCL
1799    characters such as "${}[]
1800  * Again a better regexp for function names checking in the debugger
1801    configure box (function foo followed by nothing triggered a "check
1802    function definition")
1803    Side effect benefit: the keyword "function" and the function name now
1804    can be on different code (continued) lines
1805  * Dnd bug fixed: select something, and click in the selection without moving
1806    the mouse -> blinking stopped but did not restart. This was on Windows
1807    only since on Linux the cursor does not blink
1808  * Dnd bug fixed: the selection in Scipad could be copied/moved by dragging
1809    the character just after it
1810  * The cursor is moved at the drop position after a dnd
1811  * Space sashes evenly as well as external resizing work better (added update
1812    idletasks)
1813  * Better support for files containing Tcl special chars (braces), that could
1814    not be opened through the most recent list of files (file menu)
1815  * Fixed an "invalid command name "none"" error when launching Scipad from
1816    Scilab with at least one non existing file in the command line, and when
1817    this non existing file preceded existing files in the command line
1818  * New function: find in a directory, in files matching a glob pattern
1819    During search in files, which can be a lengthy process, Scipad is still
1820    fully active
1821  * version --> 5.44
1822
1823 ES, 6/10/05
1824  * Fixed: missing initialization of chset(scicos) caused errors when
1825    invoking scipad from wish and when typing in scipad during its opening 
1826  * proc load_words, which uses dynamickeywords exploits Scilab's new what()
1827  * keyword list now completely dynamical, file words removed.
1828  * version --> 5.43
1829
1830 Francois VOGEL, 25/09/05
1831  * Fixed: even if help function doesn't tell it function v=foo() is allowed
1832    (no bracket around v) - this syntax is now supported
1833  * Variable names (including functions) with special characters better
1834    handled. The debugger now swallows things nobody will probably do but
1835    which are required for Scilab full compatibility, e.g.
1836      function [a$va?r,%an!#va_#!?$r] = %foo#t!u?t$o_u(%ze!$?_#)
1837  * version --> 5.42
1838
1839 Francois VOGEL, 22/09/05
1840  * Fixed: End of log file was missing on Scipad close
1841  * Fixed: When Scipad was launched more than once from the same Scilab
1842    session the logs were missing all the proc entries
1843  * Fixed: Files containing Tcl special chars such as [] could not be opened
1844    through the most recent list of files (file menu)
1845  * version --> 5.41
1846
1847 ES, 22/09/05
1848  * added colorization of scicos functions and block names.
1849    makewordfile2.sce now appends them to the words file (#TAG scicos).
1850  * proc openlibfunsource extended to scicos functions and blocks,
1851    menu entry command contextualized
1852  * some default colors changed.
1853  * *.cosf Scicos file type added in Open/Save choosers.
1854  * version --> 5.40
1855
1856 ES, 21/09/05
1857  * outside scipad: hack to the function what(), which prints the names
1858    of all Scilab internal functions
1859  * script makewordfile2.sce, to be run manually for now, generates a 
1860    "words" file containing the internal functions and the scilab commands.
1861    Scicos functions and system variables used by scilab.start (e.g. LANG,
1862    %toolboxes, demolist,...) are no more included.
1863  * the "words" file is subdivided in two groups, "intf" and "comms"
1864    -old tag "keywords" suppressed, superseded by "intf" and "comms"
1865    -colorization, preferences, etc supports the two new tags
1866  * QTXTCOLOR reverted to "darkred"
1867  * trap for proc blinkbrace called with $brace not one of {")" "]" "}"} 
1868    (bad keymodmap problem reported)
1869  * Execute/Evaluate selection contextually activated when a selection
1870    is present; Button-2 paste no more (wrongly) contextually dependent
1871    on the clipboard state
1872  * version --> 5.39
1873
1874 Francois VOGEL, 18/09/05
1875  * Improved log file stuff:
1876     - Explicit close of the log file on Scipad exit
1877     - Added a messageBox in case of a bgerror
1878     - The log file is overwritten each time Scipad is started
1879     - Whenever a bgerror is triggered, the log file is saved as another
1880       filename, which is never erased by Scipad
1881     - Binding triggers are logged
1882  * Prevented the tile procs (maximizebuffer and splitwindow) to run
1883    concurrently thanks to a guard variable - Removing the bindings in proc
1884    disablemenuesbinds was not enough (why? it should have been enough!)
1885  * version --> 5.38
1886
1887 Francois VOGEL, 17/09/05
1888  * Added automatic log file capability for Scipad debug purposes
1889  * version --> 5.37
1890
1891 Francois VOGEL, 15/09/05
1892  * Fixed: Find/Replace search string can contain $ or [ ] signs
1893  * Better regexp in proc checkarglist to check for function names containing
1894    special characters
1895  * New implementation of Find/Replace for whole words - allows to search for
1896    whole words starting or ending with non Tcl word characters such as Scilab
1897    special characters ($ % _ # ! ?) - regexp mode can now be simultaneously
1898    selected
1899  * version --> 5.36
1900
1901 Francois VOGEL, 07/09/05
1902  * Fixed further search in selection bugs on Linux: the entry fields of the
1903    Find/Replace dialog don't exportselection anymore
1904  * New (Find/Replace): After having agreed to extend the search to the
1905    entire text, the user can again search in the selection without closing
1906    the dialog
1907  * If there is a preexisting text in the Find dialog, this text is selected
1908    on opening of the box
1909  * version --> 5.35
1910
1911 Francois VOGEL, 06/09/05
1912  * Fixed (hopefully): grab failed Tcl error on opening the Find/Replace box
1913    on Linux
1914  * Fixed: the selection doesn't disappear any more in Linux when opening
1915    the Find/Replace box, thus allowing to search in selection (was broken
1916    (by me!) since Scipad 5.7)
1917  * Fixed: a Tcl error "no character tagged with 'sel'" could pop up on
1918    opening again the find dialog with no selection after having canceled
1919    a search in selection
1920  * Fixed: Find/Replace works when strings contain spaces
1921  * Fixed: Find/Replace works when strings contain quotes or antislashes
1922  * New (Find/Replace): Regxep compilation errors are catched and the user
1923    is warned
1924  * Fixed: Scilab legal function names starting with a Tcl special character
1925    such as % _ # ! ? or even $ are fully supported in the debugger
1926  * Fixed: Scilab legal variable names starting with a $ are fully supported
1927    in the debugger
1928  * version --> 5.34
1929
1930 Francois VOGEL, 05/09/05
1931  * Completely rewrote Find/Replace procedures to allow to search and replace
1932    in more than one buffer
1933  * Fixed: the foundtext tag that stayed forever after a find next triggered
1934    by F3 is now removed on buttonpress event (was fixed in 3.42 but broken
1935    again later when additional bindings for dnd were implemented)
1936  * Fixed: Moving of the Find/Replace dialog when it hides a match works also
1937    when Scipad has splitted windows
1938  * Improved the overlapping detection in proc MoveDialogIfTaggedTextHidden:
1939    previously the find dialog was said to overlap whenever any part of the
1940    full line containing the match overlapped the dialog; now the overlap
1941    detection is precisely reduced to only the exact matched characters area
1942  * Tk bug 1275237 worked around - occurred when replacing a string by an empty
1943    one (Find/Replace)
1944  * Total number of replaces is displayed after a Replace all in all opened
1945    buffers
1946  * Added the missing Alt binding for Find/Replace in all opened files
1947  * New Find/Replace function: toggle on/off search in selection
1948  * New Find/Replace function: match whole word only
1949  * Replace in selection can be extended to the whole buffer when no match
1950    is found in the selection
1951  * Select all moves the cursor at the end of the selection (fixed by Enrico)
1952  * Added global variable Tk85 which is true if Tk version is at least 8.5
1953    This is useful to prepare the transition of Scipad to Tcl/Tk 8.5. Currently
1954    Scipad works as well under 8.4 or 8.5, but certain options or commands
1955    available only in 8.5 are used when Tk 8.5 is present, for instance:
1956      - $panedwindow paneconfigure $pane -stretch always
1957      - $text search -strictlimits  (this one was bugged: Tk bug 1281228
1958        but is solved in Tk cvs since 10/10/05)
1959  * External resizing of Scipad does no more space all sashes evenly but
1960    rather move the sashes in such a way that the relative size of panes
1961    are maintained (uses -stretch always in 8.5, which is emulated in 8.4
1962    but result is not always perfect in 8.4)
1963  * version --> 5.33
1964
1965 Francois VOGEL, 25/08/05
1966  * Binding on $pad <Configure> for spaceallsashesevenly catched because it
1967    can be triggered on Scipad exit, which caused a Tcl error 
1968  * Documented Find/Replace procedures
1969  * Find/Replace informs that it has wrapped around in relevant cases
1970  * Changed a bit the geometry of the Find/Replace box to make better use of
1971    the available space
1972  * Added a checkbox in the Find/Replace dialog for searching in all the
1973    opened buffers - Only replace all is working now
1974  * version --> 5.32
1975
1976 Francois VOGEL, 24/08/05
1977  * Double-click with Button-1 on a sash evenly spaces the sashes of the
1978    panedwindow containing this sash
1979  * Removed hardwired menu entry ids used with entryconfigure to enable or
1980    disable contextually certain menu entries. Array MenuEntryId contains
1981    now the entry index of the argument in the relevant menu
1982  * All the main menues can be torn off. This feature is not felt as being
1983    necessary for sub-menues
1984  * Undo, Redo, Cut, Copy and Paste commands are enabled/disabled contextually
1985    in the Edit menu, and the corresponding bindings are set accordingly
1986  * version --> 5.31
1987
1988 Francois VOGEL, 23/08/05
1989  * Fixed: Space sashes evenly did forget to move sashes of certain paned
1990    windows (fixed in proc getlistofpw)
1991  * Fixed: The output of getpwtree is now correctly ordered in the packing
1992    order
1993  * Better merging of panedwindows (step 2)
1994  * Tiles keep their relative sizes on external resizing of Scipad
1995  * Open in new tile has an H and a V variation
1996  * version --> 5.30
1997
1998 Francois VOGEL, 22/08/05
1999  * Fixed a Tcl bug introduced in 5.28 when there is zero recent files in the
2000    MRU files list
2001  * version --> 5.29
2002
2003 Francois VOGEL, 19/08/05
2004  * Replaced tabs by 4 spaces in the source code (sorry!)
2005  * Fixed: "Space sashes evenly" ignored the root paned window
2006  * Fixed: Tcl bug could pop up on "Tile all" with certain tiling pictures
2007  * Automatic relocalization of the hide/show buttons in the watch window
2008  * The current buffer becomes the top-(or left-)most buffer on a Tile All
2009    command (previously it was the first in the windows menu list, i.e. no
2010    way to change the order of tiling)
2011  * Button-2 on a tile title switches the tile content to a hidden buffer
2012  * Added "Open in new tile" command.
2013  * Potential bug fixed in extractindexfromlabel when used with anything
2014    else than the windows menu, namely the file menu. An entry with the same
2015    name as a menu label would have fooled this proc
2016  * version --> 5.28
2017
2018 Francois VOGEL, 18/08/05
2019  * Fixed: merging of panedwindows should not be executed if destroypaneframe
2020    is called with nohierarchydestoy argument
2021  * Continued implementation of panedwindows merging - not yet absolutely
2022    perfect but we can certainly live with this
2023  * Fixed: When launching Scipad in wish, the wish process was still alive in
2024    the computer after Scipad close
2025  * Slightly better Space sashes evenly command since getlistofpw now sorts
2026    its output
2027  * version --> 5.27
2028
2029 Francois VOGEL, 14/08/05
2030  * Better prevention of multiple binding fires for FocusIn event
2031  * Fixed: The following sequence triggered a bug: open Scipad, type something
2032    in the empty buffer, open another buffer, and then split
2033  * Documented paned windows implementation in buffernavigation.tcl
2034  * Implemented merging of panedwindows to prevent the grey border from growing
2035    on buffer close/reopen/split - this is not finished yet
2036  * version --> 5.26
2037
2038 Francois VOGEL, 06/08/05
2039  * Printing on Windows implemented using Scilab instructions (printsetupbox and
2040    toprint) - No colorization yet
2041  * File changes on disk is now detected on Scipad FocusIn event, not only when
2042    trying to save
2043  * version --> 5.25
2044
2045 Francois VOGEL, 29/07/05
2046  * Fixed clipping of pane title when Scipad window becomes really small
2047  * Restored pane minsize on a split (was forgotten)
2048  * If there is a hidden buffer at the time the Split command is invoked
2049    then this buffer is used for display in the new pane instead of always
2050    opening a new empty buffer
2051  * version --> 5.24
2052
2053 Francois VOGEL, 26/07/05
2054  * Emacs-like implementation of panedwindows (major change wrt to previous
2055    version):
2056      - the set of displayed buffers is a subset of the overall buffers set
2057      - tilestyle does not exist anymore - got rid of the concept of tiling mode
2058      - Split commands added, Control-Key-2 and Control-Key-3 bindings changed
2059      - Space sashes command added
2060      - Tile H and Tile V commands kept (operate on all opened buffers)
2061      - File/Open opens a buffer in the current tile
2062      - File/Close closes the buffer and displays a previously hidden buffer
2063        (or closes a pane if no undisplayed buffer is available)
2064  * Disabled close button in tile titles during the close process - Prevents
2065    the user from clicking repeatedly, e.g. during confirmation for saving
2066  * Fixed expanding of the button bar in the watch window (happened on initial
2067    external resizing)
2068  * version --> 5.23
2069
2070 Francois VOGEL, 20/07/05
2071  * proc updatepanestitles improved to prevent rapid switching of buffer names
2072    in the Scipad title bar on closing a buffer when many are opened
2073  * Fixed: when previous exit was done in horizontal panes mode, the next
2074    restart used vertical orientation
2075  * Double-Button-1 on tile title binded to maximization of the clicked buffer
2076  * Added accelerators for tile mode in windows menu
2077  * Better centering of the label in the tile title
2078  * version --> 5.22
2079
2080 Francois VOGEL, 19/07/05
2081  * tilestyle is a saved preference
2082  * New: dnd: works now when dragging from outside of Scipad and dropping in
2083    Scipad (the other way, Scipad -> outside already worked)
2084  * Fixed (on Windows only): clicking on [x] or File/Exit to close Scipad works
2085    even if Scipad is performing certain other tasks
2086  * Bulletproofed File/Close (Control-w), tilebuffers and maximizebuffer so
2087    that the user can't trigger them before the previous one is finished -
2088    this has been done by disabling certain menues entries and bindings before
2089    launching the command, and restoring them after execution
2090  * version --> 5.21
2091
2092 Francois VOGEL, 18/07/05
2093  * Fixed: extend selection with Control-Button-1 works again (this was lost
2094    when the user clicked on a selection without moving the mouse)
2095  * Fixed: text widget selection is removed in the "old" buffer on buffer switch
2096  * Shift-Tab binding corrected to prevent default bindings from triggering
2097  * Clicking on a pane title selects this pane
2098  * version --> 5.20
2099
2100 Francois VOGEL, 18/07/05
2101  * Minor improvements or bug fixes to the paned window:
2102     - clicking on a pane title frame selects this pane
2103     - windows menu radiobutton is updated when the user clicks in a pane
2104     - close button added in each pane
2105     - locale change is propagated to all the panes titles
2106     - the horizontal scrollbar of each pane could get clipped when the text
2107       widget size was very small - Scipad now clips the text widget first, 
2108       until there is nothing else to do than to clip the scrollbar
2109     - Drag and drop works between panes - major rewrite of the dnd procs
2110  * Fixed: initialisation of funtogoto was missing in updateactbreakpointtag
2111  * version --> 5.19
2112
2113 Francois VOGEL, 16/07/05
2114  * First implementation of panedwindows to display more than one buffer at
2115    the same time. Better use it with Tcl/Tk 8.4.10 or higher since Tk bug
2116    1192323 is fixed by Tk patch 1124198
2117  * Fixed: The title bar is now updated on Options/Filenames change
2118  * version --> 5.18
2119
2120 ES, 6/7/2005
2121  * "&" -> "ampersand" in proc localetools.tcl/fb makes the null underline
2122    binding <Alt-&> acceptable in linux too
2123  * after 0 at line 449 of findreplace.tcl works around an event sequence 
2124    problem in linux, which popped up an error upon <Alt-key> cancelling 
2125    Search/Replace
2126  * version --> 5.17
2127
2128 Francois VOGEL, 05/07/05
2129  * Proc amp improved to provide the right index of the character to underline
2130    when the string contains one or more escape characters (\)
2131  * version --> 5.16
2132
2133 Francois VOGEL, 04/07/05
2134  * Alt bindings in dialogs are now "flexible" ones, i.e. they can change
2135    with the locale
2136  * version --> 5.15
2137
2138 Francois VOGEL, 03/07/05
2139  * Alt bindings and underlines added in goto line dialog
2140  * The Find/Replace dialog uses Alt bindings instead of Control bindings
2141  * version --> 5.14
2142
2143 Francois VOGEL, 29/06/05
2144  * New Go to line... option implemented:
2145      - Go to logical line N in current buffer (useful for .sce or mixed files)
2146  * Logical line number in buffer is displayed in statusind2 for Scilab files
2147    when the cursor is not in a function
2148  * Modularity of whichfun further improved - creation of proc countcontlines
2149  * version --> 5.13
2150
2151 Francois VOGEL, 28/06/05
2152  * Fixed debug menu entries states after locale change
2153  * The useless toplevel created by wish when running Scipad outside of Scilab
2154    is removed
2155  * Go to line... options implemented:
2156      - Go to physical line N in current buffer
2157      - Go to physical line N in function...
2158      - Go to logical line N in function... (takes into account continued lines)
2159  * Rationalized the use of proc whichfun by encapsulating it in higher level
2160    procs (getallfunsintextarea, getallfunsinalltextareas) and making use of
2161    these instead of the loop that regexp-searches for "\\mfunction\\M" and
2162    checks whichfun it is in
2163  * version --> 5.12
2164
2165 ES, 28/6/05
2166  * locale can be changed on the fly via the Options/Locale menu.
2167  * $lang added to $listofpref, the locale is an option remembered across 
2168    sessions
2169  * [commented out] menu entries for opening BUGS, CHANGELOG, 
2170    AddingTranslations.txt, msg_files/*.msg added as placeholders in the help
2171    menu
2172  * textarea.tcl/setfontscipad: the menu tree is automatically traversed
2173    when changing font
2174  * version --> 5.11
2175
2176 Francois VOGEL, 20/06/05
2177  * $listoftextarea fixed - Maintaining order of its elements is required
2178  * Bug fixed: Opening two files with the same name did not tag one of them
2179    as unmodified
2180  * version --> 5.10
2181
2182 Francois VOGEL, 16/06/05
2183  * Nasty bug fixed: With many opened buffers, saving one of them from the
2184    middle of the windows menu list caused loosing consistency between the
2185    tick/entry in the windows menu and the buffer actually displayed
2186  * $dialogFont instead of $textFont in the Linux message boxes
2187  * file choosers (open/save as) and color picker also use $dialogFont
2188  * version --> 5.9
2189
2190 Francois VOGEL, 15/06/05
2191  * Most of the subwindows (Find/Replace, Debugger windows, tk_dialog, Goto
2192    line, Print Setup, tk_messageBox) inherit the current font on Linux.
2193    This is not possible on Windows because the dialogs used by Tk on Windows
2194    are native ones. Still to be implemented: file choosers (open/save as)
2195    and color picker, i.e. tk_getOpenFile, tk_getSaveFile and tk_chooseColor
2196  * Bug fix: Replace all by an empty string did pop a tcl error
2197  * Proc whichfun swallows nested function definitions with continued lines.
2198    This is important for the debugger, that relies on the correct output of
2199    whichfun to display the active breakpoint for instance
2200  * Bugzilla url updated
2201  * version --> 5.8
2202
2203 Francois VOGEL, 12/06/05
2204  * If there is a preexisting text in the Find dialog, this text is selected on
2205    opening of the box
2206  * Resizing of the watch window panes could sometimes lead to clipping of these
2207    panes. This is Tk bug 1192323. Tk patch 1124198 solves the issue and is part
2208    of Tk 8.4.10 and Tk8.5a3. Since Tk 8.4.10 is now shipped with the Scilab
2209    binaries for Windows, I consider this issue closed. Anyway, this is outside
2210    of Scipad
2211  * Fixed the resizing issue in the watch window using information provided in
2212    Tk bug 1217762 (the "Close" button could still be clipped after Tk patch
2213    1124198)
2214  * version --> 5.7
2215
2216 Francois VOGEL, 07/06/05
2217  * On successful opening of the first file after Scipad launch, the unmodified
2218    empty buffer that is opened by default is automatically closed
2219  * The default bindings of the text widget correctly report the buffer as
2220    modified. This includes Control-k (delete from the insertion cursor to the
2221    end of line), Control-t (transpose text), Control-i (insert a tab),
2222    Control-h (delete one char) and maybe other default bindings. This feature
2223    required no change of the code since it is a benefit from making use of the
2224    undo mechanism embedded in the text widget (Scipad 5.3)
2225  * Inserting a breakpoint when the cursor is outside of the displayed area
2226    moves the text so that the new breakpoint is visible
2227  * Bug fixed: The order of the watch variables (that can be changed by drag
2228    and drop using button-3) is no longer lost after resuming the debug
2229  * Toggling the "Get value from Scilab" flag in the add argument window moves
2230    focus to the field of interest
2231  * Moved all the debug settings at the top of defaults.tcl
2232  * version --> 5.6
2233
2234 ES, 7/6/05
2235  * new proc pbind in the new sourced file platformbind.tcl: tries all
2236    the known key sequence names, instead of trying the relevant one for each
2237    platform (useful for Shift-Fn bindings)
2238  * version --> 5.5
2239
2240 Francois VOGEL, 05/06/05
2241  * Fixed a regression introduced in 4.7: Control-Button-1 did no longer extend
2242    the selection
2243  * version --> 5.4
2244
2245 Francois VOGEL, 04/06/05
2246  * Undo/Redo mechanism and modified flag replaced by the text widget embedded
2247    one (since Tk 8.4). This fixes some bugs and has many side advantages:
2248      - Undo/redo stacks were sometimes not consistent with the modified flag,
2249        e.g. if the user typed something, saved, undid once and redid once,
2250        then the modified flag was still active
2251      - Cut, paste, undo, undo did forget the colorization of the text on which
2252        it had been applied
2253      - More than one single undo (or redo) is no more needed to cancel (or
2254        redo) an action that first deleted the selection, e.g. a paste over a
2255        selection, or a text move with dnd
2256    These are all fixed.
2257  * Fixed: If the height of the textarea is an exact multiple of the line height
2258    it was not possible to scroll down during a dnd (same issue horizontally)
2259  * version --> 5.3
2260
2261 Francois VOGEL, 30/05/05
2262  * Watching large arrays can quickly lead to ScilabEval commands exceeding the
2263    length limit, usually resulting in a shell error and messing the debug. This
2264    is now taken into account. Such long commands are saved in a file in tmpdir,
2265    the command is splitted in parts whose size is smaller than bsiz, and the
2266    file is executed by a ScilabEval. These file accesses are catched to avoid
2267    problems with permissions, disk size, etc. If there was such a problem, the
2268    user receives a warning. This allows for instance to watch big variables
2269    containing thousands of components, or to watch a large number of variables
2270  * version --> 5.2
2271
2272 Francois VOGEL, 29/05/05
2273  * Bug fixed: Right-click on a variable to add it as a watch did not work if
2274    this variable was on a breakpointed line
2275  * Fixed: Backspace or the like now scroll the main window to keep the cursor
2276    visible
2277  * Fixed: If a watch variable is a list containing one or more undefined
2278    items, then these items became defined (as a string) when running to the
2279    next breakpoint. They now stay as properly undefined items
2280  * Fixed: An unknown variable (getvaluefromscilab) error could pop up during
2281    quick add watch if the added variable did already exist as a watch
2282  * The add variable box now adjusts dynamically its width to be just large
2283    enough to hold its content
2284  * The debugger now allows for watching an element of a variable, and not
2285    only the full variable array (i.e. to watch things like d(1,3) or d(i)
2286    or even sub-arrays such as d(1:3) and not only d if d is a matrix or a
2287    list) - Warning: it can watch b(16/8+3*2-1) but not b(16/8+(3*2)-1) since
2288    only one set of parentheses or brackets is allowed - Expression watching
2289    such as a+b or plot(x) still not yet implemented
2290  * Duplicated in the watch window the visual indication about the debugger
2291    status that is already displayed in the statusbar of the main window
2292  * The watch window can now be opened before execution is configured
2293  * The watch variables of type poly are now displayed with the unknown
2294    variable given by varn. Previously it was OK if and only if degree>0
2295  * '' strings in comments are correclty marked as strings if Options/Colorize
2296    'Strings' is untagged and retagged (fixed by Enrico)
2297  * Cancelling closure of modified buffers does no longer ask multiple times
2298    for confirmation
2299  * version --> 5.1
2300
2301 Francois VOGEL, 17/05/05
2302  * Bug 1228 fixed - Cancel button removed when Scipad is exited because of
2303    a Scilab quit (but kept when exit is called from Scipad)
2304  * version --> still 5.0
2305
2306 ES, 16/05/05
2307  * version --> 5.0, incrementing the major for the new scilab release 3.1
2308
2309 Francois VOGEL, 09/05/05
2310  * Fixed: "grab failed" on Linux happened when the user double-clicked on
2311    a variable name in the watch or configure box
2312  * version --> 4.16
2313
2314 Francois VOGEL, 08/05/05
2315  * Simplified shading of colors for the activeforeground colorization
2316    scheme in Options/Colors menu, following discussion on comp.lang.tcl
2317  * Added a checkbutton in the watch window add variable dialog box in order
2318    to force acquisition of the current value of this variable from the shell.
2319    This is useful during a debug session when the user adds a new watch
2320    variable just to check its current value without changing it. Previously,
2321    update was only performed after the next breakpoint stop
2322  * version --> 4.15
2323
2324 Francois VOGEL, 06/05/05
2325  * Second proposal for a better activeforeground colorization scheme in
2326    Options/Colors menu, now better taking into account 16-bit colors as
2327    selected by the user in the color picker
2328  * version --> 4.14
2329
2330 Francois VOGEL, 05/05/05
2331  * Proposal for a better activeforeground colorization scheme in Options/Colors
2332    menu, using http://aspn.activestate.com/ASPN/Cookbook/Tcl/Recipe/133529
2333  * version --> 4.13
2334
2335 ES, 05/05/05
2336  * cosmetic: colored activeforegrounds in menue Options/Colors
2337  * version --> 4.12
2338
2339 Francois VOGEL, 05/05/05
2340  * Bug fixed: line/column indication in the bottom bar was no longer updated
2341    when the insertion cursor was moved by clicking on the text area. This bug
2342    was introduced in Scipad 4.7
2343  * version --> 4.11
2344
2345 Francois VOGEL, 03/05/05
2346  * Bug fixed: when in debug mode and there was no mouseoversel before, there
2347    was an error
2348  * version --> 4.10
2349
2350 Francois VOGEL, 29/04/05
2351  * Fixed: selection bounds could miss the first and/or last characters after
2352    a replace whose first or last match started or ended at the selection
2353    bounds
2354  * Watch window made resizable, and with 2 paned windows inside to adjust
2355    size of the call stack area and the variables area, and inside the variables
2356    area, the respective sizes of the variable names and the variable content.
2357    There is still a quirk, which is Tk bug 1192323 (partially solved in
2358    Tk8.5a3 cvs 29/04/05), but one can certainly live with it for the moment
2359  * Add arg window made resizable
2360  * version --> 4.9
2361
2362 Francois VOGEL, 27/04/05
2363  * Better fix for the Replace all bug supposedly fixed in 4.7 (there were
2364    still cases that could hang Scipad) - Rewrote proc ReplaceAll
2365  * Bug fixed: Regexps finds or replaces could produce an error if the
2366    search was performed independently of character case (e.g searching
2367    for [ab] in a buffer containing xxAxx)
2368  * version --> 4.8
2369
2370 Francois VOGEL, 26/04/05
2371  * RamDebugger capability added (MUST be set to "no" for committed
2372    files, see at the top of defaults.tcl)
2373  * Bug fixed: Replace all could hang Scipad when the string to search was
2374    included in the string to replace
2375  * Bug fixed: Trying to drag and drop in the call stack area of the watch
2376    window produced an error - Now this operation is no more allowed
2377  * version --> 4.7
2378
2379 Francois VOGEL, 18/04/05
2380  * Refined the popup menu for "Add watch" to include the selected text.
2381  * Made use of the existing tags as well as of a regexp deduced from help
2382    names in Scilab. Only valid variables can now (in principle) be added
2383    on right-click on selection during debug
2384  * Some editing in the message files - German version added
2385  * version --> 4.6
2386
2387 Francois VOGEL, 15/04/05
2388  * Slight change in proc OKconf_bp to avoid executing foo(1,2,,,) in case some
2389    input parameters are not given. This lead to wrong value of rhs (5 in this
2390    example). A call such as this one is now trimmed to foo(1,2), giving the
2391    correct rhs=2
2392  * Consistent change made in proc checkarglist to avoid Scipad complain when
2393    argument order is not the same as what is in the function definition, and
2394    argument value is "" (meaning this argument will not be sent on execution)
2395  * Bug fixed: The message box "Check function definition" could inopportunely
2396    pop up when there was more than one opened buffer
2397  * Added a popup for the debugger: if the user right-clicks on a selection
2398    he can now quickly add the selection as a watch variable
2399  * The debug session is now properly canceled on Scipad close, so that Scilab
2400    is no more in a messy state in such a case
2401  * The debug session is aborted if the user closes the buffer that contains
2402    the function launched for debug. If another buffer is closed, all the
2403    breakpoints of the closed buffers are removed from Scilab and the debug
2404    session can go on
2405  * Minor bug fixed: the watch window icons for run to cursor and break (these
2406    features are still pending, waiting for the Scilab parsers to be fixed...)
2407    were sometimes inopportunely enabled
2408  * Selection made visible even if overlayed by a breakpoint
2409  * Bux fixed: In the debugger watch window with several watch variables, when
2410    execution has stopped due to a breakpoint, when the user changes the value
2411    of some variables and then adds a new variable (Add/Change button or
2412    right-click on selection), then the changes previously made on the other
2413    watch variables were lost
2414  * Credit given to Gunnar in the About box for the se translation
2415  * version --> 4.5
2416
2417 ES, 14/04/05
2418  * fixed linux printing. Checked, it works both with "lpr" and 
2419    "a2ps -2 -Pprinter". If the buffer is unmodified, no temporary 
2420    file is created (a2ps adds the proper header, which is nice)
2421    The syntax has to be "$printCommand $file" (this excludes for the
2422    moment e.g. "cat $file | lpr", but that could be reworked), and
2423    if $printCommand reports something (e.g. the job number or the number
2424    of pages, as a2ps does), that is popped up.
2425  * Preference values are written in {} in the preference file. This was
2426    necessary since $printCommand can contain spaces, minuses, piping chars.
2427  * Credit message in proc aboutme desourced, and expanded in each *.msg file.
2428    This will ease adding information, such as translator credits.
2429  * version --> 4.4
2430
2431 ES, 13/04/05
2432  * menu Options/Colors colorized enforcing background and foreground
2433    color settings - makes it as readable as the textarea will be.
2434  * version --> 4.3
2435
2436 Francois VOGEL, 10/04/05
2437  * Dropping text at the same place it was dragged from does no more tag the
2438    buffer as modified
2439  * version --> 4.2
2440
2441 Francois VOGEL, 03/04/05
2442  * Scipad silently displays the already opened buffer if the corresponding
2443    file menu entry is selected - no complain any more
2444  * Bindings with shift modifier corrected for Solaris Sun OS
2445  * env(SCIHOME) is now used instead of env(HOME) for saving the preferences
2446    file (changes by A. Cornet)
2447  * version --> 4.1 - This version comes with Scilab 3.1RC
2448
2449 Francois VOGEL, 25/03/05
2450  * version --> 4.0
2451
2452 Francois VOGEL, 24/03/05
2453  * Last minute drag and drop improvements:
2454      - restored cursor blinking on Windows (found a tricky workaround for
2455        tk bug 1169429)
2456      - further fix for quick drags, on Linux this time
2457  * version --> 3.56
2458
2459 Francois VOGEL, 23/03/05
2460  * Again drag and drop improvements:
2461      - restored dnd for text/uri-list that was broken on Linux
2462      - Control-Button1 binding fixed - can now be pressed before drag start
2463      - fixed wrong behavior with quick drags (selection was sometimes extended)
2464  * version --> 3.55
2465
2466 Francois VOGEL, 21/03/05
2467  * Drag and drop improvements for text within Scipad:
2468      - action can now be switched between copy and move during a drag operation
2469      - the cursor can no more be located inside a selection
2470      - scrolling of the window when drop location approaches the window border
2471      - cursor changes shape when over a selection
2472  * No more blinking of the cursor on Windows (temporary patch because of a
2473    glitch with drag and drop)
2474  * version --> 3.54
2475
2476 Francois VOGEL, 20/03/05
2477  * Changed bindings for drag and drop of text within Scipad for more standard
2478    ones: Button-1 now moves, whereas Control-Button-1 copies.
2479  * Binding for openlibfunsource is now Shift-Control-Button-1 (had no better
2480    idea...)
2481  * version --> 3.53
2482
2483 Francois VOGEL, 19/03/05
2484  * Added an "Exec done" showinfo so that the user has a visual feedback of his
2485    action when it results in no change in the Scilab window.
2486  * F10 (Configure execution) in the debugger now accepts function definitions
2487    splitted on multiple continued lines, possibly with interlaced comments.
2488    There is still a limitation due to the tcl fact that matches must be within
2489    a single text line. Therefore the keyword "function" and the function name
2490    must still be within a single line.
2491  * Find/Replace with regexps could highlight the wrong number of matched chars.
2492    This is fixed but there is still something unclear about the text widget
2493    search command, whose switch -count var does not always update variable var
2494    with the length of the match. Worked around and code cleaned from -count
2495    switch.
2496  * Drag and drop of text within a buffer is now implemented. Possible actions
2497    are move (Shift-Button-1) and copy (Shift-Control-Button-1).
2498  * version --> 3.52
2499
2500 Francois VOGEL, 16/03/05
2501  * Differences of keysyms between Linux and Windows platforms are now fully
2502    handled
2503  * version --> 3.51
2504
2505 Francois VOGEL, 16/03/05
2506  * Several minor glitches corrected for Find/Replace, in selection or full
2507    text, related to changing search direction between searches
2508  * version --> 3.50
2509
2510 ES 15/03/05
2511  * new option available: single quoted strings colorized as strings/not
2512  * version --> 3.49
2513
2514 Francois VOGEL, 13/03/05
2515  * New options made available:
2516      - Tab key inserts spaces or tabs
2517      - Max number of recent files in the file menu (possibly zero)
2518  * version --> 3.48
2519
2520 Francois VOGEL, 12/03/05
2521  * New options made available:
2522      - File names: Full, or Full if ambiguous, or Pruned file names
2523      - Indentation spaces number - used for Ctrl-d as well as Tab
2524      - Binding for Tab: insert spaces to the next tab stop, or indent the
2525        selection if it starts at the beginning of a line - useful for
2526        quickly reindenting code parts newly enclosed in ifs for example
2527  * Fixed: some menues did not have the same fonts than the others
2528  * version --> 3.47
2529
2530 ES  09/03/05
2531  * procs openlibfunsource1 and wordwrap eliminated; the menu entries using them
2532    can just inline them. 
2533  * version --> 3.46
2534
2535 Francois VOGEL, 09/03/05
2536  * Word wrap is now correctly taken into account between Scilab sessions
2537  * version --> 3.45
2538
2539 Francois VOGEL, 09/03/05
2540  * Again changes related to request 168, and find/replace:
2541      - bindings corrected for the replace dialog (still ctrl-key bindings)
2542      - trying to replace with an empty string now works correctly
2543      - there were tricky cases where replace all could enter an endless loop
2544       (e.g. replace d by dd, starting the replace between two matches on
2545       the same line) - this is fixed
2546  * maxrecentfiles = 0 is now fully supported in case that value is selected
2547    in the options menu to come
2548  * Find in selection now works correctly on Linux also
2549  * Wrt the new Options/colors, propagated changes to french messages
2550  * version --> 3.44
2551
2552 ES 8/3/2005
2553  * Options menu splitted in Scheme and Options
2554  * Word Wrap moved to Options menu
2555  * all scipad colors are configurable within scilab with the Option/Colors
2556    submenu, and immediately updated
2557  * version --> 3.43
2558
2559 Francois VOGEL, 07/03/05
2560  * Further changes related to request 168:
2561      - position of the text found/replaced is now given in the status bar
2562      - the foundtext tag that stayed forever after a find next triggered
2563        by F3 is now removed on keypress or buttonpress event
2564      - when the user hits replace, now the previously found text is replaced
2565        instead of the next one - if no match was previously found, then a
2566        search occurs, immediately followed by a replace if successful
2567      - now the possibly existing selection remains visible while the find
2568        dialog is open
2569  * version --> 3.42
2570
2571 Francois VOGEL, 06/03/05
2572  * Request 168 fixed:
2573      - focus stays in Find/replace dialog (the new tag foundtext is used
2574        instead of the (special) sel tag)
2575      - Find Next button added in the Replace dialog
2576      - Intelligent move of the dialog occurs in case the text found would
2577        have been hidden behind the dialog
2578  * In case of opening a precendently opened file from the recent file list,
2579    the corresponding entry is moved at the top of the list.
2580  * version --> 3.41
2581
2582 ES, 6/3/05
2583  * fine-tuning for linux drag&drop (.* files considered when dragging
2584    directories, .. and . excluded, warning for drops of non file://
2585    objects (e.g. ftp:// or http://). Filenames with non escaped spaces
2586    (or with %20) not yet supported.
2587  * warning issued when trying to open a file from the recent list, if the
2588    file does not exist anymore.
2589  * preference added scilabSingleQuotedStrings=yes/no
2590  * removed the unnecessary input argument to proc showopenwin
2591  * version --> 3.40
2592
2593 Francois VOGEL, 01/03/05
2594  * Directory dropping in Scipad now handled (opens all the files in it)
2595  * Wrong underline removed for >9 recent files in the file menu (hack)
2596  * version --> 3.39
2597
2598 ES, 1/3/2005
2599  * $winopened starts from 1 (i.e the first new buffer is Untitled1.sce)
2600  * scipad.sci takes care to close $pad.new1, not $pad.new0, when needed
2601  * found where to drop a magic update (top of mainwindow.tcl) which makes
2602    the initial buffer reactive to drag&drop under linux (and possibly 
2603    solves old obscure geometry problems related to the initial buffer)
2604  * proc openlistoffiles in filecommands.tcl removes the eventual
2605    prefix "file://" - needed for d&d in linux
2606  * version --> 3.38
2607
2608 Francois VOGEL, 27/02/05
2609  * Added a number in front of the recent files names.
2610  * version --> 3.37
2611
2612 Francois VOGEL, 26/02/05
2613  * The list of the 4 more recently opened/saved files is now available in
2614    the file menu for quick access.
2615  * version --> 3.36
2616
2617 Francois VOGEL, 24/02/05
2618  * New buffers are no more tagged as modified.
2619  * Trying to exec an empty buffer is catched.
2620  * Code rationalization:
2621      - replaced $pad.textarea by $pad.new$winopened
2622      - inccount, outccount, getccount become setmodified, unsetmodified,
2623        and getmodified
2624  * version --> 3.35
2625
2626 Francois VOGEL, 23/02/05
2627  * Few glitches correction about pruned file names.
2628  * New buffers are now tagged as modified (required changes in scipad.sci).
2629  * Trying to paste with button-2 when there is no selection does no more
2630    tag the buffer as modified.
2631  * Further drastic code cleaning. The only unclean file is now undoredo.tcl
2632    but this will be removed one day or another anyway to be replaced by the
2633    text widget undo/redo features.
2634  * version --> 3.34
2635
2636 Francois VOGEL, 21/02/05
2637  * Scipad now displays only pruned filenames (and full pathnames in
2638    case of ambiguity) in the titlebar and windows menu.
2639  * A lot of drastic code cleaning in filecommands.tcl, infomessages.tcl,
2640    buffernavigation.tcl, inputtext.tcl plus a few more around those files,
2641    rationalizing, suppressing old unused or duplicate procs, reindenting,
2642    removing superfluous comments but adding explanatory comments.
2643  * version --> 3.33
2644
2645 Francois VOGEL, 17/02/05
2646  * Drag'n'drop one or more files at once from the explorer to Scipad now
2647    works (opens the file(s)).
2648    Reference: TkDnD package - http://sourceforge.net/projects/tkdnd
2649    Possible absence of the package is catched (no warning issued).
2650  * version --> 3.32
2651
2652 Francois VOGEL, 16/02/05
2653  * Removed duplicate "Add/Change" in fr.msg and it.msg
2654  * Added strings in the message files
2655  * .ScipadPreferences.tcl is now saved in the home of Scilab
2656  * version --> 3.31
2657
2658 ES 16/02/05
2659  * indent/unindent supports a fixed arbitrary number of spaces, set by
2660    the preference variable indentspaces
2661  * localization to italian (proof of the concept)
2662  * typo corrected in fr.msg
2663  * fake ScilabEval also puts to stdout
2664  * version --> 3.30
2665
2666 Francois VOGEL, 16/02/05
2667  * Cosmetic: Aligned strings in the About box
2668              Translated message for fake ScilabEval
2669  * version --> 3.29
2670
2671 ES 15/2/05
2672  * added a void fallback definition of ScipadEval and sciprompt in scipad.tcl.
2673    This is useful for running scipad independently of scilab, e.g. in wish,
2674    in order to debug the tcl code.
2675  * void fallback chset(scilab.predef) and chset(scilab.libfun) in colorize.tcl
2676  * moved a few toplevel code lines from scipad.tcl to mainwindow.tcl and
2677    slighly reedited the latter
2678  * version --> 3.28
2679
2680 Francois VOGEL, 13/02/05
2681  * Some french menues underlines changed (were duplicates or unconvenient)
2682  * Menues/buttons underlines are now taken into account without if {$lang==
2683    Reference: http://wiki.tcl.tk/3665 (magic ampersand)
2684  * Some bindings changed in the Find and Replace dialogs. Bindings are now
2685    locale-independent, as well as shortcuts (accelerators in menues).
2686  * Select all is now binded to Ctrl+a instead of Ctrl+/
2687  * Open function source is now binded to Ctrl+/ instead of F8 (reserved for
2688    the debugger step by step commands) 
2689  * version --> 3.27
2690
2691 Francois VOGEL, 12/02/05
2692  * Bug 1203 corrected (darkred replaced by red for QTXTCOLOR to work on HP)
2693  * Implementation of message files using msgcat.
2694    Reference: http://wiki.tcl.tk/1488
2695    Note: Menues underlines are not yet translated, since they are not handled
2696          by the msgcat package. That's why some if {$lang=="eng"} are still
2697          in the code.
2698  * version --> 3.26
2699
2700 Francois VOGEL, 09/02/05
2701  * Debugger commands Run to cursor and Break are now temporarily disabled
2702    since parser issues in Scilab are not solved. Bugs 1086 and 1120 must
2703    be solved first. These commands can be quickly activated again for debug
2704    or development by setting dev_debug to "true" in db_init.tcl
2705  * version --> 3.25
2706
2707 ES 3/02/05
2708  * fixed colorization bug introduced with 3.22 (one char to the left
2709    too much colorized as keyword while typing)
2710  * fixed some tag range issues for the name of the function to be
2711    opened by mouseclick or menu command
2712  * catched the saving of the preference file, so no error is reported
2713    if it cannot be written
2714  * version 3.24
2715
2716 Francois VOGEL, 27/01/05
2717  * Bug corrected - Ctrl-x was still able to cut text in a locked buffer
2718  * version --> 3.23
2719
2720 ES 27/1/05
2721  * "open function source" added in the File menu, enabled if in case
2722  * corrected search for keywords in colorize.tcl, whichfun.tcl: scilab
2723    names ae not just words in the tcl sense, they can contain %#!?$
2724  * version --> 3.22
2725
2726 Francois VOGEL, 27/01/05
2727  * Bug corrected - When hitting return somewhere in the active breakpoint
2728    line, the related activebreakpoint tag was not updated
2729  * The buffer is now locked during a debug session, no changes allowed
2730  * version --> 3.21
2731
2732 ES 26/1/05
2733  * Ctrl-B1 clicking, or issuing F8 when the cursor is in a libfun
2734    opens the source file (via get_function_path()) of that libfun
2735    (undocumented yet, nor reported in a menu)
2736  * a nicer color for libfun
2737  * filename printed in the message "file is alread opened" 
2738  * version 3.20
2739
2740 ES 24/1/05
2741  * new tagging classes for scilab keywords: libfun and predef
2742  * keyword lists for them derived from scilab at launch time
2743  * file "words" purged of all the keywords in the two lists above
2744  * new colors for them
2745  * version --> 3.19
2746
2747 Francois VOGEL, 20/01/05
2748  * Added accelerator name on the watch window buttons tooltips
2749  * version --> 3.18
2750
2751 Francois VOGEL, 19/01/05
2752  * Strings containing slashes are now correctly handled in the watch window.
2753  * The watch variables area and/or the call stack area in the watch window
2754    can now be hidden/shown.
2755  * version --> 3.17
2756
2757 ES 13/1/2005
2758 * "Create help skeleton" warns about preexisting xml files. Messages
2759    there in french too.
2760
2761 ES 10/1/2005
2762 * proc execfile returns a value (0=success, 1 scilab busy, 2 cancel, -1 fail)
2763 * added new commands "Create help skeleton" and "Compile as a help page"
2764 * version -> 3.16
2765
2766 Francois VOGEL, 01/01/05
2767  * Improved proc scilaberror since I fixed bug 1091
2768  * Added automatic popup bubbles (balloons) displaying a help text when the mouse is
2769    over an icon of the watch window
2770  * Added Ctrl+a binding to select all the text in the current buffer (more common
2771    in Windows than Ctrl+/)
2772  * Added test in proc scilabexec, to cope with string length limits in C language
2773    (related to bug 885 correction I made in the Scilab core code). Now the selection
2774    to execute is displayed in the shell if and only if its length is less than 509
2775    characters. The full string is however passed for execution in the shell. If its
2776    length is greater than bsiz (currently 4096 chars), it is truncated in
2777    TK_ScilabCallback.c to avoid internal buffer overflow. In that case, the
2778    truncated string is executed and a warning is printed in the shell.
2779  * Added two new debug commands: "Run to cursor" and "Break". They are not yet
2780    working correctly due to bugs 1086 and 1120, and they should not be used.
2781  * version --> 3.15
2782
2783 ES 16/11/04
2784  * button-2 bound to the new proc button2copypaste - [almost] fixes
2785    the issue of importing external X selections into scipad
2786  * version --> 3.14 (and I resist from calling it pi)
2787
2788 ES 15/11/04:
2789  * added support for user preference file $env(HOME)/.SciPadPreferences.tcl,
2790    loaded at startup by defaults.tcl and saved on exit
2791  * wm geometry in strict pixels (avoids cross-session shrinking due to wm decorations
2792  * outside of Scipad: removed %scipad_fontsize from SCI/etc/scilab.start and 
2793    SCI/macros/util/scipad.sci: overridden by the user preferences file
2794  * version --> 3.13
2795
2796 Francois VOGEL, 10/11/04
2797  * Reworked reading of icons from disk. Resized icons independently of their original
2798    size (for display in a toolbar such as in the watch window). Same icons with further
2799    reduced size are now displayed in the debug menu. There is now an icon for each debug
2800    menu entry (thanks to ES for the design!)
2801  * Changed the order of the menues in the menubar.
2802  * Changed the order of the items in the help menu.
2803  * The watch window content is now updated instead of completely redrawn at a breakpoint
2804    stop.
2805  * Added ES' changes for addition of the Revert to saved command in the file menu.
2806  * version --> 3.12
2807
2808 Francois VOGEL, 04/11/04
2809  * Added debugger icons in the watch window as an initial attempt for having a toolbar.
2810  * Added same icon images in the debug menu.
2811  * Removed the workaround for bug 633 (workspace erased after aborting a callback) since
2812    this bug has been solved in the CVS.
2813  * version --> 3.11
2814
2815 ES 3/11/04:
2816  * the writable status of files which are opened is checked. [ReadOnly] is tagged 
2817    on the title bar. If a file is not writable (either because of an invalid path
2818    or because the file is readonly), a warning pops up, and Save translates to
2819    "Save as..."
2820  * version --> 3.10
2821
2822 Francois VOGEL, 01/11/04
2823  * Fixed further bug in proc updateactbreakpointtag. The first line of the function
2824    defined just after the function searched for could be tagged.
2825  * The insertion cursor is now positioned at the beginning of the active breakpoint on an
2826    update of its position. This is an option of proc updateactbreakpointtag.
2827  * Simplified the debugger. Start debug (CTRL-F11) and Go to next breakpoint (F11) merged
2828    into one single command.
2829  * Improved proc scilaberror following ES' suggestions
2830  * version --> 3.9
2831
2832 Francois VOGEL, 29/10/04
2833  * Fixed bug in proc updateactbreakpointtag. This proc could spit 'TK_EvalStr, bad text
2834    index "" at line 1' when launched from the Scilab command line by TK_EvalStr("scipad eval
2835    {updateactbreakpointtag 1 foo}"). This occurred when the commented word "function" was
2836    present in the buffer and function foo was not defined in that buffer.
2837  * version --> 3.8
2838
2839 Francois VOGEL, 27/10/04
2840  * Removed the workaround (i.e. the offset management) in proc updateactivebreakpoint
2841    since I corrected bug 1054.
2842  * FormatWhereForDebugWatch slightly improved to suppress display of the highest calling
2843    level, i.e. the ScilabEval call to the breakpointed function to debug.
2844  * Fixed bug: When the function to debug returned before the first breakpoint, the debugger
2845    state did not go back to "NoDebug". 
2846  * Line 1 of a function can now be tagged by proc updateactbreakpointtag.
2847  * version --> 3.7
2848
2849 Francois VOGEL, 21/10/04
2850  * Increased character size of the active breakpoint so that it is more visible.
2851  * Active breakpoint character size is now changed accordingly when other font sizes are
2852    changed.
2853  * Removed the extra spaces at the beginning of the seq/sync scilabevals since they are
2854    no more required.
2855  * Removed the checkscilabbusy tests between ScilabEvals in the debugger. Proc checkscilabbusy
2856    is no more bypassed where it is useful.
2857  * On trying to exec or to start debugging a file that contains an error reported by the
2858    shell, this error is now trapped by Scipad, a message box is displayed explaining the
2859    error, and the offending line is blinked in Scipad.
2860  * version --> 3.6
2861
2862 Francois VOGEL, 20/10/04
2863  * Work on proc updateactivebreakpoint and proc checkendofdebug_bp to take into account the
2864    additional level in the where() output due to the "seq" option of ScilabEval.
2865    There was a quirk for subroutines of the exec'ed function: for the main function, where()
2866    returns the line number just before the breakpoint, but for subfunctions it returns the
2867    exact line number of the breakpoint. Probably a Scilab bug, but Scipad implements a
2868    workaround. This is bug 1054.
2869    Note: FormatWhereForDebugWatch.sci could be slightly improved.
2870  * Implemented a workaround for bug 633 (workspace erased after abort of a callback). This
2871    was required to fix the command "Cancel debug".
2872  * Suppressed the temporary file getwatchcomm.sce and replaced by successive ScilabEvals.
2873  * Proc updateactbreakpointtag bullet-proofed against values of $activeline. Scipad hangs
2874    no more if $activeline is 0 or less, or greater than the length of $activemacro.
2875  * Now a debug session seems to work fully (tested on Windows only however). The main issue
2876    was that ScilabEval "sync" was called during a paused ScilabEval "seq". Currently, the
2877    user still has to hit the return key in the main Scilab window in order to launch execution
2878    of the ScilabEvals, but this is outside of Scipad.
2879  * version --> 3.5
2880
2881 Francois VOGEL, 17/10/04
2882  * If the number of leading spaces of a line was odd, then trying to unindent the selection
2883    until there is no space remaining did never remove the last space. This is now fixed
2884    (just changed "^  " into "^ {1,2}" in the regsub of proc UnIndenSel)
2885  * Keypress did not replace the selection after buffers were switched. This was due to the
2886    clearing of the X selection that was introduced to fix another bug (see above 16/04/2004).
2887    It is now fixed in proc nextbuffer and proc prevbuffer, but it required a trick since
2888    there is no "selection set" command in tcl. Solution used: the sel tag is well maintained
2889    inside different buffers. Therefore the selection is obtained using this tag and set
2890    again to that same range using that tag, which has the desired side effect of also
2891    setting the X selection.
2892  * Added option -anchor w in label statusind2 so that the line number in function can always
2893    be read, even if the function name is too long to fit in the (fixed) alloted space.
2894  * Added textquoted tag for Scilab text between simple quotes ('). Just duplicated portion
2895    of code dealing with double quotes (") in proc colorize. There is a side effect on some
2896    operations using more than one matrix transpose in a single line, such as A=B'+C', but
2897    this is believed to be less important than having the text strings properly colorized
2898    regardless of the quote type that sets its limits, since simple quotes are widely used
2899    in the current Scilab source code especially the oldest parts. Moreover, code lines such
2900    as mprintf("%s",'this is a function') breaks the line number counting in functions if
2901    not properly colorized as textquoted.
2902  * Fixed a bug in proc checkcontbraceorbracket: lines such as mprintf('['); were detected
2903    as continued lines, and that resulted in wrong line number in function displayed in
2904    statusind2. Now checkcontbraceorbracket checks whether the brace or bracket found is
2905    tagged as textquoted or not, which solves the issue.
2906  * Added a catch {} in bindings.tcl  and proc newfilebind to avoid error popup message in
2907    case listoffile("$textarea",language) has already been unset in proc byebye which is called
2908    on ctrl-w to close the current buffer. Proc keyposn uses this variable, and if byebye
2909    finished before or faster than the <KeyRelease> or <ButtonRelease> binding, an error
2910    occurred.
2911  * A bit of rework in proc ReplaceAll to account for the possibility that the user, without
2912    checking the Match case box, tries to replace a string S1 with a string S2 that is only
2913    different from S1 by the character case. This used to hang Scipad.
2914  * Moved scipad.tcl and words in scipadsources (and changed scipad.sci to reflect it).
2915  * Added the new "sync" and/or "seq" arguments to ScilabEvals whenever required
2916    To do (when situation is totally clear, and as soon as ScilabEval "seq" bug is fixed on
2917    Windows...):
2918     - remove the extra spaces at the beginning of the seq/sync scilabevals
2919     - remove the checkscilabbusy tests between ScilabEvals
2920     - suppress the temporary file getwatchcomm.sce and replace by successive ScilabEvals
2921       with adequate options - this is started but not yet mature
2922     - find out how to close bug #885 (send multiple ScilabEvals? what about continued lines?)
2923  * version --> 3.4
2924
2925 Francois VOGEL, 20/07/04
2926  * Removed file db_tagsmanagement.tcl from the distribution (was obsolete and never sourced)
2927  * Bug fixed: F9 during debug could unset the active breakpoint, but could not reset it
2928  * Improved visibility of the active breakpoint: added bold style and increased borderwidth
2929  * Relocated the mainlevel code of the debugger in a new db_init.tcl file
2930  * version --> 3.3
2931
2932 Francois VOGEL, 18/07/04
2933  * The debugger state is now reset to "NoDebug" on closing of buffers if there is no
2934    pre-existing configured execution (i.e. if the configure box is empty after the buffer
2935    is closed)
2936  * Changed shortcuts bindings of the debugger commands so that they apply to all the
2937    windows in Scipad rather than to the toplevel window only - Fixes possible problems of
2938    shortcut activation on some systems with specific focus management
2939  * Minor editing in words (keywords added, such as 'continue')
2940  * Scipad now starts from the path of the latest opened file when opening further files
2941  * Command "Display call stack" removed from the Debug menu. Instead, the call stack is
2942    automatically displayed in the watch window at each stop of the debugger.
2943    Note that this functionality requires that a Scilab bug in the where() function be fixed.
2944    where.f as provided under bug 908 (or even better, bug 922) correction should be used.
2945    This corrected where.f is part of the CVS since 3 August 04
2946  * Reworked display of the watch window: now this window is updated (and opened) on the
2947    screen only if it was already open (avoids undesired pop up)
2948  * version --> 3.2
2949
2950 Francois VOGEL, 07/07/04
2951  * simplified the use of the debugger: Scipad now maintains a state variable containing
2952    "NoDebug" (no debugger correct configuration performed nor debug session started),
2953    "ReadyForDebug" (debugger configuration performed OK but no debug session started), or
2954    "DebugInProgress" (debug session started, Scilab prompt is -1->)
2955    A schematic of the state machine is available in db_state.tcl
2956    This allows for the following improvements:
2957    - commands add/remove breakpoint and add/remove breakpoint during debug merged in the
2958      debug menu - Scipad now knows if the setbpt/delbpt should be sent or not
2959    - commands remove all breakpoints and remove all breakpoints in Scilab merged in the
2960      debug menu - selecting this now deletes all breakpoints both in Scipad and in Scilab
2961    - debug menu entries are disabled/enabled depending on the debugger state, so that the
2962      user should get less confused about the possible actions at any given time of the
2963      debug session (this copes also with colorization schemes)
2964    - if no debug session was initialized, the button-3 popup menu is the edit menu
2965      otherwise it is the debug menu - this is the 1st contextual menu in Scipad
2966    - the debugger state is made known to the user from the background color of the message
2967      area at the bottom of the Scipad window - for improved readability, messages are now
2968      displayed in black instead of blue
2969  * getf "FormatStringsForDebugWatch.sci" moved to db_states.tcl. If the user did not open
2970    the watch window before launching a debug session, this .sci file was not getf'ed in
2971    the right workspace and was therefore unknown later on during the debug session
2972    Note: putting a ScilabEval at the mainlevel (e.g. defaults.tcl) does not work!
2973  * exec getwatchcomm.sce is no more performed if unnecessary, i.e. if there is no watch
2974    variable defined by the user
2975  * added a binding to help fixing watch window repositioning that occurred sometimes
2976  * the watch variables changed by the user in the watch window are now correctly passed
2977    to Scilab (bug 818 in the resume function has been corrected in the CVS)
2978  * the debugger now handles correctly functions containing varargin as an input argument
2979  * incorporated some corrections from ES:
2980    - proc importmatlab corrected with quotes as mentioned in bug #856 (was also included
2981      in the CVS by the Scilab Team)
2982    - removed the # at line 3 of scipad.tcl, so that Scipad can again be launched directly
2983      in Unix shells
2984    - on Unix the cursor is always on again, regardless of the TCL/TK version
2985  * 'Remove all breakpoints' now removes the breakpoints in all the opened buffers
2986  * On start of a debug session, the currently displayed file is exec'ed. Now the buffer
2987    containing the function selected during the configuration phase is also exec'ed
2988  * Breakpoints sent to Scilab on start of a debug session are now collected through all
2989    the opened buffers, and removed accordingly in Scilab at the end of the debug session
2990  * When adding a new watch variable, its value is now immediately retrieved from Scilab,
2991    it is no more necessary to resume execution
2992  * incorporated Scilab Team's changes in the CVS Scipad:
2993    - changed 'Scilab Group' into 'Scilab Consortium' in the About window (proc aboutme)
2994    - added echo of the ScilabEval command in proc execfile from ScilabExec.tcl whatever
2995      the platform (and changed the disp into a mprintf - saves space in the shell!)
2996  * added int16, int32, uint8, uint16, uint32 in file "words"
2997  * proc load_words now closes the file "words" after having read it
2998  * active breakpoint tagging dramatically improved:
2999    - corrected active breakpoint tag when breakpoint is in conditional structure (for,
3000      while, or anything else)
3001    - works now with sub-functions or other nested structures containing breakpoints
3002    - displays the correct buffer (if already opened), i.e. the buffer where the active
3003      breakpoint lies
3004  * When the watch window was open at the same time the user configured execution in the
3005    configure box, the next time the Add button was hit in the watch window an error poped
3006    out. This is now fixed
3007  * version --> 3.1
3008
3009 Francois VOGEL, 17/06/04
3010  * added quotes in the getf FormatStringsForDebugWatch so that it sleeps with paths
3011    containing spaces
3012  * active breakpoint is now displayed in raised relief instead of underlined (nicer)
3013  * improvements in FormatStringsForDebugWatch:
3014    - upgraded to full support for:
3015      . polynomial matrices       (type= 2)
3016      . integer matrices          (type= 8)
3017      . character string matrices (type=10)
3018    - added full support of:
3019      . sparse matrices         (type= 5)
3020      . boolean sparse matrices (type= 6)
3021      . lists                   (type=15)
3022      . tlists                  (type=16)
3023      . mlists                  (type=17)
3024  * the .sce file built by Scipad and containing the watch variable retrieving commands
3025    is now saved in TMPDIR instead of in SCI/tcl/scipadsources - should better cope with
3026    file permissions that way. TMPDIR is set for Scipad in scipad.sci
3027  * splitted debugger.tcl in several sub-files to ease maintainability
3028  * version --> 3.0 (submitted to the Scilab team under bug #559). This is the version
3029    included in Scilab 3.0, but the debugger menu is hidden in the distribution (shortcuts
3030    do work however)
3031
3032 ES, 17/06/04
3033  * bugs corrected in filecommands.tcl/proposedname: for buffers containing
3034    more than one function the proposed name is the first found, for buffers
3035    containing no functions it remains the original one
3036  * bug corrected in filecommands.tcl/openfile - the field listoffile($,new)
3037    was not set
3038  * enforced the use of fullpath in proc filecommands.tcl/lookiffileisopen
3039  * common code for file types in procs filesaveas and showopenwin moved to
3040    new proc knowntypes
3041  * end-of-line homogeneously translated to unix (was mixed in several files)
3042  * incorporated FV's correction to colorize.tcl mentioned in bug #749
3043  * version --> 2.7.1
3044
3045 Francois VOGEL, 14/06/04
3046  * the buffer is no more reported as modified if one paste from an empty clipboard
3047  * relocated the mainlevel code of debugger.tcl in defaults.tcl
3048  * fixed shrinking of the watch window in some cases
3049  * .tst and .dem files get now colorized as .sci/.sce files
3050  * debugger watch window: improved retrieval of the Scilab variables from Scipad:
3051    - string(var) is no more used in creategetfromshellcomm but replaced by
3052      FormatStringsForDebugWatch(var). This is a new Scilab command that is now part
3053      of the Scipad package in SCI/tcl/scipadsources. This function is getf'd on
3054      invoking the watch window
3055    - the commands are no more passed directly to ScilabEval, but rather through
3056      a .sce file built by Scipad and saved in SCI/tcl/scipadsources. This overcomes
3057      any limitation in characters number of the Scilab command line
3058  * saving a buffer for the first time, the proposed name is now the first function
3059    name found in the buffer
3060  * version --> 2.7
3061
3062 ES, 13/6/04
3063 *restructured the hyerarchy of the source files, for future maintainability.
3064  Now scipad.tcl loads first sources which define procs only, then files
3065  which contain main level code only. This should help a lot in avoiding
3066  interdependencies and feedback within the whole code.
3067  In particular: mainlevel code in textarea.tcl moved in mainwindow.tcl
3068         and menues.tcl;
3069       procs in mainwindow.tcl moved into textarea.tcl;
3070       proc schememenus in menues.tcl moved to colorize.tcl;
3071       proc extractindexfromlabel in menues.tcl moved to filecommands.tcl;
3072       mainlevel code from infomessages.tcl to mainwindow.tcl;
3073       mainlevel code from undoredo.tcl to mainwindow.tcl;
3074       (TO DO: relocate also the mainlevel code of debugger.tcl)
3075 *filecommands.tcl restructured: detabbed, common code in subprocs; some calls
3076  to extractindexoflabel replaced by simpler lookiffileisopen; proc byebye
3077  extracted from proc closefile
3078 *infomessages.tcl: replaced entry objects with labels (same behavior in tcl 
3079  8.3 and 8.4); column numbers shown by keyposn start at 1
3080 *hopefully, scipad now remembers correctly the window geometry upon
3081  closing/reopening (in RH9/gnome, there is still a quirk - the height decreases
3082  by 2 gridlines at every reopening, but it is probably a WM quirk in 
3083  repositioning the window) 
3084 *detabbed colorize.tcl
3085 *proc setfontscipad (mainwindow.tcl) reports on the statusmessage and 
3086  resizes also menu entries and status labels (TO DO: also subwindows
3087  like file dialogs, Find,... inherit the current font size)
3088 *systematically replaced [gettextareacur] with $textareacur in cutcopypaste.tcl
3089  (rationalization)
3090 *proc helpword improved - trims white space, does not open help if the 
3091  selection includes only spaces
3092 *hopefully, colorization of scilab buffers with extended chars does not hang
3093  anymore (the bug was platform-dependent)  
3094 *version --> 2.6
3095
3096
3097 Francois VOGEL, 07/06/04
3098  * added support of special filenames such as those that evaluate to zero, or
3099    those that evaluate to an index keyword of the menu widget. Any file name is
3100    now legal
3101  * reworked the debugger to add the watch window. This should still be improved:
3102    - <TODO>: pass to Scilab the watch variables changed by the user in the watch
3103      window (this relies on the correction of a bug in the resume function, see
3104      bug 818)
3105    - <TODO>: improve retrieval of the Scilab variables from Scipad:
3106      . since the length of the command line is limited to ca 500 characters on
3107        the 3.0 CVS version (June'04)
3108      . since part of the information is lost by the current implementation if
3109        string(var) returns a string matrix and not a single string
3110  * reindented full cutcopypaste.tcl, and part of inputtext.tcl, getting rid of tabs
3111  * improved test of the selection owner in deletetext, backspacetext and puttext
3112    (see bug 723)
3113  * removed a superfluous test and many globals in all the procs of cutcopypaste.tcl
3114    note: the code in cutcopypaste.tcl requires improvement as it is inefficient
3115  * version --> 2.5
3116
3117 ES, 2/6/04
3118 * version 2.4.2
3119 * proc execselection disp's an echo only for unix - because in windows the
3120   command is sent to the history, and there is no need. I do not know about
3121   mac.
3122 * editing in words: removed demos, graph-list, ScilabEval, Example, 
3123   AdCommunication; added xmltohtml, all the variables output by who at startup
3124 * replaced tabs with spaces in filecommands.tcl; added a few [] and ""
3125   which allow openfile to open numeric filenames (except for 0, which
3126   triggers still some other bug)
3127 * removed seminal listoffile(,language) tests in debugger.tcl, no longer
3128   needed
3129 * bug corrected in  whichfun.tcl/proc checkcontbraceorbracket: check for
3130   $ind2=={}, whose omission gave an error when typing [ or { within function
3131   bodies
3132
3133 ES, 30/5/2004
3134 * version -> 2.4.1 
3135 * reverted the Options menu as in 2.3
3136 * underlines for language schemes
3137 * Execute/Load is disabled for non-scilab files
3138 * proc schememenus sets/deletes bindings
3139 * proc whichfun always returns "" for non-scilab
3140 * less color for the "none" and "xml" schemes (no punctuation, no operators)
3141 * added % to scichset if proc colorize - corrects colorization of %variables
3142
3143 Francois VOGEL, 27/05/04
3144  * Debug menu is disabled in non-scilab mode
3145  * F9 doesn't pink lines any more if in non-scilab mode (partially done)
3146  * Options/Font size and Options/Language scheme are now submenus in cascade
3147  * version --> 2.4
3148
3149 ES 27/5/2004
3150 * split scipad.tcl in several sourcefiles, buried in the directory scipadsources. The
3151   distribution now includes: $SCI/scipad.tcl, $SCI/words, $SCI/scipadsources/*
3152 * buffer dependent colorization: scilab/xml/none: added field listoffile($,language)
3153   in the relevant places, override colorization entries in menu Options, extension-based
3154   automatic selection when opening files; no line-in-function displayed in non-scilab
3155   mode (TO DO: disabling menues in non-scilab mode)
3156 * minor editing in words: removed scilab, added macr2tree, tree2code, getcwd
3157 * version --> 2.3
3158
3159 Francois VOGEL, 21/05/04
3160  * fixed expose binding issue (100% CPU and edge blinking when find dialog was open)
3161  * solved bug that occurred when trying to input an argument of a function when the
3162    listbox was empty
3163  * improved proc whichfun to treat some pathological cases:
3164    - comments ended by ...
3165    - continued lines without ... (therefore, check for unmatched brackets and braces
3166      on any single line)
3167    - also corrected slight bugs in that proc, but it is still not perfect
3168  * added a second status indicator to display line number in function at the bottom
3169    of the pad instead of displaying that information in the message area
3170  * version --> 2.2
3171
3172 Francois VOGEL, 18/05/04
3173  * closing the find dialog using the cross at the upper right corner does not
3174    produce an error any more (patch provided by ES)
3175  * added display of the line number in function in the status bar (provided by ES)
3176    note: this required moving proc whichfun before proc keyposn
3177  * removed \n in ScilabEval as this hangs unix versions and does not cure the
3178    loosing of first characters. Added 5 leading spaces trying to limit the issue.
3179  * added quotes around strings tested in if conditions (used to hang unix versions)
3180  * debug commands now check if scilab is busy before sending commands to scilab
3181    shell
3182  * version --> 2.1
3183
3184 Francois VOGEL, 13/05/04
3185  * breakpoint and debug tools added - type help scipad in Scilab for detailed
3186    explanations
3187    Note: matsys.f as provided under bug 718 correction should be used
3188  * proc whichfun now can search in a buffer different from the current one (used
3189    for breakpoint stuff)
3190  * Find/Replace now can use a regexp mode
3191  * cosmetic: replaced tab indents by 4 spaces in the code (e.g. in proc findtext)
3192    Please use spaces instead of tabs for further updates of the code!
3193  * cosmetic: harmonised accelerator names through menus (e.g. ctrl-x changed to
3194    ctrl+x)
3195  * rearranged bindings in find/replace dialogs - were not always consistent with
3196    the underlines, especially for the french dialog
3197  * cursor blinks only if tk version is >= 8.4
3198  * message at the bottom of the Scipad window is cleared when colorization ends
3199  * bugzilla bug 723 corrected - an error poped when trying to write text in
3200    Scipad when a selection was active in another tcl/tk application such as the
3201    Scilab help
3202  * version --> 2.0
3203
3204 Francois VOGEL, 21/04/2004
3205  * fixed size/position bug of sliders when switching buffers or opening a new file
3206  * corrected minor typos in french texts, added french text where was missing
3207  * restored cursor blinking as I could not make it disappear any more while
3208    moving it with the arrows - was probably a tcl bug, seems to work with 8.4.6
3209  * many improvements in find/replace/replaceall:
3210      - added forward and backward automatic wrap-around
3211      - added message box in case of no match found
3212      - added message box in case of find or replace with an empty string
3213      - if text is selected, find or replace occurs inside that selection (for find,
3214        if not found, then asks for extending the search to the entire buffer)
3215      - starting from a saved file, doing stuff and then undoing all changes does
3216        not report the file as modified any more
3217  * added Ctrl-F6 (prevbuffer) and Ctrl-F7 (nextbuffer) bindings
3218
3219 19/4/2004
3220  * added "Import matlab file..."
3221  * version --> 1.3
3222  * switchbuffer --> prevbuffer (F6) and nextbuffer (F7); bug corrected, wrong 
3223    buffer when one or more previously open buffers were closed
3224  * added bindings Ctrl-+/- to increase/decrease fontsize
3225
3226 Francois VOGEL, 16/04/2004
3227  * fixed silent clearing of selection in one buffer that occurred when another
3228    buffer was modified
3229  * added Ctrl-F6 binding and proc switchbuffer to switch opened buffers
3230  * fixed bug that occurred when a copy-paste modification on a buffer was
3231    undone once too much (a "lifo($id) pop error, empty" resulted)
3232
3233 30/2/2004
3234  * fixed remalltags for textquoted and rem2 (i.e., lines with "aaa//bbb",
3235     "123456", //123 etc. should be colorized consistently 
3236  * comment/uncomment, indent/unindent applies to the current line 
3237     if unselected
3238
3239 15/2/2004
3240  * file dialogs for "all files" show also * files 
3241
3242 4/1/2004
3243  * bug fixed - to interfering bindings from Ctrl-v caused no or double paste.
3244  * removed some "particular" bindings for Ctrl-c/v/x and transformed them
3245    to All or Text: copy paste works better in find and filename dialogs
3246  * fixed Ctrl-y bind, does not paste selection surretptitiously
3247  * cursor position info (keyposn) updated when switching buffers
3248
3249 28/12/2003
3250  * added IndentSel, UnIndentSel (plain \s\s, no smart logical indent)
3251  * little deglitch in CommentSel, UncommentSel
3252  * rationalization of Alt-x-x keyboard menu activations
3253  * fixed Ctrl-w cut selection AND close window
3254  * text pasted with Button-2 is colorized
3255
3256 around november: made colorization TIMES faster, by scanning only to
3257  wordend (not end-of-text) for scilab keywords in proc colorize.
3258
3259 27/10/2003
3260  * proc helpword
3261  * message "file NNNN saved"
3262
3263 ES 21/10/2003
3264  * added font micro (ok on my laptop)
3265  * rationalized setfontscipad procedures, font size changes also menu fonts
3266  * accelerator F2=Save
3267  * added catch to delinfo in proc showinfo - prevents a "missing variable
3268    .pad" which appears ocasionally on reopening
3269
3270 ES 19/10/2003
3271  * F5 Save and Run
3272  * cosmetic - compacted the command passed and displayed by execselection
3273  * pad remembers its geometry when quitting/reopening 
3274  * moved option stuff (colors, fontsize, geometry) at the top -- later I might
3275    add that it is read from an options file
3276  * the background color of found text is $SELCOLOR, as selection
3277  * bug fixed: missing $textarea when printing with Ctrl-p
3278
3279 ES 9/10/2003
3280  * corrected bad continued line "Annuler"
3281  * progress in whichfun, execselection, etc. 
3282
3283 ES 2/10/2003
3284  * $pad.statusind goes Salmon when the buffer is modified
3285  * splitted long lines in the code for improved readability
3286  * the popup menu doesn't pop on the bottom bar
3287  * bug fixed: upon closing a buffer, the radiobutton of the one previously
3288     opened (which becomes the current buffer) was not correctly checked
3289  * shift-button3 and ctrl-button3 popup execute and options
3290  * bug fixed: search and replace strings can begin with "-"
3291  * copytext doesn't tag the buffer as modified
3292  * glitch corrected: //..."string"... is all colorized as comment, "...//..."
3293     as string
3294  * glitch corrected: gotoline didn't scroll to make the target line visible
3295  * begun proc whichfun
3296
3297 ES 25/9/2003
3298  *the code is now free of TKSetCursor's (even in FindIt)
3299  *restored default mouseclicks actions (double-1=select word, triple-1=select 
3300    line, 2=paste sel) 
3301  *deglitched "\n//" in comment selection and restore selection in uncomment 
3302    (not yet 100.0% ok)
3303  *selection remains on after copytext
3304  *accelerator Ctrl-Z for Undo (more standard)
3305  *accelerator F1 for About
3306  *Help opens the scipad page in the helpbrowser
3307  *version -> 1.2
3308  *button3 popsup the edit menu (not so useful but why not - perhaps in future 
3309    I'll replace it with a tailored menu)
3310  *"(modified)" appears on the titlebar, and the corresponding entry in the 
3311    windows menu is colored (and of course things are reverted to normal when
3312     the buffer is saved)
3313  *translated to french (!!?) some "file already open"
3314  *created the Execute menu; added the command execute selection and its 
3315    accelerator Ctrl-y (inherits problems from ScilabEval/execstr() - most 
3316    dangerous problem, goes amok when the selection contains a function without
3317    endfunction) -- glitch: splits quoted strings containing // as if // starts
3318    a comment
3319  *bug solved: Esc or Ctrl-c on a find/replace dialog used to hang scipad
3320  *copy/paste (Ctrl-{c,v}) possible on find/replace strings [but not cut nor 
3321    replace-paste --why?]
3322
3323 ES 18/9/2003
3324  *changed $Size to Size in the option menu entries - the correct radiobutton  
3325    is tagged at startup
3326  *commented destroy $textarea in proc closefile - seems to solve the shrink
3327    bug (if the initial Untitled.sce is closed, then the next setfontscipadN,
3328    openfile,newfile command causes the window to shrink to its minimal size).
3329     Not sure it is the right thing to do. The bug is cured and the only 
3330    apparent side effect is that the window does not resize upon font change
3331    (was never exact anyway) 
3332  *fixed tagging of radiobuttons in the windows menu when files are closed 
3333  *added comment selection command (glitch - adds // after the last newline 
3334   also when the selection ends there)
3335  *added uncomment selection command (glitch - removes also the white space 
3336   between beginning of line and //)
3337
3338 ES 11/9/2003
3339  closing/reopening scipad remembers previous font size
3340  cursor doesn't disappear any more (it used to every second keypress or so or 
3341   mouse move)
3342  cursor is red
3343  cursor is positioned at 1.1 when opening an existing file 
3344
3345 ES 4/9/2003
3346  * added colorization pattern for "number"; separated pattern "xmltag" from 
3347    "rem2";
3348  * xmltags colorized only if filename contains ".xml"
3349  *corrected bug - scipad(newfilename) began in an unnamed buffer
3350    [connected in scipad.sci: scipad(filename) does not open an additional 
3351    "Untitled.sce"]
3352
3353  ES 28/7/2003: 
3354  changed text font from helvetica bold to courier medium
3355  added accelerators Ctrl-w, Ctrl-n, Ctrl-q, Ctrl-p, Ctrl-P, Ctrl-S, Ctrl-g; 
3356   Alt-L
3357  fixed "unset pad" in closewin rather than exitapp - fixes a bug apparent when
3358    exiting scipad by closing the last active buffer and trying to relaunch it
3359  colorization: added "punct", "operator"; changed colors of the colorization
3360  corrected "parencesis" in blinkbrace - fixes highlighting of ()
3361  "Scilab specials" in colorize -- added code to distinguish {} [], () from ;: 
3362  [external but connected: new list of keywords "words"]
3363
3364  modified by Matthieu PHILIPPE 03/01/2002
3365  added
3366  - Number line
3367  - Goto Line
3368  - Higlighting Braces
3369  - Some Keys and Words Binding
3370  - Colorization for Scilab syntaxes
3371  - Recolorization of a cuted and pasted text
3372  - Multiple opened files.
3373
3374  Tk NotePad by Joseph Acosta
3375  modified by Matthieu PHILIPPE 01/01/2003
3376  Some bug corrected
3377  - cut/paste with ctrl-x/ctrl-v
3378  - select then unselect then type any key doesn't crash scipad any more !
3379