normalize: support space=preserve