Live data from Hacker News

Fish: Finally, a command line shell for the 90s

ridiculousfish.com

121–130 of 155 posts

Re: Fish: Finally, a command line shell for the 90s

#121

Earlier quoted context omitted.

Obvious joke is obvious, but he could have called it the Unno Fish Shell? Looks interesting. I expect my fingers will be even more confused than ever switching machines now (they've never learned that Alt-3 isn't # on linux or that middle-click isn't paste in Putty)

There's no reason middle-click shouldn't be paste on PuTTY -- it's a configuration option.

That one always bites me at other people's desks; I'd figure out how to reconfigure it if it was mine. But there's always something jarring like that when you switch between similar-but-not-quite-the-same environments.

Re: Fish: Finally, a command line shell for the 90s

#122
I just tried fish for the first time, and it couldn't do the very first thing I tried to do, which was source my .zshrc. It doesn't have 'export', has some kind of nonstandard syntax for 'alias', and that was enough to get me to give up.

Since there are many fish fanboys here, and since it seems like it would be cool if it worked, I'm hoping someone can tell me the simple obvious thing I should have done. Can you help?

Re: Fish: Finally, a command line shell for the 90s

#123

Under the known bugs and issues: History file should apply some kind of maximum history length Fine, but the default needs to be large, like 100MB. Disks are big now. I hope ridiculousfish agrees.

Hi, ridi here!

This bug is actually fixed with my changes (see the release notes at http://ridiculousfish.com/shell/release_notes.html). The maximum history length is now 250k unique items, with an LRU discard policy. A full history would be around 15 MB.

Processing time is one concern. fish doesn't do anything as clumsy as keeping the entire file in memory, but scanning a large history file can still add up.

But the larger concern is writing it out. fish saves its history atomically by writing an entirely new file to disk, and swapping it in. You may not notice a 100 MB file, but you would probably notice a frequent 100 MB write!

Re: Fish: Finally, a command line shell for the 90s

#124

Very poor support for alias: batman@batman ~/D/S/rails> alias foo="cd ~/" fish: Could not expand string '$tmp[2]' /usr/local/share/fish/functions/alias.fish (line 19): set body $tmp[2] ^ in function 'alias', called on standard input, with parameter list 'foo=cd ~/' Makes me wonder what else I'll have to relearn to use fish. Can someone tell me if it's worth the effort? Edit: didn't take me long to find something wors…

It totally worths the effort. It wouldn't take more than an hour, but even if it would take you 10 hours, it would still worth the time.

Could you elaborate? What features do you regularly use? What happens when you log in to a machine that doesn't have fish?

Re: Fish: Finally, a command line shell for the 90s

#125

Earlier quoted context omitted.

There's no reason middle-click shouldn't be paste on PuTTY -- it's a configuration option.

That one always bites me at other people's desks; I'd figure out how to reconfigure it if it was mine. But there's always something jarring like that when you switch between similar-but-not-quite-the-same environments.

i've gotten to the point where i can subconciously key off the window chrome to know how to paste. (half my coworkers use xterm, the other half putty.)

Re: Fish: Finally, a command line shell for the 90s

#126

I just tried fish for the first time, and it couldn't do the very first thing I tried to do, which was source my .zshrc. It doesn't have 'export', has some kind of nonstandard syntax for 'alias', and that was enough to get me to give up. Since there are many fish fanboys here, and since it seems like it would be cool if it worked, I'm hoping someone can tell me the simple obvious thing I should have done. Can you hel…

Shell rc files aren't interoperable. .bashrc, .cshrc, and .zshrc work only with the shells named on the tin.

Re: Fish: Finally, a command line shell for the 90s

#128
post #110

Under the known bugs and issues: History file should apply some kind of maximum history length Fine, but the default needs to be large, like 100MB. Disks are big now. I hope ridiculousfish agrees.

100 MB is indeed small but there are privacy concerns with storing hundreds of thousands of lines of history. Do you really want every command you've typed for the last several years to be visible to anyone with physical access to your box? It could contain clear-text passwords to other machines. I'd be happy with 100 MB as a maximum size but there should also be time-based limits, like remove anything from history t…

Do you really want every command you've typed for the last several years

Yes.

visible to anyone with physical access to your box

Maybe not. That's an auth problem, not a reason to throw away your archives. I keep all my email even though there's probably something in there embarrassing to me given some audience.

Re: Fish: Finally, a command line shell for the 90s

#129
post #89

Under the known bugs and issues: History file should apply some kind of maximum history length Fine, but the default needs to be large, like 100MB. Disks are big now. I hope ridiculousfish agrees.

Disks are big, but I think 100MB is maybe a bit excessive...even 10MB gives you 40k lines of history, at 256 bytes per line, and that is a conservative estimate.

400k lines sounds like less than a lifetime at the terminal. So maybe 200MB would be safer - thanks for the reminder! ;)

Re: Fish: Finally, a command line shell for the 90s

#130

Under the known bugs and issues: History file should apply some kind of maximum history length Fine, but the default needs to be large, like 100MB. Disks are big now. I hope ridiculousfish agrees.

Hi, ridi here! This bug is actually fixed with my changes (see the release notes at http://ridiculousfish.com/shell/release_notes.html ). The maximum history length is now 250k unique items, with an LRU discard policy. A full history would be around 15 MB. Processing time is one concern. fish doesn't do anything as clumsy as keeping the entire file in memory, but scanning a large history file can still add up. But th…

fish saves its history atomically by writing an entirely new file to disk, and swapping it in

That's so you get sync'd histories across one user's logins? Good feature, but I need my history. It's invaluable to me. Still, maybe 250k lines is enough. Is there a way I could bump that up and judge for myself the consequences?

Post reply on HN