Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Jan 1999 03:26:23 +0900 (JST)
From:      nobutaka@nobutaka.com
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   ports/9779: Update port: japanese/eterm
Message-ID:  <199901291826.DAA44660@neptune.nobutaka.com>

next in thread | raw e-mail | index | archive | help

>Number:         9779
>Category:       ports
>Synopsis:       Update port: japanese/eterm
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jan 29 10:30:00 PST 1999
>Closed-Date:
>Last-Modified:
>Originator:     MANTANI Nobutaka
>Release:        FreeBSD 3.0-STABLE i386
>Organization:
ClusterII, Faculty of Engineering, Hiroshima University, Japan
>Environment:
>Description:

Update japanese/eterm port from 0.8.7 to 0.8.8 .

>How-To-Repeat:
>Fix:
	
diff -urN eterm.old/Makefile eterm/Makefile
--- eterm.old/Makefile	Sat Jan 30 02:54:05 1999
+++ eterm/Makefile	Sat Jan 23 23:23:30 1999
@@ -1,16 +1,18 @@
 # New ports collection makefile for:	eterm
-# Version required:    0.8.7
+# Version required:    0.8.8
 # Date created:        11th December 1998
 # Whom:                MANTANI Nobutaka <nobutaka@nobutaka.com>
 #
 # $Id: Makefile,v 1.2 1999/01/14 17:08:22 vanilla Exp $
 #
 
-DISTNAME=	Eterm-0.8.7
-PKGNAME=	ja-eterm-0.8.7
+DISTNAME=	Eterm-0.8.8
+PKGNAME=	ja-eterm-0.8.8
 CATEGORIES=	japanese x11
-MASTER_SITES=	ftp://ftp.enlightenment.org/pub/Eterm/ \
+MASTER_SITES=	http://www.eterm.org/download/ \
+		ftp://ftp.eterm.org/pub/Eterm/ \
 		http://www.tcserv.com/archive/E/ \
+		http://eterm.is.nontoxic.org/download/ \
 		http://www.tcserv.com/archive/E/old/
 
 MAINTAINER=	nobutaka@nobutaka.com
diff -urN eterm.old/files/md5 eterm/files/md5
--- eterm.old/files/md5	Sat Jan 30 02:54:02 1999
+++ eterm/files/md5	Sat Jan 23 23:24:25 1999
@@ -1 +1 @@
-MD5 (Eterm-0.8.7.tar.gz) = 00de2b1fb7d35bff42337a9723195114
+MD5 (Eterm-0.8.8.tar.gz) = 19c0571f900757e5a90ac36baac3f79b
diff -urN eterm.old/patches/patch-aa eterm/patches/patch-aa
--- eterm.old/patches/patch-aa	Sat Jan 30 02:54:05 1999
+++ eterm/patches/patch-aa	Fri Jan 29 21:31:16 1999
@@ -1,20 +1,12 @@
---- src/feature.h.in.orig	Fri Dec 11 18:58:21 1998
-+++ src/feature.h.in	Thu Dec 10 23:06:14 1998
-@@ -346,7 +346,7 @@
+--- src/feature.h.in.orig	Fri Jan 29 21:29:07 1999
++++ src/feature.h.in	Fri Jan 29 21:30:32 1999
+@@ -350,7 +350,8 @@
  /* #define GREEK_SUPPORT */
  
  /* To compile as a Kanji terminal.  Executable should be renamed "Kterm". */
 -/* #define KANJI */
 +#define KANJI
++#define USE_XIM
  
  /********************* Miscellaneous options *********************/
  
-@@ -422,7 +422,7 @@
- /* This is the initial path that Eterm searches for its config file. 
-  * By convention, this should be ".", then "~/.Eterm", then a global
-  * directory for all users like "/usr/local/lib/Eterm" */
--#define CONFIG_SEARCH_PATH ".:~/.Eterm/themes:~/.Eterm:@PREFIX@/lib/Eterm/themes:@PREFIX@/lib/Eterm"
-+#define CONFIG_SEARCH_PATH ".:~/.Eterm/themes:~/.Eterm:@PREFIX@/share/Eterm/themes:@PREFIX@/share/Eterm"
- 
- /* The name of the config file.  "MAIN" by default.  Don't change this
-  unless you have a darn good reason to.  It's never been tested any other way. */
diff -urN eterm.old/patches/patch-ab eterm/patches/patch-ab
--- eterm.old/patches/patch-ab	Sat Jan 30 02:54:03 1999
+++ eterm/patches/patch-ab	Sat Jan 30 00:18:48 1999
@@ -1,6 +1,11 @@
---- src/Makefile.in.orig	Fri Oct 23 01:09:50 1998
-+++ src/Makefile.in	Mon Dec 14 02:35:11 1998
-@@ -80,7 +80,7 @@
+--- src/Makefile.in.orig	Wed Jan 13 04:24:45 1999
++++ src/Makefile.in	Sat Jan 30 00:18:14 1999
+@@ -76,11 +76,11 @@
+ EGCS = @EGCS@
+ FEATURE_CMD = @FEATURE_CMD@
+ GDB = @GDB@
+-GRLIBS = @GRLIBS@
++GRLIBS = -L/usr/local/lib @GRLIBS@
  IMLIB_CONFIG = @IMLIB_CONFIG@
  LD = @LD@
  LDFLAGS = @LDFLAGS@
@@ -9,13 +14,3 @@
  LIBTOOL = @LIBTOOL@
  LN_S = @LN_S@
  MAINT = @MAINT@
-@@ -123,6 +123,9 @@
-              system.h threads.h graphics/Makefile.am graphics/Makefile.in \
-              graphics/README graphics/data graphics/grxlib.c graphics/grxlib.h \
-              graphics/qplot.c 
-+ifeq ($(PORTOBJFORMAT),elf)
-+LDFLAGS+=-Wl,-soname,libEterm.so.8,-rpath,$(prefix)/lib
-+endif
- mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
- CONFIG_HEADER = ../config.h
- CONFIG_CLEAN_FILES = 
diff -urN eterm.old/patches/patch-ac eterm/patches/patch-ac
--- eterm.old/patches/patch-ac	Sat Jan 30 02:54:03 1999
+++ eterm/patches/patch-ac	Fri Jan 29 21:37:18 1999
@@ -1,10 +1,12 @@
---- src/main.h.orig	Fri Dec 11 01:52:41 1998
-+++ src/main.h	Fri Dec 11 01:54:59 1998
-@@ -68,6 +68,7 @@
+--- src/main.h.orig	Fri Jan 29 21:35:03 1999
++++ src/main.h	Fri Jan 29 21:36:49 1999
+@@ -68,6 +68,9 @@
  # endif
  # ifdef KANJI
      XFontStruct	* kanji;	/* Kanji font structure */
++#ifdef USE_XIM
 +    XFontSet fontset;
++#endif
  # endif
  # ifdef PIXMAP_SUPPORT
      Pixmap pixmap;
diff -urN eterm.old/patches/patch-ad eterm/patches/patch-ad
--- eterm.old/patches/patch-ad	Sat Jan 30 02:54:03 1999
+++ eterm/patches/patch-ad	Fri Jan 29 21:05:31 1999
@@ -1,24 +1,21 @@
---- src/main.c.orig	Fri Dec 11 16:51:28 1998
-+++ src/main.c	Fri Dec 11 16:55:15 1998
-@@ -94,6 +94,10 @@
+--- src/main.c.orig	Fri Jan 29 21:01:58 1999
++++ src/main.c	Fri Jan 29 21:04:57 1999
+@@ -108,6 +108,10 @@
  # endif
  #endif
  
