generate: add --in-place option