Skip to main content

A tui writing app

Project description

Aengus - A TUI Writing App

image image

Aengus is a simple editor for the terminal tailored towards novel writing, especially fantasy and science fiction. It offers nice highlighting features for characters, places, artifacts or more. It can be easily configured to your workflow. I also offers some statistics about your writing habits. It uses simple markdown files as the base layer so your work can be easily imported from other apps.

Installation

Install with pip install aengus.

Then create a project with aengus new <PROJECT_NAME> and open with aengus open <PROJECT_NAME>.

Or get help with aengus -h.

Documentation

Aengus can interpret every folder as a project with an aengus.toml file at its root. When creating a new project with aengus new <PROJECT_NAME> it will create a new folder with the following structure:

  • [characters]
    • ..
  • [places]
    • ..
  • [notes]
    • ..
  • [novel]
    • ..
  • aengus_stats.csv
  • aengus.toml

To create a new character inside the editor press ctrl+n and put a new markdown file into the characters folder. To further customize the highlighting Aengus uses frontmatter, so you can preface the markdown file with the following:

---
name: Sima # the main name of this character (omit and the filename will be used)
aliases:
  - little mouse # a list of aliases to highlight the character (optional)
color: #e44e0e # (this color will be used to highlight this character, omit for default)
---

The same works for places or all the other folders you defined in your project toml under

[mentions]
folders = ["characters", "places"] # <---- here

Aengus records simple analytics in the aengus_stats.csv file and displays it under the Statistics tab (open with ctrl+l).

Setup Environment

This repository uses uv. Run uv sync to create the virtual environment.

Install with pip install -e . to get instant feedback while editing.

On windows add the Scripts folder to PATH if you have not already.

Planned Features

  • Copy + Paste with text selection (paste from clipboard is done)
  • highlight only one visual line in smaller editor
  • Session Word Count goal with a little progress bar
  • novel exporter into single markdown/pdf/whatever (needs a chapter ordering system)
  • highlighting based on noun, adjective, verb (toggle between current system)
  • highlight fill words in "Edit Mode"

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

aengus-0.2.4.tar.gz (26.9 kB view details)

Uploaded Source

Built Distribution

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

aengus-0.2.4-py3-none-any.whl (29.4 kB view details)

Uploaded Python 3

File details

Details for the file aengus-0.2.4.tar.gz.

File metadata

  • Download URL: aengus-0.2.4.tar.gz
  • Upload date:
  • Size: 26.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.11

File hashes

Hashes for aengus-0.2.4.tar.gz
Algorithm Hash digest
SHA256 e1eca287d2253df8d53fa09979d7eb1fb310a0c3e85a621d39a18b5efaa66354
MD5 c313fc8329a3a08370c3c1260fbb9d72
BLAKE2b-256 55897d3e6b3e985a661db336d63bd75f096cfc2ee85a67decf454559180af0a0

See more details on using hashes here.

File details

Details for the file aengus-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: aengus-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 29.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.11

File hashes

Hashes for aengus-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fd1604e711baab7aa324be5195c500f18bafbf562a97523a5bac8292a40a128d
MD5 045db6bd814fc421b51326e962b4d7e4
BLAKE2b-256 83e8cc1f910ef35758eaa2ef3a19c26561c9179598a8c9b4d9b42d59139af894

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