-+#ifndef NO_XLOCALE
++#ifdef KANJI
 +extern void init_xlocale(void);
 +#endif
 +
- #ifdef PIXMAP_SUPPORT
- extern void render_pixmap(Window win, imlib_t image, pixmap_t pmap,
- 			  int which, renderop_t renderop);
-@@ -518,7 +522,9 @@
-     }
- # endif /* IMLIB_TRANS */
- #endif /* PIXMAP_OFFSET */
--
-+#ifndef NO_XLOCALE
-+    init_xlocale();
-+#endif
+ /* extern variables referenced */
+ extern int my_ruid, my_rgid, my_euid, my_egid;
+ extern unsigned int rs_shadePct;
+@@ -518,6 +522,7 @@
+ #endif
+ 
      Create_Windows(argc, argv);
++    init_xlocale();
      scr_reset();		/* initialize screen */
      Gr_reset();			/* reset graphics */
+     
diff -urN eterm.old/patches/patch-ae eterm/patches/patch-ae
--- eterm.old/patches/patch-ae	Sat Jan 30 02:54:03 1999
+++ eterm/patches/patch-ae	Sat Jan 30 01:40:19 1999
@@ -1,6 +1,6 @@
---- src/command.c.orig	Thu Oct 22 01:13:37 1998
-+++ src/command.c	Tue Dec 15 21:40:24 1998
-@@ -89,6 +89,10 @@
+--- src/command.c.orig	Tue Jan 12 05:33:45 1999
++++ src/command.c	Sat Jan 30 01:39:34 1999
+@@ -90,6 +90,10 @@
  #  include <X11/Xlocale.h>
  # endif
  #endif	/* NO_XLOCALE */
@@ -11,7 +11,7 @@
  #ifdef USE_GETGRNAME
  # include <grp.h>
  #endif
-@@ -249,7 +253,7 @@
+@@ -251,7 +255,7 @@
  
  /* defines: */
  
@@ -20,21 +20,24 @@
  #define STRING_MAX	512	/* max string size for process_xterm_seq() */
  #define ESC_ARGS	32	/* max # of args for esc sequences */
  
-@@ -525,8 +529,8 @@
+@@ -526,8 +530,10 @@
  #endif	/* OFFIX_DND */
  
  #ifndef NO_XLOCALE
 -static char *rs_inputMethod = "";	/* XtNinputMethod */
 -static char *rs_preeditType = NULL;	/* XtNpreeditType */
-+extern char *rs_inputMethod;	/* XtNinputMethod */
-+extern char *rs_preeditType;	/* XtNpreeditType */
++#ifdef USE_XIM
++extern char *rs_inputMethod;
++extern char *rs_preeditType;
++#endif
  static XIC Input_Context;		/* input context */
  #endif	/* NO_XLOCALE */
  
-@@ -575,9 +579,18 @@
+@@ -576,9 +582,20 @@
  
  #ifndef NO_XLOCALE
  void init_xlocale (void);
++#ifdef USE_XIM
 +void IMInstantiateCallback(Display *display, XPointer client_data, XPointer call_data);
 +void IMDestroyCallback(XIM xim, XPointer client_data, XPointer call_data);
 +void IMSetStatusPosition(void);
@@ -43,6 +46,7 @@
 +void setColor(unsigned long *fg, unsigned long *bg);
 +void setSize(XRectangle *size);
 +extern void setPosition(XPoint *pos);
++#endif
  #else
  # define init_xlocale() ((void)0)
  #endif
@@ -50,18 +54,16 @@
  
  /*for Big Paste Handling */
  static int v_doPending(void);
-@@ -1843,8 +1856,8 @@
+@@ -2238,8 +2255,6 @@
      DndSelection = XInternAtom(Xdisplay, "DndSelection", False);
  #endif	/* OFFIX_DND */
  
 -    init_xlocale();
 -    
-+    XRegisterIMInstantiateCallback(Xdisplay, NULL, NULL, NULL, IMInstantiateCallback, NULL);
-+
      /* get number of available file descriptors */
  #ifdef _POSIX_VERSION
      num_fds = sysconf(_SC_OPEN_MAX);
-@@ -1878,131 +1891,12 @@
+@@ -2273,131 +2288,21 @@
  #ifndef NO_XLOCALE
  void
  init_xlocale (void) {
@@ -73,21 +75,24 @@
 -    int found;
 -    
 -    Input_Context = NULL;
--    
++    char *locale;
+     
  # ifdef KANJI
-+    setlocale(LC_CTYPE, "ja_JP.EUC");
-+# else
-     setlocale(LC_CTYPE, "");
- # endif
+-    setlocale(LC_CTYPE, "");
+-# endif
 -    
 -    if (rs_inputMethod == NULL
 -# ifndef KANJI
 -	|| !*rs_inputMethod	/* required ? */
--# endif
++    locale = setlocale(LC_CTYPE, "");
+ # endif
 -	) {
 -	if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
 -	  xim = XOpenIM(Xdisplay, NULL, NULL, NULL);
--    } else {
++#ifdef USE_XIM
++    if (locale == NULL) {
++      print_error("Setting locale failed.");
+     } else {
 -	strcpy(tmp, rs_inputMethod);
 -	for (s = tmp; *s; /*nil*/) {
 -	    
@@ -191,15 +196,21 @@
 -	print_error("Failed to create input context");
 -# endif
 -	XCloseIM(xim);
--    }
-+    setTermFontSet();
++      if (strcmp(locale, "C") != 0) {
++        setTermFontSet();
++        XRegisterIMInstantiateCallback(Xdisplay, NULL, NULL, NULL, IMInstantiateCallback, NULL);
++      }
+     }
++#endif
  }
  #endif	/* NO_XLOCALE */
  /**/
-@@ -2066,19 +1960,19 @@
+@@ -2459,22 +2364,21 @@
+ 	numlock_state = (ev->xkey.state & Mod5Mask);	/* numlock toggle */
+ 	PrivMode((!numlock_state), PrivMode_aplKP);
      }
-     
- #ifndef NO_XLOCALE
+-    
+-#ifndef NO_XLOCALE
 -    if (!XFilterEvent(ev, *(&ev->xkey.window))) {
 -	if (Input_Context != NULL) {
 -	    Status status_return;
@@ -213,34 +224,46 @@
 -				&compose);
 -	}
 -    } else len = 0;
+-#else	/* NO_XLOCALE */
++#ifdef USE_XIM
 +    len = 0;
 +    if (Input_Context != NULL) {
 +      Status status_return;
 +
 +      kbuf[0] = '\0';
 +      len = XmbLookupString(Input_Context, &ev->xkey, kbuf,
-+			    sizeof(kbuf), &keysym,
-+			    &status_return);
++                            sizeof(kbuf), &keysym,
++                            &status_return);
 +    } else {
 +      len = XLookupString(&ev->xkey, kbuf,
-+			  sizeof(kbuf), &keysym,
-+			  &compose);
++                          sizeof(kbuf), &keysym,
++                          &compose);
 +    }
