All Projects → argparse4j → Argparse4j

argparse4j / Argparse4j

Licence: other
Java port of Python's famous argparse command-line argument parser.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Argparse4j

Goaccess
GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems or through your browser.
Stars: ✭ 14,096 (+6742.72%)
Mutual labels:  command-line
Zoxide
A smarter cd command. Supports all major shells.
Stars: ✭ 4,422 (+2046.6%)
Mutual labels:  command-line
Miniserve
🌟 For when you really just want to serve some files over HTTP right now!
Stars: ✭ 2,894 (+1304.85%)
Mutual labels:  command-line
Gcli
🖥 Go CLI application, tool library, running CLI commands, support console color, user interaction, progress display, data formatting display, generate bash/zsh completion add more features. Go的命令行应用,工具库,运行CLI命令,支持命令行色彩,用户交互,进度显示,数据格式化显示,生成bash/zsh命令补全脚本
Stars: ✭ 188 (-8.74%)
Mutual labels:  command-line
Facebash
Facebook Brute Forcer in shellscript using TOR
Stars: ✭ 195 (-5.34%)
Mutual labels:  command-line
Ruplacer
Find and replace text in source files
Stars: ✭ 201 (-2.43%)
Mutual labels:  command-line
Dep
A little Node.js dependency installer
Stars: ✭ 186 (-9.71%)
Mutual labels:  command-line
Gpymusic
Google Py Music: A simple TUI client for Google Play Music
Stars: ✭ 204 (-0.97%)
Mutual labels:  command-line
Sharprompt
Interactive command line interface toolkit for C#
Stars: ✭ 197 (-4.37%)
Mutual labels:  command-line
Gpustat
📊 A simple command-line utility for querying and monitoring GPU status
Stars: ✭ 2,662 (+1192.23%)
Mutual labels:  command-line
Sudo Productivity
Boost your "productivity" to the max! A fun project made for slackers by slackers.
Stars: ✭ 190 (-7.77%)
Mutual labels:  command-line
Tq
Perform a lookup by CSS selector on an HTML input
Stars: ✭ 193 (-6.31%)
Mutual labels:  command-line
Askgit
Query git repositories with SQL. Generate reports, perform status checks, analyze codebases. 🔍 📊
Stars: ✭ 2,707 (+1214.08%)
Mutual labels:  command-line
Aconfig
Simple, useful and opinionated config loader.
Stars: ✭ 187 (-9.22%)
Mutual labels:  command-line
Ascii
👾 ASCII Roulette :: ascii art video chat on the cli
Stars: ✭ 202 (-1.94%)
Mutual labels:  command-line
Twterm
A full-featured TUI Twitter client
Stars: ✭ 186 (-9.71%)
Mutual labels:  command-line
Winfetch
🛠 A command-line system information utility written in PowerShell. Like Neofetch, but for Windows.
Stars: ✭ 189 (-8.25%)
Mutual labels:  command-line
Learn gnugrep ripgrep
Example based guide to mastering GNU grep and ripgrep
Stars: ✭ 204 (-0.97%)
Mutual labels:  command-line
Saldl
A lightweight well-featured CLI downloader optimized for speed and early preview.
Stars: ✭ 203 (-1.46%)
Mutual labels:  command-line
Survey
A golang library for building interactive and accessible prompts with full support for windows and posix terminals.
Stars: ✭ 2,843 (+1280.1%)
Mutual labels:  command-line

Argparse4j - The Java command-line argument parser library

.. image:: https://api.travis-ci.com/argparse4j/argparse4j.svg?branch=master :target: https://travis-ci.com/github/argparse4j/argparse4j

Argparse4j is a command line argument parser library for Java based on Python's argparse <https://docs.python.org/3/library/argparse.html>_ module.

Argparse4j is available in Maven central repository:

.. code-block:: xml

net.sourceforge.argparse4j argparse4j 0.8.1

IMPORTANT: When upgrading from 0.4.4 or earlier version, read Migration <https://argparse4j.github.io/migration.html>_. There is an important change in 0.5.0 which might break you code. The documentation describes the change and how to migrate from earlier versions.

There are still missing features which exist in argparse but not in argparse4j, but there are also new features which only exist in argparse4j.

Here is summary of features:

  • Supported positional arguments and named arguments.

  • Variable number of arguments.

  • Generates well formatted line-wrapped help message.

  • Suggests named arguments/sub-command if unrecognized arguments/sub-command were given, e.g.:

    .. code-block:: console

    unrecognized argument '--tpye' Did you mean: --type

  • Takes into account East Asian Width ambiguous characters when line-wrap.

  • Sub-commands like, git add.

  • Sub-command alias names, e.g., co for checkout.

  • Customizable option prefix characters, e.g. +f and /h.

  • Print default values in help message.

  • Choice from given collection of values.

  • Type conversion from option strings.

  • Can directly assign values into user defined classes using annotation.

  • Group arguments so that it will be printed in help message in more readable way.

  • Mutually exclusive argument group.

  • Read additional arguments from file.

  • Argument/sub-command abbreviations.

The primary documentation is done using Sphinx <https://www.sphinx-doc.org/en/master/>_. You need Sphinx to run mvn site.

Upgrading to 0.5.0 or later versions

Please consult the documentation section for Migration <https://argparse4j.github.io/migration.html>_.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].