title: Tracking flexitime using Emacs (& org-mode)
body: <p>So, at work we use flexitime (flex hours, flexi hours...) which is nice but can be hard to keep track of. I'm currently using org-mode to keep track of my hours (<code>org-clock-(out|in)</code>) but I'd like to extend that to automagically calculate if I've worked more than 8 hours (surplus time should be added to my flexitime 'account') or less (depending on how long lunch break I took etc), the balance on my flexitime 'account' and such.</p>
  
  <p>Does anyone else use Emacs for this? </p>
  
  <p>I'm currently using a very basic setup to track my time:</p>
  
  <pre class="lang-lisp prettyprint-override"><code>(defun check-in ()
    (interactive)
    (let (pbuf (current-buffer))
      (find-file (convert-standard-filename "whatnot"))
      (goto-char (point-max))
      (insert "\n")
      (org-insert-heading)
      (org-insert-time-stamp (current-time))
      (org-clock-in)
      (save-buffer)
      (switch-to-buffer pbuf)))
  
  (defun check-out ()
    (interactive)
    (let (pbuf (current-buffer))
      (find-file (convert-standard-filename "whatnot"))
      (goto-char (point-max))
      (org-clock-out)
      (save-buffer)
      (switch-to-buffer pbuf)))
  </code></pre>