- #else	/* NO_XLOCALE */
++#else	/* USE_XIM */
      len = XLookupString(&ev->xkey, kbuf, sizeof(kbuf), &keysym, &compose);
      /*
-@@ -2664,6 +2558,9 @@
+      * have unmapped Latin[2-4] entries -> Latin1
+@@ -2484,7 +2388,7 @@
+ 	len = 1;
+ 	kbuf[0] = (keysym & 0xFF);
+     }
+-#endif	/* NO_XLOCALE */
++#endif	/* USE_XIM */
+     
+     if (len && (Options & Opt_homeOnInput)) TermWin.view_start = 0;
+     
+@@ -3087,6 +2991,9 @@
  #else
      scr_refresh(refresh_type);
  #endif
-+#ifndef NO_XLOCALE
++#ifdef USE_XIM
 +    IMSendSpot();
 +#endif
    }
  
    /* characters already read in */
-@@ -2677,14 +2574,10 @@
- #endif
+@@ -3096,14 +3003,10 @@
+ 
      v_doPending();
      while (XPending(Xdisplay)) {	/* process pending X events */
 -	    
@@ -255,186 +278,159 @@
  	    
        /* in case button actions pushed chars to cmdbuf */
        if CHARS_READ() RETURN_CHAR();
-@@ -2765,6 +2658,9 @@
+@@ -3178,6 +3081,9 @@
  	scr_refresh(refresh_type);
  	if (scrollbar_visible())
  	  scrollbar_show(1);
-+#ifndef	NO_XLOCALE
++#ifdef USE_XIM
 +	IMSendSpot();
 +#endif
        }
      }
    }
-@@ -3453,6 +3349,9 @@
+@@ -3867,6 +3773,9 @@
  	    refresh_count = refresh_limit = 0;
  	    scr_refresh(refresh_type);
  	    scrollbar_show(mouseoffset);
-+#ifndef NO_XLOCALE
++#ifdef USE_XIM
 +	    IMSendSpot();
 +#endif
  #endif
  	} else if ((ev->xany.window == scrollBar.win) && scrollbar_isMotion()) {
  	    Window          unused_root, unused_child;
-@@ -3470,6 +3369,9 @@
+@@ -3884,6 +3793,9 @@
  	    refresh_count = refresh_limit = 0;
  	    scr_refresh(refresh_type);
  	    scrollbar_show(mouseoffset);
-+#ifndef NO_XLOCALE
++#ifdef USE_XIM
 +	    IMSendSpot();
 +#endif
  	}
  #ifdef PROFILE_X_EVENTS
  	P_SETTIMEVAL(motion_stop);
-@@ -4215,6 +4117,9 @@
+@@ -4626,6 +4538,9 @@
  	}
      }
      Gr_do_graphics(cmd, nargs, args, text);
-+#ifndef NO_XLOCALE
++#ifdef USE_XIM
 +    IMSendSpot();
 +#endif
  #endif
  }
  
-@@ -4759,7 +4664,7 @@
-     
-     TermWin.ncol = szHint.width;
-     TermWin.nrow = szHint.height;
--    
-+
-     change_font(1, NULL);
- #if (MENUBAR_MAX)
-     szHint.base_height += (delay_menu_drawing ? menuBar_TotalHeight() : 0);
-@@ -4879,7 +4784,7 @@
- 	      XClearWindow(Xdisplay, TermWin.vt);
- 	  }
-       }
--    
-+
-     XDefineCursor(Xdisplay, TermWin.vt, TermWin_cursor);
- #ifdef USE_ACTIVE_TAGS
-     XSelectInput(Xdisplay, TermWin.vt,
-@@ -5369,6 +5274,7 @@
+@@ -5864,6 +5779,9 @@
  	
  	XResizeWindow (Xdisplay, TermWin.parent, width, height);
  	resize_window1 (width, height);
++#ifdef USE_XIM
 +	IMSetStatusPosition();
++#endif
      }
  }
  
-@@ -5402,6 +5308,7 @@
+@@ -5897,6 +5815,9 @@
      /* parent already resized */
      
      resize_window1 (width, height);
++#ifdef USE_XIM
 +    IMSetStatusPosition();
++#endif
  }
  
  /* xterm sequences - title, iconName, color (exptl) */
-@@ -5924,3 +5831,339 @@
+@@ -6505,3 +6426,340 @@
  #undef FNUM_RANGE
  }
  
-+#ifndef NO_XLOCALE
++#ifdef USE_XIM
 +void
 +setSize(XRectangle *size)
 +{
-+  size->x = TermWin.internalBorder;
-+  size->y = TermWin.internalBorder;
-+  size->width = Width2Pixel(TermWin.ncol);
-+  size->height = Height2Pixel(TermWin.nrow);
++    size->x = TermWin.internalBorder;
++    size->y = TermWin.internalBorder;
++    size->width = Width2Pixel(TermWin.ncol);
++    size->height = Height2Pixel(TermWin.nrow);
 +}
 +
 +void
 +setColor(unsigned long *fg, unsigned long *bg)
 +{
-+  *fg = PixColors[fgColor];
-+  *bg = PixColors[bgColor];
++    *fg = PixColors[fgColor];
++    *bg = PixColors[bgColor];
 +}
 +
 +void
 +IMSendSpot(void)
 +{
-+  XPoint        spot;
-+  XVaNestedList preedit_attr;
-+  XIMStyle      input_style;
-+
-+  if (Input_Context == NULL) 
-+    return;
-+  else {
-+    XGetICValues(Input_Context, XNInputStyle, &input_style, NULL);
-+    if (!(input_style & XIMPreeditPosition))
++    XPoint        spot;
++    XVaNestedList preedit_attr;
++    XIMStyle      input_style;
++
++    if (Input_Context == NULL) 
 +      return;
-+  }
-+  setPosition(&spot) ;
++    else {
++      XGetICValues(Input_Context, XNInputStyle, &input_style, NULL);
++      if (!(input_style & XIMPreeditPosition))
++	return;
++   }
++   setPosition(&spot) ;
 + 
-+  preedit_attr = XVaCreateNestedList( 0, XNSpotLocation, &spot, NULL ) ;
-+  XSetICValues( Input_Context, XNPreeditAttributes, preedit_attr, NULL ) ;
-+  XFree( preedit_attr ) ;
++   preedit_attr = XVaCreateNestedList( 0, XNSpotLocation, &spot, NULL ) ;
++   XSetICValues( Input_Context, XNPreeditAttributes, preedit_attr, NULL ) ;
++   XFree( preedit_attr ) ;
 +}
 +
 +void
 +setTermFontSet(void)
 +{
-+  char *string;
-+  long length, i;
++    char *string;
++    long length, i;
 +
-+  if (TermWin.fontset != NULL){
-+    XFreeFontSet(Xdisplay, TermWin.fontset);
-+    TermWin.fontset = NULL;
-+  }
-+
-+  length = 0;
-+  for (i = 0; i < NFONTS; i++) {
-+    if (rs_font[i])
-+      length += strlen(rs_font[i]) + 1;
-+# ifdef KANJI
-+    if (rs_kfont[i])
-+      length += strlen(rs_kfont[i]) + 1;
-+# endif
-+  }
-+  if ((string = malloc( length )) != NULL) {
-+    char **missing_charsetlist, *def_string;
-+    int missing_charsetcount;
++    if (TermWin.fontset != NULL){
++      XFreeFontSet(Xdisplay, TermWin.fontset);
++      TermWin.fontset = NULL;
++    }
 +
-+    string[0] = '\0';
++    length = 0;
 +    for (i = 0; i < NFONTS; i++) {
-+      if (rs_font[i]){
-+        strcat(string, rs_font[i]);
-+        strcat(string, ",");
-+      }
++      if (rs_font[i])
++	length += strlen(rs_font[i]) + 1;
 +# ifdef KANJI
-+      if(rs_kfont[i]){
-+        strcat(string, rs_kfont[i]);
-+        strcat(string, ",");
-+      }
++      if (rs_kfont[i])
++	length += strlen(rs_kfont[i]) + 1;
 +# endif
 +    }
-+    length = strlen(string);
-+    if (length > 0 && string[ length - 1 ] == ',') {
-+      string[length - 1] = '\0';
-+      length--;
-+    }
-+    if (length > 0) {
-+      TermWin.fontset = XCreateFontSet
-+      (Xdisplay, string,
-+       &missing_charsetlist, &missing_charsetcount, &def_string);
-+    }
-+    free(string);
-+  } else {
-+    TermWin.fontset = NULL;
-+  }
-+}
-+
-+void
-+XProcessEvent(Display *display)
-+{
-+  XEvent xev;
-+  XNextEvent(display, &xev);
-+#ifndef NO_XLOCALE
-+  if( !XFilterEvent( &xev, xev.xany.window ) )
-+    process_x_event( &xev ) ;
-+#else
-+  process_x_event( &xev ) ;
-+#endif
++    if ((string = malloc( length )) != NULL) {
++      char **missing_charsetlist, *def_string;
++      int missing_charsetcount;
++
++      string[0] = '\0';
++      for (i = 0; i < NFONTS; i++) {
++	if (rs_font[i]){
++	  strcat(string, rs_font[i]);
++	  strcat(string, ",");
++	}
++# ifdef KANJI
++	if(rs_kfont[i]){
++	  strcat(string, rs_kfont[i]);
++	  strcat(string, ",");
++	}
++# endif
++      }
++      length = strlen(string);
++      if (length > 0 && string[ length - 1 ] == ',') {
++	string[length - 1] = '\0';
++	length--;
++      }
++      if (length > 0) {
++	TermWin.fontset = XCreateFontSet(Xdisplay, string,
++					 &missing_charsetlist, &missing_charsetcount,
++					 &def_string);
++      }
++      free(string);
++    } else {
++      TermWin.fontset = NULL;
++    }
 +}
 +
 +void
