I have a minor comment on pacman --print: pacman -Q --print is the same as pacman -Qp, so the result of "pacman -Qi evince --print" is 'error: package "evince" not found', because pacman searches for 'evince' package file. Clearly, it is stupid to use --print with -Q, but pacman shows that option with -Qh.
I think we should not show "--print" with all -h operations, this is needless with (not yet implemented) -Dh, too. Then I think we can forget about my minor comment above. Bye