Text conversion that doesn't break your HTML