onefetch
onefetch copied to clipboard
Allow disabling color codes in the output
Summary 💡
It would be nice to have an option to disable shell color codes and make the output of onefetch easier to parse. For example
[31;1mCommits[0m[39;1m:[0m [39m411[0m
[31;1mChurn (17)[0m[39;1m:[0m [39m.travis.yml 6[0m
[39m …/workflows/build-test.yml 4[0m
is problematic once you want to collect some stats across many repos.
Similar neofetch issue: https://github.com/dylanaraps/neofetch/issues/753
Motivation 🔦
I want to collect repo summaries across many projects.
ls -d * | xargs -I {} onefetch "{}" --no-bots --no-merges --number-of-authors 10 --number-of-file-churns 3 --no-art --no-color-palette --no-bold > summary.txt
produces a file which is difficult to parse without stripping the shell color codes first.
Maybe you could use this option?
-o, --output <FORMAT>
Outputs Onefetch in a specific format
[possible values: json, yaml]
Yeah, as @o2sh said, if you're looking for something machine-readable then you might want to use -o json. That, combined with jq, can help. E.g.
onefetch -o json | jq '.infoFields[].[]'
Though it might be reasonable to reinterpret the --true-color auto|never|always argument to --color auto|true|ansi|never.
ok, -o json is a good workaround.
the --color never or similar option could be a nice addition since one would expect the ability to disable colorization if --color exists. But I am good with json 👍
If you're interested in making a PR for finer color controls, here's an example of how I implemented --color always|ansi|never: https://github.com/spenserblack/gengo/pull/491.