OpenOffice was insisting on splitting a line a string of text !$has_money between the exclamation point and the dollar sign.
As far as i can tell the only solution is to insert a special character, the "zero-width non-breaking space": U+FEFF.
It's something like fifth from last when using the insert special character dialog.