diff -c jstevie1.3/fileio.c onew1.5.2/fileio.c
*** fileio.c	Fri Oct  4 20:46:47 1991
--- fileio.c.orig	Fri Oct  4 20:25:32 1991
***************
*** 296,312 ****
  }
  
  
! /*
!  * writeit - write to file 'fname' lines 'start' through 'end'
!  *
!  * If either 'start' or 'end' contain null line pointers, the default
!  * is to use the start or end of the file respectively.
   */
  bool_t
! writeit(fname, start, end, force)
  uchar	*fname;
  LPTR	*start, *end;
! bool_t	force;
  {
  	FILE	*f, *fopen();
  	register uchar	*s;
--- 296,310 ----
  }
  
  
! /* 
!  * This is the actual code for writeit(), with an extra argument
!  * telling whether we want a verbose message.
   */
  bool_t
! writeit_2(fname, start, end, force, verbose)
  uchar	*fname;
  LPTR	*start, *end;
! bool_t	force, verbose;
  {
  	FILE	*f, *fopen();
  	register uchar	*s;
***************
*** 336,342 ****
  		}
  	}
  
! 	smsg("\"%s\"", fname);
  
  	/*
  	 * If 'backup' option is set and the current version exists,
--- 334,341 ----
  		}
  	}
  
! 	if (verbose)
! 		smsg("\"%s\"", fname);
  
  	/*
  	 * If 'backup' option is set and the current version exists,
***************
*** 426,438 ****
  		return FALSE;
  	}
  
  #ifdef V6FORMAT
! 	smsg("\"%s\" %d line%s, %D character%s", fname,
  #else
! 	smsg("\"%s\" %d line%s, %ld character%s", fname,
  #endif
! 		lines, (lines > 1) ? "s" : "",
! 		nchars, (nchars > 1) ? "s" : "");
  
  	/*
  	 * We assume that all modifications are saved
--- 425,439 ----
  		return FALSE;
  	}
  
+ 	if (verbose) {
  #ifdef V6FORMAT
! 		smsg("\"%s\" %d line%s, %D character%s", fname,
  #else
! 		smsg("\"%s\" %d line%s, %ld character%s", fname,
  #endif
! 			lines, (lines > 1) ? "s" : "",
! 			nchars, (nchars > 1) ? "s" : "");
! 	}
  
  	/*
  	 * We assume that all modifications are saved
***************
*** 444,446 ****
--- 445,464 ----
  
  	return TRUE;
  }
+ 
+ 
+ /*
+  * writeit - write to file 'fname' lines 'start' through 'end'
+  *
+  * If either 'start' or 'end' contain null line pointers, the default
+  * is to use the start or end of the file respectively.
+  */
+ bool_t
+ writeit(fname, start, end, force)
+ uchar	*fname;
+ LPTR	*start, *end;
+ bool_t	force;
+ {
+ 	return writeit_2(fname, start, end, force, TRUE);
+ }
+ 
diff -c jstevie1.3/cmdline.c onew1.5/cmdline.c
*** jstevie1.3/cmdline.c	Fri Aug 30 23:09:52 1991
--- onew1.5/cmdline.c	Fri Sep 27 19:33:53 1991
***************
*** 83,88 ****
--- 83,97 ----
  	return buf;
  }
  
