Commit Graph

97 Commits

Author SHA1 Message Date
Michael Jennings 0784d8336b Thu Aug 21 23:51:12 2003 Michael Jennings (mej)
Oops, that wasn't *quite* what I had in mind....


SVN revision: 7362
2003-08-22 03:52:02 +00:00
Michael Jennings 6b43700de1 Thu Aug 21 23:18:23 2003 Michael Jennings (mej)
A few cosmetic changes to the source code, and a fix for Debian Bug
#176274 reported by Gerhard Tonn <GerhardTonn@gammatau.de>.


SVN revision: 7361
2003-08-22 03:19:43 +00:00
Michael Jennings 1eafc3aca5 Tue Jul 29 22:47:18 2003 Michael Jennings (mej)
Patch from David Lloyd <dmlloyd@tds.net> to support ANSI sequences for
bright colors.  I haven't tested this, so I hope it works. *grin*

Also, commented out the F1-F10 bindings in the Escreen theme; they're
too intrusive.

Added support for Ctrl-t to open a new Escreen "tab" (as with
Mozilla).


SVN revision: 7261
2003-07-30 02:50:13 +00:00
Michael Jennings df078dd652 Sun Mar 2 23:40:39 2003 Michael Jennings (mej)
Fixed a bug with foreground/background color change pointed out by
Thomas <arnognul@tiscali.se>.

Also added support for all the other OSC color change sequences (at
least those for the colors that Eterm uses).  The sequences are of
the form "\e];n;color[;color[...]]\a", where n is between 10 and 19.
You can specify up to (20 - n) semicolon-separated colors representing
the following attributes in order:  foreground, background, cursor,
mouse pointer, mouse pointer background (*), Tek foreground (*), Tek
background (*), highlight color (*), bold color, and underline color.
Attributes marked with a (*) are ignored by Eterm and may be left
empty, but their trailing semicolons must be present for xterm
compatibility.

For example, to set a white foreground, black background, yellow text
cursor, green mouse cursor, #ffaa00 for bold, and cyan for underline,
you could use either of the following:

echo -e "\e]10;white;black;yellow;green;;;;;#ffaa00;cyan\007"

 or

echo -e "\e]10;white\007"
echo -e "\e]11;black\007"
echo -e "\e]12;yellow\007"
echo -e "\e]13;green\007"
echo -e "\e]18;#ffaa00\007"
echo -e "\e]19;cyan\007"

Note that the setting of bold and underline colors using 18 and 19 are
Eterm extensions.


SVN revision: 6739
2003-03-03 04:53:35 +00:00
Michael Jennings 4b8a58d8a2 Mon Feb 24 21:05:00 2003 Michael Jennings (mej)
Screw it.  I don't see any way to "sanitize" these, as they put it,
so we'll just disable that for now until someone can throw me a clue.


SVN revision: 6715
2003-02-25 02:05:48 +00:00
Michael Jennings 7f21e5b5c9 Mon Feb 24 20:59:17 2003 Michael Jennings (mej)
No it doesn't.  I need to read more slowly.


SVN revision: 6714
2003-02-25 01:59:53 +00:00
Michael Jennings 020b41dca5 Mon Feb 24 19:34:56 2003 Michael Jennings (mej)
This fixes the title answer bug reported on BUGTRAQ (and other lists)
by HD Moore <termulation@digitaloffense.net>.  It does so by removing
all non-printable characters from the title upon setting it, and
blanking out all non-printable characters when fetching it to display
using the aforementioned escape sequence.


SVN revision: 6712
2003-02-25 00:37:49 +00:00
Michael Jennings 15ad73f445 Wed Feb 19 16:17:00 2003 Michael Jennings (mej)
Updated copyright statements for 2003.


SVN revision: 6698
2003-02-19 21:18:10 +00:00
Michael Jennings d553a9d67a Mon Jan 27 17:31:41 2003 Michael Jennings (mej)
Support for xterm's cursor color change sequence (\e]12;<color>\a) as
requested by Thomas <arnognul@tiscali.se>.


