A simple Tkinter based VI editor
Project description
VI Editor
A simple VI editor using Tkinter
Table of Contents
About
This is a desktop application on the popular Linux text editor VI. It is written in python using the Tkinter module. It is a clone containing a fraction of the commands in the original version
How to Run
You can run the editor in two ways:-
Option 1: Install package from PyPI (pip)
# Install package with pip
pip install vi_editor
# Run directly from terminal
vi_editor
Or run from a python file.
from vi_editor import run
run()
Option 2: Build from source (GitHub)
- First you need Python interpreter. You can install from Install Python
- Run the following commands
# Open a terminal (Command Prompt or PowerShell for Windows, Terminal for macOS or Linux)
# Ensure git is installed on your system
git clone https://github.com/AdityaKK0407/vi_editor.git
# Navigate to project directory
cd vi_editor
- Alternatively you can download the project from GitHub and save it in a directory of your choice.
python main.py
Documentation
Insert Mode
- i - Insert at cursor
- a - Insert after cursor
- A - Insert at end of line
- o - Insert at next line
Command Mode
- dd - Delete a single line
- ndd - Delete n lines
- C - Delete line from cursor and enter insert mode
- D - Delete line from cursor
- x - Delete a single character
- r - Replace single character
- R - Replace continuously
- s - Substitute single character (enter insert mode)
- S - Substitute entire line (enter insert mode)
- cw - Change word
- dw - Delete word
- cc - Change entire line
Miscellaneous
- yy - Yank line
- p - Put line
- u - Undo
- w - Move to beginning of word
- b - Move to end of word
- 0 - Move to beginning of line
- $ - Move to end of line
- h - Move left
- j - Move down
- k - Move up
- l - Move right
License
This project is licensed under the MIT License — see the LICENSE file for details.
Feedback and Contributions
I’ve worked to include all the essential features and make the text editor as proper as possible.
If you spot bugs, have suggestions for improvements, or want to request new features, please share your feedback.
You can contribute by opening an issue or joining the discussions.
Your support is greatly appreciated, and I look forward to hearing your thoughts.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vi_editor-0.1.0.tar.gz.
File metadata
- Download URL: vi_editor-0.1.0.tar.gz
- Upload date:
- Size: 10.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
993643c4a7bcf0077e635a58d360dd7bd8fd544930cb3073ade73e93b1d42185
|
|
| MD5 |
ea52bee3d46fb1570487e7f4a5081529
|
|
| BLAKE2b-256 |
03d534ababbf89ad4481ac15b6a1fbd7c3e1015c0d49c6e11f9297d43fda25af
|
File details
Details for the file vi_editor-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vi_editor-0.1.0-py3-none-any.whl
- Upload date:
- Size: 9.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
def8dfd6dbf2ca01dc8bcfe725b65788ad28a6ef7a4e04a898787e980d6752f6
|
|
| MD5 |
cb9d94f498df3302e73ef90c4ca98e32
|
|
| BLAKE2b-256 |
27fa71eb1ec045b650c29ed5358fb2b86760185c0fc2555c4a7443be6090860e
|