title: A more powerful version of dot (repeat)
body: <p>I know about recording with <code>q</code> into registers, but I was wondering if it's possible to set something up to quickly recall the last recording, in much the same way that <code>.</code> recalls the last short editing command (see <a href="https://stackoverflow.com/questions/12566235/what-can-the-dot-command-repeat-exactly?rq=1">here</a> for a discussion on <code>.</code>).</p>
  
  <p>I know about <code>@@</code> but it only seems to work after doing <code>@z</code> where <code>z</code> is the register used. 
  e.g. to make the recording you must type <code>qz</code>, go on to do your thing, <code>q</code>, and then in order to run the recording you must <code>@z</code> before you can start <code>@@</code>-ing to repeat that. </p>
  
  <p>My hack solution now is a bind <code>nnoremap , @q</code> which lets me do recordings with <code>qq</code> and ending them with <code>q</code>. Is there something better (e.g. something that records into a particular register with a single keystroke, <strong>or</strong> something that specifically repeats the last-recorded macro)? admittedly that isn't a huge improvement, as it's pretty optimal already. </p>
  
  <p>For me a single register that is easy to use is generally more useful than a large number of registers that require a bit more work to get at. Though this could just be that I'm bad at remembering things and don't see myself effectively making use of more than one.</p>