to_header now support markdown header