@@ -457,141 +453,142 @@
 +    Input_Context = NULL;
 +    if (rs_inputMethod == NULL
 +# ifndef KANJI
-+	|| !*rs_inputMethod	/* required ? */
++	|| !*rs_inputMethod     /* required ? */
 +# endif
 +	) {
-+	if ((p = XSetLocaleModifiers("")) != NULL && *p)
-+	  xim = XOpenIM(Xdisplay, NULL, NULL, NULL);
++      if ((p = XSetLocaleModifiers("")) != NULL && *p)
++	xim = XOpenIM(Xdisplay, NULL, NULL, NULL);
 +    } else {
-+	strcpy(tmp, rs_inputMethod);
-+	for (s = tmp; *s; /*nil*/) {
-+	    
-+	    char *end, *next_s;
-+	    
-+	    for (; *s && isspace(*s); s++);
-+	    if (!*s) break;
-+	    end = s;
-+	    for (; *end && (*end != ','); end++);
-+	    next_s = end--;
-+	    for (; (end >= s) && isspace(*end); end--);
-+	    *(end + 1) = '\0';
-+	    
-+	    if (*s) {
-+		strcpy(buf, "@im=");
-+		strcat(buf, s);
-+		if ((p = XSetLocaleModifiers(buf)) != NULL && *p
-+		    && (xim = XOpenIM(Xdisplay, NULL, NULL, NULL)) != NULL)
-+		  break;
-+	    }
-+	    if (!*next_s) break;
-+	    s = (next_s + 1);
++      strcpy(tmp, rs_inputMethod);
++      for (s = tmp; *s; /*nil*/) {
++
++	char *end, *next_s;
++
++	for (; *s && isspace(*s); s++);
++	if (!*s) break;
++	end = s;
++	for (; *end && (*end != ','); end++);
++	next_s = end--;
++	for (; (end >= s) && isspace(*end); end--);
++	*(end + 1) = '\0';
++
++	if (*s) {
++	  strcpy(buf, "@im=");
++	  strcat(buf, s);
++	  if ((p = XSetLocaleModifiers(buf)) != NULL && *p
++	      && (xim = XOpenIM(Xdisplay, NULL, NULL, NULL)) != NULL)
++	    break;
 +	}
++	if (!*next_s) break;
++	s = (next_s + 1);
++      }
 +    }
-+    
++
 +    if (xim == NULL && (p = XSetLocaleModifiers("")) != NULL && *p)
 +      xim = XOpenIM(Xdisplay, NULL, NULL, NULL);
-+    
++
 +    if (xim == NULL) {
 +# ifdef DEBUG_X11
-+	print_error("Failed to open input method");
++      print_error("Failed to open input method");
 +# endif
-+	return;
++      return;
 +    }
 +
 +    XSetIMValues(xim, XNDestroyCallback, &ximcallback, NULL);  
-+    
++
 +    if (XGetIMValues(xim, XNQueryInputStyle, &xim_styles, NULL) || !xim_styles) {
 +# ifdef DEBUG_X11
-+	print_error("input method doesn't support any style");
++      print_error("input method doesn't support any style");
 +# endif
-+	XCloseIM(xim);
-+	return;
++      XCloseIM(xim);
++      return;
 +    }
-+    
++
 +    strcpy(tmp, (rs_preeditType ? rs_preeditType : "OverTheSpot"));
 +    for (found = 0, s = tmp; *s && !found; /*nil*/) {
-+	
-+	unsigned short i;
-+	char *end, *next_s;
-+	
-+	while (*s && isspace(*s)) s++;
-+	if (!*s) break;
-+	end = s;
-+	while (*end && (*end != ',')) end++;
-+	next_s = end--;
-+	while ((end >= s) && isspace(*end)) *end-- = 0;
-+	
-+	if (!strcmp(s, "OverTheSpot")) input_style = (XIMPreeditPosition | XIMStatusNothing);
-+	else if (!strcmp(s, "OffTheSpot")) input_style = (XIMPreeditArea | XIMStatusArea);
-+	else if (!strcmp(s, "Root"))
-+	  input_style = (XIMPreeditNothing | XIMStatusNothing);
-+	
-+	for (i = 0; i < xim_styles->count_styles; i++) {
-+	    if (input_style == xim_styles->supported_styles[i]) {
-+		found = 1;
-+		break;
-+	    }
++
++      unsigned short i;
++      char *end, *next_s;
++
++      while (*s && isspace(*s)) s++;
++      if (!*s) break;
++      end = s;
++      while (*end && (*end != ',')) end++;
++      next_s = end--;
++      while ((end >= s) && isspace(*end)) *end-- = 0;
++
++      if (!strcmp(s, "OverTheSpot")) 
++	input_style = (XIMPreeditPosition | XIMStatusNothing);
++      else 
++	if (!strcmp(s, "OffTheSpot")) 
++	  input_style = (XIMPreeditArea | XIMStatusArea);
++	else 
++	  if (!strcmp(s, "Root"))
++	    input_style = (XIMPreeditNothing | XIMStatusNothing);
++
++      for (i = 0; i < xim_styles->count_styles; i++) {
++	if (input_style == xim_styles->supported_styles[i]) {
++	  found = 1;
++	  break;
 +	}
-+	s = next_s;
++      }
++      s = next_s;
 +    }
 +    XFree(xim_styles);
-+    
++
 +    if (found == 0) {
 +# ifdef DEBUG_X11
-+	print_error ("input method doesn't support my preedit type");
++      print_error ("input method doesn't support my preedit type");
 +# endif
-+	XCloseIM(xim);
-+	return;
++      XCloseIM(xim);
++      return;
 +    }
-+    
++
 +    /*
 +     * This program only understands the Root preedit_style yet
 +     * Then misc.preedit_type should default to:
-+     *		"OverTheSpot,OffTheSpot,Root"
-+     *	/MaF
++     *         "OverTheSpot,OffTheSpot,Root"
++     * /MaF
 +     */
 +    if ((input_style != (XIMPreeditPosition | XIMStatusNothing)) &&
 +	(input_style != (XIMPreeditArea | XIMStatusArea)) &&
 +	(input_style != (XIMPreeditNothing | XIMStatusNothing))) {
 +# ifdef DEBUG_X11
-+	print_error ("This program only supports the preedit type");
++      print_error ("This program only supports the preedit type");
 +# endif
-+	XCloseIM(xim);
-+	return;
++      XCloseIM(xim);
++      return;
 +    }
 +
 +    if (input_style & XIMPreeditPosition) {
 +      setSize(&rect);
 +      setPosition(&spot);
 +      setColor(&fg, &bg);
-+      
-+      preedit_attr = XVaCreateNestedList
-+                    (0,
-+		     XNArea,             &rect,
-+		     XNSpotLocation,     &spot,
-+		     XNForeground,       fg,
-+		     XNBackground,       bg,
-+		     XNFontSet, TermWin.fontset,
-+		     XNLineSpace,        0,
-+		     NULL);
++
++      preedit_attr = XVaCreateNestedList(0,
++					 XNArea,             &rect,
++					 XNSpotLocation,     &spot,
++					 XNForeground,       fg,
++					 XNBackground,       bg,
++					 XNFontSet, TermWin.fontset,
++					 XNLineSpace,        0,
++					 NULL);
 +    } else if (input_style & XIMPreeditArea) {
 +      setColor(&fg, &bg);
 +
-+      preedit_attr = XVaCreateNestedList
-+                    (0,
-+		     XNForeground, fg,
-+		     XNBackground, bg,
-+		     XNFontSet, TermWin.fontset,
-+		     XNLineSpace, 0,
-+		     NULL);
-+
-+      status_attr = XVaCreateNestedList
-+	           (0,
-+		    XNForeground, fg,
-+		    XNBackground, bg,
-+		    XNFontSet, TermWin.fontset,
-+		    XNLineSpace, 0,
-+		    NULL);
++      preedit_attr = XVaCreateNestedList(0,
++					 XNForeground, fg,
++					 XNBackground, bg,
++					 XNFontSet, TermWin.fontset,
++					 XNLineSpace, 0,
++					 NULL);
++
++      status_attr = XVaCreateNestedList(0,
++					XNForeground, fg,
++					XNBackground, bg,
++					XNFontSet, TermWin.fontset,
++					XNLineSpace, 0,
++					NULL);
 +    }
 +
 +    ximcallback.callback = IMDestroyCallback;
@@ -608,9 +605,9 @@
 +    XFree(status_attr);
 +    if (Input_Context == NULL) {
 +# ifdef DEBUG_X11
-+	print_error("Failed to create input context");
++      print_error("Failed to create input context");
 +# endif
-+	XCloseIM(xim);
++      XCloseIM(xim);
 +    }
 +
 +    if (input_style & XIMPreeditArea) {
@@ -621,16 +618,16 @@
 +void
 +IMSetStatusPosition(void)
 +{
-+  XIMStyle input_style;
-+  XRectangle rect, status_rect, *needed_rect;
-+  XVaNestedList preedit_attr, status_attr;
++    XIMStyle input_style;
++    XRectangle rect, status_rect, *needed_rect;
++    XVaNestedList preedit_attr, status_attr;
 +
-+  if (Input_Context == NULL)
-+    return;
++    if (Input_Context == NULL)
++      return;
 +
-+  XGetICValues(Input_Context, XNInputStyle, &input_style, NULL);
++    XGetICValues(Input_Context, XNInputStyle, &input_style, NULL);
 +
-+  if (input_style & XIMPreeditArea) {
++    if (input_style & XIMPreeditArea) {
 +      status_attr = XVaCreateNestedList(0, XNAreaNeeded, &needed_rect, NULL);
 +      XGetICValues(Input_Context, XNStatusAttributes, status_attr, NULL);
 +      XFree(status_attr);
@@ -659,13 +656,26 @@
 +		   XNStatusAttributes, status_attr, NULL);
 +      XFree(preedit_attr);
 +      XFree(status_attr);    
-+  }
++    }
 +}
 +
 +void
 +IMDestroyCallback(XIM xim, XPointer client_data, XPointer call_data)
 +{
-+  Input_Context = NULL;
-+  XRegisterIMInstantiateCallback(Xdisplay, NULL, NULL, NULL, IMInstantiateCallback, NULL);
++    Input_Context = NULL;
++    XRegisterIMInstantiateCallback(Xdisplay, NULL, NULL, NULL, IMInstantiateCallback, NULL);
++}
++#endif /* USE_XIM */
++
++void
++XProcessEvent(Display *display)
++{
++    XEvent xev;
++    XNextEvent(display, &xev);
++#ifndef NO_XLOCALE
++    if( !XFilterEvent( &xev, xev.xany.window ) )
++      process_x_event( &xev ) ;
++#else
++    process_x_event( &xev ) ;
++#endif
 +}
-+#endif /* NO_XLOCALE */
diff -urN eterm.old/patches/patch-af eterm/patches/patch-af
--- eterm.old/patches/patch-af	Sat Jan 30 02:54:04 1999
+++ eterm/patches/patch-af	Fri Jan 29 23:42:58 1999
@@ -1,17 +1,18 @@
---- src/screen.c.orig	Wed Oct 14 07:41:37 1998
-+++ src/screen.c	Tue Dec 15 03:40:43 1998
-@@ -3352,3 +3352,14 @@
+--- src/screen.c.orig	Tue Jan 12 07:36:56 1999
++++ src/screen.c	Fri Jan 29 23:42:08 1999
+@@ -3365,3 +3365,15 @@
  #endif
      fprintf(stderr, "%s\n", name[color]);
  }
-+#ifndef NO_XLOCALE
++
++#ifdef USE_XIM
 +void
 +setPosition(XPoint *pos)
 +{
-+  XWindowAttributes xwa ;
++    XWindowAttributes xwa ;
 +
-+  XGetWindowAttributes( Xdisplay, TermWin.vt, &xwa ) ;
-+  pos->x = Col2Pixel   ( screen.col ) + xwa.x;
-+  pos->y = Height2Pixel((screen.row + 1)) + xwa.y + TermWin.internalBorder - 2;
++    XGetWindowAttributes( Xdisplay, TermWin.vt, &xwa ) ;
++    pos->x = Col2Pixel   ( screen.col ) + xwa.x;
++    pos->y = Height2Pixel((screen.row + 1)) + xwa.y + TermWin.internalBorder - 2;
 +}
 +#endif
diff -urN eterm.old/patches/patch-ag eterm/patches/patch-ag
--- eterm.old/patches/patch-ag	Sat Jan 30 02:54:04 1999
+++ eterm/patches/patch-ag	Sat Jan 30 01:42:27 1999
@@ -1,33 +1,33 @@
---- src/options.c.orig	Tue Oct 20 07:06:05 1998
-+++ src/options.c	Fri Dec 11 22:19:19 1998
-@@ -149,6 +149,10 @@
+--- src/options.c.orig	Tue Jan  5 04:38:07 1999
++++ src/options.c	Sat Jan 30 01:41:27 1999
+@@ -153,6 +153,10 @@
  #ifdef GREEK_SUPPORT
  static char *rs_greek_keyboard = NULL;
  #endif
-+#ifndef NO_XLOCALE
++#ifdef USE_XIM
 +char *rs_inputMethod = NULL;
 +char *rs_preeditType = NULL;
 +#endif
  
  extern char initial_dir[PATH_MAX+1];
  
-@@ -324,6 +328,10 @@
+@@ -333,6 +337,10 @@
  #if MENUBAR_MAX
  OPT_STR('M', "menu", "Default menubar file", &rs_menu),
  #endif
-+#ifndef NO_XLOCALE
++#ifdef USE_XIM
 +OPT_LONG("input-method", "value of using input method", &rs_inputMethod),
 +OPT_LONG("preedit-type", "value of input style", &rs_preeditType),
 +#endif
  OPT_LONG("term-name", "value to use for setting $TERM", &rs_term_name),
  OPT_BOOL('C', "console", "grab console messages", NULL, Opt_console),
  OPT_ARGS('e', "exec", "execute a command rather than a shell", &rs_execArgs)
-@@ -1850,7 +1858,14 @@
+@@ -1896,7 +1904,14 @@
  #else
      print_error("warning:  support for the cut_chars attribute was not compiled in, ignoring");
  #endif
 -
-+#ifndef NO_XLOCALE
++#ifdef USE_XIM
 +  } else if (!BEG_STRCASECMP(buff, "input-method ")) {
 +    rs_inputMethod = Word(2, buff);
 +    chomp(rs_inputMethod);
diff -urN eterm.old/patches/patch-ah eterm/patches/patch-ah
--- eterm.old/patches/patch-ah	Sat Jan 30 02:54:04 1999
+++ eterm/patches/patch-ah	Sat Jan 30 01:26:32 1999
@@ -1,30 +1,10 @@
---- themes/Makefile.in.orig	Fri Oct 23 01:09:53 1998
-+++ themes/Makefile.in	Fri Dec 11 19:56:10 1998
-@@ -196,17 +196,18 @@
- 	-@for i in $(THEMES) ; do \
- 	  $(SED) -e 's%@''PREFIX''@%${prefix}%g' $$i/MAIN.in > $$i/MAIN ; \
- 	done
--	$(mkinstalldirs) $(pkglibdir)/themes
-+	$(mkinstalldirs) $(pkgdatadir)/themes
- 	-@for i in $(THEMES) ; do \
--	  if test ! -d $(pkglibdir)/themes/$$i ; then \
--	    echo "Installing $$i theme in $(pkglibdir)/themes" ; \
--	    $(mkinstalldirs) $(pkglibdir)/themes/$$i ; \
--	    $(CP) $$i/???* $(pkglibdir)/themes/$$i ; \
--	    $(CHMOD) 755 $(pkglibdir)/themes/$$i ; \
--	    $(CHMOD) 644 $(pkglibdir)/themes/$$i/???* ; \
--	    rm -f $(pkglibdir)/themes/$$i/MAIN.in ; \
-+	  if test ! -d $(pkgdatadir)/themes/$$i ; then \
-+	    echo "Installing $$i theme in $(pkgdatadir)/themes" ; \
-+	    $(mkinstalldirs) $(pkgdatadir)/themes/$$i ; \
-+	    $(CP) $$i/???* $(pkgdatadir)/themes/$$i ; \
-+	    $(CHMOD) 755 $(pkgdatadir)/themes/$$i ; \
-+	    $(CHMOD) 644 $(pkgdatadir)/themes/$$i/???* ; \
-+	    rm -f $(pkgdatadir)/themes/$$i/MAIN.in ; \
+--- themes/Makefile.in.orig	Sat Jan 30 01:24:43 1999
++++ themes/Makefile.in	Sat Jan 30 01:25:55 1999
+@@ -205,6 +205,7 @@
+ 	    $(CHMOD) 755 $(pkgdatadir)/themes/$$i ; \
+ 	    $(CHMOD) 644 $(pkgdatadir)/themes/$$i/???* ; \
+ 	    rm -f $(pkgdatadir)/themes/$$i/MAIN.in ; \
 +	    rm -f $(pkgdatadir)/themes/$$i/MAIN.in.orig ; \
  	  else \
--	    echo "ALERT!  Not overwriting theme $$i in $(pkglibdir)/themes.  You will need to update this theme manually." ; \
-+	    echo "ALERT!  Not overwriting theme $$i in $(pkgdatadir)/themes.  You will need to update this theme manually." ; \
+ 	    echo "ALERT!  Not overwriting theme $$i in $(pkgdatadir)/themes.  You will need to update this theme manually." ; \
  	  fi ; \
- 	done
- 	@if test ! -f $(HOME)/.active.tags ; then $(CP) active.tags $(HOME)/.active.tags ; \
diff -urN eterm.old/patches/patch-ai eterm/patches/patch-ai
--- eterm.old/patches/patch-ai	Sat Jan 30 02:54:04 1999
+++ eterm/patches/patch-ai	Fri Jan 29 23:10:45 1999
@@ -1,5 +1,5 @@
---- themes/Eterm/MAIN.in.orig	Fri Sep 25 06:13:41 1998
-+++ themes/Eterm/MAIN.in	Wed Dec 16 14:18:21 1998
+--- themes/Eterm/MAIN.in.orig	Fri Jan 29 22:56:31 1999
++++ themes/Eterm/MAIN.in	Fri Jan 29 22:58:12 1999
 @@ -80,7 +80,7 @@
  # the Eterm defaults.  The "bold" font is the font used if color BD has
  # not been set and Eterm cannot map the foreground color to one of the
@@ -14,9 +14,9 @@
  # scale 100%, 0 to tile, any other number specifies W/H in pixels
    begin pixmaps
 -    background %random(`cat pixmaps.list 2>/dev/null`)
--    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/lib/Eterm/pix/"
+-    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
 +#    background %random(`cat pixmaps.list 2>/dev/null`)
-+#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/share/Eterm/pix/"
++#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
  
  # Support for these is forthcoming
  #    scroll_up -1 -1 ~/.Eterm/up_arrow.ppm
@@ -33,8 +33,8 @@
  
    end misc
  
---- themes/chooser/MAIN.in.orig	Fri Sep 25 06:13:41 1998
-+++ themes/chooser/MAIN.in	Wed Dec 16 14:18:56 1998
+--- themes/chooser/MAIN.in.orig	Fri Jan 29 22:58:50 1999
++++ themes/chooser/MAIN.in	Fri Jan 29 22:59:33 1999
 @@ -80,7 +80,7 @@
  # the Eterm defaults.  The "bold" font is the font used if color BD has
  # not been set and Eterm cannot map the foreground color to one of the
@@ -49,9 +49,9 @@
  # scale 100%, 0 to tile, any other number specifies W/H in pixels
    begin pixmaps
 -    background %random(`cat pixmaps.list 2>/dev/null`)
--    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/lib/Eterm/pix/"
+-    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
 +#    background %random(`cat pixmaps.list 2>/dev/null`)
-+#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/share/Eterm/pix/"
++#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
  
  # Support for these is forthcoming
  #    scroll_up -1 -1 ~/.Eterm/up_arrow.ppm
@@ -68,8 +68,8 @@
  
    end misc
  
---- themes/emacs/MAIN.in.orig	Fri Sep 25 06:13:41 1998
-+++ themes/emacs/MAIN.in	Wed Dec 16 14:19:32 1998
+--- themes/emacs/MAIN.in.orig	Fri Jan 29 23:00:19 1999
++++ themes/emacs/MAIN.in	Fri Jan 29 23:01:22 1999
 @@ -80,7 +80,7 @@
  # the Eterm defaults.  The "bold" font is the font used if color BD has
  # not been set and Eterm cannot map the foreground color to one of the
@@ -84,9 +84,9 @@
  # scale 100%, 0 to tile, any other number specifies W/H in pixels
    begin pixmaps
 -    background %random(`cat pixmaps.list 2>/dev/null`)
--    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/lib/Eterm/pix/"
+-    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
 +#    background %random(`cat pixmaps.list 2>/dev/null`)
-+#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/share/Eterm/pix/"
++#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
  
  # Support for these is forthcoming
  #    scroll_up -1 -1 ~/.Eterm/up_arrow.ppm
@@ -103,8 +103,8 @@
  
    end misc
  
---- themes/irc/MAIN.in.orig	Fri Sep 25 06:13:41 1998
-+++ themes/irc/MAIN.in	Wed Dec 16 14:19:56 1998
+--- themes/irc/MAIN.in.orig	Fri Jan 29 23:01:55 1999
++++ themes/irc/MAIN.in	Fri Jan 29 23:02:58 1999
 @@ -80,7 +80,7 @@
  # the Eterm defaults.  The "bold" font is the font used if color BD has
  # not been set and Eterm cannot map the foreground color to one of the
@@ -119,9 +119,9 @@
  # scale 100%, 0 to tile, any other number specifies W/H in pixels
    begin pixmaps
 -    background %random(`cat pixmaps.list 2>/dev/null`)
--    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/lib/Eterm/pix/"
+-    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
 +#    background %random(`cat pixmaps.list 2>/dev/null`)
-+#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/share/Eterm/pix/"
++#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
  
  # Support for these is forthcoming
  #    scroll_up -1 -1 ~/.Eterm/up_arrow.ppm
@@ -138,8 +138,8 @@
  
    end misc
  
---- themes/mutt/MAIN.in.orig	Fri Sep 25 06:13:41 1998
-+++ themes/mutt/MAIN.in	Wed Dec 16 14:20:16 1998
+--- themes/mutt/MAIN.in.orig	Fri Jan 29 23:03:23 1999
++++ themes/mutt/MAIN.in	Fri Jan 29 23:04:10 1999
 @@ -80,7 +80,7 @@
  # the Eterm defaults.  The "bold" font is the font used if color BD has
  # not been set and Eterm cannot map the foreground color to one of the
@@ -154,9 +154,9 @@
  # scale 100%, 0 to tile, any other number specifies W/H in pixels
    begin pixmaps
 -    background %random(`cat pixmaps.list 2>/dev/null`)
--    path "~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/lib/Eterm/pix/"
+-    path "~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
 +#    background %random(`cat pixmaps.list 2>/dev/null`)
-+#    path "~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/share/Eterm/pix/"
++#    path "~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
  
  # Support for these is forthcoming
  #    scroll_up -1 -1 ~/.Eterm/up_arrow.ppm
@@ -173,8 +173,8 @@
  
    end misc
  
---- themes/tn3270/MAIN.in.orig	Fri Sep 25 06:13:41 1998
-+++ themes/tn3270/MAIN.in	Wed Dec 16 14:20:45 1998
+--- themes/tn3270/MAIN.in.orig	Fri Jan 29 23:04:32 1999
++++ themes/tn3270/MAIN.in	Fri Jan 29 23:05:37 1999
 @@ -80,7 +80,7 @@
  # the Eterm defaults.  The "bold" font is the font used if color BD has
  # not been set and Eterm cannot map the foreground color to one of the
@@ -189,9 +189,9 @@
  # scale 100%, 0 to tile, any other number specifies W/H in pixels
    begin pixmaps
 -    background %random(`cat pixmaps.list 2>/dev/null`)
--    path "~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/lib/Eterm/pix/"
+-    path "~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
 +#    background %random(`cat pixmaps.list 2>/dev/null`)
-+#    path "~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/share/Eterm/pix/"
++#    path "~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@DATADIR@/Eterm/pix/"
  
  # Support for these is forthcoming
  #    scroll_up -1 -1 ~/.Eterm/up_arrow.ppm
@@ -208,9 +208,9 @@
  
    end misc
  
---- themes/trans/MAIN.in.orig	Fri Sep 25 06:13:42 1998
-+++ themes/trans/MAIN.in	Wed Dec 16 14:17:49 1998
-@@ -80,7 +80,7 @@
+--- themes/trans/MAIN.in.orig	Fri Jan 29 23:05:58 1999
++++ themes/trans/MAIN.in	Fri Jan 29 23:06:36 1999
+@@ -82,7 +82,7 @@
  # the Eterm defaults.  The "bold" font is the font used if color BD has
  # not been set and Eterm cannot map the foreground color to one of the
  # high-intensity colors (8-15).
@@ -219,16 +219,7 @@
      font 1 6x10
      font 2 6x13
      font 3 8x13
-@@ -94,7 +94,7 @@
- # scale 100%, 0 to tile, any other number specifies W/H in pixels
-   begin pixmaps
- #    background %random(`cat pixmaps.list 2>/dev/null`)
--#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/lib/Eterm/pix/"
-+#    path "./pix/:~/.Eterm/:~/.Eterm/themes/Eterm/pix:~/.Eterm/pix/:@PREFIX@/share/Eterm/pix/"
- 
- # Support for these is forthcoming
- #    scroll_up -1 -1 ~/.Eterm/up_arrow.ppm
-@@ -210,6 +210,12 @@
+@@ -213,6 +213,12 @@
  
  # Program to exec (intended for use with themes)
  #    exec foo
@@ -240,3 +231,4 @@
 +#    preedit-type OverTheSpot
  
    end misc
+ 
diff -urN eterm.old/patches/patch-aj eterm/patches/patch-aj
--- eterm.old/patches/patch-aj	Sat Jan 30 02:54:04 1999
+++ eterm/patches/patch-aj	Fri Jan 29 23:13:50 1999
@@ -1,8 +1,8 @@
---- doc/Eterm.1.in.orig	Thu Oct 22 02:26:45 1998
-+++ doc/Eterm.1.in	Tue Dec 15 06:48:08 1998
-@@ -303,6 +303,15 @@
- Replace default menubar file with
- .I file.
+--- doc/Eterm.1.in.orig	Fri Jan 29 23:11:14 1999
++++ doc/Eterm.1.in	Fri Jan 29 23:13:02 1999
+@@ -407,6 +407,15 @@
+ specify /dev/null or a non-existent file as
+ .IR file .
  .TP
 +.BI \-\-input-method " name"
 +Set the name of using input method. If environment variable XMODIFIERS
diff -urN eterm.old/patches/patch-ak eterm/patches/patch-ak
--- eterm.old/patches/patch-ak	Sat Jan 30 02:54:04 1999
+++ eterm/patches/patch-ak	Thu Jan  1 09:00:00 1970
@@ -1,12 +0,0 @@
---- libmej/Makefile.in.orig	Fri Oct 23 01:09:48 1998
-+++ libmej/Makefile.in	Mon Dec 14 02:30:58 1998
-@@ -107,6 +107,9 @@
- libmej_la_LDFLAGS = -version-info 8:7:8
- 
- EXTRA_DIST = debug.h global.h mem.h strings.h strptime.h strptime.c
-+ifeq ($(PORTOBJFORMAT),elf)
-+LDFLAGS+=-Wl,-soname,libmej.so.8,-rpath,$(prefix)/lib
-+endif
- mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
- CONFIG_HEADER = ../config.h
- CONFIG_CLEAN_FILES = 
diff -urN eterm.old/patches/patch-al eterm/patches/patch-al
--- eterm.old/patches/patch-al	Sat Jan 30 02:54:03 1999
+++ eterm/patches/patch-al	Sat Jan 30 00:43:05 1999
@@ -1,18 +1,14 @@
---- ltmain.sh.orig	Wed Dec 16 07:44:58 1998
-+++ ltmain.sh	Wed Dec 16 07:46:30 1998
-@@ -967,6 +967,16 @@
+--- ltmain.sh.orig	Sat Jan 30 00:41:47 1999
++++ ltmain.sh	Sat Jan 30 00:42:15 1999
+@@ -967,6 +967,12 @@
          versuffix="$current.$revision"
          ;;
  
 +      freebsd)
