Hacker News new | ask | show | jobs
by simias 2108 days ago
FZF is amazing and I highly recommend it as well, but this project seems to go beyond what FZF provides.

This bit in particular:

    curl https://api.github.com/repos/elves/elvish/issues |
     from-json | all (one) |
     each [issue]{ echo $issue[number]: $issue[title] } |
     head -n 11
That being said I'm still not willing to switch to a non-standard shell syntax, too difficult to use third party servers after that.

Also un*x shells are inherently limited by the underlying concept of pipes exchanging only byte streams with no metadata or higher level constructs. You can hack your way around that (as this project seems to be doing) but it's always going to be kludgy. In particular you can't expect any third-party command to play by your rules.

3 comments

Eh, last time I messed with I lost interest after noting that from-json | to-json would silently convert all numbers into quoted strings and do terrible things when nil was involved. It made non-trivial JSON manipulation not worth it. They might have fixed it by now.
Yes, Elvish now has a dedicated number type, so conversation from JSON is now lossless.
Excellent -- nil handling work as well?
Yes, Elvish's $nil maps to JSON's null.
presumably you can get jq to do something similar, well enough for 95% of the time, which is the issue. like you, i'm not saying new shells don't have a place, but adoption is really the problem.

you can get around this if the features are compelling enough. personally, i like fish. certainly, it was a rough adoption curve, but worth it IMO so i can stop setting up and tweaking zsh, plus the built-in auto-complete is fzf-ish enough for me. and i'm told people use powershell even on non-Windows systems. it's just a very tough sell.

> too difficult to use third party servers after that

Just "scp" the binary to the server and you're good to go :)

Yeah this one of the selling points, IMO. It's a gigantic Go static executable and easily available for a wide variety of architectures.