Suppose I want to rot13 every string passed to cout (or another ostream), so that, say cout&lt;&lt;"Foo Bar Baz.;" (or even cout&lt;&lt;rot13&lt;&lt;"Foo Bar Baz.";) outputs Sbb One Onm.

How would I go about doing that?

(My first idea was to replace cout's streambuf with a streambuf-derived class that would do all the work. But seeing as the original streambuf is responsible for directing stuff to the console... that didn't work out at all.)


Question: How to allow users to choose different theme?
Answer: I am also convinced with Switch Theme module. It provides a dropdown created in a block that provides option to choose any of the theme enabled from the backend.

So you just need to enable themes from backend that you want to show users to switch.

Hope it will help!