Skip to main content

GNU Readline-like line editing module

Project description

A Python module that provides GNU Readline-like line editing functions (the default Emacs-style ones). If you just want to use Readline, use the readline package in the standard library–but this package allows access to those capabilties in settings outside of a standard CLI.

Currently, all stateless Readline commands are implemented. This means that yanking and history are not supported.

This module is especially well-suited to interfacing with Urwid due to a shared syntax for describing key inputs.

Installation

Install or upgrade to the latest version from PyPI:

[sudo] pip install -U readlike

Quick example

Transpose words:

>>> import readlike
>>> readlike.edit('perilous siege', 9, 'meta t')
('siege perilous', 14)

Commands

Implemented commands and their correspondings keys are as follows:

backward-char            ctrl b, left
backward-delete-char     ctrl h, backspace
backward-kill-word       ctrl meta h, meta backspace
backward-word            meta b, meta left
beginning-of-line        ctrl a, home
capitalize-word          meta c
delete-char              ctrl d, delete
delete-horizontal-space  meta \
downcase-word            meta l
end-of-line              ctrl e, end
forward-char             ctrl f, right
forward-word             meta f, meta right
kill-line                ctrl k
kill-word                meta d, meta delete
transpose-chars          ctrl t
transpose-words          meta t
unix-line-discard        ctrl u
unix-word-rubout         ctrl w
upcase-word              meta u

For more information about each command, see readline(3) or see the doc strings in readlike.py.

Projects using Readlike

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
readlike-0.1.3-py3-none-any.whl (4.6 kB) Copy SHA256 hash SHA256 Wheel 3.6
readlike-0.1.3.tar.gz (5.0 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page