SVN revision: 6638
2003-01-27 22:35:58 +00:00
Michael Jennings 675bf268aa Wed Nov 27 15:17:04 2002 Michael Jennings (mej)
Same as yesterday, only this time I'm *actually* going to fix the
problem. >:I  I should really read more carefully.

While I was at it, I fixed some bad uses of BEG_STRCASECMP().


SVN revision: 6467
2002-11-27 20:18:24 +00:00
Michael Jennings 01c9e2811a Mon Nov 4 17:33:00 2002 Michael Jennings (mej)
Let's try that again, shall we?


SVN revision: 6440
2002-11-04 22:33:21 +00:00
Michael Jennings 3377e7efe8 Mon Nov 4 16:28:17 2002 Michael Jennings (mej)
Added XK_ISO_Left_Tab as an alias for XK_Tab, suggested by Jason
<jason@sdf.lonestar.org>.


SVN revision: 6439
2002-11-04 21:29:17 +00:00
Michael Jennings d86a345768 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.


SVN revision: 6432
2002-10-23 03:03:27 +00:00
Michael Jennings ea06545d9e 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.


SVN revision: 6416
2002-10-08 02:18:09 +00:00
Michael Jennings 92937f46a7 Sat Jun 8 11:41:37 2002 Michael Jennings (mej)
Escreen update with Twin support from Azundris <scream@azundris.com>.


SVN revision: 6307
2002-06-08 15:44:08 +00:00
Michael Jennings 981b29c895 Sun Jun 2 20:23:07 2002 Michael Jennings (mej)
Latest Escreen patch along with twin support from Azundris.


SVN revision: 6297
2002-06-03 00:24:22 +00:00
Michael Jennings b173e4053d Mon May 13 19:18:46 2002 Michael Jennings (mej)
Fixed indentation.


SVN revision: 6252
2002-05-13 23:19:30 +00:00
Michael Jennings 0bdd7edc63 Mon May 13 18:46:06 2002 Michael Jennings (mej)
Latest Escreen patch from Azundris <hacks@azundris.com>.


SVN revision: 6251
2002-05-13 22:47:08 +00:00
Michael Jennings 92ca20bcba 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.


SVN revision: 6202
2002-05-04 14:25:30 +00:00
Michael Jennings c9ef7c9002 Mon Apr 29 10:48:33 2002 Michael Jennings (mej)
Disable the screen dump escape sequence and implement a save_buff()
script function instead.


SVN revision: 6191
2002-04-29 14:50:43 +00:00
Michael Jennings 6352ed7629 Mon Apr 22 09:20:26 2002 Michael Jennings (mej)
Fixed the use of an uninitialized variable pointed out by Azundris
<hacks@azundris.com>.


SVN revision: 6162
2002-04-22 13:22:44 +00:00
Michael Jennings c16f0f1e1f Tue Feb 26 10:01:41 2002 Michael Jennings (mej)
Fixed the default fg color and color 7.


SVN revision: 5985
2002-02-26 15:04:05 +00:00
Michael Jennings 1ece1388ff Sun Feb 3 15:51:38 2002 Michael Jennings (mej)
Apparently I forgot to commit these copyright date changes. :(


SVN revision: 5895
2002-02-03 20:53:07 +00:00
Michael Jennings bfec337701 Mon Dec 31 16:28:46 2001 Michael Jennings (mej)
Minor debugging enhancements.


SVN revision: 5795
2001-12-31 21:29:30 +00:00
Michael Jennings 36b1140007 Fri Dec 14 15:17:14 2001 Michael Jennings (mej)
termcap fix from Fredrik Svensson <fred@ludd.luth.se> and another
mod to Paul's patch.


SVN revision: 5769
2001-12-14 20:22:27 +00:00
Michael Jennings 7701e6d1e1 Thu Dec 13 15:14:33 2001 Michael Jennings (mej)
An update to a previous patch from Paul Brannan <pbranna@clemson.edu>.


SVN revision: 5768
2001-12-13 20:20:45 +00:00
Michael Jennings 1e97991b6a Mon Dec 3 20:16:39 2001 Michael Jennings (mej)
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
2001-12-04 01:22:07 +00:00
Michael Jennings b8e17e5de4 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


SVN revision: 5543
2001-10-21 13:21:05 +00:00
Michael Jennings 740a7b7ab8 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 <pbranna@clemson.edu>.  This patch is
reported to fix problems where vim would come up with underlines.


SVN revision: 5338
2001-09-06 22:38:21 +00:00
Michael Jennings e65a9e34aa 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.


SVN revision: 5263
2001-08-23 21:04:36 +00:00
Michael Jennings f89dff3d3d 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
<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
2001-08-05 08:57:32 +00:00
Michael Jennings 85fdcf3f30 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. :-)


