Write log files in the user's home directory.

The log function stored logs in /tmp, but only if the NEWFOL_DEBUG
environment variable was set and logging statements were added.
However, avoid any possibility of attacks by storing this file in the
user's home directory instead.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
newfol: add basic gettext support.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Localize most of the main program.

Some format strings have been converted from the Python 3-style strings
to the %s strings, as these are more common for potential translators.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Add session attribute to view objects.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Render views from keyboard shortcuts with Session.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Allow specifying debug path through the environment.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Format logging text correctly.

If passed a single string, the logging code would insert spaces between
each character.  Also, it was not possible to print non-string args.
Ensure that the logging behavior is as similar to what print() would
provide as possible,

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Render all views using the session.

This ensures that each view will get access to the appropriate session
object.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Note that development follows newer Python 3 versions.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Localize help output.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Don't rely on magic array indices in AboutView.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Makefile: enhance clean rule.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Set all test files executable.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Build PostScript docs by default.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
manual: expand overview.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
manual: describe the data layout.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
manual: document that CSV is colon-separated.

Traditionally, CSV has meant comma-separated values, but in the context
of newfol, it always means colon-separated.  Document this.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
manual: document schema file format.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
manual: use Atx-style headers except for document title

These are easier to remember than using the Setext-style titles.  Also,
move the Data Layout section to a second-level title from a third-level.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
manual: document configuration files.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>