/savebuf itself does not have that option. What you could do is the following:
[color:green]; create a new alias to use instead of savebuf[/color]
[color:green]; to use, type /savewin @windowname filename[/color]
alias savewin {
[color:green]; error checking[/color]
if ($!3) { echo -a 4 savewin error: incorrect parameter count | halt }
if ($left($1,1) != $chr(64)) { echo -a 4 savewin error: parameter 1 should be a windowname | halt }
[color:green]; create a new window[/color]
window @savewintemp
[color:green]; send every line from the specified window to the new window, stripping all codes[/color]
var %i = 1
while (%1 <= $line($1,1)) { aline @savewintemp $strip($line($1,%i)) | inc %i }
[color:green]; savebuf the stripped version[/color]
savebuf @savewintemp $2
[color:green]; clean up mess[/color]
close -@ @savewintemp
}
NOTE: /savebuf will overwrite any existing file. If you wish to append, you need to use /filter instead. In that case, /filter is easier anyway, since it has the option to strip codes without this messy code, and also has the option to strip colors but not bold, etc.