+ #ifdef ONEW
+ #define ONEW_CMDPEAK(pp,colp)	Onew_cmdlnpeak(pp,colp)
+ #define ONEW_PUTMODE(firstc)	{if(firstc) outstr(Onew_romkanmode());}
+ #define getcmdln(firstc)	getcmdln1(firstc)
+ #else
+ #define ONEW_CMDPEAK(pp,colp)
+ #define ONEW_PUTMODE(firstc)
+ #endif
+ 
  /*
   * getcmdln() - read a command line from the terminal
   *
***************
*** 95,101 ****
  uchar	firstc;
  {
  	static	uchar	buff[MAXCLIN];
! 	register uchar	*p = buff;
  	register int	c;
  	register uchar	*q;
  	int	col = 1;
--- 104,110 ----
  uchar	firstc;
  {
  	static	uchar	buff[MAXCLIN];
! 	uchar	*p = buff;
  	register int	c;
  	register uchar	*q;
  	int	col = 1;
***************
*** 107,112 ****
--- 116,122 ----
  
  	/* collect the command string, handling '\b' and @ */
  	for (;;) {
+ 		ONEW_CMDPEAK(&p,&col);
  		c = vgetc();
  		switch (c) {
  
***************
*** 1184,1189 ****
--- 1194,1200 ----
  	windgoto(Rows-1,0);
  	if (clr)
  		toutstr(T_EL, 1);	/* clear the bottom line */
+ 	ONEW_PUTMODE(firstc);
  	if (firstc)
  		outchar(firstc);
  }
Common subdirectories: jstevie1.3/dist and onew1.5/dist
diff -c jstevie1.3/regexp.c onew1.5/regexp.c
*** jstevie1.3/regexp.c	Fri Aug 30 23:09:58 1991
--- onew1.5/regexp.c	Fri Sep 27 19:33:53 1991
***************
*** 1370,1376 ****
  
  #ifdef STEVIE
  int
! Strlen(str)
  register Char *str;
  {
  	register Char *s;
--- 1370,1376 ----
  
  #ifdef STEVIE
  int
! static Strlen(str)
  register Char *str;
  {
  	register Char *s;
diff -c jstevie1.3/unix.c onew1.5/unix.c
*** jstevie1.3/unix.c	Fri Aug 30 23:09:31 1991
--- onew1.5/unix.c	Fri Sep 27 19:33:53 1991
***************
*** 75,80 ****
--- 75,87 ----
  
  #ifdef KANJI
  
+ #ifdef ONEW
+ #define inchar1() Onew_inchar1()
+ #define ONEW_INCHAR(ch,kmode) {if(c=ONEW_inchar(kmode)) return c;}
+ #else
+ #define ONEW_INCHAR(ch,kmode)
+ #endif
+ 
  #ifdef JIS
  /*
   * inchar() - get a character from the keyboard
***************
*** 89,94 ****
--- 96,102 ----
  	setoutkmode(FALSE);	/* exit kanji mode on output */
  	flushbuf();		/* flush any pending output */
  again:
+ 	ONEW_INCHAR(c,kmode);
  	c = inchar1();
  	if (c != ESC) {
  		if (kmode  &&  c >= ' ')
***************
*** 162,167 ****
--- 170,176 ----
  
  	flushbuf();		/* flush any pending output */
  again:
+ 	ONEW_INCHAR(c,0);
  	c = inchar1();
  #ifdef EUC
  	if (c == SS2) {
***************
*** 251,256 ****
--- 260,273 ----
  	uchar * p = outbuf;
  	int writed;
  
+ #if defined(ONEW) && defined(SJIS)
+ {	char buf[10000];
+ 
+ 	strncpy(buf,outbuf,bpos+1);
+ 	buf[bpos] = 0;
+ 	EUC_TO_SJIS(buf,outbuf);
+ }
+ #endif
  	while (bpos) {
  		writed = write(2, p, bpos);
  		if (writed < 0)
diff -c jstevie1.3/regexp.h onew2.0/regexp.h
*** regexp.h.orig	Mon Oct  8 04:00:56 1990
--- regexp.h	Sat Oct 23 00:52:01 1993
***************
*** 1,3 ****
--- 1,10 ----
+ /* BEGIN escape confliction with Linux standard library */
+ #define regcomp		stevie_regcomp
+ #define regexec		stevie_regexec
+ #define regsub		stevie_regsub
+ #define regerror	stevie_regerror
+ /* END escape confliction with Linux standard library */
+ 
  /*
   * modified for STEVIE
   */
diff -c jstevie1.3/search.c onew2.1/search.h
*** search.c	Thu Aug 27 18:24:20 1992
--- search.c	Sat Jan  8 14:36:40 1994
***************
*** 1091,1096 ****
--- 1091,1106 ----
  	if (cmdchar != 'p')	/* Save text if cmd has side effects */
  		u_save(lp->linep->prev, up->linep->next);
  
+ 	if (*pat) {
+ 		laststr = strsave(pat);
+ 		if (laststr == NULL) {
+ 			nomem = TRUE;
+ 			return;
+ 		}
+ 	} else {
+ 		pat = laststr;
+ 	}
+ 
  	reg_ic = P(P_IC);	/* set "ignore case" flag appropriately */
  
  	if (reg_ic)
diff -c jstevie1.3/ops.c onew2.1.7/ops.c
*** ops.c	Mon Oct  8 04:01:40 1990
--- ops.c	Wed Jan 26 23:56:50 1994
***************
*** 601,606 ****
--- 601,608 ----
  	*yptr = NUL;
  	if (operator == YANK && nlines > P(P_RP))
  		smsg("%d lines yanked", nlines);
+ 	if (operator == YANK )
+ 		Onew_addword("yank",ybuf);
  
  out:
  	if ((ybtype = (ret == DONE)? mtype: MBAD) == MBAD)
