- Reformatting first paragraph of cli to conform to 78 character width.

-- Same for Click, Cement.
- In gui, similarly for Camelot, PyGObject, Kivy, Pyjs Desktop, Qt
-- PySimpleGUI, Toga, TkInterwxPython
This commit is contained in:
Dave Mackey
2019-02-25 22:29:18 -05:00
parent 188e336732
commit 554fb163d9
2 changed files with 49 additions and 42 deletions
+15 -16
View File
@@ -5,13 +5,12 @@ Command-line Applications
.. image:: /_static/photos/34435690330_11930b5987_k_d.jpg
Command-line applications, also referred to as
`Console Applications <http://en.wikipedia.org/wiki/Console_application>`_,
are computer programs designed to be used from a text interface, such as a
`shell <http://en.wikipedia.org/wiki/Shell_(computing)>`_. Command-line
applications usually accept various inputs as arguments, often referred to as
parameters or sub-commands, as well as options, often referred to as flags or
switches.
Command-line applications, also referred to as `Console Applications
<http://en.wikipedia.org/wiki/Console_application>`_, are computer programs
designed to be used from a text interface, such as a `shell
<http://en.wikipedia.org/wiki/Shell_(computing)>`_. Command-line applications
usually accept various inputs as arguments, often referred to as parameters or
sub-commands, as well as options, often referred to as flags or switches.
Some popular command-line applications include:
@@ -29,9 +28,9 @@ Click
*****
`click <http://click.pocoo.org/>`_ is a Python package for creating
command-line interfaces in a composable way with as little code as
possible. This “Command-Line Interface Creation Kit” is highly
configurable but comes with good defaults out of the box.
command-line interfaces in a composable way with as little code as possible.
This “Command-Line Interface Creation Kit” is highly configurable but comes
with good defaults out of the box.
******
@@ -72,12 +71,12 @@ sub-command to do the work.
Cement
******
`Cement <http://builtoncement.com/>`_ is an advanced CLI Application Framework.
Its goal is to introduce a standard and feature-full platform
for both simple and complex command line applications as well
as support rapid development needs without sacrificing quality.
Cement is flexible, and its use cases span from the simplicity of a micro-framework
to the complexity of a mega-framework.
`Cement <http://builtoncement.com/>`_ is an advanced CLI Application
Framework. Its goal is to introduce a standard and feature-full platform for
both simple and complex command line applications as well as support rapid
development needs without sacrificing quality. Cement is flexible, and its use
cases span from the simplicity of a micro-framework to the complexity of a
mega-framework.
***********
+34 -26
View File
@@ -14,8 +14,8 @@ Camelot
*******
`Camelot <http://www.python-camelot.com>`_ provides components for building
applications on top of Python, SQLAlchemy, and Qt. It is inspired by
the Django admin interface.
applications on top of Python, SQLAlchemy, and Qt. It is inspired by the Django
admin interface.
The main resource for information is the website:
http://www.python-camelot.com
@@ -40,8 +40,10 @@ GTk
PyGObject aka (PyGi)
********************
`PyGObject <https://wiki.gnome.org/Projects/PyGObject>`_ provides Python bindings which gives access to the entire GNOME software platform.
It is fully compatible with GTK+ 3. Here is a tutorial to get started with `Python GTK+ 3 Tutorial <https://python-gtk-3-tutorial.readthedocs.io/en/latest/>`_.
`PyGObject <https://wiki.gnome.org/Projects/PyGObject>`_ provides Python
bindings which gives access to the entire GNOME software platform. It is fully
compatible with GTK+ 3. Here is a tutorial to get started with `Python GTK+ 3
Tutorial <https://python-gtk-3-tutorial.readthedocs.io/en/latest/>`_.
`API Reference <http://lazka.github.io/pgi-docs/>`_
@@ -52,8 +54,8 @@ Kivy
`Kivy <http://kivy.org>`_ is a Python library for development of multi-touch
enabled media rich applications. The aim is to allow for quick and easy
interaction design and rapid prototyping, while making your code reusable
and deployable.
interaction design and rapid prototyping, while making your code reusable and
deployable.
Kivy is written in Python, based on OpenGL, and supports different input devices
such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, Apple's products,
@@ -100,8 +102,9 @@ http://www.riverbankcomputing.co.uk/software/pyqt/download
Pyjs Desktop (formerly Pyjamas Desktop)
*****************************
Pyjs Desktop is a application widget set for desktop and a cross-platform framework. It allows the exact same Python web
application source code to be executed as a standalone desktop application.
Pyjs Desktop is a application widget set for desktop and a cross-platform
framework. It allows the exact same Python web application source code to be
executed as a standalone desktop application.
The main website: `pyjs <http://pyjs.org/>`_.
@@ -111,35 +114,40 @@ The main website: `pyjs <http://pyjs.org/>`_.
Qt
**
`Qt <http://qt-project.org/>`_ is a cross-platform application framework that
is widely used for developing software with a GUI but can also be used for
non-GUI applications.
`Qt <http://qt-project.org/>`_ is a cross-platform application framework that is
widely used for developing software with a GUI but can also be used for non-GUI
applications.
***********
PySimpleGUI
***********
`PySimpleGUI <https://pysimplegui.readthedocs.io/>`_ is a wrapper for Tkinter and Qt (others on the way). The amount of code required to implement custom GUIs is much shorter using PySimpleGUI than if the same GUI were written directly using Tkinter or Qt. PySimpleGUI code can be "ported" between GUI frameworks by changing import statements.
`PySimpleGUI <https://pysimplegui.readthedocs.io/>`_ is a wrapper for Tkinter
and Qt (others on the way). The amount of code required to implement custom
GUIs is much shorter using PySimpleGUI than if the same GUI were written
directly using Tkinter or Qt. PySimpleGUI code can be "ported" between GUI
frameworks by changing import statements.
.. code-block:: console
$ pip install pysimplegui
PySimpleGUI is contained in a single PySimpleGUI.py file. Should pip installation be impossible, copying the PySimpleGUI.py file into a project's folder is all that's required to import and begin using.
PySimpleGUI is contained in a single PySimpleGUI.py file. Should pip
installation be impossible, copying the PySimpleGUI.py file into a project's
folder is all that's required to import and begin using.
****
Toga
****
`Toga <https://toga.readthedocs.io/en/latest/>`_ is a Python native, OS
native, cross platform GUI toolkit. Toga consists of a library of base
components with a shared interface to simplify platform-agnostic GUI
development.
`Toga <https://toga.readthedocs.io/en/latest/>`_ is a Python native, OS native,
cross platform GUI toolkit. Toga consists of a library of base components with a
shared interface to simplify platform-agnostic GUI development.
Toga is available on mOS, Windows, Linux (GTK), and mobile platforms such
as Android and iOS.
Toga is available on mOS, Windows, Linux (GTK), and mobile platforms such as
Android and iOS.
**
@@ -154,8 +162,8 @@ Both Tk and Tkinter are available on most Unix platforms, as well as on Windows
and Macintosh systems. Starting with the 8.0 release, Tk offers native look and
feel on all platforms.
There's a good multi-language Tk tutorial with Python examples at
`TkDocs <http://www.tkdocs.com/tutorial/index.html>`_. There's more information
There's a good multi-language Tk tutorial with Python examples at `TkDocs
<http://www.tkdocs.com/tutorial/index.html>`_. There's more information
available on the `Python Wiki <http://wiki.python.org/moin/TkInter>`_.
@@ -163,11 +171,11 @@ available on the `Python Wiki <http://wiki.python.org/moin/TkInter>`_.
wxPython
********
wxPython is a GUI toolkit for the Python programming language. It allows
Python programmers to create programs with a robust, highly functional
graphical user interface, simply and easily. It is implemented as a Python
extension module (native code) that wraps the popular wxWidgets cross platform
GUI library, which is written in C++.
wxPython is a GUI toolkit for the Python programming language. It allows Python
programmers to create programs with a robust, highly functional graphical user
interface, simply and easily. It is implemented as a Python extension module
(native code) that wraps the popular wxWidgets cross platform GUI library, which
is written in C++.
**Install (Stable) wxPython**
*go to https://www.wxpython.org/pages/downloads/ and download the appropriate