On Wed, 25 Jan 2012 10:18:46 +0000, David Edmondson wrote: > The crypto toggle previously worked using an argument to > `notmuch-show' and various other functions and relied on killing and > re-creating the notmuch-show-mode buffer. Various other > pseudo-buffer-local variables were present based on an ad-hoc scheme. > > Replace the ad-hoc scheme with real buffer-local variables and then > update `notmuch-show-refresh-view' to erase and re-paint rather than > kill and re-create. Update the crypto switch accordingly. Hey, David. Thank you so much for this! I was really hoping someone would eventually pick this up, and your solution is great! This new behavior is *much* nicer. I really like it. I haven't done a full code review, though, just tested it out. I may not be able to get to it for a while, so please don't hold this patch up on my account). > Add two other toggles: > - whether non-matching messages are available, > - the indentation of message contents. > Both of these default to the current behaviour. These new features enabled by this are very cool! I love them both. I bet there are other interesting toggle features that could be enabled by this. > My inclination is to remove `notmuch-crypto-process-mime' altogether > (declared it an obsolete variable) and allow users to set a default > for `notmuch-show-process-crypto' directly, but that is not done in > this patchset while awaiting feedback. I'm not sure I understand this. `notmuch-show-process-crypto' *is* what sets the default for the `notmuch-show-process-crypto' buffer-local variable. How would you change the current behavior or settings (beyond just a variable rename)? > `notmuch-crypto-process-mime' is used only in notmuch-show.el, so the > setting really belongs there with an appropriate name. I intentionally put this in a separate section in case there were eventually other needs for this setting beyond just show mode. I personally think we should just leave it where it is, particularly since it's been there for a while. jamie.