Ncurses CSV Editor written in Python
Project description
nccsv
nccsv - Ncurses CSV Editor written in Python
Install Dev (on windows)
$ python3 -m venv venv
$ . venv/bin/activate
(venv) $ pip install -r windows-curses
Install Prod
$ pip install nccsv
Usage
- Dev:
(venv) $ python run.py [Filename]
- Prod:
python -m nccsv
Screenshots
TODO:
- Architecture
- Wireframes
- Home / Menu
- File selector
- Open
- Close
- Editor
- Layout Grid
- Entry
- Wireframes
- Multiple views
- Home / Menu
- File selector
- Editor
- Custom widgets
- Layout Grid
- Entry (text editor with box)
- Scroll down / right
- [.] Delete contents of cell when you hit "DEL"
- Row / Col bars (A,B,C, 1,2,3)
- [.] Actually handle CSVs
- Color
- Documentation
- Publish to pip
- Tests
Misc folder is for miscellaneous test files to add features (pad scrolling, etc)
Notes
How the Textbox should work:
- Is an Object
- Constr:
- Has x, y coord on the master screen?
- Do we want this?
- Can we make it have it's own coordinates, so we don't have to worry about the master screen?
- Has size definition
- Custom callback if wanted
- Default text (to load in)
- Has x, y coord on the master screen?
- Props:
- Text to display
- Is it highlighted
- Input:
- When calling edit_text(), it will edit the text and return it back on Enter
- When calling clear_text(), it will remove the text that is rendered + saved
- Features:
- Editable text field
- Box surrounding text field so we can see it
- Highlight-able (on hover)
- Easy to get the text programmatically
How the grid should work:
- Is an Object
- Constr:
- Has x, y coord on the master screen
- Has rows / cols
- Props:
- 2D Matrix of Textboxes
- Keeps track of which box is selected
- Input:
- Can scroll up/down/left/right
- On Enter, send input to Textbox object to handle
- On Del, clear the input of the Textbox
- On Ctrl + S, it saves
- On Q, it quits
- Features:
- Load a 2D matrix from a file (csv)
- Save a 2D matrix from a file (csv)
- Add rows and columns if user scrolls past what currently exists
LICENSE
MIT © 2020 Sebastian Safari
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
nccsv-0.2.tar.gz
(8.4 kB
view details)
Built Distribution
nccsv-0.2-py3-none-any.whl
(8.9 kB
view details)
File details
Details for the file nccsv-0.2.tar.gz
.
File metadata
- Download URL: nccsv-0.2.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 56d5ec7cac28d78fd27680333f044b9862a979cc541cd82867273b0fccbda57e |
|
MD5 | 91719f25e94efc45042ec0ac080ccf67 |
|
BLAKE2b-256 | 0de093f115b3ce154dbdb402056156dde2a3dbf07e5239229da1716c7bfe205b |
File details
Details for the file nccsv-0.2-py3-none-any.whl
.
File metadata
- Download URL: nccsv-0.2-py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7031333e6af1bda44b4d9e6ad1a672ddc0cbf27426e2feabcfce3a8100c1463 |
|
MD5 | 386952ab29374aea27e39c09572f0fdc |
|
BLAKE2b-256 | 8bd0b88b5ec6563ab25ace3d50d5b751dfd3ee6164bf525563689b65b5ba8583 |