Chalk



General Information



Chalk is a line based text editor for the terminal and is written in Python.


Background


Chalk was written to be the text editor for [Colorfield Space(Gopher Link)]. It was designed with Gopher phlogging in mind and is best used for relatively short content, though it does support longer content as well and can be a solid distraction free writing experience.


Quick Start


Once Chalk is installed on a system, run chalk followed by a filepath. If the file does not exist it will be created, otherwise it will be opened. Running chalk without a filepath will open a scratch buffer in which you can write, but you will need to provide a file name when you save it.

Once in the editor: just type! To finish and close the application enter a period on its own line. At that point you will be asked whether or not you wish to save your changes. To get help type .? as the only text on a line (with no spaces before or after it).

That should get you started using Chalk at a basic level. There are many more options and features. Please read the [documentation] section to find out more.




Documentation



Commands


Chalk is controlled via various commands. Commands always start with a period and should be entered with no other text on the line, save for the command. The one exception is putting a period on a line all on its own in order to quit the program.


-- Command List --
Command Action
.? Print the help text
.g Print the guide/ruler
.f Print file info
.d Display the whole file
.v View a range of lines (will request starting location and line COUNT)
.m View MORE (after using .v)
.# Edit a line (eg .27)
.i Insert empty line(s) (will request location/count)
.x Cut/copy line(s) (will request line range)
.c Copy to the paste buffer (will request line range)
.p Paste from the paste buffer (will request destination)
.s Save changes to the document
.a Save as a new file (will request file location)
. Finish writing and exit (will prompt for save if there are unsaved changes)



Getting Chalk



Chalk is written in the programming language [Python]. Since Python is a scripting language it does not compile to binary files. As such, users will need to have Python running on their system. Chalk requires a Python version >= 3.0. Many systems come with Python already installed; be sure to verify the version by running: python --version. Additionally, many systems have both Python 2.7 and Python 3+ installed. Sometimes Python 3 is aliased to python3. Mostly though, you should be able to download chalk and try running it... if it runs, you have what is needed. If it doesnt, check your python version.

Since Chalk only uses the Python standard library, no packages should be required from pip/pypi/easy_install.

That should take care of dependencies. You just need to make sure that Chalk, found in [this repo], is executable and on your path and you are good to go.