Skip to main content

eTextEdit, a lightweight text editor built on prompt-toolkit

Project description

# eTextEdit Extensible Text Editor; built with prompt toolkit

Originally a simple text editor created by Jonathan Slenders Source: https://github.com/prompt-toolkit/python-prompt-toolkit/blob/master/examples/full-screen/text-editor.py

Modified and Enhanced by Eliran Wong: * added file and clipboard utilities * added regex search & replace feature * added key bindings * added handling of unasaved changes * added dark theme and lexer style * support stdin, e.g. echo “Hello world!” | etextedit * support file argument, e.g. etextedit <filename> * support startup with clipboard text content, e.g. etextedit -p true * support printing * support plugins to extend the functionalities; place plugins in ~/etextedit/plugins

Check plugins examples at https://github.com/eliranwong/agentmake/tree/main/agentmake/etextedit_plugins

eTextEdit repository: https://github.com/eliranwong/eTextEdit

# Screenshots

![search_replace](https://github.com/eliranwong/eTextEdit/assets/25262722/c7a564ce-2e3c-4913-8210-52e259545044?raw=True)

![menu](https://github.com/eliranwong/eTextEdit/assets/25262722/7703f138-e56e-4c6f-84fc-4abe768f161a?raw=True)

# Download

> pip install –upgrade etextedit

# Usage

To launch eTextEdit:

> etextedit

To open a text file, e.g. test.txt:

> etextedit test.txt

To pipe in a text string, e.g. “Hello World!”:

> echo “Hello World!” | etextedit

To append a file, e.g. test.txt, with a text string, e.g. “Hello World!”:

> echo “Hello World!” | etextedit test.txt

# Key Bindings

escape + m: toggle menu

control + k: help

control + q: quit

control + a: select all

escape + a: deselect all

control + c: copy

control + v: paste

control + x: cut

control + z: undo

control + i: insert spaces

control + f: find

escape + f: clear i-search highlights

control + r: find & replace

control + l: go to line

control + d: delete

control + n: new file

control + o: open file

control + s: save file

control + w: save as file

## Navigation

escape + a: go to beginning of document

escape + z: go to end of document

escape + b: go to beginning of current line

escape + e: go to end of current line

Project details


Download files

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

Source Distribution

etextedit-0.8.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

etextedit-0.8-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file etextedit-0.8.tar.gz.

File metadata

  • Download URL: etextedit-0.8.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for etextedit-0.8.tar.gz
Algorithm Hash digest
SHA256 2613afd0c4dc4f49d1f8a1c68853636d75db759408b080a5e0e3059926bbc5a6
MD5 956784adce626f9f0398fe6945b0f7c9
BLAKE2b-256 789498541140ea9df7cfbec638a09c9d5bebc16ec78e947453d85bdeb151996d

See more details on using hashes here.

File details

Details for the file etextedit-0.8-py3-none-any.whl.

File metadata

  • Download URL: etextedit-0.8-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for etextedit-0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 0360ba661bc79f8cb330131353ef5b1f9230030eb0ebaefe61c28a9650668ca0
MD5 794c853ab31b627f00c8b8ff848ba2e3
BLAKE2b-256 5235be5baa2efdfa50756a39cd9d2f491a9d1a02fb9f21f19567b2a261135fbd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page