Fork 0
Chalk is a line based text editor for the terminal. In use at colorfield.space https://sloum.colorfield.space/docs/chalk/
Go to file
sloum a1fe2eb175 Changes pypi name 2020-09-07 10:46:29 -07:00
.gitignore Adds gitignore details 2020-09-07 10:38:43 -07:00
LICENSE Adds license 2020-04-19 21:50:04 -07:00
README.md Updates readme 2020-07-12 16:09:06 -07:00
chalk Fixes bad global reference 2020-09-07 10:36:29 -07:00
setup.py Changes pypi name 2020-09-07 10:46:29 -07:00


chalk - a line based text editor

Chalk is a line based text editor for the terminal. It was originally an integrated part of colorsh, a custom shell used for ssh accounts at Colorfield Space. It has since been separated out as a standalone program usable anywhere with python3 and python3's readline (a batteries included feature of python3 for most operating systems).

I tend to think about chalk as a simpler ed, similar to how some people use nano as simpler terminal editor than vi. It is far less powerful than ed, but functions in a similar line by line style with easy commands that walk you through the actions you are wanting to perform.


Requires Python 3.6+. No other Python dependencies, standard library only.

Copy the file chalk to anywhere on your system path and make sure it is executable.

From there you can run chalk or chalk _filepath_.


Commands are entered as the only text on their row. Enter the command and press enter.

Command Action
.? Print the command list
.a Save AS (will prompt for new path)
.f Print file info
.g Print the GUIDE (ruler)
.d DISPLAY the whole file
.v VIEW a portion of the file
.m View MORE (use after having called .v to view more of the file)
.# EDIT a line (eg. "!23" to edit line 23)
.i INSERT blank rows (will prompt for location and count)
.x CUT rows (will prompt for range and then add the cut data to the paste buffer)
.c COPY rows to the paste buffer (will prompt for range)
.p PASTE from the paste buffer (will prompt for location)
.b Print the contents of the paste BUFFER
.s SAVE any unsaved changes to the document
. Quit chalk (will prompt for save if there are unsaved changes)


This application uses the python readline bindings to allow for hotkey line navigation (ex. Ctrl-a to go to the beginning of the line).