-+	version_vars="$version_vars major versuffix"
-+	major="$current"
-+	if [ $PORTOBJFORMAT = elf ]; then
-+	 versuffix="$current";
-+	else
-+	 versuffix="$current.$revision";
-+	fi
-+	;;
++        version_vars="$version_vars major versuffix"
++        major="$current"
++        versuffix="$current"
++        ;;
 +
        *)
          $echo "$modename: unknown library version type \`$version_type'" 1>&2
diff -urN eterm.old/patches/patch-am eterm/patches/patch-am
--- eterm.old/patches/patch-am	Thu Jan  1 09:00:00 1970
+++ eterm/patches/patch-am	Sat Jan 30 00:21:01 1999
@@ -0,0 +1,11 @@
+--- doc/Makefile.in.orig	Sat Jan 30 00:19:23 1999
++++ doc/Makefile.in	Sat Jan 30 00:20:04 1999
+@@ -76,7 +76,7 @@
+ EGCS = @EGCS@
+ FEATURE_CMD = @FEATURE_CMD@
+ GDB = @GDB@
+-GRLIBS = @GRLIBS@
++GRLIBS = -L/usr/local/lib @GRLIBS@
+ IMLIB_CONFIG = @IMLIB_CONFIG@
+ LD = @LD@
+ LDFLAGS = @LDFLAGS@
diff -urN eterm.old/patches/patch-an eterm/patches/patch-an
--- eterm.old/patches/patch-an	Thu Jan  1 09:00:00 1970
+++ eterm/patches/patch-an	Sat Jan 30 02:26:41 1999
@@ -0,0 +1,34 @@
+--- ltconfig.orig	Wed Jan 13 03:49:37 1999
++++ ltconfig	Sat Jan 30 02:25:44 1999
+@@ -785,6 +785,14 @@
+     hardcode_shlibpath_var=no
+     ;;
+ 
++  freebsd4*)
++    archive_cmds='$CC -shared -o $lib$libobjs'
++    hardcode_libdir_flag_spec='-R$libdir'
++    hardcode_direct=yes
++    hardcode_minus_L=yes
++    hardcode_shlibpath_var=no
++    ;;
++
+   hpux9*)
+     archive_cmds='$rm $objdir/$soname;$LD -b +s +b $install_libdir -o $objdir/$soname$libobjs;mv $objdir/$soname $lib'
+     hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+@@ -1123,8 +1131,15 @@
+   finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
+   ;;
+ 
+-freebsd2* | freebsd3*)
++freebsd2*)
+   version_type=sunos
++  library_names_spec='${libname}${release}.so.$versuffix $libname.so'
++  finish_cmds='PATH="$PATH:/sbin" ldconfig -m $libdir'
++  shlibpath_var=LD_LIBRARY_PATH
++  ;;
++
++freebsd3* | freebsd4*)
++  version_type=freebsd
+   library_names_spec='${libname}${release}.so.$versuffix $libname.so'
+   finish_cmds='PATH="$PATH:/sbin" ldconfig -m $libdir'
+   shlibpath_var=LD_LIBRARY_PATH
diff -urN eterm.old/pkg/DESCR eterm/pkg/DESCR
--- eterm.old/pkg/DESCR	Sat Jan 30 02:54:02 1999
+++ eterm/pkg/DESCR	Sat Jan 30 02:53:34 1999
@@ -6,6 +6,8 @@
 
 If you have a comment about Japanese input support for Eterm and
 this port, contact with MANTANI Nobutaka <nobutaka@nobutaka.com>.
