On Thu, May/29/2008 02:52:17PM, Kyle Wheeler wrote: > On Thursday, May 29 at 03:06 PM, quoth Ethan Mallove: > > When mutt starts up, it immediately selects my =Inbox. Is there a > > way to turn this behavior off? I ask because I'm launching mutt > > using -e, e.g., > > > > $ mutt -e 'push "c=foo\n"' > > > > (It may seem odd to not just do "-f =foo". I'm using "push" > > to get the "foo" folder in my "Open mailbox" history.) The > > problem is that when I use the "-e push" command, mutt opens > > two folders one after the other: first Inbox (default?), and > > then "foo". Is there a way to tell mutt to *not* open Inbox > > at startup? > > So, if I understand you, the goal is to get mutt to have "foo" in the > history, and the issue here is that your workaround to manually put > something into the history has a side-effect you don't like (namely, > opening the inbox). > > How about combining things? Like so: > > $ mutt -f =foo -e 'push "c=foo\n"' > > Of course, what'll happen there is that mutt will do exactly what it's > told. It'll open the foo mailbox, and then will re-open it. But at > least it won't open the inbox first. > > I think you may be able to avoid opening it twice by telling mutt to > do something other than open a mailbox at first. Like so: > > $ mutt -y -e 'push "c<kill-line>=foo\n "' > > What that'll do is tell mutt to open up to a mailbox listing first, > and THEN change into the foo mailbox, thereby only opening foo once > (the "kill-line" bit is because the chdir prompt in the mailbox > browser behaves a little differently than the chdir prompt in the > index listing, and the space at the end is important for the same > reason). > > One last thing... when you're doing macros (that includes push > commands), it's *best* to avoid using command letters. What can happen > is that someday you may change a key binding and then discover that > all your macros need to be modified. You should really get into the > habit of calling functions directly. Presumably you're going to be > using a script to call mutt, so you don't have to retype this all the > time. So, try this: > > $ mutt -y -e 'push "<change-dir><kill-line>=foo<enter><view-file>"'
This does *exactly* what I want. Thanks! -Ethan > > ... of course, if all you want is for mutt to have a specific thing in > its history, it's more direct to simply use the $history_file setting, > and then add something to the end of it just before launching mutt. > For example... > > $ echo '6:=foo|' >> ~/.mutthistory && mutt -f =foo > > ~Kyle > -- > What progress we are making. In the Middle Ages they would have burned > me. Now they are content with burning my books. > -- Sigmund Freud
