[comp.sys.3b1] ksh broke my vi

azar@morpho.UUCP (Jim Van Horn) (02/20/91)

[I have to assume that this didn't make it out the first time as
1) I got nada response and 2) there was some kind of news problem
in the neighborhood.  I missed some postings that day, including
the list of 3b1 harddrives. :(  -jvh]

Summary:
The recently installed ksh (06/03/86), obtained from osu-cis,
has dissabled a favorite ex alias/abbreviation.  This didn't
happen under the old ksh, nor does it happen when I login under
/bin/sh.

Situation:
Let's say I want to "vi this_file", and from within the
session I decide to ":!ls %".  What I get at the bottom of
the screen is:

!ls this_file
????????? not found
[Hit return to continue]

Note that vi (or ex) properly expands '%', but ls not only
can't find the file, it can't even print the file name (all
those question marks are actually reversed).  What's happening
is that each character in the file name, as received by ls,
has the high-order bit set.  In other words, what was 't' (0x74)
is now 0xF4, and what was 'h'(0x68) is now 0xE8, etc.

Plea for help:
Anyone got any fixes, work-arounds, suggestions?  I really like
the new ksh, but, and I hate to admit this in public, I use
":!spell %" all the time.
-- 
	-=-	=-=	-=-	=-=	-=-	=-=	-=-
-Jim Van Horn	uunet!amc-gw!morpho!azar

	      "Where it falls mandrakes grow.
	That's why they shriek when you pull them up"

dnichols@ceilidh.beartrack.com (DoN Nichols) (02/20/91)

In article <478@morpho.UUCP> azar@morpho.UUCP (James W. Van Horn) writes:
>[I have to assume that this didn't make it out the first time as
>1) I got nada response and 2) there was some kind of news problem
>in the neighborhood.  I missed some postings that day, including
>the list of 3b1 harddrives. :(  -jvh]

	I seem to remember this - I think it got out.

>Summary:
>The recently installed ksh (06/03/86), obtained from osu-cis,
>has dissabled a favorite ex alias/abbreviation.  This didn't
>happen under the old ksh, nor does it happen when I login under
>/bin/sh.
>
>Situation:
>Let's say I want to "vi this_file", and from within the
>session I decide to ":!ls %".  What I get at the bottom of
>the screen is:
>
>!ls this_file
>????????? not found
>[Hit return to continue]
>
>Note that vi (or ex) properly expands '%', but ls not only
>can't find the file, it can't even print the file name (all
>those question marks are actually reversed).  What's happening
>is that each character in the file name, as received by ls,
>has the high-order bit set.  In other words, what was 't' (0x74)
>is now 0xF4, and what was 'h'(0x68) is now 0xE8, etc.
>
	This is done by vi, older shells masked down to 7 bits.  The newer
shells have opened this up for extended character sets for other (human)
languages.

>Plea for help:
>Anyone got any fixes, work-arounds, suggestions?  I really like
>the new ksh, but, and I hate to admit this in public, I use
>":!spell %" all the time.

	The best suggestion I can give is to use Jove, (as I do), emacs, or
some other more modern editor.  The alternative requires the source to vi,
and quite a bit of time finding out where the quoting is being done.  (This
was done to prevent earlier shells from expanding aliases, doing variable
substitutions, etc on the filename.  (I don't have source).

	Good Luck
		DoN.
-- 
Donald Nichols (DoN.)		| Voice (Days):	(703) 664-1585
D&D Data			| Voice (Eves):	(703) 938-4564
Disclaimer: from here - None	| Email:     <dnichols@ceilidh.beartrack.com>
	--- Black Holes are where God is dividing by zero ---

avr@cbnewsj.att.com (adam.v.reed) (02/21/91)

In article <478@morpho.UUCP>, azar@morpho.UUCP (Jim Van Horn) writes:
> The recently installed ksh (06/03/86), obtained from osu-cis,
> has dissabled a favorite ex alias/abbreviation.  This didn't
> happen under the old ksh, nor does it happen when I login under
> /bin/sh.
....
Workaround: re-install the old ksh as /bin/oldksh.
In $HOME/.exrc, set SHELL=/bin/oldksh.