4 ms·
I used a similar wrapper for years before I wrote ripgrep. But now all of those wrappers are gone because ripgrep covers all of their use cases (and then some).
by burntsushi 2y ago
I used a similar wrapper for years before I wrote ripgrep. But now all of those wrappers are gone because ripgrep covers all of their use cases (and then some). I'm not a newb and I don't really care about glitter. So I don't know where you're getting your condescension from personally.
GNU grep discards the Unix philosophy in all sorts of places too. Like, why does it even bother with a -r flag in the first place? Did people back then not know how to use xargs either? I mean, POSIX knew not to include it[1], so what gives?
What's actually happening here is that what matters is the user experience, and the Unix philosophy is a means, not an end, to improve the user experience. It's a heuristic. A rule of thumb to enable composition. But it doesn't replace good judgment. Sometimes you want a little more Unix and sometimes you want a little less.
Besides, you can drop ripgrep into a shell pipeline just like you would grep. All that Unix-y goodness is still there.
[1]: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/grep.html https://pubs.opengroup.org/onlinepubs/9699919799/utilities/g...
- BoingBoomTschak 2y ago> GNU grep discards the Unix philosophy in all sorts of places too. Who ever claimed that GNU was a proponent of the UNIX philosophy? Certainly not me. > What's actually happening here is that what matters is the user experience, and the Unix philosophy is a means, not an end, to improve the user experience Yes and no. The expression "user experience" implies that all users are the same and benefit from the same philosophy of software interface design. > Besides, you can drop ripgrep into a shell pipeline just like you would grep. All that Unix-y goodness is still there. The "Unix-y goodness" isn't only defined by what it can do, but also what it can't do. I don't want to turn this into a suckless rant, so I won't. Also, not having a mode giving it POSIX grep compatibility really flies in the face of that claim: I want my scripts to work on BSD, MacOS and even Solaris/AIX without having to install stuff. ------ I know I may sound very smug but believe me when I say that I really like some of these utils and the care put into them (and I know you're the author of ripgrep) and that I'm no UNIX OpenBSD user (Plan 9 exists for a reason, and I favor CL over C/Go any time of the day). But I really see them as optimizing for/targeting the VSCode/Zed crowd, instead of the vim/emacs one, if you know what I mean.
- burntsushi 2y agoOK, so you phrased your criticism very narrowly toward "lots of these Rust CLI tools," but in actuality, your criticism applies way more broadly than that. Likely to just about all of GNU's tooling, for example. And probably BSD's and busybox's tooling too. Even busybox isn't above implementing POSIX+some, and AFAIK none of them provide a strict "POSIX only" mode. Which is fine, but now your position is more "old man yelling at clouds" than it is something specific about the Rust tools. (And to be clear, I'm not above yelling at clouds now and then.) > Also, not having a mode giving it POSIX grep compatibility really flies in the face of that claim No... it doesn't? ripgrep being compatible with the Unix philosophy is not the same as it being POSIX compatible. I didn't say you could use ripgrep in any place you could use grep in a drop-in compatible way. I said you could use it in shell pipelines. As in, it inter-operates with other tooling in a Unix-y way. And besides, I don't know of any grep that has such a mode. How do you know you aren't using a grep flag that isn't available in other grep implementations? > But I really see them as optimizing for/targeting the VSCode/Zed crowd, instead of the vim/emacs one, if you know what I mean. Nope, I don't. I've been a vim (now neovim) user for decades. And neovim even uses ripgrep by default over grep if it's installed.
- oguz-ismail 2y ago[flagged]
- burntsushi 2y agoA tool doesn't need to support locales to be used in a shell pipeline. The Unix philosophy and shell pipelines were born long before POSIX locales. I even specifically contrasted this with POSIX compatibility. So it seems to me like you're disingenuously interpreting my words at this point. @dang more trolling
- oguz-ismail 2y ago[flagged]