Search
1000 results for “cli_ar”
-
Recently @Schneems wrote a PR for a CLI argument to get machine-readable output from `bundle list`.
https://github.com/rubygems/rubygems/pull/8728
I liked it as an idea, and then about a day later I coincidentally had a use case where it'd come in handy. I hope it gets attention quickly - and merged, of course 😀
-
Bash csh zsh ksh tksh fish are powerful CLI tools
Entire networks can be controlled and build with them.
Let's take for example command line tools to control media output
For me e.g mplayer and vlc -I cli are much more interesting when it comes down to standard control of media playback. I prefer to use MOC (mocp) Music 🎼 on Console, instead of bulky RAM hungry programs, which go on the internet to _fetch data that I never asked for$ and thus burn bandwidth
The memory footprint of Music on Console is so low that you can use it on a system which has been built more than two and a half decades ago.
The only graphical media playback program I know that can do that also has been written by my friend Andy Loafoe and that is alsaplayer
Andy programmed alsaplayer when he saw Delitracker playing on my Amiga systems
We're talking the period when Linux was barely moving in Xwindows when you had window managers like fvwm & twm and few others.
The alsa audio interface was also just born.It is within this context that Andy envisioned alsaplayer. It should be modular just like Delitracker Amiga, it should be lightweight Delitracker runs on an Amiga A500 with just half A megabyte of chip ram
That should still be memory left to do other the things so straight calls were made to widget libraries which explains the simplicity yet great usability of the UI. For as far as I remember Andy has also written an API for AlsaplayerWithin a few weeks to a few months of coding alsaplayer came out of Alpha and went Bèta in code stability.
Because everything was written with efficiency in mind and it was programmed as portable as possible, alsaplayer can still be used many decades after It has been written
One of the main reasons is that it has been coded by a command line programmer
Alsaplayer has been ported to many different Operating System Architectures including freeBSD
For me working on the command line has always been logical, graphic user interfaces were only used when absolutely necessary think about GEOS on the C64
I started coding on the Casio FX 700p programmable calculator. I went so far to make program code that was in the book more efficient by crunching all the commands with two letter abbreviations.
The power of the Command Line something the Young Ones should Learn
Alsaplayer manpage
#programming #Bash #csh #zsh #ksh #tksh #fish #alsaplayer #MOC #mocp #VLC #widgets #libraries #Amiga #RetroComputing
-
If you’re using #Python’s #argparse module to parse CLI arguments and want to have `--foo` and `--no-foo` flags, check out `action=argparse.BooleanOptionalAction`, which automatically creates `--no-foo` for you: https://docs.python.org/3/library/argparse.html#action
parser.add_argument('--foo', action=argparse.BooleanOptionalAction)
Requires 3.9 though. Simple solution for 3.8:
parser.add_argument('--foo', action='store_true')
parser.add_argument('--no-foo', dest='foo', action='store_false')
parser.set_defaults(foo=True) -
Is there anything better than "Free Download Manager" these days (kinda dislike their GUI since they changed it from the v3.9.7 one)
to get downloads from the browser automatically pushed into another tool that can do resumption and all (esp. when downloading multiple >20gb files/images).On the CLI aria2 + yt-dlp kinda works, but I haven't seen a browser plugin that would automatically intercept and forward downloads (esp. the javascript triggered ones).
-
Day 37 of learning Rust as a C# dev:
Parsing CLI arguments with clap is clean, fast, and surprisingly fun.
Add a little match, sprinkle in some ?, and boom, real logic.Here’s what I built:
https://woodruff.dev/parsing-arguments-and-writing-logic/ -
Day 37 of learning Rust as a C# dev:
Parsing CLI arguments with clap is clean, fast, and surprisingly fun.
Add a little match, sprinkle in some ?, and boom, real logic.Here’s what I built:
https://woodruff.dev/parsing-arguments-and-writing-logic/ -
Day 37 of learning Rust as a C# dev:
Parsing CLI arguments with clap is clean, fast, and surprisingly fun.
Add a little match, sprinkle in some ?, and boom, real logic.Here’s what I built:
https://woodruff.dev/parsing-arguments-and-writing-logic/ -
Day 37 of learning Rust as a C# dev:
Parsing CLI arguments with clap is clean, fast, and surprisingly fun.
Add a little match, sprinkle in some ?, and boom, real logic.Here’s what I built:
https://woodruff.dev/parsing-arguments-and-writing-logic/ -
Day 37 of learning Rust as a C# dev:
Parsing CLI arguments with clap is clean, fast, and surprisingly fun.
Add a little match, sprinkle in some ?, and boom, real logic.Here’s what I built:
https://woodruff.dev/parsing-arguments-and-writing-logic/ -
There was a lack of a decent web based leaderboard so I wrote one in python and got up to speed on publishing to pypi properly. It's a nice minimal example of publishing a single python file to an installable command.
-
Topiary; Channel Your Inner Tweag
Mixing it up a bit due to the chaos that is my new “normal”. Along with a mission (at the end), you also get a new resource to play with!
Time to dig into today’s assignment.
Type your email…
Subscribe
Topiary
Photo by Yelena Odintsova on Pexels.comTopiary is a Rust-based universal source formatter that is a member of the Tree-sitter ecosystem and aims to be a uniform formatter for simple languages. It’s named after the art of shaping plants into pleasing forms, and just like its namesake (i.e., Topiary shapes your code into a more readable and aesthetically pleasing form).
By leveraging Tree-sitter, Topiary can format code by understanding its syntax tree. This means it’s not just blindly applying text transformations; it deliberately reshapes code based on syntactic structure.
You don’t even have to install it to use it! Try the online playground before polluting your pristine system with yet-another binary.
Channeling Your Inner Tweag
Photo by MART PRODUCTION on Pexels.comBack in Q3 of 2023, Tweag blogged about their revamping of the UX of the Topiary CLI. Yes, CLI tools 100% have UX concerns, and Topiary’s UX was as mundane and sub-par as many tools you likely use on the regular.
In the article, they discuss the challenges and improvements. Some core issues prior to the revamp include:
- Simplicity: Common tasks were difficult to perform due to the combinatorial explosion of flags, options, and modifiers.
- Memorability: It was difficult to remember all the different options.
- Discoverability: The CLI did not effectively guide users towards the full range of possible actions.
- Familiarity: Users had to resort to guessing due to the lack of common idioms.
- Clarity: The output was not always clear, making it difficult to understand the results.
To address these issues, the following improvements were made:
- Make illegal states un-representable: Using Rust’s type system and the
claplibrary, the CLI was redesigned to forbid invalid input. - Separate modes of operation: Formatting and visualization were separated into distinct sub-commands, making the CLI more intuitive.
- Make use of familiar idioms: The CLI was updated to follow common behaviors and idioms found in other CLI tools.
- Make common tasks easy and unsurprising: The CLI was designed to make common tasks simple and predictable, while still allowing for customization.
- Don’t paint yourself into a corner: The CLI was designed to be flexible and not limit future development or user expectations.
These changes were implemented in Topiary v0.3.
Please digest the linked article as they explain things quite well, especially when emphasizing the “why”.
Your Mission
Photo by Monstera Production on Pexels.comWe’ve asked you to make some CLIs over these ~400 Drops, and you likely have your own, personal tools you maintain.
Use the principles provided by Tweag — and many of the articles we’ve read on command-line completion, CLI argument parsing, and manual page building — to level-up at least one CLI tool of yours over the weekend. Your future self will look back fondly on this time well spent.
Type your email…
Subscribe
FIN
Remember, you can follow and interact with the full text of The Daily Drop’s free posts on Mastodon via
@[email protected]☮️https://dailydrop.hrbrmstr.dev/2024/01/12/drop-404-2024-01-12-weekend-project-edition/
-
Bash csh zsh ksh tksh fish are powerful
Entire networks can be controlled and build with them.
Let's take for example command line tools to control media output
For me e.g mplayer and vlc -I cli are much more interesting when it comes down to standard control of media playback. I prefer to use MOC (mocp) Music 🎼 on Console, instead of bulky RAM hungry programs, which go on the internet to fetch data that I never asked for and thus burn bandwidth
The memory footprint of Music on Console is so low that you can use it on a system which has been built more than two and a half decades ago.
The only graphical media playback program I know that can do that also has been written by my friend Andy Loafoe and that is alsaplayer
Andy programmed alsaplayer when he saw Delitracker playing on my Amiga systems
We're talking the period when Linux was barely moving in Xwindows when you had window managers like fvwm twm and few others.
The alsa audio interface was also just Born.It is within this context that Andy envisioned alsaplayer. It should be modular just like delitracker Amiga, it should be lightweight daily tracker runs on an Amiga 500 with just half A megabyte of chip ram
That should still be memory left to do other the things so straight calls were made to widget libraries.Within a few weeks to a few months of coding alsaplayer came out of Alpha and went Bèta in code stability.
Because everything was written with efficiency in mind and it was programmed as portable as possible, alsaplayer can still be used many decades after It has been written, one of the main reasons is that it has been coded by a command line programmer
#programming #Bash #csh #zsh #ksh #tksh #fish #alsaplayer #MOC #mocp #VLC #widgets #libraries
-
Bash csh zsh ksh tksh fish are powerful
Entire networks can be controlled and build with them.
Let's take for example command line tools to control media output
For me e.g mplayer and vlc -I cli are much more interesting when it comes down to standard control of media playback. I prefer to use MOC (mocp) Music 🎼 on Console, instead of bulky RAM hungry programs, which go on the internet to fetch data that I never asked for and thus burn bandwidth
The memory footprint of Music on Console is so low that you can use it on a system which has been built more than two and a half decades ago.
The only graphical media playback program I know that can do that also has been written by my friend Andy Loafoe and that is alsaplayer
Andy programmed alsaplayer when he saw Delitracker playing on my Amiga systems
We're talking the period when Linux was barely moving in Xwindows when you had window managers like fvwm twm and few others.
The alsa audio interface was also just Born.It is within this context that Andy envisioned alsaplayer. It should be modular just like delitracker Amiga, it should be lightweight daily tracker runs on an Amiga 500 with just half A megabyte of chip ram
That should still be memory left to do other the things so straight calls were made to widget libraries.Within a few weeks to a few months of coding alsaplayer came out of Alpha and went Bèta in code stability.
Because everything was written with efficiency in mind and it was programmed as portable as possible, alsaplayer can still be used many decades after It has been written, one of the main reasons is that it has been coded by a command line programmer
#programming #Bash #csh #zsh #ksh #tksh #fish #alsaplayer #MOC #mocp #VLC #widgets #libraries
-
Bash csh zsh ksh tksh fish are powerful
Entire networks can be controlled and build with them.
Let's take for example command line tools to control media output
For me e.g mplayer and vlc -I cli are much more interesting when it comes down to standard control of media playback. I prefer to use MOC (mocp) Music 🎼 on Console, instead of bulky RAM hungry programs, which go on the internet to fetch data that I never asked for and thus burn bandwidth
The memory footprint of Music on Console is so low that you can use it on a system which has been built more than two and a half decades ago.
The only graphical media playback program I know that can do that also has been written by my friend Andy Loafoe and that is alsaplayer
Andy programmed alsaplayer when he saw Delitracker playing on my Amiga systems
We're talking the period when Linux was barely moving in Xwindows when you had window managers like fvwm twm and few others.
The alsa audio interface was also just Born.It is within this context that Andy envisioned alsaplayer. It should be modular just like delitracker Amiga, it should be lightweight daily tracker runs on an Amiga 500 with just half A megabyte of chip ram
That should still be memory left to do other the things so straight calls were made to widget libraries.Within a few weeks to a few months of coding alsaplayer came out of Alpha and went Bèta in code stability.
Because everything was written with efficiency in mind and it was programmed as portable as possible, alsaplayer can still be used many decades after It has been written, one of the main reasons is that it has been coded by a command line programmer
#programming #Bash #csh #zsh #ksh #tksh #fish #alsaplayer #MOC #mocp #VLC #widgets #libraries
-
Bash csh zsh ksh tksh fish are powerful
Entire networks can be controlled and build with them.
Let's take for example command line tools to control media output
For me e.g mplayer and vlc -I cli are much more interesting when it comes down to standard control of media playback. I prefer to use MOC (mocp) Music 🎼 on Console, instead of bulky RAM hungry programs, which go on the internet to fetch data that I never asked for and thus burn bandwidth
The memory footprint of Music on Console is so low that you can use it on a system which has been built more than two and a half decades ago.
The only graphical media playback program I know that can do that also has been written by my friend Andy Loafoe and that is alsaplayer
Andy programmed alsaplayer when he saw Delitracker playing on my Amiga systems
We're talking the period when Linux was barely moving in Xwindows when you had window managers like fvwm twm and few others.
The alsa audio interface was also just Born.It is within this context that Andy envisioned alsaplayer. It should be modular just like delitracker Amiga, it should be lightweight daily tracker runs on an Amiga 500 with just half A megabyte of chip ram
That should still be memory left to do other the things so straight calls were made to widget libraries.Within a few weeks to a few months of coding alsaplayer came out of Alpha and went Bèta in code stability.
Because everything was written with efficiency in mind and it was programmed as portable as possible, alsaplayer can still be used many decades after It has been written, one of the main reasons is that it has been coded by a command line programmer
#programming #Bash #csh #zsh #ksh #tksh #fish #alsaplayer #MOC #mocp #VLC #widgets #libraries
-
#ReleaseFriday — New version 3.1.0 of the recently talked about https://thi.ng/args package, a declarative & functional CLI argument parser & app framework. I updated the arg specifications to be fully self-describing & serializable (with minor exceptions), and streamlined the API for factory functions to define the specs.
Why is this useful? For example, now I can (already have!) implemented a CLI as separate short-lived client/process which only acts as RPC frontend/proxy for the actual CLI commands defined & executed in a long running app server, which is heavily based on a plugin architecture. Each plugin can contribute any number of CLI commands, each with its own set of args/options... When the CLI client app is launched, it first retrieves a list of these registered commands and all their options from the server, then uses the https://thi.ng/args CLI framework to select the right command, validate its options or display formatted usage info. If all is ok, the command is then triggered via an HTTP request to the app server, executes there and the command's log messages are send back as response...
#ThingUmbrella #CLI #RPC #TypeScript #JavaScript #OpenSource #SoftwareArchitecture
-
#ReleaseFriday — New version 3.1.0 of the recently talked about https://thi.ng/args package, a declarative & functional CLI argument parser & app framework. I updated the arg specifications to be fully self-describing & serializable (with minor exceptions), and streamlined the API for factory functions to define the specs.
Why is this useful? For example, now I can (already have!) implemented a CLI as separate short-lived client/process which only acts as RPC frontend/proxy for the actual CLI commands defined & executed in a long running app server, which is heavily based on a plugin architecture. Each plugin can contribute any number of CLI commands, each with its own set of args/options... When the CLI client app is launched, it first retrieves a list of these registered commands and all their options from the server, then uses the https://thi.ng/args CLI framework to select the right command, validate its options or display formatted usage info. If all is ok, the command is then triggered via an HTTP request to the app server, executes there and the command's log messages are send back as response...
#ThingUmbrella #CLI #RPC #TypeScript #JavaScript #OpenSource #SoftwareArchitecture
-
#ReleaseFriday — New version 3.1.0 of the recently talked about https://thi.ng/args package, a declarative & functional CLI argument parser & app framework. I updated the arg specifications to be fully self-describing & serializable (with minor exceptions), and streamlined the API for factory functions to define the specs.
Why is this useful? For example, now I can (already have!) implemented a CLI as separate short-lived client/process which only acts as RPC frontend/proxy for the actual CLI commands defined & executed in a long running app server, which is heavily based on a plugin architecture. Each plugin can contribute any number of CLI commands, each with its own set of args/options... When the CLI client app is launched, it first retrieves a list of these registered commands and all their options from the server, then uses the https://thi.ng/args CLI framework to select the right command, validate its options or display formatted usage info. If all is ok, the command is then triggered via an HTTP request to the app server, executes there and the command's log messages are send back as response...
#ThingUmbrella #CLI #RPC #TypeScript #JavaScript #OpenSource #SoftwareArchitecture
-
#ReleaseFriday — New version 3.1.0 of the recently talked about https://thi.ng/args package, a declarative & functional CLI argument parser & app framework. I updated the arg specifications to be fully self-describing & serializable (with minor exceptions), and streamlined the API for factory functions to define the specs.
Why is this useful? For example, now I can (already have!) implemented a CLI as separate short-lived client/process which only acts as RPC frontend/proxy for the actual CLI commands defined & executed in a long running app server, which is heavily based on a plugin architecture. Each plugin can contribute any number of CLI commands, each with its own set of args/options... When the CLI client app is launched, it first retrieves a list of these registered commands and all their options from the server, then uses the https://thi.ng/args CLI framework to select the right command, validate its options or display formatted usage info. If all is ok, the command is then triggered via an HTTP request to the app server, executes there and the command's log messages are send back as response...
#ThingUmbrella #CLI #RPC #TypeScript #JavaScript #OpenSource #SoftwareArchitecture
-
@davetron5000 @budu @pragprog Sorry it's out of print. Some tech books have a limited lifespan, although @OReillyMedia sometimes keeps "generally useful but potentially outdated" stuff available for a long time, e.g. I think they still have the original Ruby book from Matz available, which was written for #RubyLang 1.8 or 1.9 and isn't fully applicable to Ruby 3.2.2. 🤷
#CLI argument parsing can be challenging no matter what you use. #Fishshell #argparse has a lot of limitations cf. GNU #getopt.
-
🦖Day 82 of the @velocidex #velociraptor #ArtifactsOfAutumn series
Artifact: Exchange.Linux.Forensics.RecentlyUsed
Author: @rxurien
Link: https://docs.velociraptor.app/exchange/artifacts/pages/linux.forensics.recentlyused
----
For GNOME-based desktop environments, the '.local/share/recently-used.xbel' file located under each user's home directory can provide valuable information during an investigation, such as a list of recent files accessed by applications, as well as a source of download history.
----
This artifact uses the parse_xml() function to parse the XML-based 'recently-used.xbel' file.
https://docs.velociraptor.app/vql_reference/parsers/parse_xml
----
This information provided by this artifact includes:
- Associated user
- File that was referenced by the application
- Time added, modified, and last visited
- MIME Type
- Application name and CLI arguments/parameters
- Relevant 'recently-used.xbel' file----
That's it for now! Stay tuned to learn about more artifacts! 🦖
If you would like to learn more about this technique and others, check out the links below!
-
Here's a #TypeScript API design challenge I'm working on: adding async support to #Optique (CLI argument parser) without breaking the existing sync API.
The tricky part is combinators—when you compose parsers with
object()oror(), the combined parser should automatically become async if any child parser is async, but stay sync if all children are sync. This “mode propagation” needs to work at both type level and runtime.I've prototyped two approaches and documented findings. If you've tackled similar dual-mode API designs, I'd love to hear how you approached it.
-
#ReleaseFriday — New version 3.1.0 of the recently talked about https://thi.ng/args package, a declarative & functional CLI argument parser & app framework. I updated the arg specifications to be fully self-describing & serializable (with minor exceptions), and streamlined the API for factory functions to define the specs.
Why is this useful? For example, now I can (already have!) implemented a CLI as separate short-lived client/process which only acts as RPC frontend/proxy for the actual CLI commands defined & executed in a long running app server, which is heavily based on a plugin architecture. Each plugin can contribute any number of CLI commands, each with its own set of args/options... When the CLI client app is launched, it first retrieves a list of these registered commands and all their options from the server, then uses the https://thi.ng/args CLI framework to select the right command, validate its options or display formatted usage info. If all is ok, the command is then triggered via an HTTP request to the app server, executes there and the command's log messages are send back as response...
#ThingUmbrella #CLI #RPC #TypeScript #JavaScript #OpenSource #SoftwareArchitecture
-
#VSCode is useless.
#CSharp DevKit doesn't support passing debug CLI arguments.
When using #DotNet CoreCLR launch tasks, I need to create a build tasks.json-entry for each debug target.
This is stupid.
Why can't the #CSharpDevKit support custom launch args?
Why are issues from 2017 still open, requesting the ability to pass build-args to preLaunchTask? -
I'm very pleased to announce that version 25.1.0 of jinjanator has been published today.
This release includes a community contribution which adds support for the '--filters', '--tests', and '--customize' CLI arguments from 'j2cli'. This should make it much easier for j2cli, and jinja2-cli, users to migrate to jinjanator.
Also, I'm gratified to see that jinjanator is being downloaded more than 250,000 times per month (which probably means it is being used in a large number of automated CI workflows)!
-
As part of a continuing work in progress, but `clipng` is a Swift/Argument Parser wrapper around a Swift wrapper for libpng that will generate a png with random(*) pixels on Ubuntu or MacOS.
* Default system random.
TODO: Import pixels values from the Champixel region of the CPU, for the truly bespoke pixel needs.
-
https://www.europesays.com/ie/484371/ Moonrepo Releases Moon v2.0 with WASM Plugin Toolchains and Overhauled CLI #Arts #ArtsAndDesign #ArtsAndDesign #ArtsDesign #Design #Development #Éire #Entertainment #IE #Ireland #JSON #Moonrepo2Release #Repository #WebDevelopment
-
Added new release v1.2.0 to flipper0-badUSB-linux-tester; Test your Flipper Zero BadUSB DuckyScripts without uploading payload into device
Now with more nice and consistent cli arguments.
🤔 pondering about add a new feature to compose DukyScripts based on other template scripts.
Something like:
```
REM This is an example of external script
EDS <open_terminal.txt>STRING echo "The world is all that is the case"
```and on open_terminal.txt content:
```
REM try to find and open a terminal
STRINGLN sh -c "xdg-terminal-exec||kgx||ptyxis||gnome-terminal||mate-terminal||xfce4-terminal||tilix||konsole||xterm||wezterm-gui"DELAY 500
```So it will create a new duckyScript based on small templates script, then test it locally and later upload it the duckyScript to flipperZero for definitive testing.
What do you think?
-
Готовим скрипт на Bash и упаковываем в AUR
В статье я рассказываю, как из набора команд ( free , df , ip , ps , uptime ) собрать CLI‑утилиту на Bash, добавить аргументы, цветовую индикацию и упаковать всё в AUR как пакет system-monitor Заглянуть под капот
https://habr.com/ru/articles/982022/
#bash #linux #cli #arch #системное_администрирование #опенсорс #shell #shell_scripting #aur #monitoring