# 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!" | python3 eTextEdit.py
* support file argument, e.g. python3 eTextEdit.py <filename>
* support plugins (forthcoming)
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
Raw data
{
"_id": null,
"home_page": "https://letmedoit.ai",
"name": "etextedit",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "text editor prompt toolkit",
"author": "Eliran Wong",
"author_email": "support@letmedoit.ai",
"download_url": "https://files.pythonhosted.org/packages/19/1e/6887b77745ec55df60fa056a2e0e68d085663c20dcc5391625300255c0be/etextedit-0.5.tar.gz",
"platform": null,
"description": "# eTextEdit\nExtensible Text Editor; built with prompt toolkit\n\nOriginally a simple text editor created by Jonathan Slenders\nSource: https://github.com/prompt-toolkit/python-prompt-toolkit/blob/master/examples/full-screen/text-editor.py\n\nModified and Enhanced by Eliran Wong:\n* added file and clipboard utilities\n* added regex search & replace feature\n* added key bindings\n* added handling of unasaved changes\n* added dark theme and lexer style\n* support stdin, e.g. echo \"Hello world!\" | python3 eTextEdit.py\n* support file argument, e.g. python3 eTextEdit.py <filename>\n* support plugins (forthcoming)\n\neTextEdit repository:\nhttps://github.com/eliranwong/eTextEdit\n\n# Screenshots\n\n![search_replace](https://github.com/eliranwong/eTextEdit/assets/25262722/c7a564ce-2e3c-4913-8210-52e259545044?raw=True)\n\n![menu](https://github.com/eliranwong/eTextEdit/assets/25262722/7703f138-e56e-4c6f-84fc-4abe768f161a?raw=True)\n\n# Download\n\n> pip install --upgrade etextedit\n\n# Usage\n\nTo launch eTextEdit:\n\n> etextedit\n\nTo open a text file, e.g. test.txt:\n\n> etextedit test.txt\n\nTo pipe in a text string, e.g. \"Hello World!\":\n\n> echo \"Hello World!\" | etextedit\n\nTo append a file, e.g. test.txt, with a text string, e.g. \"Hello World!\":\n\n> echo \"Hello World!\" | etextedit test.txt\n\n# Key Bindings\n\nescape + m: toggle menu\n\ncontrol + k: help\n\ncontrol + q: quit\n\ncontrol + a: select all\n\nescape + a: deselect all\n\ncontrol + c: copy\n\ncontrol + v: paste\n\ncontrol + x: cut\n\ncontrol + z: undo\n\ncontrol + i: insert spaces\n\ncontrol + f: find\n\nescape + f: clear i-search highlights\n\ncontrol + r: find & replace\n\ncontrol + l: go to line\n\ncontrol + d: delete\n\ncontrol + n: new file\n\ncontrol + o: open file\n\ncontrol + s: save file\n\ncontrol + w: save as file\n\n## Navigation\n\nescape + a: go to beginning of document\n\nescape + z: go to end of document\n\nescape + b: go to beginning of current line\n\nescape + e: go to end of current line\n",
"bugtrack_url": null,
"license": "GNU General Public License (GPL)",
"summary": "eTextEdit, a lightweight text editor built on prompt-toolkit",
"version": "0.5",
"project_urls": {
"Documentation": "https://github.com/eliranwong/eTextEdit/wiki",
"Funding": "https://www.paypal.me/MarvelBible",
"Homepage": "https://letmedoit.ai",
"Source": "https://github.com/eliranwong/eTextEdit",
"Tracker": "https://github.com/eliranwong/eTextEdit/issues"
},
"split_keywords": [
"text",
"editor",
"prompt",
"toolkit"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "75e114a79b077735171dc69182225516516401143c97a8b0fa3f9332a121998f",
"md5": "c2e39a24e6e3e3bed620e189b9884a2f",
"sha256": "44f65fb37ce54f4387d069d5d2ce1064ce43c08629cb61899ef0cc524ef2777f"
},
"downloads": -1,
"filename": "etextedit-0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c2e39a24e6e3e3bed620e189b9884a2f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 10400,
"upload_time": "2023-11-27T10:17:55",
"upload_time_iso_8601": "2023-11-27T10:17:55.066150Z",
"url": "https://files.pythonhosted.org/packages/75/e1/14a79b077735171dc69182225516516401143c97a8b0fa3f9332a121998f/etextedit-0.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "191e6887b77745ec55df60fa056a2e0e68d085663c20dcc5391625300255c0be",
"md5": "6eaca086c3ae24dae271cf5546857721",
"sha256": "d59ee8447cb770eb8ffd19500bab7395d01908d4bb56f4866bfa733bcf3f6f9d"
},
"downloads": -1,
"filename": "etextedit-0.5.tar.gz",
"has_sig": false,
"md5_digest": "6eaca086c3ae24dae271cf5546857721",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 10121,
"upload_time": "2023-11-27T10:17:56",
"upload_time_iso_8601": "2023-11-27T10:17:56.811371Z",
"url": "https://files.pythonhosted.org/packages/19/1e/6887b77745ec55df60fa056a2e0e68d085663c20dcc5391625300255c0be/etextedit-0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-27 10:17:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "eliranwong",
"github_project": "eTextEdit",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "etextedit"
}