Skip to main content

A tiny terminal text editor built with Textual

Project description

tini-editor 📝

tini is a minimal, terminal-based text editor built with Python's curses module. It's inspired by nano, but written in Python and designed for simplicity and speed.

✨ Features

  • Open and edit any text file from the terminal
  • Keyboard shortcuts:
    • Ctrl+S – Save
    • Ctrl+Q – Quit (prompts to save if file is modified)
    • Ctrl+Z – Undo
    • Ctrl+Y – Redo
    • Enter – New line
    • Backspace – Delete character to the left
    • Delete – Delete character to the right
    • Arrow keys – Move cursor
  • Line numbers
  • Undo/Redo history (cleared on save or exit)
  • Automatic scrolling for both vertical and horizontal movement
  • If the file doesn’t exist, it will be created when saved

🚀 Installation

pip install tini-editor

🧑‍💻 Usage

tini <filename>

Example:

tini notes.txt

📦 Development Setup

Clone the repo and install dependencies:

git clone https://codeberg.org/yourusername/tini-editor.git
cd tini-editor
pip install -e .

Run locally:

python -m tini.app <filename>

🗺️ Planned Features

  • Syntax highlighting for popular languages
  • Copy, cut, and paste support
  • Text selection and highlighting
  • Search and replace
  • Configurable tab width and indentation
  • Mouse support (where available)
  • Customizable color themes
  • Status bar with file info and cursor position

📄 License

This project is licensed under the MIT License.


🙏 Acknowledgments

  • Built with curses
  • Inspired by nano, but even tinier

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

tini_editor-1.2.1.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

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

tini_editor-1.2.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file tini_editor-1.2.1.tar.gz.

File metadata

  • Download URL: tini_editor-1.2.1.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for tini_editor-1.2.1.tar.gz
Algorithm Hash digest
SHA256 7a7914b35d078dd3eb0842f0fee9c977493e502b119e7f8bee7affba863cba41
MD5 ace04d5b06d5a3fba416eb59741f30ea
BLAKE2b-256 6f14fe73567b16f3379c811889ade090f0d4a5ea46774839253fb2a1e866dcdc

See more details on using hashes here.

File details

Details for the file tini_editor-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: tini_editor-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for tini_editor-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1244e4dd3731d913d1ee73efb705423d3c7332a2fc3c4b0a30d937f492f7d1dd
MD5 f3a6fc90a32eab916146dd9b87c482a8
BLAKE2b-256 748b5aab7d4e554e08c311be5fd29d3374fead9383a3ecd66f17d0895dd8d8ab

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