My personal project and infrastructure archive
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
nomicon/prototypes/novelist/NOTES

74 lines
2.2 KiB

gnovelist-mode.el design notes
=============================
This mode is primarily inspired by Scrivener, and iAWriter on MacOS.
Emacs _should_ be able to do all the things these editors do, give
enough configuration. The following document outlines the design and
usability of novelist-mode.
Design adjustments
+------------------+
Emacs by default is very code-oriented. To change this novelist-mode
should set some things.
+ Make colour theme configurable (light or dark)
+ Set a non-monospace font (bundle Literata by default?)
+ Increase line spacing and text size
+ Change cursor to a line, control max size (because of line spacing)
+ Add text margins on the sides. Disable fringe or style correctly
+ Enable line wrapping (word wrapped)
Project management
+------------------+
Up to this point, libreoffice would suffice for prose writing.
Instead novelist-mode should add a lot of project management
functionality.
+ novelist-project-actions
Bring up a transient menu to expose various functions implemented as
their separate functions. It's possible to call them directly (or
create keybindings), but using this menu is the recommended way.
+ novelist-project-create (name, path, &optional universe)
Create a new project folder and basic metadata. Allow linking of
external "universe" collection. Bundle treemacs to display the
project overview.
+ novelist-add (type, name, path)
Add a new resource to the project. This can either be a chapter, a
scene, or some other metadata template. Templates can be defined in
a project or a universe.
+ novelist-delete (path, &optional purge)
Remove a resource from the project. By default it will only be
moved into the hidden trash. With the optional "purge" parameter it
can also be immediately deleted.
+ novelist-path-overview
Toggle the vilibility of the project overview (tree bar on the left).
+ novelist-path-notes (&optional path)
Bring up a hidden buffer that contains structured notes for a
particular path
+ novelist-path metadata (&optional path)
Bring up a special menu to manage key-value metadata for a
particular path. A few default entries are included by default,
such as scene revision, group colours, and labels.