Fri 01 Apr 2005 10:09:26 PM SAST * coolnext.c: uninitialized xevent in CSendEvent. possibly causing crash on Xeon systems. Changes for 64-bit fix. Thanks to Curtis W. Rendon from Dell for help. Sat Nov 27 10:15:41 2004 * coolnext.c: small but serious bug found after years and years in run_callbacks - these callbacks could free a widget. fixed. thanks to valgrind. Thu Nov 18 20:37:43 2004 * valgrind audits, small memleak fixes. * fixed process die problem which causes Print to block forever. Sat Oct 16 11:04:39 2004 * Column highlight copy sometimes restricts action - fixed. * Syntax rules - all now checked and best match for file type chosen. * See NEWS for 3.17 * Updated to latest version of automake, autoconf, aclocal, libtool. 2004-10-10 gettextize * Makefile.am (SUBDIRS): Remove intl. * configure.in (AC_OUTPUT): Remove intl/Makefile. (AC_OUTPUT): Remove command that created po/Makefile. (AC_LINK_FILES): Remove invocation. Sun Jul 25 14:30:57 2004 * icon/*.c: removed from distribution. * syntax.c: checking if ispell is ok, uses aspell as first preference. * debug.c: more heuristics * shell.c, initapp.c: signal handling to cope with HP-UX wierdness. * shell.c: array bounds error causes SEGFAULT, fixed. * configure.in, Makefile.am: Xlib libraries fixed. * rxbtlib.c: ANSI fixes. Sat Aug 3 13:15:18 2002 * editcmd.c: edit_insert_column_of_text has infinite loop if block of text is copied past the end of the buffer. * coolnext.c: valgrind error: MotionNotify looks at xbutton instead of xmotion. * mousemark.c: mousing behavior fixed - incorrect interpretation of button release with control key pressed. Fri Aug 2 22:17:52 2002 * fieldedtextbox.c, propfont.c: valgrind finding - reading uninitialized memory - fixed. Fri Aug 2 22:16:34 2002 Pavel Roskin * edit.c: valgrind finding - edit_push_action reads uninitialized memory - fixed. * syntax.c (apply_rules_going_right): Recheck keyword rules when a keyword is found on the left border of a context. Sun Jun 2 21:10:04 2002 * pathdup.c: fixed bug with canonicalization. * coolnext.c, initapp.c: moved alarm routing out of interrupt - its dangerous anyhow. * Makefile*: FHS compliance * syntax.c: Added more syntax file. * xim.c: It seems that key repeats on very slow machines produce weird behaviour - pressing different keys fast inserts the previous character typed. I.e. it does not queue pending key presses well. I think I've fixed this. * configure.in: support for all Python versions; Python 2.1 etc. * configure.in: upgrade to new versions: # autoconf --version ; automake --version ; libtool --version ; gettext --version autoconf (GNU Autoconf) 2.53 Written by David J. MacKenzie and Akim Demaille. Copyright 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. automake (GNU automake) 1.6.1 Written by Tom Tromey . Copyright 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ltmain.sh (GNU libtool) 1.4.2 (1.922.2.53 2001/09/11 03:18:52) gettext (GNU gettext) 0.11.2 Copyright (C) 1995-1997, 2000-2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by Ulrich Drepper. * focus.c: new option option_never_raise_wm_windows. * coolnext.c: support ATOM_WM_TAKE_FOCUS 2002-06-02 gettextize * Makefile.am (SUBDIRS): Add m4. (ACLOCAL_AMFLAGS): New variable. (EXTRA_DIST): New variable. * configure.in (AC_OUTPUT): Add m4/Makefile. (AC_OUTPUT): Remove intl/intlh.inst. (AC_OUTPUT): Remove command that created po/Makefile. (AC_LINK_FILES): Remove invocation. Sat Oct 27 19:00:42 2001 Paul Sheer * editdraw.c: status line now files as much of the bottom of the window as possible to see more of the file name. Fri Oct 26 17:01:38 2001 Peter Danziger * debug.c: > > Hi, There appears to be a bug with cooledit and gdb 5.0. When you run the > > debugger cooledit seg faults. The good news is that I have written a fix. > > The reason for this bug is that gdb 5.0 doesn't issue the string "Pid" on > > info program, instead it says "process". Thus the fix is very simple, [...] Sat Feb 17 10:46:15 2001 Paul Sheer * wordproc.c: push (and pop) editor font for this action. (since we should be calculating line lengths based on editor font widths). Mon Feb 12 10:51:47 2001 Konstantin Zamyatin * xim.c: (wish people would tell me about these things - paul) If I have right configured XKB then cooledit won't input cyrillic letters. just now I found some patch that solves this problem (on linux.iplab.ru) why not to include it in official version? would be cool Sun Feb 11 21:19:59 2001 David Chan * perl.syntax, xml.syntax: Hi, Here's a version of perl.syntax with a few changes. All the changes are at the end, after the default context has finished. - Plain Old Documentation (=pod ... =cut) didn't work before - fixed. - As well as <{$b + $c}, but it fails gracefully and never gobbles the close-quote. Many thanks, David -- Lbh unir gbb zhpu serr gvzr. Hi, I managed to be stupid enough to forget to attach the perl.syntax file. . Here it is. Also attached is an xml syntax highlighting file. It should be included in the Syntax file like this: file ..\*\\.(xml|XML)$ XML\sFile * debug.c: fixed incorrect parsing of process id. * dialog.c: fixed bad name for dialog causing crash when hitting Ctrl-A inside an input widget. * inputwidget.c: fixed bad size calculations caused infinite loop on very small input widgets. * rxvtlib_command.c: fixed tty line problem that was causing a crash when starting debugging on some systems. Fixed memory leak. Sat Jan 27 01:16:24 2001 Paul Sheer * cooledit.c: removed Obsidian promotional message in hints. Fri Jan 26 22:26:30 2001 Paul Sheer * edit.c, initapp.c: nfs reads short - causes files to read corrupted from network mounted filesystems. fixed. child exit list fills after time. fixed. * print.c: problem with print jobs getting lost fixed. Mon Sep 4 17:41:53 2000 Norbert Nemec * coolnext.c: take out if (!n) return; from run_watches. This prevents cooledit using 100% CPU if ConnectionNumber is in fact zero! Mon Sep 4 12:38:13 2000 Paul Sheer * editdraw.c: abnormal chars showed in different colour previously a black background on black. Now checks to ensure background are different. Tue Aug 29 14:53:53 2000 Paul Sheer * initapp.c, cooledit.c, options.c: added colour-space transform options. --chromin-invert etc. Wed Aug 16 18:32:35 2000 Paul Sheer * shell.c, editwidget.c: status input of shell commands to pipe through editor. Invoke with Escape. * initapp.c: generic child handling facility created to replace old signal() and waitpid() interface. * coolnext.c: disabled tool hints while the menu is grabbed - they seem to be interfering with behaviour and i'm too lazy to figure out why. Mon Aug 14 16:21:46 2000 Paul Sheer * debug.c: verified support for gdb 5.0 * coolnext.c: problem with watches fixed. Should make gdb interface more stable as well. * dialog.c: some dialog response errors introduced by the look stuff fixed. Sun Aug 13 17:57:56 2000 Paul Sheer * wordproc.c: new format only within selected region if a region is selected. * debug.c: gdb zombie processes hanging around - fixed. Sat Aug 12 19:31:22 2000 Paul Sheer * menu.c: fixed silly menu grab bug. Sat Aug 12 18:44:16 2000 Paul Sheer * look-gtk.c: bevels on input widgets fixed. * look-gtk.c: dark on button pressed fixed. * menu.c, coolnext.c: major hack to get menu behaviour right has been removed. Menu dropping/grabbing now correct. Thu Aug 10 22:40:39 2000 Paul Sheer * coolnext.c: eh_button(): display bugs fixed. * menu.c: util menu staying up fixed. Thu Aug 10 19:54:35 2000 Paul Sheer * editcmd.c: paragraph indent mode bug fixed. Thu Aug 10 18:40:44 2000 Paul Sheer * look-cool.c, look-gtk.c, look-next.c: different looks separated into these three files. * initapp.c: Defaults to GTK look. * cooledit.c: --look option added. *.[ch]: myriad changes to separate looks out of code. Thu Aug 10 18:40:44 2000 Paul Sheer * cooleditmenus.c: C-i incorrect for unicode: actually M-i fixed. * filebrowser.c: now remembers its height also. Tue Aug 8 19:18:50 2000 Paul Sheer * rxvtlib_screen.c, editwidget.c, xdnd.c: INCR support (for pastes from Gtk and Tk). Mon Jul 24 18:33:37 2000 Paul Sheer * edit.c, editcmd.c: left and right shifting of block of text with Shift-F6/F16. * filebrowser.c: file dialog now remembers its size. Sun Jul 23 00:01:50 2000 Paul Sheer * cooledit.c: back to enabling key release events. This should fix some focus changing problems. * configure.in: reorder -lm for linking. Sun Jun 25 12:03:58 2000 Paul Sheer * rxvt.c: internal rxvt started with the +sk option - does it work? * syntax.c: new syntax definitions: BAssPasC Program Macro-HTML Source Java Assembly from the ESP Team's Advanced Midnight Commander: http://esp-team.scene.hu/ * aafont.c: fixed cooledit failing on non-truecolour displays. Tue Jun 13 15:33:19 2000 Paul Sheer * *.[ch]: include X11/Intrinsic.h everywhere to check if (XtSpecificationRelease >= 6) then USE_XIM, else don't. Sun Jun 11 16:11:08 2000 Paul Sheer * initapp.c, option.c: can now set colour rgb values in .cooledit.ini file. * cooledit.c: --edit-bg convenience option. Thu Jun 8 00:28:36 2000 Paul Sheer * widechar.c: check for HAVE_WCHAR_H before using mbrtowc or others. Thu Jun 8 00:10:05 2000 Paul Sheer * coolnext.c: XIM still not working - added CGetIMFocus() to redirect to proper window. This could forseeably be the end to XIM woes. * coolnext.c: toolhints still using XDrawString - fixed for displaying aa fonts. Wed Jun 7 02:18:32 2000 Paul Sheer * font.c, cooledit.c: changes format to fontname/3 for anti-aliased fonts; removed --anti-alias option. Wed Jun 7 01:18:31 2000 Paul Sheer * edit.c: fixed reading from gzip and bzip2 pipes, which gives error - in short, avoid used popen for reading ???. Tue Jun 6 16:11:55 2000 Paul Sheer * font.c, xim.c: no less than three bugs were causing xim (dead key composing) to fail. * no_repeat_call was failing causing XLookupString to look up several times for one key press. * extraneous check of locale removed in xim.c * dummy font set loaded in case editor font is not support - eg unicode fonts. * debug.c: breakpoints not appearing without refresh - fixed. Sun Jun 4 16:15:02 2000 Paul Sheer * aafont.c: check that ClassOfVisual is in fact TrueColor. * cooledit.c, coolwidget.h: XSelectInput without key releases. This allows x key composing to actually work. Unfortunately, now the menu doesn't pull up on key release. To get around this, we dynamically change the X input whenever using doing a CK_Cycle, then switch it back when the cycle control key gets released *sigh*. Sun Jun 4 01:50:52 2000 Paul Sheer * aafont.c, aafont.h, font.c: Anti-aliased font support added. This is for editor font only. * font.c: font_set = 0 for debugging left in code by mistake. fixed. * editdraw.c: bounds check on expose. Wed May 31 15:22:19 2000 Paul Sheer * widechar.c: errors with utf8 off - fixed. * edit.c: infinite loop in backspace. * unicodedialog.c: double click response added Sun May 28 18:20:31 2000 Paul Sheer * protfont.c, edit.c, widechar.c: Added unicode display support. * unicodedialog.c: added unicode selector to insert Unicode characters. * cooleditmenu.c: added menu for unicode dialog. * propfont.c: fixed hyphen display in man page browser. * propfont.c: crude right to left display of hebrew. * cooledit.c: -utf8 and --no-fontset options added. Sun May 21 18:24:45 2000 Paul Sheer * rxvt/*, rxvt/rxvtlib_main.c, etc.: applied patches for rxvt-2.6.2. * rxvtlib.h, rxvtlib_*.[ch]: NeXT look scrollbar working. * postscript.c: fixed ansi violiations. * postscript.c: fixed tab->space expansion. * edit.h, coolnext.c, etc.: fixed ansi violations. Mon Apr 24 11:44:17 2000 Paul Sheer * coolicon.c: fixed bug where hourglass doesn't disappear. fixed edit script display bug. fixed menu disappearing bug. Sat Apr 22 12:46:05 2000 Paul Sheer * perl.syntax: perl syntax highlighting for regular expressions: actually just `keyword whole s/*/*/\[egimosx\]' (and others) -- causes perl syntax highlighting to screw up a lot less often. * edit.c: replace selected text on type, backspace and delete. * options.c: don't remember display name. * latex.syntax: $$, \\begin{lstlisting} contexts added. %% is not a keyword - fixed. All the bracketing stuff is removed. The LaTeX file is now SIMPLE and much cleaner. * *.c, stringtools.c: va_arg (ap, char/short) not allowed in ansi - fixed. * configure.in: -lsocket for solaris (untested). * mudela.syntax: added syntax highlighting for GNU Lilypond musical definition language. * menu.c, coolnext.c: odd behaviour with menu. menus used to pull up if the focus changed to another app to avoid having a menu hanging around on your screen. Of course some wm's (sawmill) have the absurd behaviour of focusing on whatever is underneath the pointer. See `if ((pulled_menu = get_pulled_menu ()))' in coolnext.c for the fix. * edit_key_translator.c: probable fix for some keys reported not printing -- seems that isprint() is not the definitive function - now we use `if (isprint (x_key) || (x_key >= 0x020 && x_key <= 0x0ff))' Sat Apr 22 12:46:05 2000 Matej Knopp * coolnext.c, edit_key_translator.c, international.c: iso8859-2 support Sun Mar 26 16:46:47 2000 Paul Sheer * xdnd.c, xdnd.h: I finally got around to supporting XDND version 3. Now of course this means that there would have to be a version 4 on the web page (oh, well, at least its backward compatable). * cooledit.c: added Obsidian promotional message in hints. Fri Mar 10 13:22:09 2000 Paul Sheer * cooledit.c: de_DE language setting accidentally left in. Corrected. Sat Mar 4 18:25:20 2000 Paul Sheer * configure: changed so that --with-included-gettext is default. * cooledit.spec: removed Distribution:... and Contrib|Net from spec file, since these don't exist any more. Sat Mar 4 16:04:14 2000 Paul Sheer * rxvtlib.h, rxvtlib_*.[ch]: replace all (u_)?int(16|32)_t with int, unsigned int, short or unsigned short, as appropriate. This should fix the solaris build problem reported by Ross Campbell . Sun Feb 27 13:08:45 2000 Paul Sheer * edit.c, rxvt.c, rxvt_command.c, rxvt_screen.c, editwidget.c, edit.h, rxvtlib.h: selection pasting between rxvt's and cooledit fixed. Fri Feb 25 16:36:20 2000 sasha * filebrowser_next.c: fixed bug producing funny file names. Mon Feb 14 18:56:40 2000 Paul Sheer * rxvt.c: fixed bug not being able to paste from other apps. (seems rxvt.c was capturing root window events.) Sun Feb 13 12:59:15 2000 Paul Sheer * textwidget.c: default colours changed to something palatable. Sat Feb 12 20:52:25 2000 Paul Sheer * editwidget.c: fixed window maximising. Sat Feb 12 19:52:56 2000 Paul Sheer * editdraw.c: implemented smooth scrolling. Fri Feb 11 20:07:02 2000 Paul Sheer * font.c: potential segfault captured and fixed with electic fence. Fri Feb 11 19:30:28 2000 Paul Sheer * debug.c: now modified to use the builtin rxvt. Debugger updates for gdb 4.18 * cooleditmenus.c: Shift-F1 opens a terminal. Fri Feb 11 19:29:12 2000 Paul Sheer * rxvt.c, rxvt/*.[ch], et al.: From root /AT/ obsidian.co.za Fri Feb 11 11:53 GMT 2000 Status: RO Date: Fri, 11 Feb 2000 13:53:28 +0200 (SAST) From: Paul Sheer Reply-To: Paul Sheer Subject: Rxvt componentized into an object and imbedded into cooledit To: Geoff Wing , cooledit /AT/ mail.obsidian.co.za MIME-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii I have imbedded rxvt-2.6.1 into cooledit. This is probably useless and stupid, so please feel free to flame. However it is technically quite interesting: Rxvt is a grosely non-object-orientated program - lots of global and static variables. I wanted to turn it into an object, where multiple instances could be instantiated from within the same thread. I have written a Python script to convert any (?) flat C code into object orientated style C code. It takes all global functions and replaces do_something (int x, char *y); with rxvtlib_do_something (rxvtlib *o, int x, char *y); It also replaces all global variables with o->global_variable ... well you get the idea. The result is librxvt.a which can be used to imbed a terminal inside any application. You just give it the necessary callbacks. The port is not trivial, even after running the script (which tries to cope with as many general situations as possible - like seperating out typedefs and structs, and initialising variables) there is still a days work in cleaning everything up. The result is an rxvt which looks like this: #include "rxvtlib.h" int main (int argc, const char *const *argv) { rxvtlib o; rxvtlib_init (&o); rxvtlib_main (&o, argc, argv); return 0; } ...and not a single global variable. Imbedding into cooledit is a little more work. You have to isolate rxvt's inner loop and give it cooledit's display connection. This now all works - press F1 for a terminal and watch it pop up at lightning speed. The next beta (beta9) will be uploaded this weekend. rxvtlib adds 70k to the final cooledit binary. Note that rxvt is not quite yet a coolwidget - that may come later. its still a toplevel window. (Geoff, if you are interested in `objectizing' rxvt in this way, I can port the latest devel version in a day or so.) One extension of this is to have a future rxvt version that has mutiple terminals in notebook style - i think this would be really cool. best wishes -paul Mon Jan 17 00:14:40 2000 Paul Sheer * shell.c: fixed problem with redefined shell keys not being recognized. Thu Jan 13 23:00:01 2000 Paul Sheer * focus.c: drag and drop border highlight ring fixed. * mousemark.c: drag and drop cursor positioning fixed when dragging from other program. Thu Jan 6 13:03:56 2000 Paul Sheer * scollbar_next.c, filelist_next.c, filebrowser_next.c: fixed various ansi violations and compiler warnings. Thu Jan 6 11:15:17 2000 Sasha Vasko * widget: hacked to NeXTish look : added files: scrollbar_next.c, filelist_next.c and filebrowser_next.c Thu Jan 6 11:05:19 2000 Paul Sheer * initapp.c, cooledit.c: default fonts now -*-fixed-bold-r-*--13-*-*-*-*-80-* -*-helvetica-bold-r-*--13-*-*-*-*-*-* apparently -*-fixed-bold-r-*--13-*-*-*-*-80 doesn't load as a font set on solaris. Wed Jan 5 20:36:07 2000 Paul Sheer * debug.c: debug backtrace change to `l' and kill to `k'. Beware. * inputwidget.c: text now in editor font. Wed Jan 5 20:25:17 2000 Paul Sheer * edit.c: properly check for already open files. * pathdup.c, stringtools.c: canonicalize_pathname scrapped. Now uses pathdup to properly resolve all symlinks. * edit.c: opening gzip etc. files checks for readability. Tue Jan 4 10:31:09 2000 Paul Sheer * edit.c, editcmd.c: gzip, bzip, compress and generic filtering. Mon Dec 27 22:35:32 1999 Paul Sheer * cooledit.i: `prev_col =...' added so that cursor does not stick to the column pos after python macros. * editoptions.c: .cooledit.ini now created with permissions 0600 in case there are passwords in dialogs. * global.py, zope_utils.py, c_utils.py, sh_utils.py: created. python stuff reorganised into a proper structure. Sun Dec 26 15:26:04 1999 Paul Sheer * mail.c: search for sendmail in /usr/sbin/ and /usr/lib/ also. Sat Dec 25 23:01:19 1999 Paul Sheer * cooledit.c: --no-xim to disable xim support. * xim.c: check if CIC is wrongly focused - prevents segfault. See FIXME in source. * postscript.c: bold option added. also fixed initialisation on second print. now you can print more than once. Thu Dec 23 17:23:47 1999 Paul Sheer * font.c: this file added to support multiple fonts. fonts work by pushing and popping because its the only way to support multiple fonts at this stage without re-engineering the whole library. * xim.c: XIM input methods. * *.c: All string rendering goes through fonts.c checking if its a fontset or a plain old font struct. We support both. * initapp.c: widget_font option added. * coolnext.c: event XFilter'ing for key composing. XmbLookup in xim.c to compose keys and support XIM. * coolwidget.c: XIM context created with all dialog windows. * coolwidget.c: for_all_widgets() function added. * debug.c: lots of little fixes - seems we were using "( y or n )" instead of "(y or n)". gdb gives both messages. * pipe.c: forkpty() for debug to fork gdb under a pty without having to open an xterm. * debug.c: gdb runs silently even if there is not pty using new forkpty stuff. * debug.c: don't create breakpoints red-lines over each other. * print.c, postscript.c: postscript printing and print dialog hacked from a perl script. Postscript code is really bad - uses only global variables. * syntax.c: removed LOTS of memory leaks (ouch). Fri Dec 10 19:05:07 1999 John Theal * syntax.c: fortran syntax highlighting added. Thu Dec 2 16:13:58 1999 Paul Sheer * menu.c: add facility to insert and delete specific menu items by name. * coolpython.i: added insert_menu(), replace_menu(). (For: Michel Pelletier) * coolpython.i: added file_type() to set and return the current syntax highlighting type. (For: Michel Pelletier) * textwidget.c: fixed cursor-out-of-screen bug of text boxes. * edit.c: proper spaced filled tabs on right of code. Tue Nov 30 09:24:21 1999 Paul Sheer * edit.c: goto matching bracket with Alt-b Sun Sep 12 09:43:20 1999 Pavel Roskin * gtkedit/editcmd.c (edit_replace_cmd): don't change the global "prompt on replace" setting when "All" is selected, use a local variable instead Sun Sep 5 11:08:49 1999 Paul Sheer * edit.c, editcmd.c: added bookmark-all-finds feature. Wed Aug 18 21:20:08 1999 Paul Sheer * syntax.c: spurious segfault in syntax highlighting which may manifest when using auto-spellcheck. I think I know what caused this and it may have been fixed. Sun Aug 1 21:36:58 1999 Paul Sheer * fieldedtextbox.c: apparently there are division by zero exceptions when there are no files in the browser. I can't reproduce these, never-the-less, I have changed all `/ x' to `/ (x ? x : 1)' Thu Jun 24 12:27:44 1999 Paul Sheer * syntax.c: edit_syntax_clear_keyword(): removed misspelled keyword words don't refresh syntax highlighting from the top of the file. This removes that horrible lag when editing big files. * syntax.c: subtle bug where adjacent '*' keywords don't get highlighted correctly - fixed. * syntax.c: optimizations and code cleanups. * syntax.c: added support for keywords that start with a character, but are open ended: like \\+ for latex and $+ for shell scripts. * shell.c: updates to output occur only when a newline is printed. Hence display is like a terminal - i.e. line cached. * debug.c: fixed possible cause of spurious segfault when using debugger. Sun Jun 13 20:24:19 1999 Paul Sheer * syntax.c, mail.syntax: syntax rules for mail folder. These are folders with headers that begin with `From '. Sun Jun 13 16:01:16 1999 Paul Sheer * cooledit.i, find.c: added way of adding browse buttons to input widgets in generic dialog. Sat Jun 12 10:58:03 1999 Paul Sheer * configure.in: changed AM_GNU_GETTEXT macro to default to with instead of without included-gettext. This will prevent __dcgettext errors compiling on some linux's. * *.c: now REALLY compiles with LCC out of the box (provided you configure with CFLAGS='-D__STRICT_ANSI__). Sat Jun 12 10:06:56 1999 Paul Sheer * global.py: error fixed. * editdraw.c: edit_scroll_screen_over_cursor() corrected behaviour. Fri Jun 11 18:25:12 1999 Paul Sheer * editcmd.c: replace query dialog now has `replace one' and also doesn't overlap your cursor, when its near the top of the screen. * global.py: some errors and additions. Thu Jun 10 15:36:13 1999 Paul Sheer * cooledit.c: -S on command-line doesn't effect global (i.e .cooledit.ini) option. * find.c, ctags, debug.c: `Browse...' button next to entry widget for file or directory. Sun Jun 6 15:03:46 1999 Paul Sheer * cooledit.i: fixed spurious segfault, when recieving key stroke if there is no widget with the focus. (like holding F10 down). * syntax.c: fixed segfaults incurred by non-existing lib/cooledit directory. Sat Jun 5 15:19:53 1999 Paul Sheer * cooledit.i: redraw() get_line() fixed. indent() added. * global.py: added C util menu proper. Sat Jun 5 02:46:24 1999 Paul Sheer * cooledit.i: added new bind() command to bind keys to within a specific editor window. * debug.c: tracked down bug where programs halt cooledit if you start a program the second time after naming it badly in the info menu. * debug.c: starting with no-stop-at-main leaves curser even when program is done - fixed. Wed Jun 2 13:02:31 1999 Paul Sheer * ru.po: russian translation updates. Wed Jun 2 02:10:56 1999 Paul Sheer * initapp.c, focus.c: widget spacing defaults changed to give a more elegant look. Tue Jun 1 14:09:40 1999 Paul Sheer * cooledit.c, editwidget.c, editdraw.c: fixed minor display bug in status line as well as extra line on last row of text with proportional fonts. * syntax.c: fixed segfault when switching syntax highlighting modes. Sun May 30 12:38:30 1999 Paul Sheer * smalledit.c: spell checking option added. spell checking off by default. Sat May 29 11:08:05 1999 Paul Sheer * *.c: fixed warnings when compiling with lcc. * propfont.c: fixed stray pixel displays with true type fonts. Thu May 27 17:55:48 1999 Paul Sheer * debug.c: variable display list and watchpoints with Ins. * syntax.c: spell checker causes segfault if there is a misspelled word on the first line - fixed. * mousemark.c: always show cursor when we are dragging. Tue May 25 17:22:40 1999 Paul Sheer * edit.c: more flexible system of word char moves. * scrollbar.c: `where-was-i' rectangle. Tue May 25 00:13:12 1999 Paul Sheer * editwidget.c: bookmarks now displayed in scrollbar. * editdraw.c, coolwidget.c: new widget C_STATUS_WIDGET. editor windows *finally* have a decent status line, yawn. Sat May 22 11:11:31 1999 Paul Sheer * debug.c: `no stop at main' option added to debugger. more rigorous method of getting pty for xterm. This should fix rh6.0 problems. * debug.c: various bug fixes. Wed May 19 17:34:37 1999 Paul Sheer * debug.c: fixed bug - cancelling `insert conditional bp' dialog segfaults. * debug.c: breakpoints bookmarks inserted only on success. * coolnext.c, shell.c, debug.c: some long overdue overhauls of the way fd's are handle. there is now a single global select statement to handle all fd's, debug, shell, or X connection. This is the proper way of doing things - shell outputs are now much crisper. Tue May 18 12:34:09 1999 Paul Sheer * syntax.c: spellcheck - as optimization, don't lookup words already in keyword list. * find.c: ctags support with C-M-i. * coolnext.c: multiline toolhints. * shell.c: optimized display of shell output prevents eating cpu with long shell outputs. Mon May 17 17:37:31 1999 Paul Sheer * find.c: fix for non-GNU find commands. Fri May 14 23:29:24 1999 Paul Sheer * syntax.c, propfont.c: spellcheck as you type added. * Makefile.am: libintl moved out. gettext macros take care of this. * *.c: various compiler warnings fixed. * html.syntax: more comprehensive, yet still incomplete, syntax highlighting rules for html - from Netscape's `tags' manual. * wordproc.c: i am convinced that this code causes a segfault somehow. it is very difficult to reproduce. perhaps mallocing more bytes will help??? Sun Apr 18 09:09:10 1999 Paul Sheer * icon.c: coolicons exposing over themselves over and over now fixed. This takes up cpu time when two icons overlap. * modify-xinitrc: script defaulted to the roots mailbox aaaaaaaaarg. Sorry people. Wed Apr 14 11:50:39 1999 Paul Sheer * complete.c: segfault reported that probably comes from out of range `o' value in the binary search. Extra range check added. Wed Mar 17 18:00:34 1999 Paul Sheer * edit.h: fixed NO_COLOR definition from -1 to 0xFFFFFFFF * regex.c: ambiguous else fixed. Wed Mar 17 17:42:33 1999 Xavier Bourvellec *mousemark.c: <<< if (*w->funcs->insert_drop) >>> if (w->funcs->insert_drop) fixes core dump on HP unix. (Also fails to compile on Solaris's native cc - fixed). Sat Mar 13 13:38:17 1999 Paul Sheer * edit.c: regexp replacements with substrings now possible use %s for substring and the arg order field. Fri Mar 12 20:15:16 1999 Paul Sheer * debug.c: interactive graphical debugger added. * menu.c: use CK_Left/Right etc. as well as checking XK_ keys - makes menu movements definable also. Sat Mar 6 16:31:14 1999 Paul Sheer * edit.c, bookmark.c: Bookmark feature added. Check the `Edit' menu. * coolnext.c, etc.: Seems that the X server changes its key bindings with every new release. Even arrow keys in dialogs are now bound to generic key redefinitions. This should cope. Fri Mar 5 11:54:11 1999 Carlos Rodrigues * syntax.c: ML (camlight) syntax highlighting rules. * syntax.c: GNU Smalltalk syntax highlighting rules. Fri Mar 5 11:53:19 1999 Paul Sheer * syntax.c: now includes files from lib/cooledit/syntax/*.syntax - this should speed loading. Thu Mar 4 13:09:01 1999 Paul Sheer * cooledit.c, find.c: added new find file feature. * shell.c: support for running up to 32 background shell scripts simultaneously. Tue Mar 2 08:21:57 1999 Paul Sheer * coolicon.c, iconmanager.c: Added timeout to revert to normal cursor from hour-glass cursor. Lets the hour-glass be displayed for an appreciable length of time. Sat Feb 6 14:42:36 1999 Paul Sheer * coolwidget.c: problem with ICE window manager fixed, where dialogs that come up before the main window cause a corrupted display. Coolman still gives problems sometimes though. Thu Jan 14 11:35:34 1999 Paul Sheer * smalledit.c: set title bar to show filename. Sun Jan 10 15:49:52 1999 Paul Sheer * configure.in: checks for python threads added to link with pthreads and so forth. Sun Jan 10 12:38:06 1999 Alex Maranda * mousemark.c: added in own XGetAtomNames for X11R5. (+ fixed memory leak - paul) Sun Jan 10 11:25:30 1999 Juha Laukala * fieldedtextbox.c: check for zero numlines/columns (does this fix a core dump? - paul) Wed Dec 16 08:33:19 1998 Paul Sheer * syntax.c: minor fixes. Thu Dec 10 01:12:33 1998 Paul Sheer * syntax.c: syntax highlighting rules for perl. Some bug fixes in some syntax rules. * syntax.c: syntax highlighting now uses a new caching system that only ever calculates rules going forward. This eliminates the nasty quote-inside-hash-comment bug, but may slightly reduce performance. Mon Nov 30 21:28:31 1998 Paul Sheer * cooledit.c, coolpython.c: Python bindings for accessing the edit buffers and more. * dirtools.c: Fail to closedir() caused cooledit to crash after reaching max open files (several weeks for me). Fixed Mon Nov 16 15:42:58 1998 Paul Sheer * syntax.c: minor syntax rule fixes. Mon Nov 16 14:42:53 1998 Paul Sheer * xdnd.c: Irix does not support variable argument macros. Fixed to use ordinayr macros. * filebrowser.c: backspace now erases during textbox search. Sat Sep 19 21:40:18 1998 Paul Sheer * icon.c: icon exposes now lower icons, so icons always stay underneath everything. Thu Sep 17 21:32:15 1998 Paul Sheer * coolwidget.c: allow changing of the size of a non-mapped top-level window. Fixed cooledit starting up ultra small first time. * pixmap/lyx.xpm: failed to include this, now added. Thu Sep 17 19:30:04 1998 Paul Sheer * options.c: segfaults when ini file not found. Fixed. Wed Sep 16 00:37:12 1998 Andreas Haack * coolnext.c, editwidget.c: Buttons 4 and 5 mapped for wheel mouse to page-up and page-down. Tue Sep 8 05:55:14 1998 Paul Sheer * syntax.c: support for LSM and unified diff files added. * cooledit.c: maximise window toolbutton added and bound to Alt-F6. Window sizing behaviour improved. * cooledit.c: check if file is already open and prompt the user. * cooledit.c: new window moves up and shrinks to keep within main window limits. * cooledit.c: option to prompt for file immediately on creating a new window. * cooledit.c: checks any modified files before bothering to prompt on a main window close. (when did I add this in.) Tue Sep 8 05:52:10 1998 Paul Sheer * xdnd.c: supported added for the Xdnd protocol version 2 and below. drops now supported by callbacks and not with CGetDrop. Support for old Dnd is removed. Tue Aug 25 20:43:31 1998 Paul Sheer * coollistbox.c, coolquery.c, coolinput.c: various utilities added. Mon Aug 24 15:53:32 1998 Paul Sheer * syntax.c: lots of bug fixes, support for bash html nroff and python added. * config.guess, config.sub: updated to latest version of libtool and autoconf. Sun Aug 23 15:55:38 1998 Paul Sheer * cooledit.c: main windows nicely resize inner window with wm resize, if the editor window is approximately the same size as the wm window. * filebrowser.c: alpha-keys take you to directory name in directory list (previously worked only with file list) * lkeysym.h: define XK_KP_Down for HP unix. * edit*.c: edit code works with gtk now (midnight commander only) Wed May 6 13:27:33 1998 Paul Sheer * syntax.c: bug fixes. Mon May 4 12:15:49 1998 Paul Sheer * syntax.c: fixed some ANSI violations. * libtool: upgraded to 1.2, upgraded to automake 1.3. Fri May 1 17:45:58 1998 Paul Sheer * syntax.c: initial support for LaTeX 2.09 files added, * coolicon.config: defaultroute added to pppd. Thu May 7 20:32:15 1998 Paul Sheer * syntax.c: syntax highlighting segfaults when editing a binary file - now fixed. Wed Apr 29 03:21:23 1998 Paul Sheer * syntax.c: bug fixes, optimisations, support for Makefiles and ChangeLog entries. Tue Apr 14 23:35:12 1998 Paul Sheer * options.c: syntax dialog box added to select the file type. * vertchar.c: added to draw vertical text. * cooledit.c: file type displayed on left vertically. Wed Apr 8 16:27:16 1998 Paul Sheer * editwidget.c: does an edit_render_keypress() instead of an edit_update_screen(). This stops the screen scrolling over the cursor when switching focus. * editwidget.c: edit_insert_column_of_text(): when inserting past the end of a file this does not preserve the indentation, now fixed * editwidget.c: handle_client_message(): moving columns with the mouse sometimes inserts the columns in the wrong place because the display scrolled before the click pos was calculated. now fixed. Tue Apr 7 13:56:07 1998 Paul Sheer * editwidget.c: horizontal scrollbar added. * filebrowser.c: check for existance of directory. If a directory is deleted then filebrowser reverts to a higher level directory. Mon Dec 29 16:50:54 1997 Paul Sheer * coolnext.c, options.c: added option to insert using middle mouse button for compatability with other X programs. Sun Dec 21 10:35:05 1997 Paul Sheer * cool*.c: ini file was defined to /..cedit - fixed. Sun Dec 21 10:33:45 1997 Paul Sheer * coolnext.c: check for cwevent->ident being null added to prevent a possible segfault in coolicon. Tue Dec 16 13:06:55 1997 Paul Sheer * filebrowser.c: fixed bug where junk comes into the input line when there are no files in the file list. * filebrowser.c: file browser dialog box goes wide it is opened with a very long path-name. Now fixed to stay the same width. Sat Dec 13 18:35:51 1997 Paul Sheer * cooledit.c: changed `cedit' to `.cedit'. * *.c: changed `cedit' to `.cedit'. The entire source tree uses .cedit. Sat Dec 13 11:54:41 1997 Paul Sheer * trivoptions.c: added. loads a few options from the options file for the small applets. Fri Dec 12 20:11:53 1997 Paul Sheer * my_string.h: added defines for stat macros for strict ansi. * Now compiles without warnings on redhat 5.0. * aclocal.m4: now always uses included intl to prevent possible errors. Sun Nov 23 18:10:05 1997 Paul Sheer * icon.c: icon titles now outlined instead of in rectangle. Thu Nov 20 19:06:02 1997 Paul Sheer * cooledit.c: SIGHUP changed to SIGUSR1, everywhere. Thu Nov 20 13:36:27 1997 Paul Sheer * cooledit.c, editwidget.c, edit.c: CDrawEditor with text that has imbedded nulls now works. The size of the text must be specified to CDrawEditor. Thu Nov 20 13:24:59 1997 Paul Sheer * edit.c: init_dynamic_edit_buffers() using CDrawEditor with a large block of text (instead of a file) shuffles the text --- now fixed. * dnd.c: CGetDrop(): paste_prop() used instead of XGetWindowProperty(). Thu Nov 20 10:27:48 1997 Paul Sheer * menu.c: if menu hotkey is a '~' then the menu code automatically finds an unused menu hotkey for you. This will help with NLS support. Wed Nov 19 15:36:31 1997 Paul Sheer * menu.c: Check added if menu still exists in execute_item(). This replaces the ugly hold_the_menu hack. * coolicon.c: new icons added. * coolmessage.c: menu has the same ident through all widgets, indirectly causing a segfault - now fixed. Sat Nov 15 15:14:27 1997 Paul Sheer * widget3d.c, coolicon.c: got 3d library working properly since the major changes to coolwidgets some time ago. Added email checker. It polls your email every 30 seconds (configurable), and brings up a 3D `e' for you to double click on if you have mail. Sat Nov 15 09:33:50 1997 Paul Sheer * shell.c: goto_file_callback(): width was calculated without subtracting BDR as in textwidget. Causes Return to got the wrong error message sometimes. Now fixed. Thu Nov 13 13:49:14 1997 Paul Sheer * mail.c: now using sendmail (and composing a header to send mail). Tested and seems to work fine on Linux. Wed Nov 12 19:45:24 1997 Paul Sheer * icon: created icon desktop manager package Thu Nov 6 17:46:52 1997 Paul Sheer * inputwidget.c: newlines in input histories were being saved, which creating some harmless havoc in the initialisation file. Strings are now chopped at the first newline before being added to the input history. Tue Nov 4 23:41:41 1997 Paul Sheer * edit.c: autoindent made never to cause the cursor to advance more than the it's previous column position. Tue Nov 4 02:30:02 1997 Paul Sheer * filebrowser.c: typing in of the first letters of the file takes the file list to that file-name, like browsers of some other packages/OS's. Sun Nov 2 13:54:35 1997 Paul Sheer * wordproc.c: Added. Formats paragraphs like a word processor. CK_Paragraph_Format added and bound to Alt-p. editcmddef.h, edit.c: CK_Paragraph_Format command added on Alt-p. Tue Oct 28 12:25:57 1997 Paul Sheer * coolman.c: added check for colors in .cooledit.ini Sat Oct 25 14:06:18 1997 Paul Sheer * configure.in: check added for rxvt. * shell.c: %F now means `the current font, except if it is a proportionally spaced font, then use 8x13bold' - use for terminal apps. Sat Oct 25 13:29:44 1997 Paul Sheer * cooledit.c: new_editor(), open_drop_file(), new_file_callback(): drop of any kind onto the background, now opens a file. eg text if dropped opens a new window with that text. Sun Oct 19 10:26:43 1997 Paul Sheer * editcmd.c: last_search for forward replace doesn't decrement even when a replace with a smaller word shortens the file - fixed. Fri Oct 17 23:53:20 1997 Paul Sheer * configure.in: Added check if man accepts -a. Added check for sunos in target build to define CRASHES_ON_STARTUP - should have been done a long time ago. Tue Oct 14 17:05:23 1997 Paul Sheer * coolnext.c: Toolhint support added. * options.c: option_toolhint_milliseconds added. This is the time before a hint appears on a button. Tue Oct 14 11:33:27 1997 Paul Sheer * editcmd.c: line_is_blank(): made to remember last offset and line that it returned. This dramatically improves performance when paragraph moving of long distances, which used to virtually halt cooledit. Tue Oct 14 09:56:53 1997 Paul Sheer * coolnext.c: XNextEvent() replaced with XCheckIfEvent() in CNextEvent(). Stops the shell (make) output from blocking near the end of execution. Tue Oct 13 09:50:17 1997 Paul Sheer * configure.in, Makefile.am: *** Big Changes ***. The widget library is now made into a DLL with libtool version 1.0. The original static compiles are also done though for the faithful. * po/*, intl/*: Added. NATIVE LANGUAGE SUPPORT (NLS) is added. * *.c: All text has _ added to it (gettext()/gettext_noop()). This had some problems. Key define dialog list had to be changed somewhat conceptually with static arrays to hold all the key names. Similarly for dates with the filelist. NLS comments added for the translators. Sat Oct 11 14:52:40 1997 Paul Sheer * complete.c: Added. This gives word completion from a pre-created list using a binary search - very useful. Use Ctrl-Tab. Fri Oct 10 13:22:57 1997 Paul Sheer * coolman.c: fork() added to main to run in background. Tue Oct 7 20:02:13 1997 Paul Sheer * editcmd.c, edit.c: integrated changes from the Midnight Commander. Such as this one below. Tue Oct 7 20:00:21 1997 Liviu Daia * edit/editcmd.c: separated searching by regexp from the scanf stuff. * edit/editcmd.c: Regexp search recognized ^ only if it was the first character in the pattern - fixed. * edit/editcmd.c: Regexp search didn't handle empty patterns correctly - fixed. Mon Oct 6 10:25:30 1997 Paul Sheer * editcmd.c: edit_load_cmd(): removed some unnecesary things done with ->modified. Sun Oct 5 18:18:37 1997 Paul Sheer * dirtools.c, filelist.c: apparently, solaris's dirent has char d_name[1], which really screws up the file list. Changed struct file_entry to directly store the file-name, without a dirent member. Sun Oct 5 14:00:21 1997 Paul Sheer * menu.c: unmap menu on FocusOut: hides menu if focus is switched to another application while the menu is down (suggested by Derkjan de Haan ). Sun Oct 5 12:33:07 1997 Paul Sheer * editcmd.c. editwidget.c, edit.c: column mouse highlighting supported. You can now highlight copy and move arbitrary rectangles of text. * editwidget.c: handle_client_message(): test if a drag and drop 'move' was to the same window - if true then do a block delete straight away rather than sending an acknowledge event to the same window. This allows control of the order of the delete with respect to the copy which is mandatory for column block moves. Fri Oct 3 09:55:34 1997 Paul Sheer * coolman.c: added F10 == exit, '/' == search, and a quit button. Also changed some hotkeys. Mon Sep 29 20:14:42 1997 Paul Sheer * fieldedtextbox.c: seperator lines leave trail when line spacing is not zero - fixed. Mon Sep 29 12:00:17 1997 Paul Sheer * edit.c: fixed to account for double whitespace by adjusting space_width. Mon Sep 29 10:23:39 1997 Paul Sheer * filelist.c: changed gmtime to localtime, so that files are listed by users time. Mon Sep 29 09:36:42 1997 Paul Sheer * fieldedtextbox.c: eh_fielded_textbox(): tagging files with the insert key added (like the Midnight Commander). Can't do anything with the files yet though. Sun Sep 28 18:31:01 1997 Paul Sheer * filebrowser.c, dirtools.c: lots added to now do fielded-textbox with a filelist in the filebrowser. Filebrowser now displays lots of file info. * filelist.c: added: convience functions to draw a filelist with a fieldedtextbox with fields for name, size, time, mode. * dirtools.h: removed; had almost nothing in it anyway. * fixed bug where define keys textbox segfaults on release-button on the scrollbar. Sat Sep 27 12:11:01 1997 Paul Sheer * menu.c: CGetWindowPosition(), can be used even with windows not belonging to widgets. e.g. can return the position relative to the root window. * menu.c: pull-down menu now drawn on the root window. * coolwidget.c: CSetupWidget(), pull-down menu widget drawn with override-redirect on; i.e. no WM border. Fri Sep 26 15:41:35 1997 Paul Sheer * manpage.c, mancmd.c: fixed behavioural problems with man-page dialog. * textwidget.c: fixed sometimes sticky scrollbar. Fri Sep 26 01:30:15 1997 Paul Sheer * coolman.c: added, coolman is a replacment for Xman. Fri Sep 26 00:43:15 1997 Paul Sheer * manpage.c: halts when space-baring on the man-page 'Previous' button. Fixed with a focus onto textbox before 'Previous' is disabled. Thu Sep 25 12:21:47 1997 Paul Sheer * smalledit.c: cleaned up code and added about box. Mon Sep 22 15:05:22 1997 Paul Sheer * manpage.c: moved out of the library to editor/ Mon Sep 22 08:43:29 1997 Paul Sheer * propfont.c, options.c: option_long_whitespace 'Double whitspace' added for proportional fonts to space them out for programmers. Sat Sep 20 17:12:00 1997 Paul Sheer * propfont.c, fieldedtextbox.c: centering and right justifying added to fielded textbox. Fri Sep 19 16:00:14 1997 Paul Sheer * cooledit.c: new things made as key defines. cooledit.c no longer check for XK_'s, but CK_'s, defined in editoptions.c. * editoptions.c: New user defined keys added. Fri Sep 19 13:13:24 1997 Paul Sheer * pixmap.c: fixed memory leak. * coolwidegt.c, edit.c, editcmd.c: created some functions to free odd allocs before exitting. Should have no MAD 'unfreed' errors on exit exept for one small one. Fri Sep 19 13:13:24 1997 Paul Sheer * fieldedtextbox.c: created fielded textbox widget - cool. see 'Options':'Define keys'. This can be used for file lists, displaying the file, size, permissions etc. Mon Sep 15 16:21:25 1997 Paul Sheer * coolwidget.c, menu.c: hotkey can now be > 255 (eg XK_F1) which we will use for a help widget later on. * coolnext.c: CNextEvent() now return void. CEvent->handled contains result instead. Thu Sep 11 22:23:57 1997 Paul Sheer stringtools.c: strfrombeginline(): fixed bug where cooledit hangs near the end of the man page nroff output. Thu Sep 11 21:34:19 1997 Paul Sheer * cooledit.c, mail.c: mail command added. * shell.c: XSync() added to update_...() so that users view of the output is true. Wed Sep 10 16:57:53 1997 Paul Sheer * textbox.c: CGetTextBoxLine(): function added to replace having to use strline to get a text box line. * cooledit.c: optional toolbar added. * pixmap.c: added to draw full color pixmaps. This uses my own trivial pixmap format. initapp.c: no more drawing a main window. now the first window drawn is called CFirstWindow and delivers QuitApplication on trying to close. This first window is just like a regular main window. CMapDialog() added, along with changes to the dialog creating procedure to make it more generic. See dialog.c for examples. dialog.c, editcmd.c, etc: modified (see previous). Tue Sep 2 23:53:21 1997 Paul Sheer * cooledit.c: signals now properly caught. SIGHUP can be used to restore cooledit if it goes into an infinite loop due to bugs or a recursive macro. SIGCHLD now caught to remove dead children. Other signals just close the display and abort. Tue Sep 2 18:58:30 1997 Paul Sheer coolwidget.c: render_bevel(): softened the bevels a little. Tue Sep 2 11:51:55 1997 Paul Sheer * editdraw.c: edit_scroll_screen_over_cursor(): check if a found string is present and scroll so that you can see the whole found string: taken out of BUGS list. Tue Sep 2 10:28:28 1997 Paul Sheer * *.[ch]: changed some more function names. the library now has a relatively consistent naming strategy throughout. * coolenxt.c: added function CKeyPending(): tells if a key is pending. * editdraw.c, editwidget.c: used CKeyPending() to check whether not to update the edit window. this fixes recently introduced problem of keys sometimes being queued. Mon Sep 1 00:14:38 1997 Paul Sheer * smalledit.c: 'Sat Aug 9 21:07:37 1997' broke smalledit (was never tested) - now fixed. Sun Aug 31 22:02:59 1997 Paul Sheer * *.[ch]: changed all function names to a consistent naming convention. Sun Aug 31 22:01:30 1997 Paul Sheer * edit.c: paragraph_move_down still seems to have a bug: when there is nothing but text and no newline at the end, a para-move- down will go into an endless loop. this is now fixed. * editwidget.c, coolwidget.c: insert overwrite toggle now turns the cursor yellow. Wed Aug 27 17:40:08 1997 Paul Sheer * shell.c: when a script is run in the background, its output to stderr or stdout has no where to go. This causes cooledit to halt when killing rxvt (rxvt run from 'Scripts' menu) with the window manager. This is now fixed by closing the new process's pipes and dup'ing /dev/null Mon Aug 25 20:44:14 1997 Paul Sheer * editcmd.c: scanf and and regexp searches halt before null bytes -- fixed. Sun Aug 24 13:53:47 1997 Paul Sheer * coolwidget.h, options.c: option_widget_spacing added - is the pixel space between widget windows. * editcmd.c: backwards search and replace added. Implemented via a wrapper over forward search, i.e. doing one non-incrementing forward search for each position behind the start search. This is very inefficient, but works. * edit_translate_key.c, editcmd.c: search replace dialog Ctrl-q Enter now inserts a LF and nothing else. Sat Aug 23 10:51:42 1997 Paul Sheer * inputwidget.c: input history properly avoid duplicates. * edit.c: maximum undo amount can now be specified. * initapp.c: fixed buglet allocating colors. Sun Aug 17 15:22:16 1997 Paul Sheer * filebrowser.c, dirtools.c: filter added to filebrowser. Sun Aug 17 13:39:30 1997 Paul Sheer * focus.c etc. : focus handling changed somewhat. focus will now always go to the last window focussed within a main window regardless of where the window manager "thinks" it should go. So no more doing alt-tab (fvwm-95) and finding keys still going to the old window. Sat Aug 9 23:34:45 1997 Paul Sheer * dnd.c: support for dnd protocol version 0. (used to support version 1 only, but many apps are version 0). option_dnd_version added. Sat Aug 9 21:07:37 1997 Paul Sheer * dialog.c: filebrowser.c: shell.c: coolwidget.c: coolnext.c etc. generic support for substructure resizing. filebrowser, manpage and shell-output dialogs now can all be resized with widgets shaping as necessary. These changes also so happen to remove the flicker when the edit window resizes. Fri Aug 8 11:03:42 1997 Paul Sheer * cooledit.c: support added - when you drag a single file name onto the cooledit background, a new edit window is opened with that file. Wed Aug 6 00:49:54 1997 Paul Sheer * initapp.c: added block_push_event as a paranoia check. * stringtools.h, configure.in: tolower() now used instead of my own tolower function. I had this idea that the tolower function was't supported by all systems. tolower checked is now checked in configure.in. Sun Aug 3 18:56:00 1997 Paul Sheer * dnd.c: some bitmaps added for cursors in different windows. Fri Aug 1 23:34:12 1997 Paul Sheer * manpage.c: man page dialog now records what line you were at. * cooledit.c: Window list doesn't match filenames when newfile or saveas. Fixed. Fri Aug 1 17:25:09 1997 Paul Sheer * coolnext.c: option_mouse_double_click added = double click interval. Thu Jul 31 18:47:43 1997 Paul Sheer * propfont.c: for expose redraws, this now redraws only the area of the expose, and not the whole line. This is like the behaviour before propfont.c was introduced. * mousemark.c: new generic mouse marking routine for all widgets. * inputwidget.c: cut and paste from an input line. * editwidget.c: textwidget.c: now use mousemark.c. Tue Jul 29 16:36:12 1997 Paul Sheer * edit.h, stringtools: added "%s" to message dialog macros to avoid crash where message contains filename with a format specifier. This means additions to vfmtlen() also. Tue Jul 29 01:47:20 1997 Paul Sheer * textwidget.c: fixed bug where filename doesn't display in filebrowser. * dnd.c: cursor turns to hourglass when editor stops to do something. Mon Jul 28 23:44:08 1997 Paul Sheer * initapp.c: calculate font descents correctly for underlining in menus. Mon Jul 28 23:07:10 1997 Paul Sheer * textwidget.c: double clicking on man page words when in proportioanl fonts doesn't calc the click position properly. Fixed. Sun Jul 27 21:53:27 1997 Paul Sheer * shell.c: pool_advance causes freeing of textboxwidget's memory which I overlooked and caused a segfault: fixed. Sat Jul 26 20:03:50 1997 Paul Sheer * edit.c: fixed paragraph move: goes into an infinite loop when moving down near the bottom of the file. Fri Jul 25 01:20:36 1997 Paul Sheer * editcmd.c: edit_save_file(): when file does not yet exist and save_mode == backups, then tries to rename non-existing file to filename. This is now fixed with existance check. Thu Jul 24 11:53:37 1997 Paul Sheer * initapp.c: option_force_own_colormap and option_force_default_colormap added. Thu Jul 24 10:28:45 1997 Paul Sheer * cooledit.c, coolnext.c: CNextEvent(), main(): added return from CNextEvent to tell if keypress was actually handled. + window cycling can now take place with S-Tab as well as C-F6. Tue Jul 22 22:42:59 1997 Paul Sheer * Went through all code and fixed warning messages (except regex.c) produced from -Wall -Wtraditional -Wshadow -Wid-clash-30 -Wpointer-arith -Wcast-align -Wstrict-prototypes -ansi -pedantic -O2 just to be pedantic. Tue Jul 22 17:27:46 1997 Paul Sheer * initapp.c: Heuristic visual selection added. * cooledit.c: -vis option added to force use of a particular visual. Tue Jul 22 11:41:34 1997 Paul Sheer * stringtools.c, filebrowser.c: tilde expansion added for filebrowser. * initapp.c: check for passwd entry added for home_dir of $HOME is not set. Tue Jul 22 09:27:09 1997 Paul Sheer * shell.c: compile problems with solaris: EINTR needed errno.h. * shell.c: memory allocation inefficiencies fixed. * compile warnings on IRIX fixed. Sun Jul 13 19:34:37 1997 Paul Sheer * cooledit.c: -lines and -columns options added to start cooledit with other than the default 80x30. Sun Jul 13 19:03:50 1997 Paul Sheer * shell.c: kill_shell(): bug where executed scripts stay as zombie processes is now fixed with wait_pid(). Fri Jul 11 10:50:23 1997 Paul Sheer * edit.c: scroll_screem_over_cursor (): fixed bug where cursor goes out of screen to the right. Thu Jul 10 15:35:06 1997 Paul Sheer * pool.c: added: see header file. * dirtools.c, shell.c: now use pool.c for their growing text buffer. The arbitrary limit of 64k on the directory text is now removed. Tue Jul 8 02:46:15 1997 Paul Sheer * coolwidget.c: added xor cursor support + flashing and non-flashing toggle. Mon Jul 7 11:42:14 1997 Paul Sheer * edit_key_translator.c: added input of decimal and hex literals through Ctrl-q key key key. Sun Jul 6 22:21:36 1997 Paul Sheer * international.c: international character insertion through multi-key composing. Sun Jul 6 15:49:10 1997 Paul Sheer * coolnext.c: fixed bug in eh_vertscroll that prevented scrollbar movement to the top edit line. Sat Jul 5 21:45:12 1997 Paul Sheer * editdraw.c: changed status line drawing to remove flicker. Sat Jul 5 15:43:41 1997 Paul Sheer * propfont.c: new file added. Proportional fonts now supported. * editdraw.c, textwidget.c, menu.c etc: Various changes to support proportional fonts. Wed Jul 2 13:50:32 1997 Paul Sheer * options added: option_edit_right_extreme etc. These keep the cursor always within the defined triangle. Tue Jul 1 19:58:20 1997 Paul Sheer * edit.c, editcmd.c, edit.h, editoptions: ->bracket member added to WEdit. Now finds matching bracket and highlights it in light blue. New option added option_find_bracket; Sun Jun 29 21:14:12 1997 Paul Sheer * editwidget.c: selection_paste (): long -> unsigned long, changed to avoid warning message on SGI. Mon Jun 23 18:03:58 1997 Paul Sheer * manpage.c: fixed bug in manpage search. * filebrowser.c: no longer remembers every directory change. * edit.c: paragraph move add. Delete to line end and beginning added, plus all key bindings for these. Thu Jun 19 19:17:10 1997 Paul Sheer * editcmd.c: fixed scanf search. Wed Jun 18 00:25:20 1997 Paul Sheer * cooledit.c, options.d: added option whether to pull down the window list menu on C-F6; Tue Jun 17 21:03:22 1997 Paul Sheer * coolnext.c: added function CCheckWindowEvent(). Which replaces the event checking of editwidget.c and * editdraw.c. This fixes scrollbar jumping on large files. Mon Jun 16 12:14:59 1997 Paul Sheer * global.h, manpage.c: man command and options taken out of global.h. New option option_man_cmdline. Mon Jun 16 09:23:55 1997 Paul Sheer * smalledit.c: added. This is a stripped down version of cooledit.c. * options.c, cooledit.c: new options: cursor flick rate and hint messages added. Sat Jun 14 23:00:31 1997 Paul Sheer * editcmd.c, edit.c, editwidget.c: rxvt cut and paste code completely substituted. Cooledit should now behave like rxvt in as far as what you can paste to and from. * editcmd.c, edit.c, editmenu.c: selection history added. Fri Jun 13 10:03:39 1997 Paul Sheer * editcmd.c: added edit_delete_macro() to delete macro's. Now when you define a new macro it will overwrite any existing macro definition with the same key. * editcmd.c: added caching of macro hotkeys so that the macro file isn't reloaded whenever a non-existing macro is requested (this would happen whenever you press a key that isn't defined to any function.) Tue Jun 10 22:46:16 1997 Paul Sheer * cooledit.c: added 'edit[last_edit] = 0;' wherever last_edit changes - for security. write_config(): fixed bug where ini file got junk stuffed in it on exit. Tue Jun 10 11:57:02 1997 Paul Sheer * dnd.c: Cdrag(): Drag changed to only ensue if the user has dragged more than five pixels. Sun Jun 8 18:52:42 1997 Paul Sheer * shell.c, shell.h: These files added. Support for a generic script execution system, with its own menu. Sun Jun 1 20:50:18 1997 Paul Sheer * options.c: similar dialog box to below added for cooledit. Sun Jun 1 20:34:52 1997 Oleg Yu. Repin * editcmd.c: saving modes added to backup files. Midnight commander dialog box added to change mode (good work - paul). Sun Jun 1 16:27:01 1997 Paul Sheer * menu.c: menu dragging made to work. Wed May 21 18:15:21 1997 Paul Sheer * menu.c: cosmetic changes to the menus. Wed May 14 13:48:53 1997 Paul Sheer * inputwidget: ident[1023] = 0 instead of input[1023] = 0 ! rights over the environment space - shew. Fixed. * cooledit.c: CSetEditMenu() added to update_wlist() now prevents segfaults. Tue May 13 18:38:39 1997 Paul Sheer * editcmd.c: Regexp can now tell when your at the beginning of a line, ^, proper. Fri May 9 10:08:36 1997 Paul Sheer * options.c: remembers size of main window for next startup. Wed May 7 20:53:07 1997 Paul Sheer * editwidget.c, textwidget.c: Process selection events so that rxvt can request a selection. Mon May 5 00:46:57 1997 Paul Sheer * coolnext.c: Scrollbar buttons does a repeat. New event created: ButtonRepeat - same as ButtonPress. Sun May 4 16:05:50 1997 Paul Sheer * edit.c: added word wrap. * cooledit.c: added new main window menu item. This runs cooledit -S from a fork. Fri May 2 13:07:12 1997 Norbert Warmuth * widget/editcmd.c (string_regexp_search): Avoid freeing old_pattern more than once. * widget/editcmd.c (edit_find_string): Fixed possible memory leaks * widget/editwidget.c, widget/edit.h: Fixed a compiler warning when compiling for the Midnight Commander Thu May 1 22:53:56 1997 Paul Sheer * inputwidget.c: File added. Input text code moved from other files to here. Text input now has input history! Sat Apr 28 21:04:23 1997 Paul Sheer * coolnext.c coolwidget.c: Buttons now have underlined hotkeys. * rearranging of the code to isolate the library from cooledit. Menu layout made more consistant. Sat Apr 12 21:04:23 1997 Paul Sheer * edit.c etc, : options dialog box added, lots of tabbing options added, move through tabs, delete through tabs. * edit.c etc, : more editor commands added, delete word left, delete word right. Move to top and bottom of page. Sun Apr 6 17:28:55 1997 Paul Sheer * lots of files changed. The library is now revamped to properly support arbitrary font sizes. Proportional font spacing is not supported however. Fri Apr 4 12:05:47 1997 Paul Sheer * filebrowser.c: made separate load, save and directory, browsers - load returns an existing file only. Added a plain non-blocking file browser widget to drag and drop files from and into. Thu Apr 3 14:45:02 1997 Paul Sheer * menu.c: fixed code that tried to pull up a non-existing menu. * editdraw.c: made xprint_to_widget generic with seperate routines to print in different colors. Wed Apr 2 16:55:14 1997 Paul Sheer * textwidget.c: created from coolwidget.c. Text mouse highlighting support for text boxes. * manpage.c: created from dialog.c Tue Apr 1 18:36:26 1997 Paul Sheer * dnd.c: added. coolwidgets now support the Dnd drag and drop protocol. * editwidget.c, coolnext.c: modifications to support dnd. Sat Mar 29 15:20:59 1997 Paul Sheer * editcmd.c: search and replace is now made generic: you can use the search and replace on any data, because, the search functions are now passed the name of the function to be used to fetch bytes. * dialog.c: man page dialog now does searches using the above routines. Clicking on a word now pulls up new man page. The man page now has back history. * focus.c: created. This keeps a history of focusses so that when a window is destroyed focus returns to the most recently focussed existing window. This alleviates the need for rigorous focus watches and focus restoration after a dialog is destroyed. * dialog.c: all focus restoration on dialog exit is removed. Thu Mar 27 09:16:17 1997 Paul Sheer * pipe.c: my_popen() created. man and make now run using this function. * editoptions.c: created. Key learning widget created plus utils to read and write from the .ini file. * cooledit.c: .cooledit.ini file now adjusted to have sections. Original contents under the [File] section. Key defines has its own section. Thu Mar 20 14:05:14 1997 Paul Sheer * coolnext.c, editwidget.c: added (double) in front of all scrollbar calculations to remove overflow that was causing scroll bar problems over 32768 lines. Tue Mar 4 03:50:45 1997 Paul Sheer * coolwidget.c, stringtools.c: Support for wrapping lines in the Makefile output. (Yaaawn.) Mon Mar 3 22:12:08 1997 Paul Sheer * coolwidget.c: render_textbox rewritten to handle nroff formatted pages. Now uses xprint... from editdraw.c to improve speed and remove flicker. Spreadsheat widget (which is an enhanced textbox) no longer supported by this function. * dialog.c: manpage dialog added. Mon Mar 3 13:57:15 1997 Paul Sheer * cooledit.c: Now starts from the current directory instead of the home directory (current_dir). Sat Mar 1 19:47:56 1997 Paul Sheer * coolwidget.c: CRedrawText now calls rerender_text which does a minimal draw if there is only one line of text. This will remove status line flicker on slow machines. Sat Mar 1 18:07:53 1997 Paul Sheer * editdraw.c: Fixed segfault caused by edit_status() when an edit window to be very small. Sat Mar 1 15:43:41 1997 Paul Sheer * editdraw.c: Fixed cursor-stops-flashing. * editcmd.c: edit_run_make() command added. Various changes made to accommodate redisplaying of make output. * edit*.c: pipe block through ispell added. Sat Feb 8 14:46:46 1997 Paul Sheer * coolwidget.c: CSetColor(color_palette(... changed to CSetColor(... serious bug that causes a segfault. (checked program with HAVE_MAD (mad.c) and fixed memory leeks) * editcmd.c: trying to free null pointer fixed in edit_replace_prompt. * dirtools.c: when list is empty, accesses out of bounds, fixed * coolwidget.c: added shutdown, which free's everything and closes the display. Fri Feb 7 17:16:36 1997 Paul Sheer * menu.c: Fixed bug in eh_menu() that caused a segfault when the button is released outside of a pulled-down menu. Thu Feb 6 14:37:38 1997 Paul Sheer * edit*: goto line command added, CK_Goto. Some key bindings added. Delete line added. * stringtools.c: added macro CRASHES_ON_STARTUP which cause vfmtlen to return strlen(fmt) + 2048. vfmtlen() has been causing sunos 4.1.3 to crash. Wed Feb 5 18:18:58 1997 Paul Sheer * mathfuncs.c: File added so that you don't have to link with the maths library. Contains a softcoded pow() function. Wed Feb 5 16:29:23 1997 Paul Sheer * cooledit.c: Crashes when it tries to start up with editor files that no longer exist. Now fixed. Wed Feb 5 15:24:06 1997 Paul Sheer * editdraw.c, editwidget.c: display bugs fixed. got rid of the drawing stopped nonsence, and replaced it with a proper routine to check for pending keys. * editcmd.c: pressing enter on search menu item now fixed Fri Jan 31 13:33:25 1997 Paul Sheer * man page added. * *.c: support for different font sizes added. * lkeysym.h: added to account for systems that don't define XK_Page_Up and XK_Page_Down * *.c various minor changes. Fri Jan 10 13:01:59 1997 Norbert Warmuth * configure.in: add C compiler flags that X needs to CFLAGS and the X linker flags to LDFLAGS. Thu Dec 26 19:03:47 1996 Paul Sheer * edit.c: Fixed a bug that caused undo to stop working when the undo stack wrapped. (This actually looks like it could have been a compiler problem, but its gone now.) Sat Dec 21 12:24:42 1996 Paul Sheer * cooledit.c: Automatically email me on first run. * editdraw.c: meaningful display of non-printable characters. * *: various fixes to the widget library - Scrollbar, CFocus, XSync. Thu Dec 19 09:56:05 1996 Paul Sheer * menu.c: Fixed bug where two menus are sometimes able to be down at the same time. * copyright.h: IRIX didn't compile, \n" needed at every eol. Tue Dec 17 19:48:08 1996 Paul Sheer * scroll bars added to editors. * now restores which line you where at when reading .cooledit.ini Tue Dec 17 02:10:26 1996 Paul Sheer * compatable.c, own vsprintf function added, plus vsprintf_alloc. Mon Dec 16 15:35:39 1996 Paul Sheer * dialog.c, edit/*: Crawkey function created, macros now work. Insert literal, C-q works. * coolwidget.c: CK_KP_* case statements added for textbox movement. Mon Dec 16 01:32:59 1996 Paul Sheer * editcmddef.h, coolnext.c: inputtext key translations now work through edit_translate_key so that key pad works. * dialog.c, coolwidget.c: dynamic allocation of many temporary strings using malloc instead of declarations. Should use alloca. Sun Dec 15 17:15:02 1996 Paul Sheer * my_string.h, compatable.c, configure.in: compatability. Substitutions added for every last string and memory function used as recommended by the gnu coding standards and autoconf. These still are not tested though. * coolwidget.c, editdraw.c: cursor now flashes without erasing the character and doesn't ever leave a trail. * editwidget.c, edit.h: all editor files now go into a directory ~/cedit Sun Dec 15 01:16:19 1996 Paul Sheer * coolwidget.c: Cdrawmenu(): added corner feature for resizing. * editdraw.c: fixed edit_status giving a segfault, increased malloc. Sat Dec 14 16:07:25 1996 Paul Sheer * System dependant conditionals added to the sources in places. - index/strchr, rindex/strrchr, RETSIGTYPE. 'quad' macro seems to cause a warning on IRIX: changed to 'quad_t'. Sat Dec 13 17:52:01 1996 Paul Sheer * Makefile, config.h, *.in, *.am, etc.: Used automake, autoheader and autoconf to produce Makefiles. automake works brilliantly exept for two problems: (1) the default setting is to include dependances (reverse of what the docs say), which I changed in the autmake binary, so now '--include-deps' isn't needed to _turn off_ dependancy stuff. * editmenu.c: added 'copying' notice and 'no warranty' item + fixes. * editcmd.c: fixed edit replace prompt which gave a segfault when using scanf s/r. * *.c, *.h: added various checks for HAVE_* macros. Wed Dec 11 20:39:18 1996 Paul Sheer * widget/edit/editdraw.c: added check for prev_win which may fix odd character ruining display. Wed Dec 11 18:52:52 1996 Paul Sheer * widget/edit/*, cooledit.c: fix ups for distribution. split_filename() now calls path_compress() (new_function). Now takes edit filename on command line. Plus various minor fixes. Wed Dec 11 10:57:28 1996 Paul Sheer * edit/*: Added insert/overwrite support. Wed Dec 4 15:16:59 1996 Paul Sheer * edit*.c: Support for Winsnows/Macinosh shift-arrow text highlighting. Fix of potential bug overwriting line[1024] in editdraw.c. Thu Nov 28 20:14:34 1996 Paul Sheer * edit*.c: macro now creates ~/cooledit.macros automatically Execute macro now does nothing if key not found, instead of error. Save file sets permissions on creating a new file. Tue Nov 12 18:54:10 1996 Paul Sheer * edit/*: changes to low level insert, delete etc to allow inserting of chars before the display window without the window going out of sync -- fixes replace bug that I hope only I knew about + some optimisation of push/pop_action routines (hope it doesn't break undo). Thu Nov 7 21:16:59 1996 Paul Sheer * edit*.c: Change c-o to load file. * editmenu.c: About box added. Sat Nov 2 17:31:21 1996 Paul Sheer * edit.c: Rewrote edit_move_forward/backward functions to handle eof properly. Fri Nov 1 13:08:22 1996 Paul Sheer * editdraw.c: Status line drawing improved for screens with small widths. Thu Oct 31 13:08:22 1996 Paul Sheer * editcmd.c: Added regular expression search and replace. Checks for overwriting an existing file if you change the filename. Sun Oct 27 21:17:11 1996 Paul Sheer * edit*.c: Slight changes to allow compilation with gcc's options -ansi -pedantic. Sun Oct 27 10:45:40 1996 Paul Sheer * edit.c: Date/time command added. Sun Oct 26 00:00:00 1996 Paul Sheer * editwidget.c, editmenu.c (new): Pull-down menus added. Fri Oct 25 12:00:00 1996 Paul Sheer * edit*.c: Macro record and execution added. XWindows still needs dialog boxes for this to work. ??? Oct ?? 12:00:00 1996 Paul Sheer * editcmd.c: Scanf search and replace added. ??? Sep ?? 12:00:00 1996 Paul Sheer * edit.c, editwidget.c, editdraw.c, edit.h, editcmd.c, edit_key_translate.c: Created from single source file, code completely overhauled. Undo now also undoes marking. Some drawing and behavioural problems solved. All key actions now work through commands, and the command to key mappings are done by a seperate file edit_key_translate.c. Ported to run with Coolwidget library. ??? ??? ?? 12:00:00 1996 Paul Sheer * edit.c, edit.h: Created from view.c of the Midnight Commander as a simple editor, with same look, with block commands and undo. Command to call is int edit(char *filename);