Skip to main content

A textual-based lazy editing tool

Project description

LazyEdit - The Effortless TUI Code Editor

PyPI - Version PyPI - Python Version

When you're too lazy to open a full IDE, but too productive for Notepad.

Code editing shouldn't be hard work. Be lazy. Be efficient.

LazyEdit is a lightweight, terminal-based code editor with an integrated PowerShell terminal designed for developers who want a streamlined editing experience without leaving the command line.

previeuw

✨ Features

  • All-in-One Interface: File browser, text editor, and PowerShell terminal in a single window
  • Keyboard-Driven: Navigate and edit efficiently with intuitive keyboard shortcuts
  • Syntax Highlighting: Makes your code more readable and easier to understand
  • Integrated Terminal: Run commands without switching applications
  • Lightweight: Minimal resource usage compared to full IDEs
  • Windows-Optimized: Built specifically for Windows with PowerShell integration

📋 Table of Contents


🚀 Installation

pip install lazyedit

That's it! No complex setup or configuration required.

If it fails to run your Python Scripts folder might not be in the system PATH.

Run:

$env:Path += ";C:\Users\YourUserName\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\Scripts"

Now try running lazyedit again.


🏃‍♂️ Quick Start

After installation, simply run:

lazyedit

You'll be greeted with a three-panel interface:

  • Left panel: File browser
  • Main panel: Text editor
  • Bottom panel: PowerShell terminal

📖 Usage Guide

File Navigation

  • Use Directory Mode (Ctrl+2) to browse files
  • Navigate with arrow keys to select a file
  • Press Space to open the selected file in the editor

Editing Files

  • Switch to File Editing Mode (Ctrl+3) to edit the opened file
  • Use standard keyboard navigation (arrows, Home, End) to move around
  • Save your changes with Ctrl+S

Using the Terminal

  • Switch to Terminal Mode (Ctrl+5) to use the PowerShell terminal
  • Execute commands as you would in a normal PowerShell window
  • The terminal shows your current directory relative to where LazyEdit was launched

⌨️ Keyboard Shortcuts

Shortcut Action
Ctrl+Q Quit LazyEdit
Ctrl+S Save current file
Ctrl+2 Switch to Directory Mode
Ctrl+3 Switch to File Editing Mode
Ctrl+5 Switch to Terminal Mode
Ctrl+C Send interrupt signal (in Terminal)
Ctrl+L Clear terminal screen
Space Open selected file (in Directory Mode)
Up/Down Navigate files or text
Home/End Move to start/end of line

💻 Development

Want to contribute or run from source? Follow these steps:

# Clone the repository
git clone https://github.com/Robbevanherpe1/lazyedit.git
cd lazyedit

# Create and activate development environment
hatch env create
hatch shell

# Install in development mode
pip install -e .

# Run LazyEdit
lazyedit

Project Structure

lazyedit/
├── src/
│   └── lazyedit/
│       ├── __init__.py
│       ├── __about__.py
│       ├── directory.py    # File browser functionality
│       ├── fileEditor.py   # Text editing functionality
│       ├── gui.py          # Main application interface
│       └── terminal.py     # PowerShell terminal integration
├── pyproject.toml
├── README.md
└── LICENSE.txt

📝 License

LazyEdit is distributed under the terms of the MIT license.

Made with ❤️ by Robbe

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

lazyedit-0.0.6.tar.gz (165.0 kB view details)

Uploaded Source

Built Distribution

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

lazyedit-0.0.6-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file lazyedit-0.0.6.tar.gz.

File metadata

  • Download URL: lazyedit-0.0.6.tar.gz
  • Upload date:
  • Size: 165.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for lazyedit-0.0.6.tar.gz
Algorithm Hash digest
SHA256 331f8fd9a69c8b1a09dc5265a4e2895a53cc19e6c9cc6cafac8211186e9a2cf6
MD5 428582988c6ad73ba57bc4de4f2963cd
BLAKE2b-256 7572673e8c9a4f391801a458600757b5d331600808979f07409a4ef659020418

See more details on using hashes here.

File details

Details for the file lazyedit-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: lazyedit-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 13.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for lazyedit-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a89961484b6d997d6d143ba23a9b9f45279ed75fd51e4dd754fc24d03920a5c8
MD5 b64669015c9f9de04ec7e55040f631aa
BLAKE2b-256 24f032e5d615d741e07501e60f15b64d01d51313539e70d4844a259c832d0dda

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