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>
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>
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>
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>
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 uses Unicode strings internally, and Python wants to read strings
from the terminal based on the locale. We want the locale to be in
UTF-8 so that all files are also written that way, and also so that the
behavior is consistent between invocations.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
If the editor process couldn't be spawned, or it exited nonzero, provide
a message box with a sensible error message to indicate this to the
user.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
By default, the file in $XDG_CONFIG_HOME/newfol/defaults will be read
and parsed almost exactly as if it were a schema file. If it is
missing, nothing happens.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
The only case in which we can call toggle_state from outside of the
class it's declared in is in DisplayTemplateRecordView. However, we no
longer try to toggle the first cell, which is the only one that can
contain a non-checkbox. Remove this code since it is never used.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
The --txntype option, while useful, overrode the types of transactions
both on load and store. While this was fine for some types of
transactions, like the git type, this prevented converting from one type
of hash transaction to another. Add an option, --from-txntype, which
overrides the load transactions only on upgrade.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>