Allow users to customize the Escreen current/active display colors.
Don't display the Escreen button if there's no Escreen menu defined.
SVN revision: 6432
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.
SVN revision: 6416
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.
SVN revision: 6202
Patches from Paul Brannan <pbranna@clemson.edu>, Klaus Elsbernd
<elsbernd@dfki.uni-kl.de>, and Derrick Moser
<d2moser@calum.csclub.uwaterloo.ca> 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.
SVN revision: 5745
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
SVN revision: 5543
While I'm at it, here's a patch to fix some escape sequence handling
under vim from Paul W Brannan <pbranna@clemson.edu>. This patch is
reported to fix problems where vim would come up with underlines.
SVN revision: 5338
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.
SVN revision: 5263
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
<vacuum@technotronic.com>. And finally, added in a patch from Paul
Brannan <pbranna@clemson.edu> to support some additional escape
sequences for vim.
SVN revision: 5044
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. :-)
SVN revision: 4919
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. :-)
SVN revision: 4820
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.
SVN revision: 4810
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.
SVN revision: 4784
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.
SVN revision: 4748
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
<keichii@iteration.net> and Sung-Hyun Nam <namsh@lgic.co.kr>, along
with some other FreeBSD-related patches from Mr. Wu.
SVN revision: 4065
As requested by Chris Morton <chris.morton@ericsson.com>, 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.
SVN revision: 3891
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-<version>". 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.
SVN revision: 3886
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 <tzz@iglou.com>.
The big change, of course, is the disappearance of libmej and the new
dependency on libast, which is now distributed separately.
SVN revision: 3793
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.
SVN revision: 3294
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....
SVN revision: 3282
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.
SVN revision: 3241
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.
SVN revision: 2902
Okay, first off I need to thank Marius Gedminas <mgedmin@takas.lt>.
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.)
SVN revision: 2739
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.
SVN revision: 2722
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
SVN revision: 2590
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.
SVN revision: 2478
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/<theme>. It WILL create this directory tree
if it does not already exist.
Hopefully this will make more people happy. :-)
SVN revision: 2440
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.
SVN revision: 2370
Added a patch from Kimball Thurston <kimball@sgrail.com> for XIM. I
also added support for two new escape sequences at the request of
Cale Gibbard <gibbard@bfree.on.ca>. "\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.
SVN revision: 2323
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.
SVN revision: 2270
Some further fixes for inline functions, 2 new winop actions, brand
new and improved profiling macros, some miscellaneous fixes for SGI
from Kimball Thurston <kimball@sgrail.com>, and more robust checking
in the pasting code.
SVN revision: 2235
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.
SVN revision: 2212