On Sun, 2 Jan 2005, Gregory Seidman wrote:
AFAICT, zsh and tcsh are pretty nearly equally good, for some definition of good. If I were willing to put the effort into it, I expect I could port all of my tcsh shell customizations to zsh without compromising any of the features I have grown used to. A quick look at its man page seems to indicate that it has a superset of tcsh's features (n.b. that's features, not syntax).
I second this. I switched to zsh some time ago, and it's quite spiffy. It "feels" similar to tcsh in interactive use. Some of the cooler, more advanced features require Deep Knowledge that I mostly haven't acquired. (Haven't wrapped my head around "styles", for one.) A few things I've noted in my own use:
* The completion system is very good, and smart completions for many different commands are standard. I think you can get write a completion to get zsh to feed your fish, but that requires knowledge of styles.
* Prompt setup is even better than tcsh's (which is pretty good).
* Complex aliases can be made into shell functions.
* You can now do "VAR=value command" to set a variable for just the one command, like everybody else in the world does. <grin>
* You can bind keys to scripts that manipulate the command line you're currently editing. One keystroke pops me into vi where I can edit, quit, and run my edited command.
* push-line: you're typing up a fairly complex find command, and you suddenly can't recall if find on this machine has -regex. Just hit Ctrl-Q, and you've got a new, blank command-line whence you can run man find. When you're done with man (actually, the next time zsh displays a prompt), your find command is back, with your cursor right where you left it.
* bash-style process substitution: diff =(sort file1) =(sort file2) instead of: sort file1 > file1.sorted sort file2 > file2.sorted diff file1 file2
- Aaron
-- Aaron Hall : Actually, it's a buck-and-a-quarter quarterstaff. [EMAIL PROTECTED] : But I'm not telling *him* that!
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]