I feel like this is a silly question, but here goes:

    I've recently found myself toggling back and forth the "postponed" variable 
to deal with either postponing messages locally (no network dependancy!) or 
dealing with postponed messages in a remote IMAP mailbox for collaboration with 
a mobile client (e.g. Gmail's Drafts folder).

    Experience has shown there is no one right answer, I need to use one 
definition of postponed sometimes, and one the other.

    Ideally I'd like to bind a key to toggle between two values of a string 
variable. There doesn't seem to be a good way to accomplish this -- is there a 
trick?

    As an alternative, I (notionally) bound ,a to :set postponed to one value, 
and ,b to :set it to another. I do not love this. Both display the result (:set 
?postponed\n) so I can at least see what I've done.

    I realize on some level this is plea for macro/scripting language with true 
conditionals, and we're not going to get there anytime soon. The last time I 
had a problem of this nature in mutt I bound the macro to ! execute a perl 
script that did its thing and then made use of the fact that mutt was running 
under screen(1) and used screen's "slowpaste" to tell mutt to :source a 
temporary file that redefined things as desired. Since my mutt isn't running 
under screen anymore (although I suppose I could), this approach doesn't work, 
and it was pretty janky anyhow.

    I guess it's collateral, but I was surprised that I couldn't get :toggle to 
work with a $my_foo variable. I guess it would not really have helped me make 
progress, but seemed like it could be a building block in some more complex 
scheme.


    Thanks for any thoughts.

--
jh...@alum.mit.edu
John Hawkinson

Reply via email to