attached is a new version of allout.el and a ChangeLog for a
substantial new revision of allout, emacs' alternative (and much more
extensive) outliner. i
think it's ready to replace the distributed version. (i'm the
original author of allout, and the maintainer of the gnu emacs
version.) this version adds topic encryption, using GPG. it also
includes several fixes and enhancements, described in the ChangeLog
i've tested this version mostly in gnu emacs, but have tested (and
adjusted) it enough to establish that it works in xemacs 21.4.17,
including the new encryption capabilities.
i'm providing the .el file instead of a patch against the version that
comes with xemacs 21.4.7 because the version there is old, and the
patch is substantially larger than the elisp source (5740 lines for
the new source vs 6680 for the unified diff). i can provide the diff
if you prefer, however.
one important thing to note. the gnu emacs folk made some cosmetic
but extensive stylistic changes, including particularly migrating the
function name prefix from "outline-" to "allout-", and i adopted those
changes. i'm hoping it won't be disruptive to adopt those conventions
in the xemacs version, too. (i'd like to see allout continue to be
available from in both true emacs, but want to do what i can to
maintain only a single version...)
another important thing - the source i'm sending is slightly different
than the one i used to generate the patch i submitted to
emacs-devel(a)gnu.org earlier today. i discovered an xemacs
compatibility problem after submitting that version, which i fixed in
the version i'm sending to you. i can make sure to revise the patch i
submitted to the gnu list sooner rather than later, if you think
please let me know whether or not i'm submitting this update the right way!
below is the synopsis of just the new encryption features, from the
- new subsystem supporting easy gpg topic encryption/decryption.
- both public- and symmetric-key modes are supported.
- encryption being on a per-topic basis means you can
intersperse encrypted and clear-text data in a single file
to your heart's content.
- user-provided symmetric-key hints, with consistency
verification to help user avoid confusion
- time-limited key reuse, a la (and using) mailcrypt's
- write-file-hook and auto-save-hook activities to support auto
encryption of pending topics on save; provision to skip
currently-edited topic to avoid editing disturbance
topic encryption functionality depends on both mailcrypt and
crypt++ packages. (non-encryption allout functionality is not
disrupted if either mailcrypt or crypt++ are absent.)
`allout-toggle-current-subtree-encryption' is the central
there are a five new encryption customization variables:
topic encryption is included in mouse menu
docstring for `allout-toggle-current-subtree-encryption'
and customization variables provide detailed description.