+Further information about this port is available at
+http://www.nobutaka.com/programs/Eterm.html .
 
 Eterm Main Web Site -- <http://www.tcserv.com/Eterm/>;
 Eterm FAQ -- <http://www.tcserv.com/Eterm/FAQ.html>;
diff -urN eterm.old/pkg/PLIST eterm/pkg/PLIST
--- eterm.old/pkg/PLIST	Sat Jan 30 02:54:02 1999
+++ eterm/pkg/PLIST	Sat Jan 30 01:18:54 1999
@@ -10,19 +10,37 @@
 lib/libEterm.so.8.7
 @unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R
 @exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %B
+share/Eterm/pix/014.png
+share/Eterm/pix/backwave.jpg
+share/Eterm/pix/button1.jpg
+share/Eterm/pix/button5.jpg
+share/Eterm/pix/circuit.png
+share/Eterm/pix/fourthday.jpg
+share/Eterm/pix/gaia.jpg
+share/Eterm/pix/galleon.jpg
+share/Eterm/pix/nebula.jpg
+share/Eterm/pix/night_of_the_dragon.jpg
+share/Eterm/pix/pixmaps.list
 share/Eterm/themes/Eterm/Eterm.menu
 share/Eterm/themes/Eterm/MAIN
+share/Eterm/themes/Eterm/pixmaps.list
 share/Eterm/themes/chooser/MAIN
 share/Eterm/themes/chooser/chooser.menu
+share/Eterm/themes/chooser/pixmaps.list
 share/Eterm/themes/emacs/MAIN
 share/Eterm/themes/emacs/emacs.menu
+share/Eterm/themes/emacs/pixmaps.list
 share/Eterm/themes/irc/MAIN
 share/Eterm/themes/irc/irc.menu
+share/Eterm/themes/irc/pixmaps.list
 share/Eterm/themes/mutt/MAIN
 share/Eterm/themes/mutt/mutt.menu
+share/Eterm/themes/mutt/pixmaps.list
 share/Eterm/themes/tn3270/MAIN
+share/Eterm/themes/tn3270/pixmaps.list
 share/Eterm/themes/trans/MAIN
 share/Eterm/themes/trans/trans.menu
+share/Eterm/themes/trans/pixmaps.list
 share/Eterm/Eterm.help
 share/Eterm/Eterm.ref
 share/Eterm/Eterm.tcap
@@ -39,4 +57,5 @@
 @dirrm share/Eterm/themes/chooser
 @dirrm share/Eterm/themes/Eterm
 @dirrm share/Eterm/themes
+@dirrm share/Eterm/pix
 @dirrm share/Eterm


>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901291826.DAA44660>