SVN revision: 4919
2001-07-04 01:02:37 +00:00
Michael Jennings 0c731576d4 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. :-)


SVN revision: 4820
2001-06-16 06:46:34 +00:00
Michael Jennings 3a471bb33e Wed Jun 13 21:13:51 PDT 2001 Michael Jennings <mej@eterm.org>
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
2001-06-14 05:31:09 +00:00
Michael Jennings d6cf164837 Thu May 24 00:14:54 PDT 2001 Michael Jennings <mej@eterm.org>
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
2001-05-24 07:17:03 +00:00
Michael Jennings bd1ed42760 This is work in progress, cleaning up the selection stuff. Still more to
do, though.


SVN revision: 4777
2001-05-19 06:56:45 +00:00
Michael Jennings 0291d6b7a1 Tue May 8 19:53:56 PDT 2001 Michael Jennings <mej@eterm.org>
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
2001-05-09 03:14:18 +00:00
Michael Jennings 683627b0e9 Fri Dec 29 14:39:09 PST 2000 Michael Jennings <mej@eterm.org>
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
2000-12-29 22:59:13 +00:00
Michael Jennings 1bcfa73217 Wed Nov 15 14:20:13 PST 2000 Michael Jennings <mej@eterm.org>
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
2000-11-15 22:21:02 +00:00
Michael Jennings 718ea96410 Tue Nov 14 17:17:53 PST 2000 Michael Jennings <mej@eterm.org>
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
2000-11-15 01:30:02 +00:00
Michael Jennings 8138d895fa Mon Oct 30 07:45:16 PST 2000 Michael Jennings <mej@eterm.org>
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
2000-10-30 23:05:25 +00:00
Michael Jennings f964562863 Sun Sep 17 17:29:26 PDT 2000 Michael Jennings <mej@eterm.org>
Got rid of the useless backing_store option.


SVN revision: 3520
2000-09-18 00:13:07 +00:00
Michael Jennings e1573e95c8 Fri Sep 1 15:25:28 PDT 2000 Michael Jennings <mej@eterm.org>
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
2000-09-01 22:14:17 +00:00
Michael Jennings cdbb53b4bf Thu Aug 31 23:02:10 PDT 2000 Michael Jennings <mej@eterm.org>
Still more big changes.  Working on adding pixmap and GC tracking to
	libmej using the existing allocation tracking routines.


SVN revision: 3291
2000-09-01 05:46:04 +00:00
Michael Jennings 9a6507f458 Wed Aug 30 22:58:18 PDT 2000 Michael Jennings <mej@eterm.org>
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
2000-08-31 05:41:44 +00:00
Michael Jennings f86bba3775 Tue Aug 22 21:21:20 PDT 2000 Michael Jennings <mej@eterm.org>
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
2000-08-23 04:04:55 +00:00
Michael Jennings b4fbe2a9a0 Mon Jul 3 12:50:00 PDT 2000 Michael Jennings <mej@eterm.org>
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
2000-07-03 19:33:55 +00:00
Michael Jennings c59b324201 Thu Jun 1 19:31:18 PDT 2000 Michael Jennings <mej@eterm.org>
Fix a potential DoS pointed out on BUGTRAQ by Kit Knox
	<kit@rootshell.com>.


SVN revision: 2744
2000-06-02 02:13:46 +00:00
Michael Jennings 47e8788bc8 Wed May 31 22:34:12 PDT 2000 Michael Jennings <mej@eterm.org>
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
2000-06-01 05:24:47 +00:00
Michael Jennings 47d87f02b0 Sun May 28 14:45:03 PDT 2000 Michael Jennings <mej@eterm.org>
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
2000-05-28 21:28:31 +00:00