In order to simulate a mouse click it would be more convinient to send a mousedown when pressing a key and a mouseup when releasing instead of a default click duration (12 ms according to xdotool).
However click in a macro should maintain the current behavior of click (maybe with an optional second argument with the duration of the click)