[dist] prepare for loose option
[minor] add loose option to retain one whitespace
[test] add tests against loose option