Setting output separator for IO object

(Crossposting note: I have also posted this question at
because I didn’t get any response here).

From the documentation of IO#print:

“Writes the given object(s) to ios. … If the output record separator
($) is not nil, it will be appended to the output.”

If I take this literally, it meanst that I can only have a single output
separator (S) for all streams. But in general, I have several streams
open for writing. How can I set different output separators for them?