Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: ZSH on Dos/Windows (long)

>Who said something about a "full install", hm? Trust uncle Thorsten - 
>if all you want is zsh, you just have to install zsh (1.3 MB) and 
>cygwin itself (1.1 MB). Oops, I forgot - you'd have to download 
>"setup.exe" (180 KB).

	OK, now you actually sound helpful... Let's see:

	That Cygwin "setup" (I hadn't used it in three years - time goes by really
fast) offers loads of Unix libraries, but I don't see a cygwin "program" in
that "way-narrower-than-my-screen-certainly-could-have-allowed-it-to-be"
setup select dialog. Or are you talking about the famous cygwin1.dll?

	OK, I followed your advice and installed Cygwin. Heck, I hadn't played
with Cygwin in three years, so I installed a lot more. Bash, textutils,
daemons, practically everything except graphics and devel. Playing with
Cygwin after so much time was fun, but I am not happy with the Cygwin ZSH.
Or with Cygwin, I don't know.
	When I run that 3.05 port of ZSH to Windows, you won't believe what
happens when I press the Home key. The cursor jumps to the beginning of the
line!!!! Have you ever seen that? And the best part: when I press the End
key, it jumps to the end!! Amazing!!!! OK, seriously, ZSH under Cygwin
imposes those stinky Emacs or Vi bindings, I don't know which one, I hate
both. So I put on my Unix user hat and did what a Unix user is supposed to
do: spend several hours reading documentation and try to learn how to do
something that should be absolutely natural in an ideal world. Why can't
Microsoft make solid and reliable software like the Nix world? And why
can't the Nix world make software for flesh and blood human beings? I
couldn't find the information I wanted. I discovered, though, that ZSH is
supposed to be able to listen to a key press and actually execute another.
So I spent another hour reading the same chapter over and over and trying
to make ZSH convert the Delete key into... the Delete command! No success.
I press Delete and get tildes. I press Home and get tildes. I press End and
get tildes. I press a tilde and get nothing! This is insane. No, this is a
prank : Home, End, Delete and accented characters work fine in Vi, in Edit
mode! Why can't the shell? I was about to blame Cygwin, but then I realized
that Home and End work fine in Cygwin Bash, only Delete produces tildes.
Even accented characters work in Bash. I am still reading ZSH's docs and
everything I try, key maps, bindings, all fails. Colors didn't work either.
They work in Bash, but not in ZSH. I followed the manual instructions, but
trying to colorize a prompt never worked, I get the color formatting
sequences in my prompt instead of actual colors. Bah, colors are not really
important. But key bindings are... I found a page on the Web with prompt
examples, but none of them produced colors succesfully. I also found a few
key binding examples, but they don't work either. I call bindkey -m and my
bindings are there at the end of the list, but they just don't work. Is
anyone in the list using color prompts in Cygwin and would you be so kind
to share your prompts with me? More importantly, can anyone make Home,
Delete and accented characters work with ZSH and Cygwin?

	And here is an interesting experiment, probably a "bug" report you don't
see every day...
	The native Windows Find utility is a little slow. It may take you almost a
minute to scan a large drive and find all files that match your query. So I
used the idea of indexing and built an indexing system. Whenever my
computer is idle for over 10 minutes, like when I stop for lunch, for
example, a script is launched, using ZSH to index my hard drives:
	zsh -c "print -l c:/**/* > c:/dirlist.txt"
	zsh -c "print -l d:/**/* > d:/dirlist.txt"
	Then, when I want to find a file, I run a script that CATs and SEDs the
dirlist files and sends the output to my favorite text editor, with a
custom-made syntax highlighting scheme for file paths. The result is
instant, no query is completed in less than 6 seconds, they usually take
only 2. And I am talking about three partitions, more or less 4 Gb in all.
I also feel free to use actual regular expressions, I am not too found of
glob patterns.

	Before I continue, why use ZSH for that? I tried other things: find, ls,
dir and Windows programs too. They all either are too slow or produce
incomplete output. GNU find, for example, is slow. 10 seconds to scan the
smallest of my partitions. And if I use it to index the volumes, it skips
many files. ZSH seems to be the most reliable so far.

	OK, here is the experiment. As soon as I installed ZSH 4.0.6 with Cygwin,
I scanned and indexed the C: drive and it took over 2 minutes! ZSH 3.0.5
for Windows only took 15 seconds! I immediately thought: it must be Cygwin.
It added so many new files that reindexing now takes longer... but 8 times
as long??? So I reindexed the C: drive with 3.0.5 (Windows) again, 15
seconds. 4.0.6 (Cygwin) again, over two minutes. Could 4.0.6 be indexing
lots of files that 3.0.5 was missing? So it is even more accurate? Diff
them. No, exactly the same output. I repeated the test this morning, more
or less the same: 3.0.5 now is taking 20 seconds, and 4.0.6 is taking over
3 minutes!  Computers are fun.

	Sigh... maybe I'll just stick with that 3.0.5 Windows build. It doesn't
support accented characters or colors, but has none of the other problems
I've had with ZSH 4.0.6 and Cygwin...

	Thanks for listening, if anyone actually read this far.

	Luciano Espirito Santo
	Santos, SP - Brasil

<-quote-> **************************************************
On 05/04/03 at 19:52, Thorsten Kampe wrote in 3K:
Assunto/Subject: Re: ZSH on Dos/Windows

>> 	- - Thanks for your helpful comment. But I'd rather not install 50 Mb
>> run environment to use zsh. I certainly use other GNU tools, but a full
>> Cygwin install is not what I want.
>> [Repeat two times, just like Uncle Thorsten]
>Who said something about a "full install", hm? Trust uncle Thorsten - 
>if all you want is zsh, you just have to install zsh (1.3 MB) and 
>cygwin itself (1.1 MB). Oops, I forgot - you'd have to download 
>"setup.exe" (180 KB).

********* END OF ORIGINAL MESSAGE *********</-quote->

Messages sorted by: Reverse Date, Date, Thread, Author