Python framework for commandline applications
Project description
battalion
=========
.. image:: https://pypip.in/py_versions/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://pypip.in/license/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://pypip.in/download/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://pypip.in/version/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://pypip.in/wheel/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://requires.io/github/rocktavious/battalion/requirements.png?branch=master
:target: https://requires.io/github/rocktavious/battalion/requirements/?branch=master
:alt: Requirements Status
Python framework for commandline applications
Quickstart
----------
Feeling impatient? I like your style.
.. code-block:: bash
$ pip install battalion
In mycli.py script:
.. code-block:: python
from battalion.api import *
class mycli(CLI):
"""
Toplevel program - mycli
"""
class State:
version = '0.0.1'
def normal_function(self, val):
"""Takes in data and outputs new data"""
return "Josh"
@command
def greeting(cli, name="Hello"):
"""
Prints "{name} World!"
"""
print "{0} World!".format(name)
class myhandler(Handler):
"""
Organizational container of commands which can also add state variables
"""
class State:
version = '0.0.2' # Handlers can have their own versioning
cli = 'mycli'
@command
def hello(cli, data=None):
"""
Prints "Hello, World!"
"""
name = cli.normal_function(data)
cli.greeting(name=name)
if __name__ == "__main__":
mycli.main()
Then on the commandline
.. code-block:: bash
$ python mycli.py myhandler hello --data="Blah"
> Josh World!
$ #or if installed as a console script
$ mycli myhandler hello --data="Blah"
> Josh World!
Change Log
.. include:: ./ChangeLog
:literal:
=========
.. image:: https://pypip.in/py_versions/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://pypip.in/license/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://pypip.in/download/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://pypip.in/version/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://pypip.in/wheel/battalion/badge.svg?style=flat
:target: https://pypi.python.org/pypi/battalion/
.. image:: https://requires.io/github/rocktavious/battalion/requirements.png?branch=master
:target: https://requires.io/github/rocktavious/battalion/requirements/?branch=master
:alt: Requirements Status
Python framework for commandline applications
Quickstart
----------
Feeling impatient? I like your style.
.. code-block:: bash
$ pip install battalion
In mycli.py script:
.. code-block:: python
from battalion.api import *
class mycli(CLI):
"""
Toplevel program - mycli
"""
class State:
version = '0.0.1'
def normal_function(self, val):
"""Takes in data and outputs new data"""
return "Josh"
@command
def greeting(cli, name="Hello"):
"""
Prints "{name} World!"
"""
print "{0} World!".format(name)
class myhandler(Handler):
"""
Organizational container of commands which can also add state variables
"""
class State:
version = '0.0.2' # Handlers can have their own versioning
cli = 'mycli'
@command
def hello(cli, data=None):
"""
Prints "Hello, World!"
"""
name = cli.normal_function(data)
cli.greeting(name=name)
if __name__ == "__main__":
mycli.main()
Then on the commandline
.. code-block:: bash
$ python mycli.py myhandler hello --data="Blah"
> Josh World!
$ #or if installed as a console script
$ mycli myhandler hello --data="Blah"
> Josh World!
Change Log
.. include:: ./ChangeLog
:literal:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
battalion-0.1.6.tar.gz
(18.3 kB
view hashes)
Built Distribution
Close
Hashes for battalion-0.1.6-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3df71b6236394ff9c1e3a0bceed4a9c9b6b03e1666bc8acd824a440d12240a4a |
|
MD5 | 4073d42d2c23cc93039f69928be544fd |
|
BLAKE2b-256 | d72d1cdab3e9440ef8b28cf2470702a4c4adaabac5b7180c70c74283f1638636 |