You take the first six bits of your binary data and convert to some ascii char mapping. And then the the next 6 bits and so on.
You can't do that with unicode, and it wouldn't make sense for any other encoding standard.
They are completely different things.
Its a really silly, stupid situation I need this for, exchanging data with Python and I can only use Unicode strings.
Sure, kinda: https://github.com/pfrazee/base-emoji (it's a base256 using emoji), but then you still need to encode that text, which is going to require 4 bytes per symbol, so I'm not sure you're going to get any actual gain over B64/B85 in the end. There's also the option of using a subset of the U+0100~U+07FF range (though it contains a diacticial block which may not be ideal) as it encodes to 2 bytes in both UTF-8 and UTF-16 (though there are diacritics in these blocks, and some of the codepoints are reserved but not allocated so…).
I know and that's the purpose I use it for: to smuggle in binary data as text, but no reason why an encoding scheme should not be dual purpose. Thanks for the tip about ISO-8859