Skip to content

Latest commit

 

History

History
82 lines (57 loc) · 2.18 KB

index.rst

File metadata and controls

82 lines (57 loc) · 2.18 KB

Python Prompt Toolkit

prompt_toolkit is a library for building powerful interactive command line and terminal applications in Python.

It can be a very advanced pure Python replacement for GNU readline, but it can also be used for building full screen applications.

images/ptpython.png

Some features:

  • Syntax highlighting of the input while typing. (For instance, with a Pygments lexer.)
  • Multi-line input editing.
  • Advanced code completion.
  • Selecting text for copy/paste. (Both Emacs and Vi style.)
  • Mouse support for cursor positioning and scrolling.
  • Auto suggestions. (Like fish shell.)
  • No global state.

Like readline:

  • Both Emacs and Vi key bindings.
  • Reverse and forward incremental search.
  • Works well with Unicode double width characters. (Chinese input.)

Works everywhere:

  • Pure Python. Runs on all Python versions from 2.6 up to 3.4.
  • Runs on Linux, OS X, OpenBSD and Windows systems.
  • Lightweight, the only dependencies are Pygments, six and wcwidth.
  • No assumptions about I/O are made. Every prompt_toolkit application should also run in a telnet/ssh server or an asyncio process.

Have a look at :ref:`the gallery <gallery>` to get an idea of what is possible.

Getting started

Go to :ref:`getting started <getting_started>` and build your first prompt.

Thanks to:

A special thanks to all the contributors for making prompt_toolkit possible.

Also, a special thanks to the Pygments and wcwidth libraries.

Table of contents

.. toctree::
   :maxdepth: 3

   pages/gallery
   pages/getting_started
   pages/printing_text
   pages/asking_for_input
   pages/dialogs
   pages/full_screen_apps
   pages/architecture
   pages/reference


Indices and tables

Prompt_toolkit was created by Jonathan Slenders.