On Sat, May 17, 2014 at 11:51:40AM -0700, Kevin J. McCarthy wrote: > Karl Voit wrote: > > After renaming, I want to invoke my editor, make my manual changes > > to the email body and after quitting the editor, mutt should take > > over again. > > > > However, when I rename TMPFILENAME to muttfilename, mutt takes over > > the process again. This skips the editor part completely. Mutt > > complains that the muttfilename is missing: > > > > "Can't stat /tmp/mutt-grmlvrs-1002-5074-359: No such file or > > directory" > > Hi Karl, > > Mutt doesn't attempt to stat the file until after the "editor" process > exits. My guess is that your os.rename() command (or some other line in > the script) is failing and python is aborting. You may want to take a > look at https://pthree.org/2011/03/24/hashcash-and-mutt/ for an example > python wrapper and see if that helps. > I have a bash wrapper for vile (another vi clone, very like vim) which works fine, it's as follows:-
#!/bin/bash # # # Wrapper script for using vile from mutt # fn=$1 # # # See if file has long lines # ll=`wc -L $fn | sed s#$fn##` if (($ll > 100)) then # # # Wrap long lines (and include a '> ' at the front of each wrapped section) # tmp=`mktemp /tmp/vimuttXXXXXXX` cp $fn $tmp awk ' /^> / { if (length($0) > 100) { nl = "" n = split($0, ln) for (i = 1; i <= n; ++i) { nl = nl ln[i] " " if (length(nl) > 72) { printf("%s\n", nl) nl = "> " } } printf("%s\n", nl) } else { print } } !/^> / { print } ' $tmp >$fn rm $tmp fi vile -c':set wrapmargin=-72' $fn -- Chris Green