xflags | config | |
---|---|---|
6 | 7 | |
73 | 79 | |
- | - | |
5.2 | 9.4 | |
about 1 month ago | about 15 hours ago | |
Rust | Rust | |
Apache License 2.0 | - |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
xflags
Posts with mentions or reviews of xflags.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-11.
-
Started using Rust for scripting
3) xflags is my preferred way to parse CLI arguments for such scripts. It's not good at all, but, for me, it's the best for the task at the moment.
- Announcement: xflags 3.0.0
-
pico-args: An ultra simple CLI arguments parser with 0 dependencies
You might like xflags. It has a similar design philosophy, but is willing to compromise on simplicity a bit to get auto-generated help.
-
Announcement: xflags, fast-to-compile proc macro for cli args
See also https://github.com/matklad/xflags/issues/3
-
Argument parsers that don't choke on invalid unicode
Added https://github.com/matklad/xflags/blob/master/examples/non-utf8.rs.
config
Posts with mentions or reviews of config.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-10-24.
- Unified versus Split Diff
-
[MEDIA] Kanata: improve your keyboard comfort. Now with a logo, miette errors, and more features (v1.3.0-prerelease-1)
I actually quite like the config, seems intuitive! Though, I am comparing it to this abomination, so I might have low expectations here :-)
-
Started using Rust for scripting
4) For scripts you put for everyday use in ~/bin, I've found busybox style multipurpose binary invaluable. You put all your scripts into a single Rust binary, and than hard-link this binary under different names in PATH, so that the first argv is actually the name of subcommand. Here's how the infra works for my scripts, and here's an example script.
- Rust as bash scripting replacement?
-
Are there tools for a more granular benchmarking experience?
1) Invest into application-level profiling, using tracing::span! for collection and something like tracing_tracy or tracing_span_tree for visualization. This should give you high-level logical profile. 2) If on Linux, learn a bare minimum of perf for collecting data (the extent of my knowledge about perf is basically this script https://github.com/matklad/config/blob/master/tool/src/prf.rs). Use neither flamegraph.pl nor cargo flamegraph for visualization, use https://profiler.firefox.com/ instead.
- rust-analyzer changelog #89
-
What you don't like about Rust?
And, while a spam links, here’s a link with more links: https://github.com/matklad/config/blob/master/links.adoc
What are some alternatives?
When comparing xflags and config you can also consider the following projects:
pico-args - An ultra simple CLI arguments parser.
bacon - background rust code check
argh - Rust derive-based argument parsing optimized for code size
nomicon - The Dark Arts of Advanced and Unsafe Rust Programming
getargs - A truly zero-cost argument parser for Rust
pale-fire - Port of Emacs Zenburn theme to VS Code
lexopt - Minimalist pedantic command line parser
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.