You can only attack when next to an enemy. You should be able to attack whenever and see the attack animation and result. That way you can figure out weapons prior to having to use them.
Uhm, no. You can attack whenever you want. You just need to have a weapon.
Pretty sure I had weapons and couldn't attack until in range...