ChangeLog ========= This file contains a listing of modifications to Eterm in CVS on a per-commit basis. Dates are included, as are the names and userid's of the people making the changes. Contributors: mej - Michael Jennings ("KainX") raster - Carsten Haitzler mandrake - Geoff Harrison namsh - Sung-Hyun Nam gbritton - Gerald Britton yosh - Manish Singh sdh - Scott D. Heavner tzz - Ted Zlatanov ---------------------------------------------------------------------- Thu Sep 3 17:27:35 CDT 1998 Michael Jennings (mej) Removed RELNOTES.Eterm and split it into README and ChangeLog. I also fixed options.c so that keysym definitions are at least accepted. Now I'll have to find a tn3270 to test with. :-) ---------------------------------------------------------------------- Thu Sep 3 17:57:38 CDT 1998 Michael Jennings (mej) Added the trans theme and fixed doc/Makefile.in to remove Esetroot on "make distclean" ---------------------------------------------------------------------- Thu Sep 3 18:36:10 CDT 1998 Michael Jennings (mej) Added the --shade option to replace the DARKEN_TRANSPARENCY #define. ---------------------------------------------------------------------- Thu Sep 3 20:28:22 CDT 1998 Michael Jennings (mej) Fixed problems compiling with MENUBAR_MAX == 0 and without pixmap support and/or transparency support. Some unneeded code was removed from main.c as well. Added the --enable-menus (or --disable-menus) option to the configure script to automatically disable menubar support. ---------------------------------------------------------------------- Fri Sep 4 11:28:30 CDT 1998 Michael Jennings (mej) Added in the Eterm man page Shaleh fixed up for us. Thanks Shaleh! Also updated the doc/FAQ.html file with the latest FAQ from the web. ---------------------------------------------------------------------- Fri Sep 4 11:36:33 CDT 1998 Michael Jennings (mej) Ripped the RELNOTES.Eterm stuff out of ChangeLog and put it in ReleaseNotes. I decided not to use the name RELNOTES because it does annoying things with trying to Tab-complete "README". =) From now on, ChangeLog will be the detail and RELNOTES will be the summary. ---------------------------------------------------------------------- Fri Sep 4 13:24:49 CDT 1998 Michael Jennings (mej) Fixed a bug mandrake pointed out where supplying a pixmap would kill a transparent Eterm. ---------------------------------------------------------------------- Fri Sep 4 13:47:32 CDT 1998 Michael Jennings (mej) Fixed the bug pointed out by technoir that made transparent Eterms flicker when there were two on the desktop at the same time and one was moving. ---------------------------------------------------------------------- Fri Sep 4 15:42:55 CDT 1998 Michael Jennings (mej) Fixed scrollbar_floating with transparency so that the root image shows through underneath the scrollbar. The effect is really sweet. :) ---------------------------------------------------------------------- Fri Sep 4 16:22:29 CDT 1998 Michael Jennings (mej) Fixed scrollbar_floating without transparency so that it shows the background color instead of white. ---------------------------------------------------------------------- Fri Sep 4 18:48:08 CDT 1998 Michael Jennings (mej) Added the --tint option. Specify a shade of tinting for a pseudo- transparent Eterm. It implies --shade. Choices are red, green, blue, purple, orange, or yellow. ---------------------------------------------------------------------- Fri Sep 4 19:31:18 CDT 1998 Michael Jennings (mej) Fixed a stupid mistake in doing the tinting. Also enabled "yes" and "no" as valid boolean values. ---------------------------------------------------------------------- Fri Sep 4 21:34:09 CDT 1998 Michael Jennings (mej) Fixed the color names. Thanks to technoir for assistance with this. Choices are now red, green, blue, cyan, magenta, yellow. ---------------------------------------------------------------------- Sat Sep 5 14:28:18 1998 Scott D. Heavner (sdh) Apply focus color change to menubar and scrollbars. Remove old code that was surrounded by CHANGE_SCROLLCOLOR_ON_FOCUS. Toss update flag that was exported by scrollbar.h and let menubar.c & scrollbar.c track focus independently. Old code was doing a bunch of XCreateGC's without ever freeing the gc. Still a bit kludgy, but no more so than the shadow color code for the menu/scroll bar. New config option, unfocusedscrollbar . Command line option --unfocused-scrollbar-color . Add config entry to themes/Eterm/MAIN. Turn on CHANGE_SCROLLCOLOR_ON_FOCUS by default in feature.h. Add color init entry for menuTextColor def_colorName (main.c). Why does menubar.c use the global Attributes exported by main.c? ---------------------------------------------------------------------- Tue Sep 8 13:50:10 CDT 1998 Michael Jennings (mej) Updated the menubar files to take advantage of some of the newer background images in the collection. Also removed the pixmap menu from the "trans" theme since it's all ignored anyway. ---------------------------------------------------------------------- Tue Sep 8 15:14:00 CDT 1998 Michael Jennings (mej) Cleaned up the changes made by "sdh" (whoever that is). :-) If the unfocused color is not defined, it will revert to the scrollbar color, creating a way to "turn the option off," so to speak. It also makes sure that people who don't want to see the difference don't see it. Added autogen.sh for the tragically habitual. ;-) By the way, a few pointers for those messing with Eterm. For one, feature.h is created from feature.h.in, so changing feature.h does not affect the final distributed form of Eterm. I had to update src/feature.h.in to define CHANGE_SCROLLCOLOR_ON_FOCUS in order to see the changes take effect. For two, if you change the MAIN.in for Eterm, please change the other themes too. ---------------------------------------------------------------------- Tue Sep 8 17:16:34 CDT 1998 Michael Jennings (mej) Fixed transparency so that it works on any desktop, not just the root. Only works with E, so non-E users are S.O.L. (Sorry, that's life.) Thanks to raster for helping me with this. :-) ---------------------------------------------------------------------- Tue Sep 8 20:52:18 CDT 1998 Michael Jennings (mej) Added a new feature. This was requested by Nick Vargish . Basically, the new option --watch-bg (or config file toggle "watch_bg") tells Eterm to keep track of the mod time of the background pixmap. If the pixmap changes, Eterm updates and redraws the background. When coupled with an outside program, this can produce cycling and/or animated backgrounds. NOTE: This feature is highly experimental. It can crash Eterm if not done properly and carefully. In fact, at this point it's more of a demonstration/proof-of-concept than a feature. If there is enough interest, I will internalize more of it. ---------------------------------------------------------------------- Sun Sep 13 13:18:31 CDT 1998 Michael Jennings (mej) Fixed the scrollbar_floating option with transparency (again). sdh's changes on 9/5 screwed it up. The pixmap now shows through once again. And there was much rejoicing. ---------------------------------------------------------------------- Sun Sep 13 16:08:06 CDT 1998 Michael Jennings (mej) Added .cvsignore files. ---------------------------------------------------------------------- Mon Sep 14 10:11:41 CDT 1998 Michael Jennings (mej) Fixed a bug pointed out by Hans Engren which kept Eterm and Esetroot from working under certain conditions. ---------------------------------------------------------------------- Mon Sep 14 11:38:06 CDT 1998 Michael Jennings (mej) Final documentation cleanups before the release of 0.8.6. ---------------------------------------------------------------------- Mon Sep 14 12:04:43 CDT 1998 Michael Jennings (mej) Final compilation cleanups before release of 0.8.6. With this commit, CVS will contain the release version of 0.8.6. ---------------------------------------------------------------------- Mon Sep 14 12:58:32 CDT 1998 Michael Jennings (mej) Installed 0.8.7 into CVS. This release has some major changes in it. For one, Eterm now uses automake and libtool. The old libmej is now built as a shared library as well as a static one. Also, everything but the main() function has been moved into a library, libEterm. Since most people use lots of Eterms at once, creating a shared library will reduce the text segment of each Eterm significantly, saving quite a bit of memory per Eterm. ---------------------------------------------------------------------- Tue Sep 15 13:10:20 CDT 1998 Michael Jennings (mej) Fixed a bug compiling on Linux. (Damn Linux having dprintf!) ;-P ---------------------------------------------------------------------- Tue Sep 15 13:23:00 CDT 1998 Michael Jennings (mej) Fixed another bug on Linux, this time with linking Esetroot. ---------------------------------------------------------------------- Tue Sep 15 14:10:05 CDT 1998 Michael Jennings (mej) Removed MIN_ANCHOR_SIZE and added -a (--min-anchor-size) option. It is 0 by default so ppl won't complain about the scroll-up "bug". ---------------------------------------------------------------------- Tue Sep 15 15:03:57 CDT 1998 Michael Jennings (mej) Changed the pixmap setting code in Esetroot so it will (hopefully) work better. Geez, if everyone would just use Enlightenment, it would save me so much grief.... ;-) ---------------------------------------------------------------------- Tue Sep 15 16:00:26 CDT 1998 Michael Jennings (mej) Fixed the scaling problem in Esetroot pointed out by technoir thanks to some code swiped from Enlightenment. I also nuked the code that was killing Enlightenment when running Esetroot. (Not an E bug, just lame code.) =P ---------------------------------------------------------------------- Tue Sep 15 17:25:53 CDT 1998 Michael Jennings (mej) Choosing a pixmap in a transparent Eterm now works. I also renamed StrSep() to strsep() and changed configure.in to check for strsep(). That allowed me to remove some really annoying #ifdef's in command.c. ---------------------------------------------------------------------- Tue Sep 15 17:59:24 CDT 1998 Michael Jennings (mej) Added initial support for an escape code sequence set to mess with the various transparency options. It doesn't work yet, so don't bother trying to use it. Some of it will even crash Eterm at this point, but I'm going home anyway. :-) ---------------------------------------------------------------------- Wed Sep 16 11:42:16 CDT 1998 Michael Jennings (mej) Initial work on a patch for CygWin32 support. Also updated autogen.sh to create libtool stuff. ---------------------------------------------------------------------- Wed Sep 16 15:25:32 CDT 1998 Michael Jennings (mej) Fixed some misc. problems with the new escape sequences. Toggling transparency on and off now works (more or less). At least stuff won't crash. :-) Still some kinks to iron out, as always. ---------------------------------------------------------------------- Wed Sep 16 17:21:52 CDT 1998 Michael Jennings (mej) Fixed the escape sequence for Pixmap -> None (again). Also made the transparency toggle work for not having a pixmap. ---------------------------------------------------------------------- Wed Sep 16 18:20:47 CDT 1998 Michael Jennings (mej) Updated the default themes to include the Trans menu. ---------------------------------------------------------------------- Thu Sep 17 13:05:30 CDT 1998 Michael Jennings (mej) Hack for newer Linux versions in which the real uid must be nonzero to open the display. ---------------------------------------------------------------------- Thu Sep 17 13:50:50 CDT 1998 Michael Jennings (mej) Moved the #define for the Linux fix into config.h ---------------------------------------------------------------------- Thu Sep 17 16:59:17 CDT 1998 Michael Jennings (mej) This version has a working CygWin32 port! :-) Some minor hacking may still be required. Also included a test for something with transparency. ---------------------------------------------------------------------- Thu Sep 17 17:29:39 CDT 1998 Michael Jennings (mej) Changed code to use setres*id() functions if they are there (Linux and HP-UX only AFAIK). This is a vast security improvement for Linux. ---------------------------------------------------------------------- Thu Sep 17 17:49:19 CDT 1998 Michael Jennings (mej) Hopefully fixed privileges() for systems without setres*id() or saved uids. ---------------------------------------------------------------------- Thu Sep 17 17:58:17 CDT 1998 Michael Jennings (mej) More .cvsignore entries. ---------------------------------------------------------------------- Thu Sep 17 19:03:22 CDT 1998 Michael Jennings (mej) Changed the --watch-bg option to --watch-pixmap, which will hopefully make it less tempting for people to think it has something to do with transparency. Also added the --watch-desktop option which causes Eterm to monitor the desktop pixmap for changes and update accordingly. It doesn't cause flicker like it used to. ---------------------------------------------------------------------- Thu Sep 17 19:36:56 CDT 1998 Michael Jennings (mej) Some config file parser cleanups and additions to the trans theme. ---------------------------------------------------------------------- Thu Sep 17 20:03:57 CDT 1998 Michael Jennings (mej) Makefile and theme cleanups. ---------------------------------------------------------------------- Thu Sep 17 20:45:03 CDT 1998 Michael Jennings (mej) Fixed a major bug which caused Eterm to seg fault in trans theme. ---------------------------------------------------------------------- Thu Sep 17 20:56:33 CDT 1998 Michael Jennings (mej) Fixed another seg fault bug, this time with changing the pixmap via escape sequence. Doh! ---------------------------------------------------------------------- Thu Sep 17 21:03:34 CDT 1998 Michael Jennings (mej) Changed the scrollbar_floating attribute back on for the trans theme. Geez, is there no end to the stuff I've screwed up today?? =P ---------------------------------------------------------------------- Fri Sep 18 09:33:30 CDT 1998 Michael Jennings (mej) Added some checks to autogen.sh ---------------------------------------------------------------------- Fri Sep 18 11:18:59 CDT 1998 Michael Jennings (mej) Put in the #define IMLIB_TRANS, which will make Eterm use Imlib to do the transparency stuff. There's a problem with it, though, either in Imlib_create_image_from_drawable() or the way I'm calling it. For obvious reasons, it's off by default. ---------------------------------------------------------------------- Fri Sep 18 16:39:15 CDT 1998 Michael Jennings (mej) As expected, raster's imlib fix corrected the problem. Imlib transparency rendering now works as expected. It is still off by default since tinting and shading aren't in yet. Also in this commit is a "fix" to autogen.sh. I got complaints (well, actually one complaint) about autogen.sh not running configure, so now it does. IMHO, this behavior is incorrect, as the function of autogen should be to GENerate the AUTOconf/AUTOmake stuff, not run it. But since "all the other apps in cvs" run configure, for the sake of standardization and nothing more, I'll do it. ---------------------------------------------------------------------- Mon Sep 21 15:45:17 CDT 1998 Michael Jennings (mej) Fixed the aforementioned memory leak as well as some others. Dangling pointers were cut in half. :) Imlib transparency still needs to be worked on (read: sped up). One thing at a time though. I also fixed some duplicate rendering that was going on with pseudo-transparency. ---------------------------------------------------------------------- Mon Sep 21 16:10:46 CDT 1998 Michael Jennings (mej) Fixed the transparency toggle. ---------------------------------------------------------------------- Mon Sep 21 17:05:31 CDT 1998 Michael Jennings (mej) Fixed bug in Imlib transparency code. ---------------------------------------------------------------------- Mon Sep 21 19:46:44 CDT 1998 Michael Jennings (mej) Looks like Imlib-based transparency is working now. It only reads the desktop image once. After that, it uses the same desktop pixmap throughout. So startup is much slower, but through the rest of the run it's much faster. ---------------------------------------------------------------------- Mon Sep 21 20:53:44 CDT 1998 Michael Jennings (mej) Added --shade-pct. When Imlib-based transparency is enabled, you can specify a percentage by which to shade the background (0 being no shading, 100 being all black, not to mention rather pointless). ---------------------------------------------------------------------- Tue Sep 22 10:41:32 CDT 1998 Michael Jennings (mej) With Imlib-based transparency, Eterm now takes --tint as a numerical option. You specify a 24-bit RGB mask for colored tinting, such as "--tint 0xffafaf" for a deep red tint or "--tint 0xefefff" for a slight blue tint. ---------------------------------------------------------------------- Tue Sep 22 14:48:03 CDT 1998 Michael Jennings (mej) Fixed a bug in non-Imlib-based transparency. I also made preparations for letting non-Imlib-based transparency do shading percentages and tinting masks. Works on 8bpp, but since that's the only thing I can test, I'll wait until tomorrow and make sure the other pixel depths work before I go further. Imlib-based transparency is pretty slow, but there's more that can be done with it as far as RGB curves and stuff, so I plan to keep support for it in there. But I'd stick to using Xlib-based transparency for now. ---------------------------------------------------------------------- Tue Sep 22 18:28:49 CDT 1998 Michael Jennings (mej) Fixed the menubar code so that the menus aren't clipped by the window or screen edge. There's still one small problem, but I'll look at that later. :) ---------------------------------------------------------------------- Tue Sep 22 21:20:16 CDT 1998 Michael Jennings (mej) If root_pixmap() returns None, transparency gets turned off instead of rendering on a null pixmap. ---------------------------------------------------------------------- Wed Sep 23 10:26:01 CDT 1998 Michael Jennings (mej) Fixed that one last menubar bug. ---------------------------------------------------------------------- Wed Sep 23 11:46:44 CDT 1998 Michael Jennings (mej) Fixed a segfault in Esetroot. Also fixed --watch-desktop to work again (just for you, Nat). ;-) ---------------------------------------------------------------------- Wed Sep 23 19:07:11 CDT 1998 Michael Jennings (mej) Some bug fixes pertaining to root_pixmap() failing, transparency and background pixmaps coinciding, etc. Also changed the shell_expand() function in options.c so that \' within single quotes would insert a single quote. This differs from the shell behavior, but I prefer it. :) ---------------------------------------------------------------------- Thu Sep 24 17:14:29 CDT 1998 Michael Jennings (mej) Fixed a bug with tiling pixmaps in transparency code. (Didn't do it the way raster wanted it, but it works for now. I'll make it better later. Unless raster wants to patch it....) :-) Fixed a bug building without CHANGE_SCROLLCOLOR_ON_FOCUS support. Changed config file magic numbers to "Eterm-0.8". The latter two are thanks to Casey Zacek ---------------------------------------------------------------------- Fri Sep 25 22:32:30 CDT 1998 Michael Jennings (mej) Fixed a bug in Esetroot.c and the CUTCHARS default in src/feature.h.in ---------------------------------------------------------------------- Fri Sep 25 22:35:44 CDT 1998 Michael Jennings (mej) Missed another typo in Esetroot.c ---------------------------------------------------------------------- Sat Sep 26 21:11:48 EDT 1998 Geoff Harrison (mandrake) cleaned up a lot of stuff so it compiles a little cleaner. ---------------------------------------------------------------------- Tue Sep 29 14:04:39 CDT 1998 Michael Jennings (mej) Fixed utmp.c for OpenBSD thanks to Jason Ish ---------------------------------------------------------------------- Tue Sep 29 17:14:11 CDT 1998 Michael Jennings (mej) Removed the variables mandrake commented out, except for the one that was still needed. I uncommented that one and put it in #ifdef's to fix the compiler warnings. ---------------------------------------------------------------------- Thu Oct 8 15:24:10 CDT 1998 Michael Jennings (mej) Some transparency speed-ups (I hope). Still trying to figure out why I'm not getting ReparentNotify events. =P Also fixed the bug mandrake pointed out with transparency and the desktop dragbar under E. Also some fixes from Fritz Mueller for X servers which lie about pixel depth and for a bug in Eterm's magic number checker. ---------------------------------------------------------------------- Thu Oct 8 15:29:01 CDT 1998 Michael Jennings (mej) Correct order: Compile FIRST, commit SECOND. Doh!! =P ---------------------------------------------------------------------- Fri Oct 9 12:06:10 CDT 1998 Michael Jennings (mej) Added --with-debugging[=num] to support debugging levels up through 5. Also added stack trace dump if the OS supports it. In order of preference, the methods are: U_STACK_TRACE() (on HP-UX in libcl), pstack (on Solaris), gdb, dbx. ---------------------------------------------------------------------- Fri Oct 9 12:18:32 CDT 1998 Michael Jennings (mej) Oops, forgot to add libmej/snprintf.c to the repository. =P ---------------------------------------------------------------------- Sun Oct 11 17:35:18 CDT 1998 Michael Jennings (mej) Fixed autogen.sh so that VERSION was defined again. Apparently running autoheader before other stuff in autogen.sh is a Bad Thing. ---------------------------------------------------------------------- Tue Oct 13 17:38:30 CDT 1998 Michael Jennings (mej) If the desktop pixmap goes away (which happens if you're on another desktop for awhile), we'll just use the old one until it comes back. Also added Id strings to all C files. ---------------------------------------------------------------------- Tue Oct 13 18:18:03 CDT 1998 Michael Jennings (mej) Added Id strings to the Makefile.am files, src/feature.h.in, configure.in, and autogen.sh. Also added an entry to keep CVS quiet. ---------------------------------------------------------------------- Wed Oct 14 12:55:13 CDT 1998 Michael Jennings (mej) Fixed the bug with dragging a transparent Eterm across E's desktop dragbar. It reparents to the root window for a bit, but once you drop the window, it changes backdrops right on cue. Also works when moving Eterm windows between desktops. Note that this requires the use of the -W (--watch-desktop) option. ---------------------------------------------------------------------- Wed Oct 14 13:02:37 CDT 1998 Michael Jennings (mej) Nuked some leftover code from testing. (oops) ---------------------------------------------------------------------- Wed Oct 14 14:49:01 CDT 1998 Michael Jennings (mej) Added some debugging code to Esetroot.c and added the -x switch to turn on debugging. Hopefully this will help me track down the DISPLAY bug. ---------------------------------------------------------------------- Wed Oct 14 14:54:46 CDT 1998 Michael Jennings (mej) Blah. Forgot to "if (debug)" out a couple lines. =P ---------------------------------------------------------------------- Mon Oct 19 15:33:48 CDT 1998 Michael Jennings (mej) Fixed transparency stuff so it wouldn't take up mondo CPU time. Since we're getting events for other windows now, we need to make sure we only act on events that are ours. Also fixed scrollbar coloring in transparent mode. ---------------------------------------------------------------------- Mon Oct 19 17:03:47 CDT 1998 Michael Jennings (mej) New features courtesy a patch from James Antill as described here: \e[9n prints the pixmap filename in the title bar. In transparency mode, prints transparency info to the title bar. --home-on-input option which split off part of --home-on-echo Replaced "strncasecmp(buff, "string ", num)" with macro. ---------------------------------------------------------------------- Wed Oct 21 11:11:04 CDT 1998 Michael Jennings (mej) Fixed a bug with -W and -x together. ---------------------------------------------------------------------- Wed Oct 21 12:26:53 CDT 1998 Michael Jennings (mej) Final documentation cleanups for 0.8.7 release tomorrow. Barring bug fixes in the next 24 hours or so, this is 0.8.7 as it will be released sometime tomorrow morning. ---------------------------------------------------------------------- Thu Oct 22 23:38:47 PDT 1998 Manish Singh (yosh) * strings.c, strings.h: make everything consistent ---------------------------------------------------------------------- Mon Oct 26 22:26:47 CST 1998 Michael Jennings (mej) Major changes to the man page. Hopefully people who actually bother to read the man page will find it easier to mess with the MAIN file. ---------------------------------------------------------------------- Mon Nov 2 13:24:21 CST 1998 Michael Jennings (mej) Lots of changes here. This is the first commit of 0.8.8. The new features are: --shade now takes a percentage of shading. 0% is no shading, 100% is all black, and anything in between goes. Percent sign optional. --tint now takes a 24-bit hexadecimal mask. 0xffffff is no tinting, 0x000000 is black, and anything in between goes. It will also take decimal or octal if you *really* have the urge, but hex is the most readable. -V (--menubar-move) now allows dragging the menubar to move the window. It is on by default if the -x (--borderless) option is used, and off by default otherwise. The transparency/shading/tinting escape sequences now work. FORCE_BACKSPACE and FORCE_DELETE have been fixed. KS_DELETE (the strings associated with pressing the Delete key) is now set to ^? by default. -N (--anim) options for background pixmap cycling. Syntax is " ..." where is the delay in seconds between updates and is either "0 0 " or "-1 -1 " or "". This feature should still be considered beta. --with-cc argument to configure for forcing a build with an alternative compiler (for those who have pgcc but want to use gcc, etc.). ---------------------------------------------------------------------- Mon Nov 2 16:11:37 CST 1998 Michael Jennings (mej) Feh. Got rid of the warning in command.c. Chalk that one up to laziness on my part. =P ---------------------------------------------------------------------- Tue Nov 3 19:56:15 CST 1998 Michael Jennings (mej) Added an optional boolean parameter to ESC ] 6 ; 0 escape sequence. Also added code to clear the shading/tinting when loading a new pixmap. This will be an option soon, but not tonight. ---------------------------------------------------------------------- Thu Nov 5 19:17:58 CST 1998 Michael Jennings (mej) Added support for the old color strings to the escape sequence handler for tinting. They won't work on the command line, though. xerror_handler() will no longer exit Eterm. We'll see how that goes. New --disable-stack-trace option to configure to disable stack tracing on abnormal termination. ---------------------------------------------------------------------- Fri Nov 6 09:26:38 CST 1998 Michael Jennings (mej) Shading and tinting were broken for 2 days, and nobody told me. Feh. ---------------------------------------------------------------------- Mon Nov 9 15:38:11 CST 1998 Michael Jennings (mej) No, I said *don't* exit on X errors. And I meant it. Really. ---------------------------------------------------------------------- Mon Nov 9 20:00:08 CST 1998 Michael Jennings (mej) Added src/Eterm.xpm as the default Eterm icon pixmap. Added the -I/--icon parameters to specify an alternate icon pixmap. The attribute "icon " is valid in the pixmaps context of the config file. Note that -I used to be --print-pipe. Not any more. ---------------------------------------------------------------------- Tue Nov 10 11:47:42 CST 1998 Michael Jennings (mej) Fixed a bug when no background image was specified. Dunno how on earth that happened.... When Eterm gets the escape sequence to change the title, it will also change the icon name. Not compliant with other terms, but I don't care. What mandrake wants, mandrake gets. ;-) Besides, sometimes you have to violate standards in favor of useability. This is one of those times. When an icon is specified, use XGetIconSizes() to pick a size for it. When using the default, it's 64x64. The WM can cope. :-) No, mandrake, it's still not ICCCM, but I'm working on it. :-) And no, raster, it doesn't snapshot the window. I'll leave that one to you to write. You can thank me later. >:) ---------------------------------------------------------------------- Tue Nov 10 20:11:54 CST 1998 Michael Jennings (mej) Now the hosts in the chooser theme change the title bar instead of the menubar title, thanks to a new extended menubar function called "apptitle:". See themes/chooser/chooser.menu for an example of it in action. Kterm (Kanji Eterm) now supports multi-byte fonts in the menubar, thanks to Sung-Hyun Nam . ---------------------------------------------------------------------- Wed Nov 11 12:18:00 CST 1998 Michael Jennings (mej) Wheee. Minor bug fix. Also redid the cvs_ident string declarations to make egcs happy. =P ---------------------------------------------------------------------- Thu Nov 12 16:33:17 KST 1998 Sung-Hyun Nam (namsh) KANJI: Minor memory leak fix. Change XLOCALE stuff. ---------------------------------------------------------------------- Thu Nov 12 03:10:50 EST 1998 Gerald Britton (gbritton) Esetroot.c: Fixed an X server memory leak. ---------------------------------------------------------------------- Thu Nov 12 08:54:58 CST 1998 Michael Jennings (mej) Reverted Gerald's change. Been there, done that. It kills E. Sorry, but if the X server doesn't work right, that's not my problem. I'm not going to kill E over it. Tough break. ---------------------------------------------------------------------- Mon Nov 16 19:31:29 CST 1998 Michael Jennings (mej) Finally got around to doing that icon window thing to make mandrake and ICCCM (the next-to-worst acronym in history, second only to i18n) happy. Are we there yet? ---------------------------------------------------------------------- Tue Nov 17 11:17:57 CST 1998 Michael Jennings (mej) Fixes for Digital UNIX from . These were all "Stupid KainX" bugs that I didn't catch because GNU's cpp is more forgiving than most vendors' cpp's. ---------------------------------------------------------------------- Tue Nov 24 13:39:34 CST 1998 Michael Jennings (mej) This is the Correct (tm) fix to the memory leak pointed out by Gerald. He and I had a pow-wow of sorts via e-mail with Nat and raster, and this is the solution that wasn't crapped on by anyone. :-) Just to document what we came up with.... Esetroot sets the _XROOTPMAP_ID property as always, but now it sets a companion property as well, ESETROOT_PMAP_ID. Both are set to the same pixmap ID. When Esetroot runs, it checks to see if _XROOTPMAP_ID == ESETROOT_PMAP_ID, and if so, it knows that it set the pixmap itself and can safely do an XKillClient() on it. If they are not equal, calling XKillClient() would kill the application which did set it, most likely a window manager like Enlightenment or the patched versions of AfterStep or WindowMaker. No window manager code changes should be necessary. If, however, a person were to write a "helper app" that sets the background (like Esetroot does), further memory leaks could be avoided by having that program set/change ESETROOT_PMAP_ID. ---------------------------------------------------------------------- Tue Nov 24 16:26:22 CST 1998 Michael Jennings (mej) Added -center (-c) option to Esetroot for centering the pixmap. Most of these changes are from a patch submitted by Ralph Giles . ---------------------------------------------------------------------- Tue Nov 24 20:05:05 CST 1998 Michael Jennings (mej) Some fairly useless stuff that I really don't even want to document for fear it might actually get used, and people will expect more out of it than they should. If you really wanna know, diff it. :) ---------------------------------------------------------------------- Tue Nov 24 21:48:24 CST 1998 Michael Jennings (mej) New feature. --pause will make Eterm wait for a keypress when the child process exits. Useful most often in combination with -e. Also removed all traces of --watch-pixmap. Good riddance. -N (--anim) is much smoother and less bug-prone. ---------------------------------------------------------------------- Wed Nov 25 11:47:05 CST 1998 Michael Jennings (mej) Some bug fixes in the ongoing saga of KainX vs. The Solaris 7 64-Bit Kernel. ---------------------------------------------------------------------- Fri Dec 4 16:11:03 CST 1998 Michael Jennings (mej) Ok, this should make Eterm compliant with the GNU FHS. I also did a LOT of futzing around with configure.in, so if I broke something in doing either of these things, please let me know. ---------------------------------------------------------------------- Fri Dec 4 19:45:39 CST 1998 Michael Jennings (mej) Feh. Thanks Pavlov. :-) ---------------------------------------------------------------------- Mon Dec 7 18:04:09 CST 1998 Michael Jennings (mej) FreeBSD fixes, fixes for building without Imlib support (oops), and fixes for the RPATH problem with Debian and autofs. Thanks to Murray Stokely for continued help on the FreeBSD front. ---------------------------------------------------------------------- Tue Dec 8 12:10:55 CST 1998 Michael Jennings (mej) Another of the Eterm-specific escape sequences. This one is \e]6;3\a which will force Eterm to update the pseudo-transparent background. To those who've complained about -W making things too slow...Merry Christmas. :-) ---------------------------------------------------------------------- Tue Dec 8 16:55:44 CST 1998 Michael Jennings (mej) Another oopsie from the December 4th changes. ---------------------------------------------------------------------- Fri Dec 18 13:44:04 CST 1998 Michael Jennings (mej) The long awaited selection options. There are two new options here. The first, --xterm-select, duplicates xterm's treatment of cutchars (which is broken, IMHO, but some people want it). The second, --select-line, causes Eterm to select the whole line on a triple-click. The default is now to select only to the end of the line plus the current word. The corresponding config file attributes, xterm_select and select_line, both go in the toggles context. ---------------------------------------------------------------------- Mon Dec 28 18:20:01 CST 1998 Michael Jennings (mej) From the Trying-to-Please-All-the-People-All-the-Time department... %random() seeds based on process ID *and* time(NULL) now. Feh. ---------------------------------------------------------------------- Tue Dec 29 16:52:34 CST 1998 Michael Jennings (mej) A new Eterm feature. This one is called "Viewport Mode." It is toggled on by the --viewport-mode parameter or the viewport_mode attribute in the toggles section. The basic concept is that the background of the Eterm window becomes a viewport to a background image. Kinda like pseudo-transparency, but not related to the desktop in any way. As you move the Eterm window, the background moves too. Scaled pixmaps are scaled up to the size of the desktop, and a portion shows through as the background. Okay, so it's kinda hard to describe. :-) Just try it and see. I recommend getting several of them open at once using the same scaled image. The effect is interesting. :-) Shading and tinting don't yet work with it, but I'm getting there. At least it won't crash your X server, like it did mine earlier. :-) Credit to es9 on IRC for the idea. ---------------------------------------------------------------------- Tue Dec 29 17:12:57 CST 1998 Michael Jennings (mej) And Tynian said, "Let there be Debian Stuff." And there was Debian Stuff. And it was good. ---------------------------------------------------------------------- Tue Dec 29 17:51:21 CST 1998 Michael Jennings (mej) Viewport + shading/tinting escape sequences is fixed. I also fixed a bug with shading/tinting. ---------------------------------------------------------------------- Wed Dec 30 12:07:18 CST 1998 Michael Jennings (mej) Added an Eterm.spec.in file as submitted by techn0ir, with a couple minor changes. I know nothing about this file, so I have no clue how well it will work, if at all. configure.in now generates Eterm.spec from Eterm.spec.in to do automatic version updating. Minor changes to the Description section in the Debian stuff. AUTHOR'S NOTE: None of the RPM/DEB information contained herein was authored by me. I have no idea whether or not it will work; I rely on the package maintainers for that. Though the authors recognize the utility and necessity of binary distributions for the various flavors of UNIX, we cannot in good conscious support any binary packages ourselves, for the simple reason that we don't know them all, and thus cannot support them all. Out of fairness, if we can't support them all, we shouldn't support any of them. Furthermore, binary distributions (especially when packaged by people other than the OS distributors) tend to be quirky, and we cannot support all these quirks ourselves. So let me make it clear once again that any RPM's and DEB's of Eterm that may exist are supported ONLY by their respective maintainers, NOT by the authors of Eterm. Any problems which arise with these packaged distributions should be directed to the package maintainer. With that said, we would also like to extend our thanks to the various package maintainers, with special mention of Brian Almeida and Sean Perry , for their continued support and assistance with packaged Eterm distributions. ---------------------------------------------------------------------- Thu Dec 31 16:15:09 CST 1998 Michael Jennings (mej) www.eterm.org is now alive and kicking. All pointers to www.tcserv.com have been changed to point to the new URL. ---------------------------------------------------------------------- Mon Jan 4 13:32:32 CST 1999 Michael Jennings (mej) Hopefully fixed a bug with backquote commands that don't return any output. Hopefully fixed a bug with shell_expand() being called with a NULL. In the process, I added some ASSERT() macros which may or may not be portable. If they are, I will replace all assert() calls with them. If not, I'll nuke the one I put in. :) There seems to be a bug in main_loop() at command.c:4668 that has been uncovered by one person's mutt. I added some debugging stuff to help track it down. ---------------------------------------------------------------------- Mon Jan 4 14:31:06 CST 1999 Michael Jennings (mej) Stupid KainX error #13,471.8: Don't use macros you don't have. ---------------------------------------------------------------------- Mon Jan 4 16:30:54 CST 1999 Michael Jennings (mej) Work-around for what is either a bug or unexpected behavior in Enlightenment. Other WM's leave coordinate setting for negative geometries up to the app. Enlightenment seems to do it itself. So if Eterm is running under Enlightenment, it will not do the offsetting itself. I'm curious to know if this is a bug in E or in everybody else. :) ---------------------------------------------------------------------- Fri Jan 8 14:40:36 CST 1999 Michael Jennings (mej) Documentation updates for 0.8.8. Wheeeeee. :) ---------------------------------------------------------------------- Mon Jan 11 14:30:02 CST 1999 Michael Jennings (mej) Use Imlib_best_color_match() for all colors we allocate so that we coexist peacefully with Imlib, E, Netscape, et al. This should make raster's day a little brighter.... =) ---------------------------------------------------------------------- Mon Jan 11 16:12:35 CST 1999 Michael Jennings (mej) Fixed typos in MAIN.in files. ---------------------------------------------------------------------- Mon Jan 11 16:34:41 CST 1999 Michael Jennings (mej) Long-awaited transparency improvement for tiled desktops. Let's hope it doesn't break anything. ---------------------------------------------------------------------- Tue Jan 12 13:17:41 CST 1999 Michael Jennings (mej) Integrate random background functionality into Eterm distribution. ---------------------------------------------------------------------- Thu Jan 21 10:49:02 CST 1999 Michael Jennings (mej) Add some more verbose output when color allocation fails. ---------------------------------------------------------------------- Thu Jan 21 10:55:02 CST 1999 Michael Jennings (mej) Yes, Virginia, there is a 0.8.9. Back to adding features. Ugh. =) ---------------------------------------------------------------------- Thu Jan 21 14:17:15 CST 1999 Michael Jennings (mej) More for 0.8.9.... ---------------------------------------------------------------------- Thu Jan 21 15:15:52 CST 1999 Michael Jennings (mej) Mouse wheel support. Does it work? I dunno, since I don't have a wheeled mouse and can't test it, but it should. ---------------------------------------------------------------------- Thu Jan 21 17:59:47 CST 1999 Michael Jennings (mej) New --version option to display compile-time #define's. Also switched --help output to stdout instead of stderr (people were complaining about not being able to grep it...apparently "Eterm --help 2>&1 | grep foo" was too much work). ---------------------------------------------------------------------- Thu Jan 28 11:58:26 CST 1999 Michael Jennings (mej) Fixed typos in MAIN files. Also, there's code in command.c to attempt to set the desktop on which to open in Enlightenment. It's commented out because it doesn't work and I'm not sure why. =} ---------------------------------------------------------------------- Thu Jan 28 12:29:20 CST 1999 Michael Jennings (mej) An attempt at a fix, or at least to help find the bug. ---------------------------------------------------------------------- Tue Feb 2 15:10:43 CST 1999 Michael Jennings (mej) Tinting and shading speedups (about 30%) thanks to a patch from Michael Pearson . ---------------------------------------------------------------------- Tue Feb 2 23:27:20 CST 1999 Michael Jennings (mej) You want scrollbars? We've got scrollbars. :) New --scrollbar-type option. Takes a string parameter, one of "xterm", "next", or "motif". I'm sure we can all guess what it does. :-) More work on this tomorrow, but I need sleep. ---------------------------------------------------------------------- Wed Feb 3 10:43:45 CST 1999 Michael Jennings (mej) Fixed a bug with tiled desktop pixmaps and shading/tinting. Thanks to t'Sade and Michael Pearson for helping me track this down. ---------------------------------------------------------------------- Wed Feb 3 12:26:20 CST 1999 Michael Jennings (mej) The resize-to-crash bug has *finally* been squashed once and for all, thanks to a patch from Sebastien van Klinkenberg . Thanks Sebastien!! ---------------------------------------------------------------------- Wed Feb 3 14:55:26 CST 1999 Michael Jennings (mej) scrollbar_type now works in the attributes context of the MAIN file. New option --scrollbar-width (and scrollbar_width in the attributes context in the MAIN file). Takes a positive integer and specifies scrollbar width (in pixels). Always update the background on startup. This will help in cases of override_redirect (-x), no window manager, or a buggy window manager (reported with Window Maker 0.50.2). ---------------------------------------------------------------------- Mon Feb 8 12:16:38 CST 1999 Michael Jennings (mej) Fix for a tiny hiccup. ---------------------------------------------------------------------- Thu Feb 11 19:39:00 CST 1999 Michael Jennings (mej) Ctrl-Click behavior has changed. Ctrl+Button1 now does the old raise- and-steal-focus thing. Ctrl+Button2 toggles the scrollbar. Ctrl+ Button3 toggles the menubar. These behaviors can all be turned off in src/feature.h but are on by default. ---------------------------------------------------------------------- Thu Feb 11 22:32:15 CST 1999 Michael Jennings (mej) Added the --menubar boolean option to toggle whether or not the menubar is visible on startup. There's also the "menubar" attribute in the toggles section, or you can put a boolean value after the filename for the "menu" attribute (e.g., "menu Eterm.menu off"). The visibility of the menubar can subsequently be toggled by the escape sequence or by Ctrl+Button3 on the term window. ---------------------------------------------------------------------- Thu Feb 11 23:34:10 CST 1999 Michael Jennings (mej) Added support for popup scrollbars (i.e., the scrollbar goes away when Eterm loses focus, and comes back when Eterm regains focus). This is the --scrollbar-popup option or the "scrollbar_popup" attribute in the toggles context. Idea courtesy Rahsheen Porter . Thanks! Also, thanks to OctobrX for the menubar ideas above. ---------------------------------------------------------------------- Mon Feb 15 19:38:54 CST 1999 Michael Jennings (mej) New -D (--desktop) option (and "desktop" attribute in the "attributes" context) to choose what desktop to load on. NOTE: This requires a GNOME-compliant window manager which supports the _WIN_WORKSPACE property as defined by http://www.gnome.org/devel/gnomewm/. No, I will NOT use the Eterm*desktop Xrdb resource. Read the FAQ for info on why I refuse to use Xrdb in any way, shape, or form. I would rather wait for other WM's to reach the 21st century. (Enlightenment, of course, is already compliant.) Also changed some short options for stuff that is never used, namely the -D, -U, -B, and -A options for the pixmapped scrollbar that we don't even have. =) -D became --desktop, and -B became --scrollbar-type. Muchas gracias to raster for his assistance with the desktop thing. ---------------------------------------------------------------------- Mon Feb 15 20:00:59 CST 1999 Michael Jennings (mej) Work around a nasty Solaris X bug in _XFlushInt(), called by XUnmapWindow(). If we're not unmapped after 3 seconds, call _exit(). If _exit() isn't around, use abort(). ---------------------------------------------------------------------- Tue Feb 16 11:21:59 CST 1999 Michael Jennings (mej) Implemented scrollbar type and width changing via an escape sequence, namely "\e]6;10;;\a". is either "xterm", "next", "motif", or blank. is a positive integer of reasonable value or blank. Leaving both values blank does nothing. ---------------------------------------------------------------------- Wed Feb 17 18:54:44 CST 1999 Michael Jennings (mej) Two whole days' worth of work here. I added bunches of escape sequences. You can now set, configure, or toggle just about every part of Eterm via escape sequences, and have the changes live-updated. Look at src/command.c starting at line 6136 for the individual sequences. There's oodles. You can change scrollbar type, width, and location. You can change screens. You can change selection behavior. You can even move Eterm to a new desktop. All via escape sequences. Along with this, I redid all the *.menu files. They are now much more organized. They also have support for all (if not *all*, nearly so) the escape-code-configurable aspects of Eterm. Look for a GUI theme generator/configuration applet (gtk+-based) in the near (?) future that will take advantage of this. =) Also, no more trying to load the CVS directory as a background pixmap. =} ---------------------------------------------------------------------- Thu Feb 18 10:26:56 CST 1999 Michael Jennings (mej) Patch from John Ellson . Render style was not getting properly reset for line wrapping. His patched fixed extra underscores...I also fixed the other stuff, including rev. video. Patch from Ryan Murray to add an rpath to Esetroot when linking. Thanks guys! ---------------------------------------------------------------------- Thu Feb 18 14:06:05 CST 1999 Michael Jennings (mej) Dammit. I hate stupid bugs, and this is a big one. Re-enable our own system() call, this time one that works. If you setuid Eterm, you NEED this fix ASAP. 'Nuff said. ---------------------------------------------------------------------- Tue Mar 2 14:31:03 CST 1999 Michael Jennings (mej) Applied and corrected patch from Alexander Savelyev for supporting DESTDIR and for utmp on BSDI. Also fixed Esetroot for systems where root visual != highest visual. Thanks to Tomas Ogren for the patch. ---------------------------------------------------------------------- Tue Mar 2 17:27:22 CST 1999 Michael Jennings (mej) The -C (--console) switch works again, at least on Solaris and Linux. ---------------------------------------------------------------------- Wed Mar 3 09:44:21 CST 1999 Michael Jennings (mej) Debian info updates from Brian M. Almeida ---------------------------------------------------------------------- Wed Mar 3 17:58:55 CST 1999 Michael Jennings (mej) Reformatted code using new script, aptly-named "reformat-code," which calls indent. Now if only there were a few more indent options, like one to keep the brace and the end of the function definition, and one to force a blank line *before* the declaration section. Also lots of utmp.c cleanups, including one that should fix the dying on glibc 2.1. ---------------------------------------------------------------------- Wed Mar 3 18:04:49 CST 1999 Michael Jennings (mej) Oops, forgot some Debian files. ---------------------------------------------------------------------- Thu Mar 11 14:30:53 CST 1999 Michael Jennings (mej) Changed the default colors from names to rgb values (failsafe), and modified almost all of them to match colors Netscape uses. ---------------------------------------------------------------------- Thu Mar 11 15:51:05 CST 1999 Michael Jennings (mej) Remove move-themes.in from distribution list. ---------------------------------------------------------------------- Sun Mar 14 12:32:36 CST 1999 Michael Jennings (mej) By popular demand, the bright blue scrollbar/menubar scheme has been nixed in favor of a red/gray scheme that blends with the ShinyMetal Enlightenment theme. I originally chose the blue to match the window border color in my StarTrek theme for E 0.10+. I guess it was time for a change.... =) ---------------------------------------------------------------------- Tue Mar 16 09:21:53 CST 1999 Michael Jennings (mej) Checkpoint commit. We're on our way to making debugging output a dual compile- and run-time option. ---------------------------------------------------------------------- Tue Mar 16 17:34:35 CST 1999 Michael Jennings (mej) . in config search path can cause nasty, hard-to-find weirdness. So I nixed it. I apologize in advance if you used it, but if you did, you probably have bigger problems. ---------------------------------------------------------------------- Wed Mar 17 16:59:25 CST 1999 Michael Jennings (mej) Completely redid all the debugging stuff to facilitate the creation of a run-time option for it. The option isn't there yet; that comes next. ---------------------------------------------------------------------- Thu Mar 18 14:24:48 CST 1999 Michael Jennings (mej) Finally fixed a long-standing font alignment problem in the menubar when using nexus, shine, and similar fonts with 0 descent. I then nixed the lame hackish work-around I put in awhile back so I could ignore it for a bit longer. =) ---------------------------------------------------------------------- Thu Mar 18 18:05:30 CST 1999 Michael Jennings (mej) Fixed another long-standing problem, this time with the placement and appearance of the menubar arrows, especially when --border-width is used. ---------------------------------------------------------------------- Fri Mar 19 12:15:35 CST 1999 Michael Jennings (mej) New --debug option to vary the level of debugging output shown. Valid values are integers 0 through DEBUG, where DEBUG is the value you set when calling ./configure with --with-debugging=N. ---------------------------------------------------------------------- Fri Mar 19 17:34:52 CST 1999 Michael Jennings (mej) Implemented two new escape codes. One is a simple "exit" feature than can be used from the menubar. The other is a feature to save the current settings to a given file. I added these two sequences to the menubar files. The sequence for saving settings defaults to saving to the current theme, which is the behavior most users would expect. WARNING: This saves *everything*, so if you have randomized backgrounds, tints, etc., DON'T use this! They will go away! I haven't tested the save thing very thoroughly, so I'm not sure *all* the current settings save properly.... =) ---------------------------------------------------------------------- Fri Mar 19 18:20:28 CST 1999 Michael Jennings (mej) After further consideration, added a routine to create a backup of the current MAIN file before overwriting it. The backup is named with a timestamp, as in "MAIN.YYYYMMDD.HHMMSS", so as not to conflict with any other backup files. ---------------------------------------------------------------------- Mon Mar 22 10:23:58 CST 1999 Michael Jennings (mej) Changed configure.in so that the default level of debugging support compiled in is 4 (the maximum level that does not sync X events). The run-time default is still 0, however. ---------------------------------------------------------------------- Tue Mar 23 18:16:40 CST 1999 Michael Jennings (mej) Whoops. Inverted one set of arrows too many. =) ---------------------------------------------------------------------- Tue Mar 23 18:50:36 CST 1999 Michael Jennings (mej) Added support in the options macros for specifying a variable to which the bitmask should be applied. (The variable Options had always been used before.) This will enable the manipulation of multiple bitmask variables via command-line options with no additional code needed. ---------------------------------------------------------------------- Tue Mar 23 19:43:38 CST 1999 Michael Jennings (mej) Added long-awaited options to set the keypad and cursor key modes on startup. --app-keypad (or the "app_keypad" boolean attribute in the keyboard context) will start in "application keypad" mode. NOTE: The new default is to start in normal (numeric) keypad mode. --app-cursor (or the "app_cursor" boolean attribute in the keyboard context) will start in "application cursor key" mode. The default continues to be normal cursor key mode. ---------------------------------------------------------------------- Tue Mar 23 21:28:57 CST 1999 Michael Jennings (mej) Nuked several bugs relating to printpipe. Also enabled it by default. Removed the forceable addition of the '-g' flag to CFLAGS if debugging is enabled. ---------------------------------------------------------------------- Fri Mar 26 17:54:03 CST 1999 Michael Jennings (mej) Lots of code cleanups here, plus a bugfix for menubars. I might have done other stuff too, I forget.... =) ---------------------------------------------------------------------- Fri Mar 26 19:07:15 CST 1999 Michael Jennings (mej) Added another little helper app. This one is doc/Etbg, written by Brian McFee in a fit of boredom. Thanks keeb! ---------------------------------------------------------------------- Fri Mar 26 22:08:45 CST 1999 Michael Jennings (mej) The rewrite of the Eterm Technical Reference. It's HTML now, and is (at least to me) much more readable. I've still got lots to add, but it's fleshed out enough to replace the old one now. ---------------------------------------------------------------------- Mon Mar 29 11:25:24 CST 1999 Michael Jennings (mej) Oops. Forgot to add the Kanji stuff to main.h. Thanks to Sung-Hyun Nam for catching this. ---------------------------------------------------------------------- Mon Mar 29 19:37:38 CST 1999 Michael Jennings (mej) This is an attempt to fix X locale support, which was broken on Linux (XFree86?). Please (!) let me know if I broke stuff, especially you who use KANJI. ---------------------------------------------------------------------- Mon Mar 29 20:19:29 CST 1999 Michael Jennings (mej) Pre-emptive Kanji fix. ---------------------------------------------------------------------- Tue Mar 30 13:07:05 CST 1999 Michael Jennings (mej) More robust font set for XIC. Should be able to handle any charset. ---------------------------------------------------------------------- Tue Mar 30 17:20:50 CST 1999 Michael Jennings (mej) Technical reference now includes complete documentation for all the Eterm-specific escape sequences. ---------------------------------------------------------------------- Wed Mar 31 18:47:18 CST 1999 Michael Jennings (mej) Added support for the "ESC ] {l|I|L} string ESC \" sequences, a la dtterm. 'l' sets the title, 'I' sets the icon pixmap filename (or the default Eterm icon if "string" is missing), and 'L' sets the icon name. Thanks to Mark Bowyer for pointing these out. Look for more dtterm sequence support coming soon. ---------------------------------------------------------------------- Wed Mar 31 19:56:07 CST 1999 Michael Jennings (mej) More work on the Technical Reference. ---------------------------------------------------------------------- Thu Apr 1 10:25:35 CST 1999 Michael Jennings (mej) At this point, the initial revision of the Eterm Technical Reference is complete. I'm looking for comments, suggestions, errata, and so forth. :-) ---------------------------------------------------------------------- Thu Apr 1 10:37:57 CST 1999 Michael Jennings (mej) Some rearranging. Now doc/ just contains documentation. The utility programs have been put in utils/. ---------------------------------------------------------------------- Thu Apr 1 12:06:15 CST 1999 Michael Jennings (mej) New, improved color grid script, Etcolors.sh. ---------------------------------------------------------------------- Thu Apr 1 12:40:15 CST 1999 Michael Jennings (mej) New, improved menu utility, Etmenu.sh. Modified utils/Makefile.am to install these new utilities. ---------------------------------------------------------------------- Thu Apr 1 17:48:47 CST 1999 Michael Jennings (mej) Doh! Man page booboo. Thanks to Jim Niemira for pointing this out to me. ---------------------------------------------------------------------- Mon Apr 5 14:18:09 CDT 1999 Michael Jennings (mej) Support several dtterm escape sequences for window operations. Documentation is forthcoming. ---------------------------------------------------------------------- Mon Apr 5 14:41:11 CDT 1999 Michael Jennings (mej) Added a rule to build an HTML-ized man page in doc/. ---------------------------------------------------------------------- Mon Apr 5 14:55:41 CDT 1999 Michael Jennings (mej) Gah! I'd love to know who the idiot was who decided to put height before width.... >:P ---------------------------------------------------------------------- Mon Apr 5 15:15:42 CDT 1999 Michael Jennings (mej) Documentation for new window ops sequences: ESC [ n [ ; n [ ... ] ] t n == 1: Un-iconify window n == 2: Iconify window n == 3: Move window. Must by followed by ;x;y n == 4: Resize window. Must by followed by ;height;width n == 5: Raise window n == 6: Lower window n == 7: Refresh window n == 8: Resize text area. Must by followed by ;height;width, with height and width given in characters. n == 13: Report window position n == 14: Report window size in pixels n == 18: Report text area size in characters n == 20: Report icon name n == 21: Report window title ---------------------------------------------------------------------- Tue Apr 6 13:33:18 CDT 1999 Michael Jennings (mej) Added support for UNIX 98 pty's under glibc 2.1, thanks to a patch from Mikolaj Habryn . Also added a new option to configure. Use --without-sense-of-humor to disable the little libKenny joke (for the humorously-challenged). Credit to Paula Bailey for the idea. And this :-P is me sticking my tongue out at the people who made it necessary! :-) ---------------------------------------------------------------------- Wed Apr 7 10:14:00 CDT 1999 Michael Jennings (mej) Fixed several bugs related to the %include directive and magic number version checking in the config file parser, thanks to a patch from Boris Badenov . Also fixed a couple oversights in Makefile.am in doc/ and utils/, pointed out by Sung-Hyun Nam . Thanks guys! :-) ---------------------------------------------------------------------- Thu Apr 8 13:01:02 CDT 1999 Michael Jennings (mej) Trying to get pty code in order. There are some problems with glibc 2.1 systems still. I totally rearranged the pty-finding code, so I NEED lots of testing on this stuff. Let me know if I broke/fixed anything. ---------------------------------------------------------------------- Thu Apr 8 14:43:42 CDT 1999 Michael Jennings (mej) Still trying to get that pty code in order.... :( ---------------------------------------------------------------------- Thu Apr 8 15:34:31 CDT 1999 Michael Jennings (mej) And again. ---------------------------------------------------------------------- Thu Apr 8 16:21:21 CDT 1999 Michael Jennings (mej) Now that the pty problems seem to be fixed (at least on Solaris and Linux), let's be a little more robust with failures. ---------------------------------------------------------------------- Thu Apr 8 18:11:46 CDT 1999 Michael Jennings (mej) Fixed some assorted bugs and problems that occur when pixmaps.list is not present. Also fixed a bug for output files that cannot be created. ---------------------------------------------------------------------- Thu Apr 15 16:01:03 CDT 1999 Michael Jennings (mej) The borderless Eterm options will now make Eterm set the MWM hints so that the window manager will render it borderless. (If the WM does not support the MWM hints, however, Eterm will fall back on the traditional override_redirect behavior.) I've only tested this on Enlightenment, but it should work for other window managers too. ---------------------------------------------------------------------- Thu Apr 15 17:42:35 CDT 1999 Michael Jennings (mej) Added the type of each variable to the help output, as well as some additional info on how to use the command-line options. You're welcome, llane. :-) ---------------------------------------------------------------------- Fri Apr 16 18:03:26 CDT 1999 Michael Jennings (mej) Added a -fit option to Esetroot which scales the image to fit the screen while maintaining its true proportion. Thanks to Remo Strotkamp for the idea and some code. ---------------------------------------------------------------------- Mon Apr 19 13:55:09 CDT 1999 Michael Jennings (mej) Two bugfix patches. One is for compiling on SGI IRIX, thanks to Kimball Thurston . The other was a fix for the recently-discovered segfault problem. Thanks yet again to Sebastien van Klinkenberg . :-) ---------------------------------------------------------------------- Mon Apr 19 19:42:54 CDT 1999 Michael Jennings (mej) Two more bugfixes. Eterm now installs its X error handler earlier to catch more errors without dying. Also, another patch from Sebastien van Klinkenberg for the segfault bug. ---------------------------------------------------------------------- Tue Apr 20 15:20:00 CDT 1999 Michael Jennings (mej) I think this fixes all remaining menu flickering problems. I also removed a goto while I was at it, because goto's are evil. ---------------------------------------------------------------------- Tue Apr 20 16:05:50 CDT 1999 Michael Jennings (mej) Added a new option. --select-trailing-spaces (or the attribute select_trailing_spaces in the toggles context of the config file) causes Eterm to keep spaces at the end of a line as part of the selection. The new default behavior is to remove these trailing spaces. If you select text in mutt (or other SLang programs), you will thank me. Also did some options-related cleanups in preparation for release. ---------------------------------------------------------------------- Wed Apr 21 09:58:36 CDT 1999 Michael Jennings (mej) This should take care of the man page for the release of 0.8.9. ---------------------------------------------------------------------- Wed Apr 21 10:20:33 CDT 1999 Michael Jennings (mej) Added support, documentation, and .menu file entries for an escape code to toggle the select-trailing-spaces feature. ---------------------------------------------------------------------- Fri Apr 23 15:55:18 CDT 1999 Michael Jennings (mej) Support the omission of the operator in an xterm escape sequence. Adding support for the dtterm stuff broke this. ---------------------------------------------------------------------- Mon Apr 26 13:26:20 CDT 1999 Michael Jennings (mej) Initial checkin of Eterm 0.8.10. Please note the following WARNING which has been added to configure.in: This version of Eterm is highly experimental. All kinds of things may be broken; in fact, it may not work at all! DO NOT install this version of Eterm as your general-use version. Even the developers aren't doing that! You have been warned! If you run this version, you'll notice that the menubar and scrollbar have become pixmapped. I've still got *lots* of stuff to clean up, but it's not looking too bad. =) ---------------------------------------------------------------------- Mon Apr 26 16:59:37 CDT 1999 Michael Jennings (mej) Cleanups of the scrollbar/menubar pixmapping stuff. ---------------------------------------------------------------------- Mon Apr 26 18:51:34 CDT 1999 Michael Jennings (mej) Removed some pointless compile-time #defines. Added a separate menubar color and unfocused menubar color, along with options and attributes to support them (--menubar-color, --unfocused-menubar-color). ---------------------------------------------------------------------- Tue Apr 27 10:41:15 CDT 1999 Michael Jennings (mej) Added a pix/ directory for scrollbar/menubar pixmaps. Swiped some pixmaps from Enlightenment to work with. ---------------------------------------------------------------------- Wed Apr 28 16:43:47 CDT 1999 Michael Jennings (mej) Scrollbar trough is now pixmappable. Everything seems to work as far as I can tell. Now on to the scrollbar anchor. I also cleaned up a lot of the pixmap handling code. Tiling is handled the *right* way now. :-) ---------------------------------------------------------------------- Wed Apr 28 17:07:00 CDT 1999 Michael Jennings (mej) Fixes from Karl Vogel for Digital UNIX. Now back to breaking stuff! >:-) ---------------------------------------------------------------------- Wed Apr 28 19:03:55 CDT 1999 Michael Jennings (mej) Pixmappable up- and down-arrows. The scrolling isn't working quite right just yet, though. ---------------------------------------------------------------------- Thu Apr 29 09:27:17 CDT 1999 Michael Jennings (mej) Scrolling is fixed. Now it's time to break all kinds of stuff.... ---------------------------------------------------------------------- Fri Apr 30 18:26:31 CDT 1999 Michael Jennings (mej) I've got everything cleaned up quite a bit now. This one should compile and run just fine. If it doesn't work for you, please let me know. ---------------------------------------------------------------------- Mon May 3 14:06:21 CDT 1999 Michael Jennings (mej) Brand new event handling subsystem. ---------------------------------------------------------------------- Mon May 3 14:23:23 CDT 1999 Michael Jennings (mej) Fixed a problem with transparency and a floating scrollbar. ---------------------------------------------------------------------- Mon May 3 15:00:37 CDT 1999 Michael Jennings (mej) Fixed problem resizing scrollbar with pixmapped arrows. ---------------------------------------------------------------------- Mon May 3 17:00:39 CDT 1999 Michael Jennings (mej) Patch from Norman Stevens for builddir != srcdir. Also beginnings of pixmappable scrollbar anchor. ---------------------------------------------------------------------- Tue May 4 11:30:12 CDT 1999 Michael Jennings (mej) The scrollbar is now fully-functional with every element pixmapped. ---------------------------------------------------------------------- Tue May 4 12:12:42 CDT 1999 Michael Jennings (mej) I cleaned up the code in options.c for reading pixmap configurations. You can now specify your scrollbar pixmaps in MAIN, like so: trough 100 100 bar_vertical_3.png up_arrow 100 100 button_arrow_up_1.png down_arrow 100 100 button_arrow_down_1.png anchor 100 100 bar_vertical_1.png These go in the pixmaps context, of course. ---------------------------------------------------------------------- Tue May 4 15:25:33 CDT 1999 Michael Jennings (mej) Menubar background pixmap is now configurable. In order to have some variety, I added two more auto-generated pixmap list files, one of the tiled images, and one of the scaled ones. Here's the new line in my MAIN file: menu_background 0 0 %random(`cat tiled-pixmaps.list`) ---------------------------------------------------------------------- Tue May 4 17:46:20 CDT 1999 Michael Jennings (mej) Fixed some resizing issues. ---------------------------------------------------------------------- Tue May 4 18:55:34 CDT 1999 Michael Jennings (mej) Temporary hack to keep background pixmap shading/tinting from affecting the scrollbar/menubar pixmaps. I will fix this the Right Way when I redo the pixmap stuff. ---------------------------------------------------------------------- Thu May 6 11:23:48 CDT 1999 Michael Jennings (mej) Back to breaking things.... I'm in the process of shifting Eterm's old "pixmap" paradigm to one based on 3-state images. This will allow Eterm to support different pixmaps for the various elements based on state (normal, selected, clicked), as well as different shading levels, different tints, etc. It will also support different image operations (tiling, scaling, proportional scaling, offsetting, and various combinations thereof). But in order to do that, I have to completely redesign the pixmap code and alter parts of the config file format. This checkin is BROKEN. It will not run. But it will give you a bit of a glimpse at the future (if you look at the code, anyway). :-) ---------------------------------------------------------------------- Thu May 6 14:31:23 CDT 1999 Michael Jennings (mej) Back in semi-working order (i.e., it runs without crashing). Still details to iron out, of course. ---------------------------------------------------------------------- Thu May 6 18:08:02 CDT 1999 Michael Jennings (mej) Almost back to where we were before. A few small things still broken, but at least it runs without crashing. :-) ---------------------------------------------------------------------- Thu May 6 21:55:26 CDT 1999 Michael Jennings (mej) All the pixmap manipulation code is working now. There is a LOT more flexibility with this system. Scaling and tiling are entirely independent, so for example, you can scale to 50% by 50% and tile, or scale to 100%, or scale to 90% while maintaining the image's aspect ratio, or tile the image at its true size.... There are all kinds of possibilities. And the +X+Y offsets work again as well, so you can center images, or adjust the origin within the window however you like. Plus, you can set the shading, tinting, geometry, and border widths of each image individually. The first screenshot at http://www.eterm.org/Screenshots.html shows two Eterms done this way. The comment explains what I did to each. If you look at the Emacs window in the background, you can also get a glimpse of the new config file syntax. ---------------------------------------------------------------------- Fri May 7 13:34:38 CDT 1999 Michael Jennings (mej) Added image mode support. For each image type, you can specify a startup mode and a list of allowable modes for that element (image, trans, or viewport). ---------------------------------------------------------------------- Fri May 7 14:22:27 CDT 1999 Michael Jennings (mej) Fixed bug with handling undefined contexts. It won't crash on old themes now. :-) ---------------------------------------------------------------------- Fri May 7 17:01:04 CDT 1999 Michael Jennings (mej) Updated all the themes with the new format. Read the comments for details on how they work. I also changed the default config file name since E doesn't use MAIN any longer. The new name is "theme.cfg". This will also create the possibility of a user-specific preferences file, "user.cfg". ---------------------------------------------------------------------- Mon May 10 12:10:21 CDT 1999 Michael Jennings (mej) Fixed the "path" statements in the default config files. Also fixed the setting of the background image to "None." ---------------------------------------------------------------------- Mon May 10 14:14:48 CDT 1999 Michael Jennings (mej) Tinting and shading from the menu is fixed. So are the image choices. ---------------------------------------------------------------------- Mon May 10 14:46:00 CDT 1999 Michael Jennings (mej) Only track pointers if we're debugging. Should help some on speed. ---------------------------------------------------------------------- Mon May 10 16:15:00 CDT 1999 Michael Jennings (mej) Shading and tinting via the command line work again. ---------------------------------------------------------------------- Tue May 11 14:00:36 CDT 1999 Michael Jennings (mej) New --install option to use a separate color map. This depends on my updates to Imlib 1.9.5. ---------------------------------------------------------------------- Tue May 11 15:05:38 CDT 1999 Michael Jennings (mej) Fixed some assorted bugs with mode lines and with Eterm starting in the wrong directory. ---------------------------------------------------------------------- Wed May 12 16:00:04 CDT 1999 Michael Jennings (mej) Fixed problems loading menubar files. Also made theme searching more efficient. Searching $PATH has also been eliminated since it took a lot of time for really no good reason. ---------------------------------------------------------------------- Wed May 12 17:23:54 CDT 1999 Michael Jennings (mej) Duh. Fixed a stupid mistake on my part that broke background image tinting. ---------------------------------------------------------------------- Wed May 12 19:17:59 CDT 1999 Michael Jennings (mej) Per a suggestion from namsh, I cleaned up the #including of config.h since it does not keep itself from being included multiple times. ---------------------------------------------------------------------- Thu May 13 09:00:15 CDT 1999 Michael Jennings (mej) Removed eterm_imlib.h since Imlib 0.x is no longer supported. Also fixed the "status" escape sequence. ---------------------------------------------------------------------- Thu May 13 16:40:54 CDT 1999 Michael Jennings (mej) Fixed some bugs with transparency. Also fixed a scrolling bug. The scrollbar event handler is now in place via the event subsystem I designed awhile back. The scrollbar itself is now more self- contained, as it handles all its own events. ---------------------------------------------------------------------- Fri May 14 09:02:37 CDT 1999 Michael Jennings (mej) More work on separating and encompassing the scrollbar. ---------------------------------------------------------------------- Fri May 14 14:51:18 CDT 1999 Michael Jennings (mej) Command-line options for images are working again. ---------------------------------------------------------------------- Fri May 14 15:44:31 CDT 1999 Michael Jennings (mej) New escape sequence for setting the level of debugging output on the fly. ---------------------------------------------------------------------- Wed May 19 12:45:49 CDT 1999 Michael Jennings (mej) Moved some features to configure.in instead of feature.h. Also fixed my e-mail address to one that's more pertinent. ---------------------------------------------------------------------- Thu May 20 15:11:41 CDT 1999 Michael Jennings (mej) Scrollbar images are now 3-state. ---------------------------------------------------------------------- Wed May 26 12:11:51 CDT 1999 Michael Jennings (mej) Removed the active tags stuff since it never worked right anyway. We will do this eventually, but it will be integrated more into the system. Also added the skeleton files for the new popup menu system. Bye bye evil menubar. ---------------------------------------------------------------------- Thu May 27 11:52:37 CDT 1999 Michael Jennings (mej) More work on the menu system. ---------------------------------------------------------------------- Tue Jun 1 13:34:33 CDT 1999 Michael Jennings (mej) The menubar is now gone. Totally and permanently. Good riddance. Also in this commit is a fix from Luca Lizzeri for multi-threaded builds, and I'm going to see how changing the default for HAVE_SAVED_UIDS goes. ---------------------------------------------------------------------- Wed Jun 2 15:02:29 CDT 1999 Michael Jennings (mej) The menu can actually draw itself now, but not much else. ---------------------------------------------------------------------- Wed Jun 2 19:54:03 CDT 1999 Michael Jennings (mej) Further menu drawing refinements. Still not quite there yet, though. ---------------------------------------------------------------------- Thu Jun 3 09:34:05 CDT 1999 Michael Jennings (mej) Fixed a segfault with themes lacking menus (which, at the moment, includes all of them but mine). Thanks to Patrick Lenz for pointing this out. ---------------------------------------------------------------------- Thu Jun 3 16:54:57 CDT 1999 Michael Jennings (mej) Wow, it's actually starting to look semi-usable now. :-) ---------------------------------------------------------------------- Thu Jun 3 18:03:36 CDT 1999 Michael Jennings (mej) Both menu navigation styles are now working. ---------------------------------------------------------------------- Fri Jun 4 16:51:26 CDT 1999 Michael Jennings (mej) Everything works for a 1-tier menu, except for actually performing the action. Next I'll implement that, and fix the bug with proportional fonts. ---------------------------------------------------------------------- Mon Jun 7 10:43:29 CDT 1999 Michael Jennings (mej) Eterm finally has a dedicated module for Enlightenment-specific feature support. Don't worry, there's lots more to come here soon. :) ---------------------------------------------------------------------- Mon Jun 7 15:33:23 CDT 1999 Michael Jennings (mej) Flat menus should be working now. Now onto submenus.... ---------------------------------------------------------------------- Tue Jun 8 09:58:10 CDT 1999 Michael Jennings (mej) Fixes for KANJI support. Thanks to Sung-Hyun Nam for pointing this out. ---------------------------------------------------------------------- Tue Jun 8 14:24:11 CDT 1999 Michael Jennings (mej) The submenu code is now in. Navigation is still rather flaky, however. ---------------------------------------------------------------------- Wed Jun 9 15:24:15 CDT 1999 Michael Jennings (mej) Navigation is still quite messy, but at least it's possible to get to all the menu items, and they actually seem to work. So I'll commit this anyway. ---------------------------------------------------------------------- Thu Jun 10 12:41:20 CDT 1999 Michael Jennings (mej) Navigation is 99% clean now. I've added the new menu files and such to CVS now, so you should be able to try everything out now. Let me know if you have any problems. ---------------------------------------------------------------------- Thu Jun 10 16:24:50 CDT 1999 Michael Jennings (mej) Eliminate one more stupid configure.in hack. :-) ---------------------------------------------------------------------- Fri Jun 11 11:11:31 CDT 1999 Michael Jennings (mej) A KANJI fix and a Makefile.am fix from Sung-Hyun Nam . ---------------------------------------------------------------------- Mon Jun 14 10:16:10 CDT 1999 Michael Jennings (mej) Several oopses fixed. ---------------------------------------------------------------------- Mon Jun 14 19:21:11 CDT 1999 Michael Jennings (mej) Initial work on supporting IPC (E IPC and Eterm's own IPC), as well as some bugfixes with the menu. Also changed the default for refresh to fast (from smooth). ---------------------------------------------------------------------- Tue Jun 15 10:24:32 CDT 1999 Michael Jennings (mej) Scrolling speed-ups, bugfix in menus.c for systems without save- unders, and corrections to menu config files. ---------------------------------------------------------------------- Tue Jun 15 19:13:04 CDT 1999 Michael Jennings (mej) Added the %preproc directive to allow Eterm config files to be pre- processed by the utility of your choice (so long as it can read from stdin and write to stdout). Also modified the chooser-menu.cfg file to (1) work right, and (2) demonstrate the use of %preproc. ---------------------------------------------------------------------- Wed Jun 16 16:56:13 CDT 1999 Michael Jennings (mej) Some bugfixes with respect to escape sequence parsing, as well as improved formatting for debugging output. ---------------------------------------------------------------------- Thu Jun 17 12:14:15 CDT 1999 Michael Jennings (mej) Added an Eterm IPC interface to Enlightenment's own IPC. The escape sequence is "\e]7;enl_send:\a". Eterm can now be used in place of eesh. Also added a check to configure.in to make sure the OS's snprintf() implementation, if it exists, does not ignore the "n" parameter. The macro for this was written by Duncan Simpson . ---------------------------------------------------------------------- Fri Jun 18 17:47:34 CDT 1999 Michael Jennings (mej) Added beveling and padding support. I'll take care of updating the theme files later. NOTE: You WILL have to update Imlib from CVS to successfully compile and run this version. ---------------------------------------------------------------------- Mon Jun 21 10:41:23 CDT 1999 Michael Jennings (mej) Fixed a bug noticed by Gnea with the menu code remembering the last selected item. This caused certain toggles (like transparency) to misbehave when using click-select menu navigation. (Drag-and-release worked fine.) ---------------------------------------------------------------------- Mon Jun 21 15:39:26 CDT 1999 Michael Jennings (mej) Added the "winop" IPC command and a little helper script, so Eterm can assist in minor window manipulation needs. Also removed the old menu helper script since it's no longer valid. And I removed the .sh from the ends of the script names. ---------------------------------------------------------------------- Wed Jun 23 15:53:18 CDT 1999 Michael Jennings (mej) Hopefully fixed the CONFIG_SEARCH_PATH definition under Linux. ---------------------------------------------------------------------- Thu Jun 24 14:06:01 CDT 1999 Michael Jennings (mej) Eterm can receive Enlightenment IPC replies now. Added Eterm IPC command "enl_query" which, unlike enl_send, will wait for a reply to its IPC command. Also added a skeleton function for when mandrake adds the image query IPC commands to E. ---------------------------------------------------------------------- Thu Jun 24 15:02:38 CDT 1999 Michael Jennings (mej) This should fix the bug Gnea found (see above). My previous fix was incomplete. ---------------------------------------------------------------------- Thu Jun 24 17:07:37 CDT 1999 Michael Jennings (mej) Added some checks to the config file parser which should help fix the issues between theme.cfg and user.cfg. ---------------------------------------------------------------------- Fri Jun 25 11:52:41 CDT 1999 Michael Jennings (mej) Added keysym reporting mode from salvador . This feature is designed for application use and is not recommended for normal users to try. :-) ---------------------------------------------------------------------- Fri Jun 25 14:44:01 CDT 1999 Michael Jennings (mej) New utility Ettable. Prints out an ASCII table in the current font. Useful for showing you what characters your font has as well as their numeric values in decimal/hex/octal. ---------------------------------------------------------------------- Mon Jun 28 10:21:12 CDT 1999 Michael Jennings (mej) Fixed the seg fault bug noticed by several people. I guess Solaris is a bit more forgiving of free()ing memory you didn't malloc(). ---------------------------------------------------------------------- Tue Jun 29 11:48:56 CDT 1999 Michael Jennings (mej) Fixed a bug with MWM hints thanks to a patch from MOROHOSHI Akihiko . Also fixed the menus to move themselves rather than displaying off screen when they are opened near the screen edge. ---------------------------------------------------------------------- Tue Jun 29 16:38:25 CDT 1999 Michael Jennings (mej) Updated the code formatting and added some to Ettable. ---------------------------------------------------------------------- Mon Jul 5 23:18:49 CDT 1999 Michael Jennings (mej) Moved to new CVS server. Small cosmetic change as a test. ---------------------------------------------------------------------- Thu Jul 15 17:06:07 PDT 1999 Michael Jennings (mej) Don't copy the desktop pixmap unnecessarily. ---------------------------------------------------------------------- Thu Jul 15 19:39:51 PDT 1999 Michael Jennings (mej) But don't free it if it isn't ours either. =P ---------------------------------------------------------------------- Fri Jul 16 11:05:34 PDT 1999 Michael Jennings (mej) Hopefully I found the cause of those weird hangs.... ---------------------------------------------------------------------- Tue Jul 20 17:39:01 PDT 1999 Michael Jennings (mej) Applied two patches from Sung-Hyun Nam for much- improved multi-byte font support and internationalization. Many thanks to him for his efforts, and my apologies for taking so long to get this patch in CVS. ---------------------------------------------------------------------- Tue Jul 20 18:48:31 PDT 1999 Michael Jennings (mej) Removed lots of code warnings. ---------------------------------------------------------------------- Mon Jul 26 17:25:00 PDT 1999 Michael Jennings (mej) Eterm has a whole new concept of image color modifiers...basically, it's now the same as Enlightenment's. Shading and tinting are gone completely as they were done before (along with the --shade and --tint options); they've been replaced by this new mechanism which gives you control over the contrast and gamma correction in addition to the brightness (the latter being the only thing shading/tinting messed with before). For the uninitiated...basically, each image has up to 4 color modifiers which can be applied to it -- one for each color (red, green, and blue) and one for the image as a whole. Each modifier has three attributes which can be set: brightness, contrast, and gamma correction (referred to as simply "gamma"). These modifiers are applied before rendering to alter the appearance of the image. This can be used to make images darker or lighter to improve text readability, or to make image details more visible. The old escape sequences \e]6;1 (shade) and \e]6;2 (tint) have been replaced with a single sequence (\e]6;1) which handles all color modifier changes. The syntax is "\e]6;1;modifier;attribute;value\a". See the new menu config files for examples. Color modifiers for any image can be set in the config file. The syntax there is "cmod modifier brightness contrast gamma" (e.g., "cmod image 0xe0 0xff 0xff"). Trailing elements may be omitted, but leading ones may not (i.e., you may specify the brightness only without giving a contrast or a gamma, but you cannot specify the gamma without also giving the brightness and contrast). If you prefer, you can use "colormod" instead of "cmod" for clarity. You also have the --cmod, --cmod-red, --cmod-green, and --cmod-blue command line options; these follow the same syntax as the config file. Hopefully that's clear enough. :-) ---------------------------------------------------------------------- Thu Jul 29 18:23:53 PDT 1999 Michael Jennings (mej) Thanks to raster's advice, there is no longer a -W (--watch-desktop) option. That behavior is now the default and exhibits no slowdown whatsoever. I also cleaned up some silly repetitive bullshit that should speed things up as well. ---------------------------------------------------------------------- Tue Aug 3 14:31:53 PDT 1999 Michael Jennings (mej) Fixed a scrollbar bug raster pointed out and added the skeleton of action classes. ---------------------------------------------------------------------- Tue Aug 3 14:48:48 PDT 1999 Michael Jennings (mej) Added 3-state support to the background. Well, actually 2-state. :) ---------------------------------------------------------------------- Tue Aug 3 11:34:56 PDT 1999 Carsten Haitzler (raster) fixed redraw of multi-state background :) ---------------------------------------------------------------------- Thu Aug 5 19:21:49 PDT 1999 Michael Jennings (mej) Action bindings are now working. See the new theme.cfg files for examples of how to use them. I've duplicated the old bindings for Ctrl+Buttons and added the F1 key to bring up the Eterm menu. I'll customize the themes to take full advantage of this feature soon. ---------------------------------------------------------------------- Fri Aug 6 12:05:35 PDT 1999 Michael Jennings (mej) Fixed a problem with actions with no valid button/keysym binding. Some of the action stuff is still having problems, but at least you can use the Eterms again. :-) ---------------------------------------------------------------------- Fri Aug 6 12:34:33 PDT 1999 Michael Jennings (mej) Actions should be all fixed now. Keep in mind, however, that some keybindings may not work the way you expect if you have your X mappings configured to send different keysyms when the keys are modified. Check "xmodmap -pk" and "xmodmap -pm". Also applied a small XIM patch from Sung-Hyun Nam . ---------------------------------------------------------------------- Tue Aug 17 18:06:01 PDT 1999 Michael Jennings (mej) Now that we have a fixed CVS server.... This includes the old 0.8.10 code, but it's now 0.9. It also includes a timer subsystem. ---------------------------------------------------------------------- Wed Aug 18 14:58:08 PDT 1999 Michael Jennings (mej) Cleanups on the automake/libtool stuff in src/. Thanks to John Ellson for getting me interested enough to set about fixing it. :-) Also cleaned up the XIM code to fit with the rest of Eterm. ---------------------------------------------------------------------- Wed Aug 18 18:17:14 PDT 1999 Michael Jennings (mej) Apparently, FreeBSD has a timer_t already, so I renamed Eterm's. Thanks to Carl Lewis for pointing this out. ---------------------------------------------------------------------- Thu Aug 19 16:45:36 PDT 1999 Michael Jennings (mej) Applied patch from Valdis Kletnieks which reduces the amount of excess space in menus when using proportional fonts. ---------------------------------------------------------------------- Fri Aug 20 13:23:44 PDT 1999 Michael Jennings (mej) Since Mr. Kletnieks reminded me that I never finished it, I finally implemented support for right-justified menu text. :-) Now you'll know why some of those menus seemed unnecessarily wide. ---------------------------------------------------------------------- Fri Aug 20 15:21:51 PDT 1999 Michael Jennings (mej) Damn! No wonder it's been so fscking slow. Okay, folks, try some shaded transparency now. I'll bet you'll notice a speed difference. :-) ---------------------------------------------------------------------- Fri Aug 20 16:05:59 PDT 1999 Michael Jennings (mej) Ugh. I'd fixed this on my local theme but never on the CVS stuff. Sorry, folks. Thanks to Ashley Penney for pointing this out. The F1 key should bring up the menu now, and that line should no longer generate a parse error. =) ---------------------------------------------------------------------- Fri Aug 20 17:28:24 PDT 1999 Michael Jennings (mej) Fixed a small bug in icon size handling located by Hubert Verstraete . ---------------------------------------------------------------------- Mon Aug 23 10:33:20 PDT 1999 Michael Jennings (mej) Fixed a bug where Eterm wouldn't start handling events soon enough. ---------------------------------------------------------------------- Tue Aug 24 12:31:23 PDT 1999 Michael Jennings (mej) Added more debugging output to pixmap.c to try and locate some bugs. ---------------------------------------------------------------------- Tue Aug 24 13:00:46 PDT 1999 Michael Jennings (mej) Fixed the bug reported by David Coulson that caused incorrect updates in trans mode. ---------------------------------------------------------------------- Wed Aug 25 12:28:50 PDT 1999 Michael Jennings (mej) Applied XIM fix from Sung-Hyun Nam . ---------------------------------------------------------------------- Fri Aug 27 19:39:26 PDT 1999 Michael Jennings (mej) Fix fix fix. ---------------------------------------------------------------------- Fri Sep 3 17:05:02 PDT 1999 Michael Jennings (mej) Eterm passes "make distcheck" now. Hurray. ---------------------------------------------------------------------- Tue Sep 7 11:43:42 PDT 1999 Michael Jennings (mej) Added paranoia checks to make sure the desktop pixmap property hasn't been corrupted. ---------------------------------------------------------------------- Tue Sep 7 13:15:30 PDT 1999 Michael Jennings (mej) make distcheck works without breaking regular makes now. =P ---------------------------------------------------------------------- Wed Sep 8 11:11:00 PDT 1999 Michael Jennings (mej) Patch from Sung-Hyun Nam for the theme files. Also added a timeout for the backtrace attempt so that it hopefully won't hang around forever when gdb decides to hang. ---------------------------------------------------------------------- Mon Sep 13 12:23:36 PDT 1999 Michael Jennings (mej) Removed the tn3270 theme, which nobody uses, and added the cEterm theme. You get the same colors as Alfredo's original script, but without all the crap on the command line. :-) ---------------------------------------------------------------------- Tue Sep 14 16:41:08 PDT 1999 Michael Jennings (mej) Worked around a XF86 3.9.16 (perhaps Xinerama) problem. Also added some XIM changes from Sung-Hyun Nam to handle buffer overflows. ---------------------------------------------------------------------- Thu Sep 16 16:21:22 PDT 1999 Michael Jennings (mej) Fixed a possible null-byte overflow in the menu code. Also, there seems to be a memory leak in XLoadQueryFont() in some versions of XFree86 3.9.x, so I removed the unnecessary "font" lines from the themes for the time being. ---------------------------------------------------------------------- Mon Sep 20 18:32:01 PDT 1999 Michael Jennings (mej) Lots of changes here. First off, this should fix the background draw bug with transparency that several people pointed out. While I was at it, I also cleaned up a lot of other related stuff. Three-state images should be a lot more robust now. Then again, some stuff may be broken entirely from this, so let me know. :-) For one thing, the various image modes should work as expected now. You can allow and disallow modes for the various widgets. The fallback mode is "solid" now, rather than "image," so you can cause a certain widget to refuse to use an image if you want to. If you specify an image without specifying a "mode" line that allows the "image" mode, your image will not appear. <-- READ THIS TWICE! I had to go back and fix all the theme files because of this, so you will need to remove your current theme directory and allow Eterm's "make install" to put the new ones in place; otherwise, everything will go back to being solid colors. =] Anytime something changes this drastically, there are bound to be problems. Let me know if you find any of them. :) ---------------------------------------------------------------------- Mon Sep 20 20:33:13 PDT 1999 Michael Jennings (mej) Frikkin'...! Well, this should fix the text updating problem with transparency, though I swear I don't know why it was crashing before and isn't now.... ---------------------------------------------------------------------- Mon Sep 20 21:00:46 PDT 1999 Michael Jennings (mej) Fixed a problem with sticky transparent Eterms not updating their background image. ---------------------------------------------------------------------- Mon Sep 20 21:25:46 PDT 1999 Michael Jennings (mej) Added support for xterm's property change escape sequence as requested by Greg Badros , the originator of the sequence (and one of the authors of scwm). ---------------------------------------------------------------------- Tue Sep 21 20:00:50 PDT 1999 Michael Jennings (mej) Initial work on font caching. WARNING: This code is broken and will not compile, but I'm going home anyway. ---------------------------------------------------------------------- Wed Sep 22 15:52:01 PDT 1999 Michael Jennings (mej) The font caching seems to work now, so let me know if you find any problems. ---------------------------------------------------------------------- Thu Sep 23 15:56:35 PDT 1999 Michael Jennings (mej) Auto mode lives. Still a little flaky with the submenu pixmap, but everything else seems to work peachily. It requires an Enlightenment themes that contains the needed imageclasses, but that's not hard to do. Here are the classes you need: ETERM_BG Background image ETERM_ARROW_UP Up arrow ETERM_ARROW_DOWN Down arrow ETERM_ARROW_LEFT Left arrow (for future use) ETERM_ARROW_RIGHT Right arrow (for future use) ETERM_TROUGH Scrollbar trough ETERM_ANCHOR Scrollbar anchor ETERM_MENU_BOX Menu background ETERM_MENU_ITEM Menu item ETERM_MENU_SUBMENU Submenu item Currently, ETERM_MENU_BOX doesn't work; Eterm uses ETERM_MENU_ITEM instead. This is a design issue I have to fix. :-) Everything else, however, should work as noted above. ---------------------------------------------------------------------- Thu Sep 23 17:15:27 PDT 1999 Michael Jennings (mej) Well, we're to the point of asking E to render the submenu image, but it keeps returning null pixmaps. =] I'll have to dig deeper. ---------------------------------------------------------------------- Fri Sep 24 13:05:40 PDT 1999 Michael Jennings (mej) The submenu image problem is fixed, and so is the bug where Eterm would hang if you had anything in auto mode and restarted E. ---------------------------------------------------------------------- Tue Sep 28 14:18:44 PDT 1999 Michael Jennings (mej) Several fixes here, some of which I forgot to commit a couple days ago. Oopsie. =) ---------------------------------------------------------------------- Tue Sep 28 18:54:16 PDT 1999 Michael Jennings (mej) The config parser is now much more bullet-proof. A pixmaps.list file with too many entries will no longer crash Eterm. ---------------------------------------------------------------------- Wed Sep 29 15:30:47 PDT 1999 Michael Jennings (mej) Make auto mode work with the terminal background (ETERM_BG) too. Sorry raster. :-) ---------------------------------------------------------------------- Fri Oct 1 11:03:21 PDT 1999 Michael Jennings (mej) Set $COLORTERM_BCE for better SLang compatibility. ---------------------------------------------------------------------- Mon Oct 4 18:20:15 PDT 1999 Michael Jennings (mej) A few touch-ups. ---------------------------------------------------------------------- Thu Oct 7 16:12:38 PDT 1999 Michael Jennings (mej) Auto mode has been fixed to work with the newest E. If you don't have the newest E, it won't work. So don't bug me about it; just upgrade. Your version of E must be dated October 7th or later, or all bets are off. I also cleaned up some stuff to save lots of unnecessary redraws and (if you're in auto mode) E IPC transactions. A bug in the value set for $IFS was also fixed. Thanks to Kimball Thurston for pointing out my oversight. Furthermore, I added a parameter to the --enable-multi-charset option for configure. You can now specify =utf-8 to get UTF-8 fonts for the multi-byte mode stuff. If you pass =kanji (or no value at all), you will still get the old Kanji fonts. If you use multi-byte Eterm and have a set of fonts for other setups (Big 5, Cyrillic, etc.), please let me know and I'll add a parameter for those too. ---------------------------------------------------------------------- Thu Oct 7 16:39:48 PDT 1999 Michael Jennings (mej) raster pointed out that the "clicked" image for the scrollbar anchor wasn't working. It is now. :-) ---------------------------------------------------------------------- Thu Oct 7 18:48:31 PDT 1999 Michael Jennings (mej) Shaved off around 100 KB of memory usage per Eterm by moving more code into the shared library, removing lots of unneeded variables, and fixing some small leaks here and there. ---------------------------------------------------------------------- Fri Oct 8 15:31:49 PDT 1999 Michael Jennings (mej) This should fix all the weird menu behavior from time to time (well, I hope it does anyway). ---------------------------------------------------------------------- Mon Oct 11 15:54:52 PDT 1999 Michael Jennings (mej) Lots of cleanups here, including a couple fixes for bugs noticed by Tom Gilbert and Martin Tyler . Also removed the requirement of glibc 2.1 for using SVR4-style pty's (/dev/pts/*) under Linux. ---------------------------------------------------------------------- Mon Oct 11 16:48:22 PDT 1999 Michael Jennings (mej) More useless, hackish, and/or poorly-written code meets an untimely end. ---------------------------------------------------------------------- Mon Oct 11 22:24:12 PDT 1999 Michael Jennings (mej) Sync after resize in auto mode. ---------------------------------------------------------------------- Tue Oct 12 16:24:20 PDT 1999 Michael Jennings (mej) Fixed a scrollbar refresh bug pointed out by Sung-Hyun Nam . ---------------------------------------------------------------------- Mon Oct 18 19:33:26 PDT 1999 Geoff Harrison (mandrake) Warnings begone! Eterm/src/command.c still has two warnings but I don't know why I didn't get rid of them. there are still warnings in Esetroot.c and in Etbg, but I'll fix those later. ---------------------------------------------------------------------- Mon Oct 18 23:59:17 PDT 1999 Geoff Harrison (mandrake) More warning bashing in Esetroot.c ---------------------------------------------------------------------- Tue Oct 19 00:13:17 PDT 1999 Geoff Harrison (mandrake) Almost all the warnings are gone. only 3 remain on my system at home. two in command.c (where do I get proper prototypes for grantpt() and unlockpt()?) and one in options.c that is bizarre: options.c:3433: warning: `%x' yields only last 2 digits of year in some locales ---------------------------------------------------------------------- Tue Oct 19 16:34:51 PDT 1999 Michael Jennings (mej) This should get rid of all the warnings. If you're running Linux and get warnings about setresuid, setresgid, grantpt, and unlockpt not having prototypes, feel free to add the following lines to your copy of /usr/include/unistd.h: /* Linux- and HP-UX-only setres?id() calls -- mej */ extern int setresuid(uid_t ruid, uid_t euid, uid_t suid); extern int setresgid(gid_t rgid, gid_t egid, gid_t sgid); /* SVR4 PTY functions */ extern int grantpt(int fd); extern int unlockpt(int fd); ---------------------------------------------------------------------- Tue Oct 26 16:28:34 PDT 1999 Geoff Harrison (mandrake) I hate the default behaviour for tripleclick, and there's an option to turn it off. however, it isn't documented in the default theme anywhere. So, I fixed that annoyance and put it in the sample Eterm theme.cfg file (set to the default value, not the OTW) ---------------------------------------------------------------------- Wed Oct 27 14:11:11 PDT 1999 Michael Jennings (mej) 64-bit cleanliness changes. ---------------------------------------------------------------------- Wed Oct 27 17:36:35 PDT 1999 Michael Jennings (mej) Modified libtool flags per recommendation of HJ Lu . ---------------------------------------------------------------------- Wed Oct 27 18:46:04 PDT 1999 Michael Jennings (mej) Fixed lots of issues revealed by the -ansi -pedantic flags. The only warnings you get with those flags now are implicit declaration warnings for non-ANSI functions and warnings specific to certain OS's and their non-ANSI implementations of ANSI functions, neither of which I can do much about. :-) ---------------------------------------------------------------------- Thu Oct 28 13:12:17 PDT 1999 Michael Jennings (mej) I fixed the popup scrollbar bug with transparency, but I fixed lots more than that. I removed a lot of duplicate event handling, lots of duplicate redraws, and lots of unnecessary transparency updates. In doing so, I fixed the latency problem people had been reporting with several shaded/tinted transparent Eterms while changing desktops. I also threw solid color transparency support in the mix while I was at it. All in all, you should notice significant speedups in transparent Eterms. ---------------------------------------------------------------------- Thu Oct 28 16:09:26 PDT 1999 Michael Jennings (mej) Nothing really important here. I may have fixed the refresh problem that a lot of people see when switching desktops and IRC-ing in an Eterm, but I'm not sure. And I have once again discovered (well, re-discovered actually) that the remaining bits of rxvt code in the scrollbar are smelly piles of poop that I really need to get around to fixing one of these days. ---------------------------------------------------------------------- Thu Oct 28 16:17:21 PDT 1999 Michael Jennings (mej) Added an "auto" theme. So now the correct answer to the question, "How do I turn on auto mode in Eterm?" is "Eterm -t auto" I also finally got around to fixing (again) the version numbers in the theme files. ---------------------------------------------------------------------- Thu Oct 28 20:11:15 PDT 1999 Michael Jennings (mej) Fixed a couple problems pointed out by Joel Lesher and Rahsheen Porter regarding tinted/shaded transparency and a typo in the auto mode theme file. Doh! ---------------------------------------------------------------------- Fri Oct 29 16:43:19 PDT 1999 Michael Jennings (mej) You can now apply additional color modifiers to the various widgets in transparent mode that further modify the background. So, in other words, you could have a scrollbar anchor that, in the normal state, is darker than the transparent background, and in selected/clicked state, is brighter. Or any variation on that theme. :-) Once you've got this version going, try the following changes to your trans theme's config file: begin image type anchor mode trans allow image trans auto state normal file bar_vertical_1.png geom :scale border 3 3 2 2 cmod image 192 bevel up 1 1 1 1 state selected file bar_vertical_2.png geom :scale border 3 3 2 2 cmod image 320 bevel up 1 1 1 1 end image You'll see what I'm talking about. :-) ---------------------------------------------------------------------- Tue Nov 2 16:53:56 PST 1999 Michael Jennings (mej) Several bugs fixed here, most notably a potential seg fault in Esetroot, and remembering an Eterm's size works again. Also a minor redraw speedup. And %exec() now works properly instead of just causing Eterm to crash. :-) ---------------------------------------------------------------------- Fri Nov 5 13:04:36 PST 1999 Michael Jennings (mej) Fixed a small geometry bug pointed out by Sung-Hyun Nam . ---------------------------------------------------------------------- Mon Nov 8 18:46:52 PST 1999 Michael Jennings (mej) Saving settings now works, for the most part. Still some stuff to get cleaned up, but it's basically there now. ---------------------------------------------------------------------- Mon Nov 8 20:17:50 PST 1999 Michael Jennings (mej) All the settings should save now, so if something doesn't work or I missed something, report it as a bug. HOWEVER! Keep in mind that "Save Settings..." saves to a file called user.cfg in the current theme directory. This means two things. One, if you do not have write permissions to the current theme directory ($ETERM_THEME_ROOT), it will fail. Two, if you save settings to the default (Eterm) theme, these settings will override ALL your other themes! If you save settings to the default theme, you better expect to get those settings everywhere, unless the other themes also contain user.cfg files. ---------------------------------------------------------------------- Thu Nov 11 18:25:07 PST 1999 Michael Jennings (mej) The man page should now be up-to-date for Eterm 0.9. Please check it to make sure. :-) I also fixed a few minor nits here. ---------------------------------------------------------------------- Fri Nov 12 17:55:05 PST 1999 Michael Jennings (mej) This should bring the technical reference up-to-date. Eterm IPC is now documented for the first time. ---------------------------------------------------------------------- Fri Nov 12 19:37:35 PST 1999 Michael Jennings (mej) Okay, I've fixed a lot here. First off, I fixed the bug Gnea pointed out with toggling Max Size in E. Turned out to be a symptom of a much larger problem, but it should be fixed now. Then I corrected the XIM issues pointed out by Sung-Hyun Nam and Jerome De Greef , as well as a stupid typo on my part that Jerome happened upon. Next I fixed the bug Adam Lucas spotted with changing the scrollbar type. While fixing that, I also fixed changing the scrollbar width. Both operations are a lot smoother and cleaner now. ---------------------------------------------------------------------- Mon Nov 15 13:20:05 PST 1999 Michael Jennings (mej) Two more bugs fixed. One, Trevor Powell spotted an issue with left-side scrollbars which is now fixed. Two...um... ahem. Fixed the auto mode titlebar thing. *cough* Turns out I was doing something stupid with my IPC window (i.e., not having one) that caused E to ignore lots of events on my window. Oops, sorry folks. raster has given me the cl00bat beating, so it's fixed now. :-] ---------------------------------------------------------------------- Wed Nov 17 18:34:43 PST 1999 Michael Jennings (mej) Some selection changes and escape sequence fixes. You can now specify multiple color modifier commands in a single escape sequence. You can also remove any existing color modifiers using "clear". ---------------------------------------------------------------------- Thu Nov 18 21:47:02 PST 1999 Michael Jennings (mej) I've rewritten almost the entire scrollbar. It mostly works, but it still has issues. I've put an #error directive in so that it won't compile; take it out if you *really* wanna try it. It's much more efficient than before. ---------------------------------------------------------------------- Fri Nov 19 16:55:22 PST 1999 Michael Jennings (mej) Okay, I think I have everything back in working order. PLEASE test this thoroughly, as an awful lot has changed. Let me know what I broke. :) ---------------------------------------------------------------------- Fri Nov 19 18:43:58 PST 1999 Michael Jennings (mej) Fixed some other stuff I found, and cleaned up the remaining occurances of calls to the old scrollbar_show() function. ---------------------------------------------------------------------- Fri Nov 19 23:05:31 PST 1999 Michael Jennings (mej) Once again, I've rendered old themes obselete. :-) I added a new config file attribute and command-line parameter. The option is --default-font-index, but I wouldn't necessarily use it. The config file attribute makes more sense. :-) Anyway, your themes will now need to have a line like this: font default in the attributes section. This tells Eterm which font it should use on startup. ( is a number between 0 and the highest-numbered font you define.) You can now have up to 256 fonts. Font 0 is no longer necessarily the default font; it is the smallest font. And the larger the font index, the larger the font should be. (Of course, this assumes you want Ctrl-> and Ctrl-< to increase/decrease your font size. In reality, you can have your fonts in any order, and those keys will cycle through them in order.) Before, font 0 was always the default, and you didn't have much freedom in rearranging your fonts. Plus, you were limited to 5. Not any more. :-) The new system is much more straight-forward, logical, and powerful. So please be sure to update your themes by hand, or remove your theme directory before installing this new version. If your theme lacks the "font default" line, your Eterms will start with the wrong font. :-] ---------------------------------------------------------------------- Thu Dec 2 22:18:51 PST 1999 Michael Jennings (mej) A good number of changes here. First off, since nobody reported any bugs with the new font stuff, I switched the multibyte fonts over to use it as well. They do use the same font index, however, in order to keep the sizes matched up. I also fixed up the modifier stuff so that Meta and Alt are matched by KeySym rather than assuming Mod1. I also took care of the action dispatcher so it would keep up with these changes. To go along with this, I added 3 new options and config file attributes which allow you to set the modifier that should represent Meta, Alt, and NumLock. This overrides the automatically-detected X server settings. I also applied some fixes to the XIM code from Sung-Hyun Nam . ---------------------------------------------------------------------- Mon Dec 6 14:05:36 PST 1999 Michael Jennings (mej) Added support for the Pablo Performance Analysis Toolkit (http://www-pablo.cs.uiuc.edu/Software/Pablo/pablo.htm). ---------------------------------------------------------------------- Mon Dec 6 17:30:21 PST 1999 Michael Jennings (mej) I'm an idiot. Thanks to Matthew Hawkins for catching my blunder. ---------------------------------------------------------------------- Mon Dec 6 21:53:23 PST 1999 Michael Jennings (mej) Update our modifier masks when the mappings change. Note that this will supercede any config file settings you have; that's life. ---------------------------------------------------------------------- Tue Dec 7 22:10:19 PST 1999 Michael Jennings (mej) Support for RedHat's utempter library and some other fixes. Thanks to Erik Troan and Tim Powers for their help with this. ---------------------------------------------------------------------- Wed Dec 8 19:05:06 PST 1999 Michael Jennings (mej) Updated the man page once again. ---------------------------------------------------------------------- Fri Dec 10 23:33:16 PST 1999 Michael Jennings (mej) I finally got around to implementing double-buffering, although it seems to still have some issues with font changes. But if you don't change fonts, it works great. :-) I also fixed the multibyte font stuff with help from Sung-Hyun Nam . There seem to be some new issues here, though, with the background pixmap. But I'm to tired to look deeper tonight. ---------------------------------------------------------------------- Mon Dec 13 09:42:44 PST 1999 Michael Jennings (mej) Oops. I intended to test without multi-charset before committing, but I seem to have forgotten to do that. Lots and lots of people submitted various patches for this, but I didn't use any of them. But thanks to all for pointing out my error. :-) ---------------------------------------------------------------------- Mon Dec 13 10:00:40 PST 1999 Michael Jennings (mej) A patch from Sung-Hyun Nam for some default Korean fonts. ---------------------------------------------------------------------- Mon Dec 20 18:51:10 PST 1999 Michael Jennings (mej) Son of a Gnea. How did I ever get away with having *these* frikkin' bugs in there?! =P ---------------------------------------------------------------------- Mon Dec 20 19:38:40 PST 1999 Michael Jennings (mej) I fixed a bunch of double-buffering stuff here. I'm going to use it by default on my own Eterms for awhile, and if I don't hit any snags, I'll make it the default in the themes. ---------------------------------------------------------------------- Tue Dec 21 13:19:06 PST 1999 Michael Jennings (mej) Fixed the geometry handling again. Also fixed the parsing of geometry strings like '-0+0'. ---------------------------------------------------------------------- Tue Dec 21 16:04:39 PST 1999 Michael Jennings (mej) Fixed a little issue with setting the background pixmap to None via the menu. ---------------------------------------------------------------------- Tue Dec 28 11:44:10 PST 1999 Michael Jennings (mej) Thanks to a cl00 from raster, double buffering is much more efficient now. :-) ---------------------------------------------------------------------- Wed Dec 29 12:32:19 PST 1999 Michael Jennings (mej) I think I've finally got the menu behavior working right. Menus now move themselves if needed, and exposes are now handled properly. ---------------------------------------------------------------------- Thu Dec 30 14:55:59 PST 1999 Michael Jennings (mej) Finally fixed the seg fault pointed out by Tom Gilbert back in mid-September where small Eterms with little or no scrollback would crash when receiving large amounts of data all at once. I also fixed a clearing issue with double buffering, and I worked around a really lame gdb/glibc2 bug that has prevented me from using gdb with Eterm for ages. ---------------------------------------------------------------------- Mon Jan 3 11:14:27 PST 2000 Michael Jennings (mej) First commit of the new year! (Notice I didn't say the new millenium, since *that* doesn't start until Jan 1, 2001.) This should hopefully fix the bug where dead keys would bring up the menu. ---------------------------------------------------------------------- Mon Jan 3 12:47:59 PST 2000 Michael Jennings (mej) Fixed the bug with a solid scrollbar not updating colors when the focus changed. Pointed out by cirin . ---------------------------------------------------------------------- Mon Jan 3 19:36:16 PST 2000 Michael Jennings (mej) Fixed a seg fault on large resizes. Also redid some of the memory tracking code to provide more information. ---------------------------------------------------------------------- Tue Jan 4 14:13:48 PST 2000 Michael Jennings (mej) Some minor optimizations I did while looking into a bug report. ---------------------------------------------------------------------- Wed Jan 5 21:23:56 PST 2000 Michael Jennings (mej) Copyright date updates. ---------------------------------------------------------------------- Fri Jan 7 20:11:48 PST 2000 Michael Jennings (mej) A patch from Sung-Hyun Nam to improve multi-byte font configuration in the default theme files. ---------------------------------------------------------------------- Mon Jan 10 14:47:33 PST 2000 Michael Jennings (mej) Fixed the problem with menus in auto mode. ---------------------------------------------------------------------- Mon Jan 10 16:55:51 PST 2000 Michael Jennings (mej) Fixed some transparency issues noticed by keebler . ---------------------------------------------------------------------- Tue Jan 11 23:47:36 PST 2000 Michael Jennings (mej) More fixes with menus and transparency. After you build this version, check out the brand new "glass" theme at http://www.eterm.org/. It looks sweet. :-) ---------------------------------------------------------------------- Wed Jan 12 00:14:11 PST 2000 Michael Jennings (mej) This should fix the NONE problem. ---------------------------------------------------------------------- Fri Jan 14 16:34:13 PST 2000 Michael Jennings (mej) Fixed a minor emulation problem pertaining to the down arrow on the keypad thanks to a patch from Marius Gedminas . ---------------------------------------------------------------------- Mon Jan 17 13:09:37 PST 2000 Michael Jennings (mej) Fixed the faulty assumption that font->per_char is always non-NULL. ---------------------------------------------------------------------- Mon Jan 17 13:27:52 PST 2000 Michael Jennings (mej) Fix XK_KP_Insert and XK_KP_Delete to respond to the application keypad setting. ---------------------------------------------------------------------- Tue Jan 18 16:47:54 PST 2000 Michael Jennings (mej) Some background-related changes since I'm redoing the backgrounds collection (i.e., removing the cool-but-too-busy-or-bright pics). ---------------------------------------------------------------------- Tue Jan 18 20:16:01 PST 2000 Michael Jennings (mej) Updated the menu files to include all the new images in the background collection. Also fixed a bug with solid-color menus and menus where the selected state was not defined. ---------------------------------------------------------------------- Tue Jan 18 21:17:24 PST 2000 Michael Jennings (mej) Finally got around to adding a bevel to the edges and solid-color menus. Also added arrows for submenus. ---------------------------------------------------------------------- Fri Jan 21 12:52:26 PST 2000 Michael Jennings (mej) Fixed an off-by-one error in the scrollbar click-handling pointed out by Malcolm Tredinnick . ---------------------------------------------------------------------- Fri Jan 21 18:40:13 PST 2000 Michael Jennings (mej) Apparently someone was confused by the out-of-date README file, so I updated it. ---------------------------------------------------------------------- Thu Feb 10 15:10:01 PST 2000 Michael Jennings (mej) This is the first public availability of the work thus far on Eterm 0.9.1. There's quite a bit of new stuff here. * Added scrollbar thumb support. * Completely redid the terminfo/termcap stuff. The terminfo file is now compiled (by tic) and installed by default (unless you specify --without-terminfo). The config files still say xterm, though, because some programs (like SLang and GNU mc) use the silly algorithm of "Is $TERM set to xterm?" to detect mouse reporting support in a terminal. =P But if you don't ever use xterm, you can use Eterm's termcap and just name it "xterm" instead. Thanks to Marius Gedminas for his patch that started this whole revamp. * Added the kEsetroot script for KDE users from Dax Games . * You can now configure the Home and End emulation via --with-home= and --with-end= options to configure. The --with-terminfo option is also new, and --enable-xim is now the default. * Added a new image state, disabled, for when Eterm loses focus. This is supported by all widgets (well, all those that could possibly be on screen when Eterm lost focus), even the background image. So you could actually have all your images darken on focus out and restore to normal on focus in. * Widget colors formerly dealt with as colors (menu text color, scrollbar color, etc.) are now handled by the imageclasses. Each image state can have a foreground and background color defined. The current exception is the background image; I hope to add that later. The foreground is the text color and the background is the object color (for solid color mode). So menu text color is set by the menu imageclass. And again, for unfocused colors, use the disabled state of the imageclass. * Proportionally-spaced fonts are now handled much better. They are still forced into evenly-spaced columns (it's a terminal for crying out loud!) but at least you don't end up with Eterm's wider than your screen. :-) * Home on refresh is gone, as is home on echo. It's now much simpler. There are two options: home on output, and home on input, the former being a combination of echo and refresh. Also, keypresses that don't necessarily have corresonding output can trigger a home on input, like Ctrl-End or whatever...ones that don't have special meaning. Credit to Darren Stuart Embry for pointing out this issue and the one with "m-" in font names. * I finally got around to re-merging the new parser stuff from my work on the Not Game. Closed up some old potential behavior quirks with theme parsing. * Added a new escape sequence to fork-and-exec a program. Also added a scrollback search capability to highlight all occurances of a string in your scrollback buffer. Use the new "Etsearch" utility to access it. "Etsearch string" to search for a string, then "Etsearch" by itself to reset the highlighting. * And of course, the biggie. Eterm now supports a completely- customizeable buttonbar. Not a menubar, a buttonbar. It can have an arbitrary number of buttons, and each button can perform an action, just like a menuitem. So a button could bring up a menu (like a menubar) or launch a program (like a launchbar) or perform an operation (like a toolbar). Each button can have an icon, text, or both. And you can have buttons left- or right-justified in the buttonbar. You will eventually be able to have an arbitrary number of buttonbars, but I'm still working on that. As with any change this big, things could very easily be broken. So beware. :-) I have tested this myself, and everything seems to work, but I can't test every possibility. Let me know if you find anything that's broken, and enjoy! ---------------------------------------------------------------------- Mon Feb 14 16:35:01 PST 2000 Michael Jennings (mej) Oops. Little variable clash there. Always ended up with $ETERM_*_ROOT set to "in". I finally got around to investigating it. :-) ---------------------------------------------------------------------- Tue Feb 15 19:31:04 PST 2000 Michael Jennings (mej) The buttonbar can now be toggled on and off both in the config file and via an escape sequence. The themes in CVS use Ctrl-Shift-Button3. You can also specify in the config file whether to dock the buttonbar at the top or the bottom of the Eterm window. You can't move it on the fly yet, but that will come. I also fixed resizing so that the term window didn't redraw itself unnecessarily. Hopefully I didn't break anything in the process. :-) Plus, I fixed poor handling of X-generated ConfigureNotify events, and the terminfo stuff is now done at install time instead of build time. ---------------------------------------------------------------------- Wed Feb 16 14:58:51 PST 2000 Michael Jennings (mej) Fix the XIM input positioning to work with the buttonbar. ---------------------------------------------------------------------- Thu Feb 17 15:13:20 PST 2000 Michael Jennings (mej) Fixed a bug with background colors and proportional fonts. Also added an escape sequence, \e]30;\a, to dump the scrollback buffer to a file. You will not get colors, or bold, or underlining, or any other rendering information. Just the text. Linebreaks will appear as they do on the screen. ---------------------------------------------------------------------- Thu Feb 17 21:38:23 PST 2000 Michael Jennings (mej) Fixed a bug in the menu code reported by Sung-Hyun Nam . There's also some new stuff here, but I haven't tried testing it at *all*, so I'm not prepared to talk about it. ---------------------------------------------------------------------- Fri Feb 18 21:09:29 PST 2000 Michael Jennings (mej) Okay, I've added a new option to configure. --config-buffer-size=NNNN will set the theme parser's line buffer size. What does this mean? Well, this determines how big a line being parsed can get at any one stage of parsing. So if you use %dirscan() on a large directory, or you use %random() on a large list, or you simply have some very large lines in your config file, making this buffer size larger will enable them to be handled. The down side to this is that your Eterms will appear to take up more memory. In reality they don't, since all that memory gets freed, but it isn't returned to the OS until Eterm exits, and the RSS won't go down unless part or all of Eterm is swapped out by the OS. So you've been warned. :-) For those who didn't go digging by themselves, what I added yesterday were three new builtin functions: %get(variable) Retrieves the value of a theme variable %put(variable value) Sets the value of a theme variable %put(variable) Removes a theme variable %dirscan(directory) Returns a list of the files in a directory Everything here should be fairly self-explanatory. The variables are internal to Eterm. They will last until Eterm exits, so you can refer to them in later theme files, unless of course you call %put() with a variable but no value (which removes the variable). Also note that %dirscan() returns only the filenames, not the full pathnames. This is for two reasons: One, you already know the path to the file since you specified it. Two, it enables handling of directories with larger numbers of files since the path isn't uselessly duplicated for each entry it generates. These new functions will be the backbone for a new random background system since the *.list files are rather clumsy in a lot of ways. I am not yet sure how it will work exactly, but I know I'll need these functions to do it. :-) ---------------------------------------------------------------------- Wed Mar 1 18:37:18 PST 2000 Michael Jennings (mej) I'm still not done with the commenting work I've been doing, but I've made some fixes, so I figured it was time to commit what I've done so far. I've added support for multi-byte selection/pastes from programs like Netscape, thanks in part to a patch from Yasuyuki Furukawa . I've also applied a bugfix for pty allocation on Irix from David Kaelbling , a display bugfix pointed out by Valdis Kletnieks , and a fix for a missing menu in the auto theme discovered by someone on IRC. I've also added quite a few comments to term.c to help people grok the parsing of escape sequences a little better. ---------------------------------------------------------------------- Thu Mar 2 09:47:30 PST 2000 Michael Jennings (mej) Right. How the hell did I miss that?! Thanks again Valdis. ---------------------------------------------------------------------- Thu Mar 2 21:40:09 PST 2000 Michael Jennings (mej) This fixes yet another resize-to-crash bug, this time with various applications which use the secondary screen (mutt, mc, vim, etc.). The fix is deceptively simple and does not convey the fact that it took around 3 hours to track this bastard down. Credit to Marc Merlin for first pointing this out and for helping me track it down. And credit to Gray Watson for dmalloc, which has saved my ass once again. ---------------------------------------------------------------------- Fri Mar 3 20:23:37 PST 2000 Michael Jennings (mej) I did some optimizations for expose handling and full-screen redraws. It will have a greater impact on those who don't use double buffering. :-) ---------------------------------------------------------------------- Fri Mar 3 21:05:11 PST 2000 Michael Jennings (mej) Tom Gilbert spotted a fallback issue with colors which I have now fixed. Tom, your e-mail address is too damned long. Just thought you should know. ---------------------------------------------------------------------- Mon Mar 6 21:11:13 PST 2000 Michael Jennings (mej) Added a new option. -0 (that's a zero) or --itrans will invoke the immotile optimization for transparency, so named because it works best on windows that don't move around much on the desktop. It works even better for windows that are sticky between desktops. So if you have logging windows (running tail -f and the like) that are shaded/tinted, you definitely want to have this. It will even benefit ordinary Eterm windows, provided you don't move them around a lot. Eterms that do not change desktops may be better off with the other way; Eterms that are not shaded or tinted at all will not behave any differently. Here's the technical explanation for those who are interested. The old (and still the default) behavior is for Eterm to check to see if any color modifiers are applied to the image_bg class, and if so, to make a copy of the *entire* desktop image which is then shaded/tinted appropriately. It then snapshots a portion of that for the actual background. This way, if the Eterm window is moved, all the shading and tinting will have already been done, so all it has to do is grab another portion of the desktop and use it. However, this involves a LOT of calculations (one per pixel of the desktop pixmap) on startup and at every desktop switch. The immotile optimization is intended to reverse that logic by optimizing for windows that do not move (hence the term "immotile"). It takes the snapshot of the desktop pixmap and applies any shading or tinting *after* taking the portion it needs. This requires much fewer calculations on startup and when changing desktops, but the entire set of calculations must be repeated whenever the window is moved. This is fine for small windows or windows that don't move very often, but that's not always the case. So it is to your advantage to pick one or the other depending on how you use each particular theme or window. Two notes. One, keep in mind that the -0/--itrans option doesn't *activate* transparency; you still need -O/--trans for that. Two, this does not affect Eterms with no color modifiers applied to the background. In that case, Eterm still references the existing desktop pixmap to save memory. ---------------------------------------------------------------------- Wed Mar 8 19:35:36 PST 2000 Michael Jennings (mej) Added a new --pipe-name option to allow Eterm to read from a console device/tty/pipe other than /dev/console. This is useful for folks on Debian, where "console" messages actually go to the /dev/xconsole named pipe rather than to /dev/tty0. ---------------------------------------------------------------------- Tue Mar 14 19:11:26 PST 2000 Michael Jennings (mej) Some further fixes for inline functions, 2 new winop actions, brand new and improved profiling macros, some miscellaneous fixes for SGI from Kimball Thurston , and more robust checking in the pasting code. ---------------------------------------------------------------------- Fri Mar 17 18:27:51 PST 2000 Michael Jennings (mej) I added accelerated scrollwheel support. I also added a #define in src/feature.h for specifying the number of lines of context to keep when paging up or down. Also, we're back to the old behavior where home on input won't be triggered unless the key pressed has an associated string value. I went back on this because Shift causing a jump to the bottom was really annoying when trying to Shift-PgUp or Shift-PgDown. Sorry, Darren, but you lose. ---------------------------------------------------------------------- Fri Mar 24 18:16:02 PST 2000 Michael Jennings (mej) Added a patch from Kimball Thurston for XIM. I also added support for two new escape sequences at the request of Cale Gibbard . "\e]Pnrrggbb" can now be used to modify the color palette at runtime, and "\e]R" will restore the defaults. These are compatible with the Linux console. ---------------------------------------------------------------------- Mon Mar 27 12:48:09 PST 2000 Michael Jennings (mej) Some quick fixes from Cale Gibbard for the color changing stuff. ---------------------------------------------------------------------- Mon Mar 27 19:08:03 PST 2000 Michael Jennings (mej) --shade and --tint have returned with the same syntax as before. ---------------------------------------------------------------------- Tue Mar 28 12:31:06 PST 2000 Michael Jennings (mej) You can tint by X color values (like "grey75" or "MidnightBlue" or "#8080ff"). Severely twisted. :-) ---------------------------------------------------------------------- Tue Mar 28 18:42:09 PST 2000 Michael Jennings (mej) Tint by number or color, and shade by percentage, are now available via the "\e]6;2;" escape sequence. For example, "\e]6;2;shade;10\a" will shade the background by 10%. "\e]6;2;tint;lightblue\a" will give the background a light blue tint. "\e]6;2;shade;sa;30\a" will give a 30% shade to the scrollbar anchor. ---------------------------------------------------------------------- Thu Mar 30 20:34:10 PST 2000 Michael Jennings (mej) Quick little option -q/--no-input. It keeps Eterm from accepting keyboard input, and keeps the window manager from focusing it. Useful for log tailers and such, maybe. This feature was requested by Peter Ward . I will be adding an escape sequence to toggle this. ---------------------------------------------------------------------- Fri Mar 31 15:12:37 PST 2000 Michael Jennings (mej) Added the escape sequence for the "no input" option. "\e]6;27\a". ---------------------------------------------------------------------- Mon Apr 3 16:42:06 PDT 2000 Michael Jennings (mej) Added a --buttonbar option to force on/off all your buttonbars. ---------------------------------------------------------------------- Wed Apr 5 21:48:39 PDT 2000 Michael Jennings (mej) There are now two different sets of settings you can save. You can save user settings, which are the things that one would generally consider to be user-specific (toggles, text colors, etc.). You can also save theme settings, which saves *everything*, including the stuff that user settings don't include (like imageclasses, menus, etc.). Settings are saved to user.cfg and theme.cfg, respectively. Also, Eterm will now detect if it cannot write to the location from which it got the theme (i.e., a system-wide directory), and will fall back on ~/.Eterm/themes/. It WILL create this directory tree if it does not already exist. Hopefully this will make more people happy. :-) ---------------------------------------------------------------------- Wed Apr 12 21:18:19 PDT 2000 Michael Jennings (mej) This is the initial commit with Imlib2 support. READ THIS CAREFULLY. There is important information in this commit message that will keep you from getting screwed. First off, support for Imlib 1.x is GONE. It is no longer supported as of now. If you want to continue using it, do NOT install this version. I tried to support both for awhile, but the code ended up being way too ugly and hackish. Imlib2 is the future. And trust me, when you see what we do with this future, you'll be happy for the switch. The good news is that most of the basics work. Transparency still works, and the basic image stuff works. Most users won't notice any major problems, so long as your Imlib2 is 100% up-to-date. However, a few things still don't work: 1. Auto mode is a bit broken. You'll get X errors in XFree86 4.0. Don't use it if you're running XFree 4. 2. Color modifiers for images don't work. At all. 3. Transparency shading/tinting will not work in 8bpp or lower. Life blows sometimes. Sorry. Time for a real video card. :-) 4. The built-in icon is broken. 5. You WILL need to update your theme.cfg files. The borders on the horizontal and vertical bar images were incorrect when combined with the new anti-aliased scaling. The horizontal bars should have a right border of 3. Vertical bars should have a bottom border of 3. The menu images should have both right *and* bottom borders of 3. You can either make those changes by hand, or use the --with-theme-update option to autogen.sh. Your call. I think that covers everything I've run into. I will point out that I don't really take advantage of a lot of the Imlib2 features just yet. My first priority is to make all the stuff that worked before work again (or at least the important stuff). Then I'll work on new features. So there it is. If you're not ready for it, don't use it. But if you are, I hope you like it. ---------------------------------------------------------------------- Wed Apr 12 21:46:41 PDT 2000 Michael Jennings (mej) Fixed auto mode problems. That was a really dumb oversight. ---------------------------------------------------------------------- Thu Apr 13 21:15:03 PDT 2000 Michael Jennings (mej) Fixed an image loading problem. ---------------------------------------------------------------------- Mon Apr 17 22:25:27 PDT 2000 Michael Jennings (mej) I fixed the problem reported by Joakim Bodin with spawned processes. Also fixed Esetroot as reported by Wayne Johnson . Support for buttons higher than 5 was also added to the action bindings code for those (like me) with IntelliMouse Explorers and XFree86 4.0. :-) ---------------------------------------------------------------------- Tue Apr 18 23:55:42 PDT 2000 Michael Jennings (mej) Added the pixmap beveling support back in so that the glass theme will work again. Once again, you poor 8 bpp saps are SOL. I also added the icon support back in, along with a new built-in icon courtesy of Brian McFee . ---------------------------------------------------------------------- Mon Apr 24 18:46:25 PDT 2000 Michael Jennings (mej) Work around that polka-dot-making Imlib2 problem until it can be fixed properly. ---------------------------------------------------------------------- Mon Apr 24 20:43:00 PDT 2000 Michael Jennings (mej) Found the Imlib2 bug and fixed it, so revert this hack. ---------------------------------------------------------------------- Tue Apr 25 11:45:15 PDT 2000 Michael Jennings (mej) Updated per changes to Imlib2 API. ---------------------------------------------------------------------- Thu Apr 27 19:54:28 PDT 2000 Michael Jennings (mej) Made some changes to the build process that should fix things for people without shared library dependencies working. ---------------------------------------------------------------------- Tue May 2 16:56:47 PDT 2000 Michael Jennings (mej) After getting sick of hearing people whining about the obscure error messages that resulted from trying to build without pixmap support, I hacked it until it at least built without it. I also added warnings to configure.in so that people would know if that happened. It's still not very happy running that way, which is something I need to fix. But hopefully it will stop the whining. Yeah, right. =P ---------------------------------------------------------------------- Wed May 3 21:04:37 PDT 2000 Michael Jennings (mej) Fixed a bug in the handling of resize events thanks to a tip from Teodor Zlatanov . While I was at it, I also fixed a couple remaining issues with the popup menu system. You shouldn't get any more cases where items remain selected after you've moved your mouse off of the menu, or where a submenu would stay up even though another menuitem is selected. ---------------------------------------------------------------------- Thu May 4 00:32:45 PDT 2000 Michael Jennings (mej) Added new shade/tint routines, including some done in MMX assembly, by Willem Monsuwe . Thanks Willem! These should prove to be faster than the old stuff, probably by quite a bit. ---------------------------------------------------------------------- Fri May 26 20:43:03 PDT 2000 Michael Jennings (mej) Okay, there are a few changes here. First off, I made multi-byte font support the default now, as long as you have ISO 10646 fonts. In order to do this, I made the default encoding type "Latin1" so as not to interfere with 8-bit ISO 8859-1 characters. This means that if you relied on the default multi-byte encoding method to be SJIS, you'll need to update your theme files. I also set it up so that Eterm will ignore SIGHUP, at least until I do something with it (like reloading the theme or something). I fixed the proportional font size algorithm. If there is more than a 3-pixel variance between the minimum and maximum sizes for glyphs in a proportional font, Eterm will set the size to 2 standard deviations above the average width. This is so that they won't look so spread out and ugly, but it still doesn't look perfect. Not much I can do on that front...terminals must have fixed-width columns. And then there's the biggie. I put in the ability to configure the now-infamous font effects. I left a black drop shadow in as the default, but you can now customize it via the --font-fx option or in the config file using "font effects " in the attributes context. You can even use "fx" instead of "effects" for short. So what goes in the part? Well, you have several options. To use a single-color outline, say "outline ". Likewise, a single-color drop shadow is "shadow [corner] "; "bottom_right" is the default corner if you don't specify one. For a 3-D embossed look, "emboss ". The opposite, a carved- out look, can be had with "carved ". (Of course, with those last two, the 3-D look will only work if you choose the colors wisely.) Those are all the shortcuts. The long way is to specify a series of corner/color pairs, like "tl blue" for top-left blue, or "bottom_right green". You can abbreviate using "tl," "tr," "bl," or "br," or you can spell out "top_left," "top_right," "bottom_left," or "bottom_right." If you omit a corner name, the first one defaults to top-left, the second to top-right, and so on as listed above. For no font effects at all, simply specify "none". ---------------------------------------------------------------------- Sun May 28 14:45:03 PDT 2000 Michael Jennings (mej) My attempt to track down the strange X errors have revealed that a pixmap given to me by Imlib2 is getting freed somehow behind my back. Probably because this part of Imlib2 hadn't been tested before Eterm was converted. =P It doesn't seem to happen in XFree86 4.0; I'm wondering if XFree 4 is smart enough to detect double-frees of old XID's and just ignore them? Well, I'm going to have to add some debugging code to Imlib2 and see if I can track down where it's freeing my pixmaps. But I have some errands to run first, so I'm going to commit this for now. It shouldn't actually change any functionality. ---------------------------------------------------------------------- Tue May 30 08:49:43 PDT 2000 Michael Jennings (mej) Fix to multibyte screen rendering from Sung-Hyun Nam . ---------------------------------------------------------------------- Wed May 31 22:34:12 PDT 2000 Michael Jennings (mej) Okay, first off I need to thank Marius Gedminas . Not only did he point out several issues, he was even willing to send a patch. :-) This commit includes Marius' patch which keeps MappingNotify events from overriding users' modifier settings. It also includes a fix to a seg fault that he pointed out when menus were loaded without the menu imageclass having been defined. He also pointed out that --pause tends to sit and spin, taking up 100% of the CPU time. Funny how E-Cpu never seemed to get too bent out of shape over it, but he was indeed correct. Thus I have fixed it, and while doing so, I have changed the way it works. It no longer waits for a keypress per se. Actually, it just ignores the fact that its child went away and keeps right on taking X events. There are a few exceptions though. Either ESC or Ctrl-C will exit a paused Eterm. Any other input that doesn't have special meaning to Eterm will be ignored. (Shift-PgUp and Shift-PgDn still work however, as do any action bindings you may have.) ---------------------------------------------------------------------- Thu Jun 1 19:31:18 PDT 2000 Michael Jennings (mej) Fix a potential DoS pointed out on BUGTRAQ by Kit Knox . ---------------------------------------------------------------------- Thu Jun 1 20:05:49 PDT 2000 Michael Jennings (mej) Dammit! I did something really stupid. For anyone who doesn't know already, calling X from a signal handler is a NO-NO. The *really* stupid part is that I already KNEW that! *slaps self* ---------------------------------------------------------------------- Fri Jun 9 22:33:29 PDT 2000 Michael Jennings (mej) Fixed a seg fault when resizing to one row while on the secondary screen. I have no clue how that bug crept in there all of a sudden, but thanks to Marius Gedminas for pointing it out. ---------------------------------------------------------------------- Sat Jun 10 11:38:36 PDT 2000 Michael Jennings (mej) Some terminfo fixes, also from Marius Gedminas . ---------------------------------------------------------------------- Mon Jun 12 13:33:39 PDT 2000 Michael Jennings (mej) Fixes from Willem Monsuwe to his MMX routines. ---------------------------------------------------------------------- Mon Jun 12 19:18:56 PDT 2000 Michael Jennings (mej) Fixed an old rxvt bug in the handling of "\e[0m". I *really* wish I had time to rewrite that damned thing. Such a piece of crap. Thanks again to Marius Gedminas for pointing it out. ---------------------------------------------------------------------- Fri Jun 16 13:29:59 PDT 2000 Michael Jennings (mej) Merged in a patch from Ariel Glenn to do mirrored image tiling in Esetroot. ---------------------------------------------------------------------- Sat Jun 17 19:52:25 PDT 2000 Michael Jennings (mej) Patch from Martin Grimm to fix the parsing of the font fx stuff. ---------------------------------------------------------------------- Tue Jun 20 20:01:07 PDT 2000 Michael Jennings (mej) Patch from Sung-Hyun Nam to fix multi-byte font handling when the ISO-8859 font size doesn't match the multi-byte font size. ---------------------------------------------------------------------- Mon Jun 26 09:50:37 PDT 2000 Michael Jennings (mej) Another multi-byte font support patch from Sung-Hyun Nam . ---------------------------------------------------------------------- Mon Jun 26 16:54:04 PDT 2000 Michael Jennings (mej) Between myself and Marius Gedminas , I think we licked that BCE issue that was talked about on the mutt-dev list. ---------------------------------------------------------------------- Wed Jun 28 14:14:53 PDT 2000 Michael Jennings (mej) Oops! The font size patch from the other day broke without multibyte font support enabled, which meant the XFree86 3.3.x people were screwed. Fixed now. ---------------------------------------------------------------------- Mon Jul 3 12:17:53 PDT 2000 Michael Jennings (mej) Marius Gedminas reported a couple of issues back when he was on his bug-spotting binge that I didn't have time to fix just then. Well, now I've fixed them. ~/.Eterm/user.cfg will now be found if there isn't a theme-specific one; this allows you to have a single user.cfg which specifies some options you want all your Eterms to have. Along those same lines, the action code now searches for duplicate bindings and changes the existing one rather than adding a new one to the end of the list. This allows bindings in user.cfg to override those in theme.cfg (as they should). Also, bindings are added in reverse order, so newer ones (like in user.cfg) take precedence over older ones (like in theme.cfg) if there is a conflict (e.g., if your theme.cfg binds "anymod button2" and user.cfg binds "ctrl button2," user.cfg wins). ---------------------------------------------------------------------- Mon Jul 3 12:50:00 PDT 2000 Michael Jennings (mej) I think this --pause mechanism will be agreeable to everyone. You can once again exit with any key (well, any key that has an actual character/string associated with it by X...not Insert, Home, etc.), but keys Eterm uses (like Shift-PgUp) will still work as expected. ---------------------------------------------------------------------- Wed Jul 5 18:31:39 PDT 2000 Michael Jennings (mej) Several people have asked for the spec file to be in the tarball so that rpm -ta works properly. I've put it in there, but I don't recommend doing it that way. I use /usr/local as my prefix, and there's a good chance I'll forget to change it before doing a dist tarball. I also put some dummy crap in pixmap.h so that compiling without Imlib2.h works again. ---------------------------------------------------------------------- Wed Jul 5 19:48:10 PDT 2000 Michael Jennings (mej) The multibyte font size patches caused weird behavior if your multibyte font sizes didn't match your regular font sizes for those who don't actually use the multibyte support. So I fixed that. I also fixed the XA_TEXT problem for people using old/broken X. ---------------------------------------------------------------------- Wed Jul 5 20:07:09 PDT 2000 Michael Jennings (mej) Hopefully this will fix the problem where the titlebar wouldn't always get updated with the pause mode message. ---------------------------------------------------------------------- Wed Jul 5 20:48:10 PDT 2000 Michael Jennings (mej) Dammit. I missed an occurance of XA_COMPOUND_TEXT(). ---------------------------------------------------------------------- Thu Jul 6 23:56:54 PDT 2000 Michael Jennings (mej) I think I've finally fixed all those XPolyText8 errors with pixmap support disabled. Solid color mode buttonbars seem to work now also. ---------------------------------------------------------------------- Fri Jul 7 11:45:49 PDT 2000 Michael Jennings (mej) Some more bits from last night's work. ---------------------------------------------------------------------- Mon Jul 10 14:28:28 PDT 2000 Michael Jennings (mej) Two more patches from Marius Gedminas . The first one allows for customization of the message displayed when Eterm goes into pause mode. There are actually two; one goes in the titlebar, and the other is displayed in the text window. His second patch makes Eterm's behavior a little smarter when it resizes itself. It tries to figure out which quadrant of the screen it's on and resizes in the most appropriate direction. (For example, Ctrl-GreaterThan on an Eterm in the lower right corner will cause the upper left corner of the Eterm to move; the lower right corner will stay put.) Thanks again to Marius for saving me time by sending patches. :-) ---------------------------------------------------------------------- Mon Jul 10 20:01:53 PDT 2000 Michael Jennings (mej) We no longer care about gravity. This should help Sawfish users. ---------------------------------------------------------------------- Wed Jul 12 22:35:34 PDT 2000 Michael Jennings (mej) Added a --cache option (and the config file attribute "cache") to facilitate changing the Imlib2 cache size. ---------------------------------------------------------------------- Tue Aug 22 21:21:20 PDT 2000 Michael Jennings (mej) Color modifiers for images now work once again. Please report any problems you find with them as soon as possible; I want to get 0.9.1 out the door in the fairly near future since the TODO list for 0.9.2 is already sizeable. ---------------------------------------------------------------------- Tue Aug 22 21:35:50 PDT 2000 Michael Jennings (mej) This should fix the selection problems between Eterm and other apps. ---------------------------------------------------------------------- Wed Aug 30 22:58:18 PDT 2000 Michael Jennings (mej) Massive reorganization/rewrite to libmej. It should now be 100% independent of Eterm. There still may be some gremlins in the memory debugging code, so don't use too high a number with --debug.... ---------------------------------------------------------------------- Thu Aug 31 11:22:30 PDT 2000 Michael Jennings (mej) Crap. That was not supposed to be committed. ---------------------------------------------------------------------- Thu Aug 31 23:02:10 PDT 2000 Michael Jennings (mej) Still more big changes. Working on adding pixmap and GC tracking to libmej using the existing allocation tracking routines. ---------------------------------------------------------------------- Fri Sep 1 00:39:41 PDT 2000 Michael Jennings (mej) That should fix the crashes. Somehow I managed to temporarily forget about pointer arithmetic. And somehow I thought trying to dereference a pixmap ID would be a good thing. Sigh. I need sleep. ---------------------------------------------------------------------- Fri Sep 1 15:25:28 PDT 2000 Michael Jennings (mej) Okay, everything seems hunky-dorey now. If you have memory debugging turned on, exiting Eterm will give a dump of the leftover allocated memory including where it came from and how much there is. You'll also get a listing of all the remaining Pixmap ID's and GC ID's along with where they were created. I also added some macros to the debugging stuff in libmej.h so that if you pass the --without-debugging option to ./configure, it will optimize out all the ASSERT and REQUIRE goop. This will make it harder to trap bugs before they cause problems, so don't do it if you want to help development, but if speed is critical to you, give it a shot. ---------------------------------------------------------------------- Fri Sep 1 21:03:53 PDT 2000 Michael Jennings (mej) I'm working on some deallocators now. The idea is that when Eterm exits and memory debugging is on, several routines get called to free the in-use memory (menus, font cache, etc.) that we still know about. Anything left after that would be either unavoidable leaks (like environment variables...read the putenv() man page sometime...sigh) or genuine memory leaks that need fixing. I'm down to about 4.5K of leftover malloc'd memory now. Making progress.... ---------------------------------------------------------------------- Fri Sep 15 14:48:51 PDT 2000 Michael Jennings (mej) Really stupid typo on my part pointed out by Sung-Hyun Nam . ---------------------------------------------------------------------- Sun Sep 17 11:51:16 PDT 2000 Michael Jennings (mej) Added ability to track Imlib2-created pixmaps via libmej. ---------------------------------------------------------------------- Sun Sep 17 13:05:13 PDT 2000 Michael Jennings (mej) When shaded, rely on Enlightenment rather than X for accurate x/y position information. This fixes a bug pointed out by Gnea . ---------------------------------------------------------------------- Sun Sep 17 17:29:26 PDT 2000 Michael Jennings (mej) Got rid of the useless backing_store option. ---------------------------------------------------------------------- Sun Sep 17 18:54:26 PDT 2000 Michael Jennings (mej) Fixed XErrors caused by calling XTranslateCoordinates with a pixmap. This was visible using the glass theme. ---------------------------------------------------------------------- Tue Oct 17 10:24:43 PDT 2000 Michael Jennings (mej) Fixed a typo which caused Makefile.am to break. Found by Josť Romildo Malaquias . ---------------------------------------------------------------------- Mon Oct 30 07:45:16 PST 2000 Michael Jennings (mej) Several small changes, like freeing pixmaps which won't be needed later, reducing the default Imlib2 cache size to 0 bytes (we don't really use it well), and an image path bugfix spotted by Teodor Zlatanov . The big change, of course, is the disappearance of libmej and the new dependency on libast, which is now distributed separately. ---------------------------------------------------------------------- Tue Oct 31 19:33:09 PST 2000 Michael Jennings (mej) Apparently AC_PREFIX() is too stupid to handle programs with hyphens in their names. ---------------------------------------------------------------------- Thu Nov 9 19:22:18 PST 2000 Michael Jennings (mej) Fixed the error message bug I noticed. There's also a big5 fix from Chung-Yen Chang , and I got rid of some tiny memory leaks in the X data, the first of which was noticed by zed@linuxpower.org. ---------------------------------------------------------------------- Thu Nov 9 20:14:34 PST 2000 Michael Jennings (mej) Thanks to continuing help from Sung-Hyun Nam , I finally figured out the double-buffering problem people were seeing. And as it turns out, his original patch was correct. So now it's fixed. Many thanks for his assistance. ---------------------------------------------------------------------- Sun Nov 12 12:05:58 PST 2000 Michael Jennings (mej) Check for _MOTIF_WM_INFO instead of _MOTIF_WM_HINTS to see if the WM can handle MWM hints. This is all raster's fault. ---------------------------------------------------------------------- Tue Nov 14 17:17:53 PST 2000 Michael Jennings (mej) Since someone wanted it, if no name is given but an exec line (the -e option) is given, the name defaults to the first word in the exec line instead of "Eterm-". For example, Eterm -e ssh foo would get the title "ssh". NOTE: Most Eterm themes already specify a name, so this will not work with those themes. ---------------------------------------------------------------------- Wed Nov 15 14:20:13 PST 2000 Michael Jennings (mej) As requested by Chris Morton , I added support for the SunCut, SunCopy, SunPaste, and SunFront keys. The 1st 3 operate on the xclipboard-managed "ClipBoard" buffer. The SunFront key will activate Eterm's "steal focus" mechanism. ---------------------------------------------------------------------- Thu Nov 16 16:40:54 PST 2000 Michael Jennings (mej) VA bought some licenses for Insure++, so I've been using it to audit Eterm. These are just the initial results of the collaboration; there will most likely be more. So far things are looking pretty good. I just wish Insure++ had more helpful messages. I'd really love to be able to track down those reads/writes involving freed pointers that it claims to have found in Imlib2.... I also had to try and make the build work without MMX. I did so; I just hope it still works *with* MMX.... =) ---------------------------------------------------------------------- Thu Nov 16 16:20:19 PST 2000 Michael Jennings (mej) Well, it would've worked just fine if not for a stupid typo. =P ---------------------------------------------------------------------- Thu Nov 16 16:27:09 PST 2000 Michael Jennings (mej) This time it really works. No, I mean it this time. Seriously. ---------------------------------------------------------------------- Fri Nov 24 18:53:13 PST 2000 Michael Jennings (mej) At the request of Snow-Man , I added the build date to the output of --version. While I was at it, I also added the RCS ident strings. I also applied a patch from Sung-Hyun Nam that fixes XIM-related seg faults during clean-up. ---------------------------------------------------------------------- Fri Dec 29 14:39:09 PST 2000 Michael Jennings (mej) Moved the HAVE_SAVED_UIDS define into a configure option so that the FreeBSD folks will have an easier time with it. Fixed "make distcheck" which broke at some point. That X stuff in clean_exit() should only happen if we're debugging. Nobody but me should have to deal with those random hangs. :-) Added a patch for multibyte cursor support from Michael C. Wu and Sung-Hyun Nam , along with some other FreeBSD-related patches from Mr. Wu. ---------------------------------------------------------------------- Tue Jan 2 18:28:57 PST 2001 Michael Jennings (mej) Applied a couple patches I'd overlooked in my inbox. Sebastian Dransfeld added a config file option to duplicate the behavior of the --buttonbar command-line option. He also updated the man page, something I usually put off until just before I do a release. :-) I also went back and redid the way Eterm does backquote execution to avoid a potential race condition. ---------------------------------------------------------------------- Wed Jan 10 12:58:31 PST 2001 Michael Jennings (mej) Added a spec file for Linux-Mandrake which was contributed (ages ago) by Joakim Bodin . I don't plan on maintaining this, so I hope he does. :-) Also applied a menu change which I am hoping will fix an infinite recursion bug in the menu system pointed out on SourceForge by Jonathan S. Keim . ---------------------------------------------------------------------- Thu Jan 18 14:56:03 PST 2001 Michael Jennings (mej) Just noticed that the preprocessing files weren't getting removed properly. Oops. :-) ---------------------------------------------------------------------- Thu Feb 1 19:02:51 PST 2001 Michael Jennings (mej) Jeff Blank pointed out that Sun's Workshop Pro compiler defines __SVR4 but not __svr4__ or SVR4. This has now been accounted for. ---------------------------------------------------------------------- Sat Feb 3 18:25:45 PST 2001 Michael Jennings (mej) Applied a patch from Sung-Hyun Nam to fix a seg fault bug in multi-byte pasting. ---------------------------------------------------------------------- Thu Feb 8 17:23:13 PST 2001 Michael Jennings (mej) Somehow I managed to think strcpy but type strcat. Oops. ---------------------------------------------------------------------- Mon Mar 5 13:38:01 PST 2001 Michael Jennings (mej) Fix for NetBSD from Marc Bevand . ---------------------------------------------------------------------- Sat Apr 28 12:08:56 PDT 2001 Michael Jennings (mej) Fixed handling of color modifiers for transparency in the disabled state. Bug pointed out by Hans Engren . ---------------------------------------------------------------------- Fri May 4 23:56:12 PDT 2001 Michael Jennings (mej) Lots of spec file cleanups and fixes. Also nuked a couple lousy backgrounds. ---------------------------------------------------------------------- Tue May 8 19:53:56 PDT 2001 Michael Jennings (mej) You can now create key, mouse button, menu item, and buttonbar button bindings which trigger the parsing of a "script." I've thrown in a few functions already to replace some icky escape sequences; there will be many more functions forthcoming, although I don't know how many of them (if any) will make it in prior to release. The usage is pretty simple. Where before you might've said: action string "\e]6;70\a" you would now say: action script "exit();" You can call as many functions as you like per script. Use a semi-colon (';') to separate each function call. If you only call one function, the ';' is optional. If you aren't passing parameters to the function, the parentheses are also optional. Parameters are separated by commas and/or whitespace. Valid functions currently are: die(): die() is a synonym for exit(). exec(): exec() is a synonym for spawn(). exit(): Exit Eterm. Takes an optional exit code or message. quit(): quit() is a synonym for exit(). save(): Save the config. Specify "theme" to save the theme config. Also takes an optional path & filename. search(): Search the scrollback buffer for a string. spawn(): Spawns a sub-program. Defaults to "Eterm". You will need the libast dated today to build and run this Eterm. You will also need to update your themes. ---------------------------------------------------------------------- Wed May 9 17:18:11 PDT 2001 Michael Jennings (mej) Fixed several bugs in the saving of settings and the support of scripts in menus. Also fixed the definition of term_name in the theme files as pointed out by Laurence J. Lane . ---------------------------------------------------------------------- Wed May 9 23:03:20 PDT 2001 Michael Jennings (mej) Fixed the handling of menus larger than the screen, an issue noted by Laurence J. Lane . While I was at it, I also made the pointer move along with the menu when a move is necessary. ---------------------------------------------------------------------- Wed May 16 18:09:55 PDT 2001 Michael Jennings (mej) I made several corrections to the terminfo entry noted by Thomas Dickey : - Removed cvvis. It wasn't actually supported and thus conflicted with cnorm. - Removed kf0, which conflicted with kf10. - Added the CPR (u6) capability which I inadvertantly omitted. I also removed the extraneous identities, keeping only "Eterm" and "Eterm-color". In a similar vein, I enabled the u8/u9 handshake while keeping the ENQ (^E) response disabled. ---------------------------------------------------------------------- Thu May 24 00:14:54 PDT 2001 Michael Jennings (mej) Finally got the selection stuff cleaned up. Hopefully this will be the last time I have to deal with it for awhile. While I was at it, I implemented incremental selection transfers. Unfortunately, it doesn't seem like too many people support it. kedit doesn't, and it's broken in Emacs (*grumble*). Works in gvim though. ---------------------------------------------------------------------- Mon Jun 11 17:49:55 PDT 2001 Michael Jennings (mej) Okay, first off, I removed 3 scaled backgrounds. See www.kainx.org or my post to enlightenment-devel for details. Second, I redid the default bindings for the mouse wheel. Basically, the wheel alone will scroll by pages. Ctrl+wheel will scroll by pages in groups of 5. Shift+wheel will scroll by a single line. If you hold down the Alt key, the same combinations will work the same way, but instead of scrolling within Eterm, they'll scroll the application in the terminal (by sending PgUp/PgDn and up/down arrows). This works in less, bash, and any other application which groks those keys. I also added a --without-mousewheel option to configure that will turn off the default scrollwheel bindings. Of course, you can always use action bindings in the config file to bind/rebind these any way you like. While I was at it, I found and fixed a bug in the handling of the Alt and Meta keys. I added a scroll() function to the script stuff which allows you to bind keys/buttons to scroll up and down. While I was at it, I added comments to script.c for each function you can use. And finally, the config file parser was moved to libast. ---------------------------------------------------------------------- Mon Jun 11 22:04:08 PDT 2001 Michael Jennings (mej) Fixed the --shade and --tint options. This issue was pointed out by Laurence J. Lane . ---------------------------------------------------------------------- Wed Jun 13 21:13:51 PDT 2001 Michael Jennings (mej) There is now a new mechanism for dealing with the background image collection, including a new update script. Please read the newly- rewritten bg/README.backgrounds for details. Also, I'm trying to flesh out the Contributors list in that file, but my memory isn't cooperating. So if you contributed one of the backgrounds, or know someone who did, please let me know. ---------------------------------------------------------------------- Fri Jun 15 18:02:31 2001 Michael Jennings (mej) Converted Eterm's ChangeLog to Avalon's format as well. Double-yay! ---------------------------------------------------------------------- Fri Jun 15 23:41:38 2001 Michael Jennings (mej) Added a -a/--attribute option for passing config file stuff to the parser on the command line. Also got the command line option section of the man page up to date. I'll tackle the rest some other time; it's late. :-) ---------------------------------------------------------------------- Sun Jun 17 11:51:39 2001 Michael Jennings (mej) Stupid stupid typo. Originally reported by Bas van Sisseren in Debian Bug #101161. ---------------------------------------------------------------------- Mon Jun 18 13:51:07 2001 Michael Jennings (mej) Oops. ChangeLog entries were ending up in the bit-bucket. Fixed and re-synced. :) ---------------------------------------------------------------------- Mon Jun 18 16:12:45 2001 Michael Jennings (mej) Adding a scaled background; we need at least 1. :) ---------------------------------------------------------------------- Mon Jun 25 17:41:55 2001 Michael Jennings (mej) Several changes here, many of which come from the Debian bug list or from bug reports on IRC. First off, I believe I've fixed an install issue with the bg/ directory. I also put an alternative acsc line in the terminfo file to see if it fixes anything on Debian. (RH works fine.) I removed the "main" context from all the theme files...which is something I should've done ages ago, but I forgot. I made a couple things options which were not previously configurable. The proportional font thingie which shrank the character cell width is now the --proportional option. The automatic window gravity on resize is now the --resize-gravity option. Both are boolean, and both are documented in the man page. And finally, I added the kill() function to the script language. At this point it can only take signals as numbers, but that's good enough for now. ---------------------------------------------------------------------- Mon Jun 25 17:59:50 2001 Michael Jennings (mej) This takes care of Debian bug #101777. Somebody was bitching that the 0-15 colors could no longer be used as values for the -f/-b/-c/etc. options. I don't remember that ever being a feature to begin with, but it took me all of 5 minutes to make it happen, so I figure what the hell. Here ya go. ---------------------------------------------------------------------- Thu Jun 28 19:01:05 2001 Michael Jennings (mej) Finished updating the man page for 0.9.1. ---------------------------------------------------------------------- Tue Jul 3 18:01:24 2001 Michael Jennings (mej) All the docs and themes should now be up-to-date. Unless a showstopping bug turns up in the near future, this is pretty much it for 0.9.1. Now we just need some testing to make sure there's nothing horridly wrong.... So you all can test while we finish up the web site and the backgrounds. :-) ---------------------------------------------------------------------- Fri Jul 13 17:07:45 2001 Michael Jennings (mej) This is mostly cosmetic, but fairly important nonetheless. Saved config files should not contain the "main" context. ---------------------------------------------------------------------- Thu Jul 19 12:19:21 2001 Michael Jennings (mej) Minor fix to correct popup scrollbar handling on startup. ---------------------------------------------------------------------- Sat Jul 21 20:22:26 2001 Michael Jennings (mej) Although I have yet to be able to reproduce it, I believe this will fix Debian bug #104393. I don't think the lower parts of that array were getting properly zeroed. :( ---------------------------------------------------------------------- Mon Jul 23 11:05:45 2001 Michael Jennings (mej) Well that was dumb. PNG backgrounds which were tiled rather than scaled would end up nuking most of the window. Fixed now. ---------------------------------------------------------------------- Mon Jul 23 17:59:18 2001 Michael Jennings (mej) Fixed the problem where the wrong font would end up in your menus and buttonbars if you enable multibyte support but don't have a specific encoding in use. I also corrected a large number of misplaced newlines in error messages; I think that was some Perl-fu gone awry. ---------------------------------------------------------------------- Sun Aug 5 01:52:51 2001 Michael Jennings (mej) Okay, first off, I finally found and fixed a typo with regard to the utempter support on RedHat-based systems. I doubt it's ever worked properly (sigh). Secondly, I added support for throwing Eterm's termcap entry into the termcap DB on FreeBSD (and possibly other *BSD-based) systems thanks to info from Kirby Kuehl . And finally, added in a patch from Paul Brannan to support some additional escape sequences for vim. ---------------------------------------------------------------------- Sun Aug 5 10:21:16 2001 Michael Jennings (mej) FreeBSD fix, take 2. ---------------------------------------------------------------------- Sun Aug 5 16:15:34 2001 Michael Jennings (mej) fvwm color thingie patch from Eric West . ---------------------------------------------------------------------- Fri Aug 10 13:51:34 2001 Michael Jennings (mej) I noticed this when I tested the smoked glass theme, but I forgot about it until Martin Tyler reminded me. This should fix the bogus calls to imlib_image_get_filename() etc. when using transparency and shading. ---------------------------------------------------------------------- Fri Aug 10 13:55:49 2001 Michael Jennings (mej) Minor typo... ---------------------------------------------------------------------- Tue Aug 21 12:51:54 2001 Michael Jennings (mej) Updating menus for some themes, and removing some themes that really don't demonstrate anything spectacular. They'll go on the web site. ---------------------------------------------------------------------- Thu Aug 23 14:00:02 2001 Michael Jennings (mej) I got tired of having to maintain half a gazillion menus.cfg files considering that the vast majority of them are identical or have large identical sections. Thus, I took the m4-based menus.cfg from the chooser theme and hacked on it a bunch. I can now regenerate the menu files for all Eterm themes from a single source file using the gen-menus script in doc/. I also removed the comments from the theme.cfg files of all themes except "Eterm" itself. ---------------------------------------------------------------------- Thu Aug 23 14:19:48 2001 Michael Jennings (mej) I forgot to mention that I made a small change to the input routine to try and support Cyrillic characters without XIM. This was requested by Konstantin Zemlyak . ---------------------------------------------------------------------- Mon Aug 27 14:48:17 2001 Michael Jennings (mej) Minor typos in the mutt menus. ---------------------------------------------------------------------- Tue Aug 28 00:30:55 2001 Michael Jennings (mej) Let's see if this fixes the PrintScreen problems.... ---------------------------------------------------------------------- Thu Sep 6 15:16:05 2001 Michael Jennings (mej) Argh. I hate finding stuff like this after a release. Luckily, it's not severe. It only occurs when --default-font-index is specified on the command line. Symptoms vary according to how the compiler arranges certain variables in memory. Thanks to Richard Lowe for reporting the problem. ---------------------------------------------------------------------- Thu Sep 6 15:33:37 2001 Michael Jennings (mej) While I'm at it, here's a patch to fix some escape sequence handling under vim from Paul W Brannan . This patch is reported to fix problems where vim would come up with underlines. ---------------------------------------------------------------------- Sat Sep 22 09:41:26 2001 Michael Jennings (mej) Fixes for Solaris where ln requires a certain argument order. This was flagged by Kevin Doherty . ---------------------------------------------------------------------- Wed Sep 26 23:19:37 2001 Michael Jennings (mej) Oops. Let's get rid of that useless code. :P Problem pointed out by Andre Pang . ---------------------------------------------------------------------- Thu Oct 11 05:32:57 2001 Michael Jennings (mej) Jerome De Greef contributed a configure.ac file for those who are using autoconf 2.50 or higher. ---------------------------------------------------------------------- Sun Oct 21 06:15:13 2001 Michael Jennings (mej) Fixed a couple remaining bugs in 0.9.1, including that really annoying problem people keeping whining about where Eterm won't build without Imlib2. It will now. :P ---------------------------------------------------------------------- Thu Oct 25 02:01:27 2001 Michael Jennings (mej) Argh. This configure.in/configure.ac thing is getting really old. ---------------------------------------------------------------------- Mon Dec 3 20:16:39 2001 Michael Jennings (mej) Patches from Paul Brannan , Klaus Elsbernd , and Derrick Moser which appeared while I was away. Fixes for mouse wheel reporting and reset handling (Paul), Solaris portability (Klaus), and XIM (Derrick). Getting ready to release 0.9.2 soonish. ---------------------------------------------------------------------- Tue Dec 4 16:38:15 2001 Michael Jennings (mej) Updated e-mail address for namsh at his request. ---------------------------------------------------------------------- Thu Dec 13 15:14:33 2001 Michael Jennings (mej) An update to a previous patch from Paul Brannan . ---------------------------------------------------------------------- Fri Dec 14 15:17:14 2001 Michael Jennings (mej) termcap fix from Fredrik Svensson and another mod to Paul's patch. ---------------------------------------------------------------------- Sat Dec 29 15:39:38 2001 Michael Jennings (mej) Fixed a little-endian bug with 24-bit XImages, added a bit to init_locale() in an effort to replicate the behavior of the Athena widgets, and added a -b option to Esetroot based on a patch from Oliwier Ptak . ---------------------------------------------------------------------- Sat Dec 29 16:09:42 2001 Michael Jennings (mej) Use AC_PROG_AWK to detect gawk/nawk/awk. ---------------------------------------------------------------------- Mon Dec 31 16:28:46 2001 Michael Jennings (mej) Minor debugging enhancements. ---------------------------------------------------------------------- Thu Jan 3 12:38:54 2002 Michael Jennings (mej) Fixed the select() call based on info from Paul W Brannan . Also added check for _POSIX_SAVED_IDS. ---------------------------------------------------------------------- Thu Jan 3 12:42:41 2002 Michael Jennings (mej) This is better. ---------------------------------------------------------------------- Mon Jan 14 13:51:49 2002 Michael Jennings (mej) Added a server grab around the setting of the root properties and background. Suggested by Owen Taylor and Olivier Chapuis . Also updated the version number in configure.ac for all those mor^H^H^Hpeople using Debian unstable. :-) Fixed a few compiler warnings too. ---------------------------------------------------------------------- Tue Jan 29 23:46:18 2002 Michael Jennings (mej) Improved debugging of image finding problems, and improved reporting of Imlib2 load errors. ---------------------------------------------------------------------- Sun Feb 3 15:51:38 2002 Michael Jennings (mej) Apparently I forgot to commit these copyright date changes. :( ---------------------------------------------------------------------- Mon Feb 4 21:13:44 2002 Michael Jennings (mej) Finally got around to fixing the icon loader.... ---------------------------------------------------------------------- Mon Feb 11 11:15:36 2002 Michael Jennings (mej) Fixed quoting in the configure script. ---------------------------------------------------------------------- Mon Feb 11 14:22:28 2002 Michael Jennings (mej) A few squirts of my trusty Cruft-B-Gone, and VOILA! :-) ---------------------------------------------------------------------- Tue Feb 12 00:05:03 2002 Michael Jennings (mej) Build and install the latest libast from CVS, then try this again. Sorry.... ---------------------------------------------------------------------- Tue Feb 12 00:27:03 2002 Michael Jennings (mej) Ahem. That was dumb. Let's just undo that, shall we? ---------------------------------------------------------------------- Thu Feb 21 03:33:33 2002 Ted Zlatanov (tzz) Added crude performance tests. ---------------------------------------------------------------------- Thu Feb 21 09:33:00 2002 Ted Zlatanov (tzz) Applied patch from Tomohiro KUBOTA to use auto locale encodings. This is not too useful right now, but with the next Eterm release it will be. I couldn't test thoroughly since I don't have multiple locales on my system, but what I did test looked fine. I also fixed a CONFIG_BUFF constant missing from options.h ---------------------------------------------------------------------- Thu Feb 21 19:06:18 2002 Michael Jennings (mej) I think Ted made the right call for the wrong reason. I'm adding the fallback value for CONFIG_BUFF so that people using the older libast will be able to use 0.9.2. I'd like to get 0.9.2 out the door soon, but libast 0.5 is far from ready. :-) ---------------------------------------------------------------------- Mon Feb 25 23:10:59 2002 Michael Jennings (mej) Fixed a warning that got missed before. Also removed the colour scheme that no one liked. I left it in the Eterm theme, though...just commented it out. I also put back the old font lines and commented those out too. The Eterm theme config file is intended as a teaching tool as well as a theme config. :) ---------------------------------------------------------------------- Tue Feb 26 10:01:41 2002 Michael Jennings (mej) Fixed the default fg color and color 7. ---------------------------------------------------------------------- Sun Apr 7 21:15:09 2002 Michael Jennings (mej) Be even more anal when dumping a buffer to a file.... ---------------------------------------------------------------------- Mon Apr 8 15:29:27 2002 Michael Jennings (mej) Fixed a bug spotted by Laurence J. Lane with color settings not being properly saved. ---------------------------------------------------------------------- Sun Apr 14 20:55:42 2002 Michael Jennings (mej) Changed occurances of "noenc" to the correct keyword, "none." Thanks to Laurence J. Lane for pointing this one out also. ---------------------------------------------------------------------- Sun Apr 14 22:34:41 2002 Michael Jennings (mej) Fixed a bug spotted by Charles Clancy that caused color modifiers to mistakenly be applied to the icon pixmap. ---------------------------------------------------------------------- Fri Apr 19 15:35:11 2002 Michael Jennings (mej) Use safe_print_string() to decode string defines before printing them in --version output. This fixes Debian bug #143328, submitted by Tom Gilbert . Also removed '~' from the CUTCHARS compiled-in default. (It had already been removed from the themes.) Makes double-click selection of URL's easier. Requested by Laurence J. Lane . ---------------------------------------------------------------------- Sun Apr 21 14:06:19 2002 Michael Jennings (mej) A patch from Charles Clancy to fix shading on Solaris. ---------------------------------------------------------------------- Mon Apr 22 09:20:26 2002 Michael Jennings (mej) Fixed the use of an uninitialized variable pointed out by Azundris . ---------------------------------------------------------------------- Tue Apr 23 14:23:00 2002 Michael Jennings (mej) Redraw the buttonbar properly when moved. Spotted by Azundris . Also fixed the display of underlining with fonts lacking descent. ---------------------------------------------------------------------- Wed Apr 24 16:56:48 2002 Michael Jennings (mej) Fixed bug where initial options would get parsed even if they were part of a -e/--exec expression. ---------------------------------------------------------------------- Wed Apr 24 22:27:51 2002 Michael Jennings (mej) Save buttonbar info when we save theme settings. ---------------------------------------------------------------------- Wed Apr 24 22:34:59 2002 Michael Jennings (mej) Fix warning. ---------------------------------------------------------------------- Fri Apr 26 14:28:08 2002 Michael Jennings (mej) Reverted Charles Clancy's shading patch (from the 21st) since it breaks 24bpp on Linux. Hopefully there is a better fix. Fixed an ASSERT failure in the buttonbar redraw pointed out by Laurence J. Lane . Also made multiple buttonbars work properly. ---------------------------------------------------------------------- Fri Apr 26 14:34:08 2002 Michael Jennings (mej) Minor tweak so bottom-docked buttonbars are properly placed. ---------------------------------------------------------------------- Sun Apr 28 10:06:32 2002 Michael Jennings (mej) Don't require the new libast just yet.... ---------------------------------------------------------------------- Mon Apr 29 10:48:33 2002 Michael Jennings (mej) Disable the screen dump escape sequence and implement a save_buff() script function instead. ---------------------------------------------------------------------- Mon Apr 29 21:18:20 2002 Michael Jennings (mej) Fixed the --install option which hasn't worked for ages. ---------------------------------------------------------------------- Sat May 4 10:23:38 2002 Michael Jennings (mej) Ran reformat-code on the tree. Also merged in Azundris' Escreen patch. It's disabled by default for the moment pending further testing, but you can enable it manually by defining ESCREEN. ---------------------------------------------------------------------- Sat May 4 11:12:19 2002 Michael Jennings (mej) Added a --enable-escreen option for those who wish to try it out. Also fixed the compile with Escreen and profiling are both enabled, and disabled Escreen debugging. ---------------------------------------------------------------------- Tue May 7 10:16:56 2002 Michael Jennings (mej) configure.in and configure.ac should no longer differ, so let's not maintain both. ---------------------------------------------------------------------- Mon May 13 18:46:06 2002 Michael Jennings (mej) Latest Escreen patch from Azundris . ---------------------------------------------------------------------- Mon May 13 19:18:46 2002 Michael Jennings (mej) Fixed indentation. ---------------------------------------------------------------------- Mon May 13 23:58:16 2002 Michael Jennings (mej) Fixed a bad paste. ---------------------------------------------------------------------- Fri May 17 11:55:52 2002 Michael Jennings (mej) If $SCREENRC is defined, use it. ---------------------------------------------------------------------- Wed May 22 09:16:55 2002 Michael Jennings (mej) Touch-ups to help info. ---------------------------------------------------------------------- Wed May 22 11:37:19 2002 Michael Jennings (mej) Latest Escreen work from Azundris . ---------------------------------------------------------------------- Wed May 22 16:17:24 2002 Michael Jennings (mej) Fixed duplicate freeing of menu background pixmap. ---------------------------------------------------------------------- Wed May 22 16:52:37 2002 Michael Jennings (mej) Cleanups of Escreen stuff. Always use MALLOC/FREE, not malloc/free. ---------------------------------------------------------------------- Thu May 23 14:12:28 2002 Michael Jennings (mej) More cleanups and warning removals. ---------------------------------------------------------------------- Sun Jun 2 20:23:07 2002 Michael Jennings (mej) Latest Escreen patch along with twin support from Azundris. ---------------------------------------------------------------------- Sun Jun 2 20:25:55 2002 Michael Jennings (mej) Oops, missed these. ---------------------------------------------------------------------- Sat Jun 8 11:41:37 2002 Michael Jennings (mej) Escreen update with Twin support from Azundris . ---------------------------------------------------------------------- Sat Jun 8 12:46:44 2002 Michael Jennings (mej) My own Escreen updates, primarily for devoting a dedicated buttonbar to Escreen's use. This keeps Escreen from trodding on your existing buttonbar, if you have one. It's hard-coded to bottom-dock right now; we'll look at configuration later. :-) ---------------------------------------------------------------------- Fri Jun 14 01:40:50 2002 Michael Jennings (mej) Fixed a couple bugs, trying to track down some others. ---------------------------------------------------------------------- Fri Jun 14 01:58:36 2002 Michael Jennings (mej) Fixed a problem with Ctrl-< and Ctrl-> in Escreen mode. ---------------------------------------------------------------------- Fri Jun 14 09:05:49 2002 Michael Jennings (mej) This should fix the bug Creepy spotted where the buttonbar event initialization was crashing. ---------------------------------------------------------------------- Tue Jun 18 16:24:03 2002 Michael Jennings (mej) Fixed the flickering of the buttonbar caused by Escreen updates. Also fixed the deselecting of the current button on redraw. ---------------------------------------------------------------------- Thu Jun 20 11:51:59 2002 Michael Jennings (mej) Forgot to change the header.... ---------------------------------------------------------------------- Thu Jun 20 18:32:22 2002 Michael Jennings (mej) Fixed the updating of the status bar for Escreen. Also changed strdup to STRDUP for libast. ---------------------------------------------------------------------- Thu Jun 20 18:55:59 2002 Michael Jennings (mej) Better fix from Azundris. ---------------------------------------------------------------------- Wed Jun 26 16:58:14 2002 Michael Jennings (mej) Latest Escreen stuff from Azundris, including work on twin support (twin.sourceforge.net). ---------------------------------------------------------------------- Wed Jun 26 23:14:20 2002 Michael Jennings (mej) Bug-hunting.... ---------------------------------------------------------------------- Thu Jun 27 09:14:39 2002 Michael Jennings (mej) Fix compile when Escreen support is disabled. ---------------------------------------------------------------------- Fri Jun 28 16:40:55 2002 Michael Jennings (mej) Additional twin stuff, plus a bug fix for dragging Escreen buttons. ---------------------------------------------------------------------- Fri Jun 28 17:02:57 2002 Michael Jennings (mej) One too many.... ---------------------------------------------------------------------- Wed Jul 3 13:49:27 2002 Michael Jennings (mej) Fixed a bug in libscream that caused remote screen sessions to be resumed with, e.g., "-e ^Uu_" instead of "-e ^Uu". Applied a bug fix from Bill Allombert where I was using the wrong variable for loading the icon file from disk. Also fixed a problem where PrintScreen would cause Eterm to exit. Pointed out by Laurence J. Lane . ---------------------------------------------------------------------- Thu Jul 11 20:03:23 2002 Michael Jennings (mej) Each side of an || must have a valid shell command. ---------------------------------------------------------------------- Thu Jul 11 20:39:28 2002 Michael Jennings (mej) Addition to last fix. Also, we're going to specify error messages that *should* be shown and ignore others, not show all but a select few. This helps with the status line issue. ---------------------------------------------------------------------- Sun Jul 14 00:49:34 2002 Michael Jennings (mej) Fixed bug pointed out by JC Wong where resizing a window which had had transparency toggled on would reveal a black spot at the bottom of the scrollbar. ---------------------------------------------------------------------- Tue Aug 13 22:55:58 2002 Michael Jennings (mej) Documentation fix from Jim Lewis . ---------------------------------------------------------------------- Thu Sep 5 21:47:57 2002 Michael Jennings (mej) Updates to the termcap/terminfo stuff to make everything work on *BSD. Thanks to Thomas Dickey and Will Yardley for their assistance with this. ---------------------------------------------------------------------- Sun Sep 22 00:34:42 2002 Michael Jennings (mej) Added an option to disable the secondary screen as requested by Marc Merlin . ---------------------------------------------------------------------- Sun Sep 29 21:48:10 2002 Michael Jennings (mej) Fixed Debian Bug #155960. WM_COMMAND was being set improperly because equals signs in the arg list were being NUL'd out for no reason. ---------------------------------------------------------------------- Fri Oct 4 21:17:42 2002 Michael Jennings (mej) LibAST 0.5 is now required to build Eterm. Hope everyone updated. By the way, this fixes that old font-starts-with-a-hyphen bug along with some compiler warnings the resulted from a change in the way the ASSERT() macro worked. ---------------------------------------------------------------------- Fri Oct 4 22:06:40 2002 Michael Jennings (mej) Fixed button label positioning to be based on the font descent, not just existing button text. ---------------------------------------------------------------------- Mon Oct 7 22:16:38 2002 Michael Jennings (mej) This should clean up and consolidate the size-setting and reporting to eliminate the discrepencies sometimes seen in Escreen mode when coupled, for example, with --buttonbar 0. Azundris spotted this ages ago, and I've been putting off fixing it. But it should be all straightened out now. ---------------------------------------------------------------------- Mon Oct 7 22:19:58 2002 Michael Jennings (mej) Patch from Azundris for Escreen. In her words: Debian Unstable comes with a version that is newer than 3.09.11 (which most other distributions seem to have). On top of that, it comes with a global setup file in /etc that breaks our very best intentions. Find enclosed some modifications that will (hopefully) make screen work on those special Debs in your life as well as on the machines it used to run on so far. As a side-effect, the default action is now -RDD rather than -xRR, but since several people have requested that anyways, I might be the only one missing the previous default. Guess I'll change my actionclasses.cfg and hold my peace forever. : ) ---------------------------------------------------------------------- Wed Oct 9 00:05:22 2002 Michael Jennings (mej) The beginnings of a dedicated config file section for Escreen stuff. ---------------------------------------------------------------------- Wed Oct 9 00:32:34 2002 Michael Jennings (mej) Tidying up a bit. ---------------------------------------------------------------------- Sun Oct 13 00:57:37 2002 Michael Jennings (mej) Moved "Escreen" menu to the new Escreen theme so it's no longer hard-coded. Added interactive prompting to search() script routine. Changed dialog() routine to exec_dialog() and added editing of its command line. Added msgbox() script routine to display a message and wait for a keypress. Fixed a memory leak in the menu_dialog() function. Also cleaned up its event handling. Added comments to the script routines that were missing them. Make sure we exit cleanly if our window is destroyed. Fixed the missing menus in the Escreen theme. You'll still get an error message when it loads, but I'm not that worried about it. ---------------------------------------------------------------------- Sun Oct 13 01:27:51 2002 Michael Jennings (mej) Make sure it builds without Imlib2 so we don't have a repeat of last time. ---------------------------------------------------------------------- Sun Oct 20 21:07:43 2002 Michael Jennings (mej) Fixed a double-free in libscream.c. Also some cleanups to the spec file, and I fixed some missing return statements in non-void functions. ---------------------------------------------------------------------- Tue Oct 22 23:02:28 2002 Michael Jennings (mej) Allow users to customize the Escreen current/active display colors. Don't display the Escreen button if there's no Escreen menu defined. ---------------------------------------------------------------------- Thu Oct 24 23:54:46 2002 Michael Jennings (mej) Added bbar_dock and bbar_font directives to escreen context so that users can alter the dock location and font of the Escreen buttonbar. This should be it for feature additions and last-minute code changes. I need to update the docs, but that's about it. ---------------------------------------------------------------------- Tue Oct 29 23:41:07 2002 Michael Jennings (mej) Documentation updates and last-minute cleanups. Barring something unexpected and disastrous, this is it for release. So please make sure it works and the docs are accurate. :-) ----------------------------------------------------------------------

Eterm Documentation

Eterm FAQ


Eterm 0.9.6 man page

Eterm Technical Reference

Polish Eterm HOWTO (external)


Copyright ©2001, Michael Jennings.   If you have any questions or comments, please e-mail me.