I tried padding a Unicode string with bash's printf, and saw that, while
printf "%2s" a
yields the expected " a",
a Unicode variant
printf "%2s" ä
yields a surprisingly unpadded "ä". (zsh gives the expected result.)
What causes this; and how am I supposed to pad Unicode strings in bash?
LC_CTYPE
to be in a.UTF-8
locale for the reported behaviour to manifest.