argparse
ripgrep
argparse | ripgrep | |
---|---|---|
8 | 348 | |
2,379 | 45,040 | |
- | - | |
8.3 | 9.3 | |
2 days ago | 11 days ago | |
C++ | Rust | |
MIT License | The Unlicense |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
argparse
-
Command line interface library
The most feature-rich C++ CLI library is CLI11. Other popular choices include Boost.ProgramOptions, argparse, cxxopts and others.
-
arg_router v1.2.0 - Thanks for all your feedback!
It was noted by u/k1lk1 that it wasn't entirely obvious what the benefits of this library are, so I'll compare arg_router to argparse, with a simple but common example.
-
What do you need to do to build a Linux terminal app for distribution?
You're looking for an argument parsing library. There are tons of these. My favorite is the excelent Rust crate called clap. For C++, the argparse library is a decent option.
- argparse v2.9 released - now with support for subcommands, nargs, prefix_chars, metavar, parse_known_args, improved help messages and more
-
palpatine Release1.0
p-ranav/argparse - A single-file header-only C++11 library for parsing command line arguments.
-
palpatine and rwar
I tried to make the code modular as much as possible. However, in main.cpp I have used the argparse and termcolor along with the main function. As Sam, pointed out, it would be a good idea to move them to a separate file and import them in main.cpp.
-
Looking for some small rust projects with an elegant code base that I can study.
argparse is another good one. Templated (delicious), tested, AND has conan and debian package deployment.
-
How I Create - Github Token Manager
argparse ➜ repository
ripgrep
-
Ask HN: What software sparks joy when using?
ripgrep - https://github.com/BurntSushi/ripgrep
-
Code Search Is Hard
Basic code searching skills seems like something new developers are never explicitly taught, but which is an absolutely crucial skill to build early on.
I guess the knowledge progression I would recommend would look something kind this:
- Learning about Ctrl+F, which works basically everywhere.
- Transitioning to ripgrep https://github.com/BurntSushi/ripgrep - I wouldn't even call this optional, it's truly an incredible and very discoverable tool. Requires keeping a terminal open, but that's a good thing for a newbie!
- Optional, but highly recommended: Learning one of the powerhouse command line editors. Teenage me recommended Emacs; current me recommends vanilla vim, purely because some flavor of it is installed almost everywhere. This is so that you can grep around and edit in the same window.
- In the same vein, moving back from ripgrep and learning about good old fashioned grep, with a few flags rg uses by default: `grep -r` for recursive search, `grep -ri` for case insensitive recursive search, and `grep -ril` for case insensitive recursive "just show me which files this string is found in" search. Some others too, season to taste.
- Finally hitting the wall with what ripgrep can do for you and switching to an actual indexed, dedicated code search tool.
-
Level Up Your Dev Workflow: Conquer Web Development with a Blazing Fast Neovim Setup (Part 1)
live grep: ripgrep
- Ripgrep
-
Modern Java/JVM Build Practices
The world has moved on though to opinionated tools, and Rust isn't even the furthest in that direction (That would be Go). The equivalent of those two lines in Cargo.toml would be this example of a basic configuration from the jacoco-maven-plugin: https://www.jacoco.org/jacoco/trunk/doc/examples/build/pom.x... - That's 40 lines in the section to do the "defaults".
Yes, you could add a load of config for files to include/exclude from coverage and so on, but the idea that that's a norm is way more common in Java projects than other languages. Like here's some example Cargo.toml files from complicated Rust projects:
Servo: https://github.com/servo/servo/blob/main/Cargo.toml
rust-gdext: https://github.com/godot-rust/gdext/blob/master/godot-core/C...
ripgrep: https://github.com/BurntSushi/ripgrep/blob/master/Cargo.toml
socketio: https://github.com/1c3t3a/rust-socketio/blob/main/socketio/C...
-
Ugrep – a more powerful, ultra fast, user-friendly, compatible grep
I'm not clear on why you're seeing the results you are. It could be because your haystack is so small that you're mostly just measuring noise. ripgrep 14 did introduce some optimizations in workloads like this by reducing match overhead, but I don't think it's anything huge in this case. (And I just tried ripgrep 13 on the same commands above and the timings are similar if a tiny bit slower.)
[1]: https://github.com/radare/ired
[2]: https://github.com/BurntSushi/ripgrep/discussions/2597
- Tell HN: My Favorite Tools
-
Potencializando Sua Experiência no Linux: Conheça as Ferramentas em Rust para um Desenvolvimento Eficiente
Explore o Ripgrep no repositório oficial: https://github.com/BurntSushi/ripgrep
-
Scrybble is the ReMarkable highlights to Obsidian exporter I have been looking for
🔎🗃️ ripgrep or ugrep (search fast, use regex patterns or fuzzy search, pipe output to bash/zsh shell for further processing V coloring)
- RFC: Add ngram indexing support to ripgrep (2020)
What are some alternatives?
command-line-rust - Code for Command-Line Rust (O'Reilly, 2022, ISBN 9781098109417) https://learning.oreilly.com/library/view/command-line-rust/9781098109424/
telescope-live-grep-args.nvim - Live grep with args
flag - Flag is a simple but powerful command line option parsing library for Go support infinite level subcommand
fd - A simple, fast and user-friendly alternative to 'find'
go-arg - Struct-based argument parsing in Go
ugrep - ugrep 5.1: A more powerful, ultra fast, user-friendly, compatible grep. Includes a TUI, Google-like Boolean search with AND/OR/NOT, fuzzy search, hexdumps, searches (nested) archives (zip, 7z, tar, pax, cpio), compressed files (gz, Z, bz2, lzma, xz, lz4, zstd, brotli), pdfs, docs, and more
CLI11 - CLI11 is a command line parser for C++11 and beyond that provides a rich feature set with a simple and intuitive interface.
the_silver_searcher - A code-searching tool similar to ack, but faster.
linuxdeployqt - Makes Linux applications self-contained by copying in the libraries and plugins that the application uses, and optionally generates an AppImage. Can be used for Qt and other applications
fzf - :cherry_blossom: A command-line fuzzy finder
clip - Cross-platform C++ library to copy/paste clipboard content
alacritty - A cross-platform, OpenGL terminal emulator.