   (zomp-shell-do "!")
   (zomp-shell-do "!syntax sexpr"))
 
+(defmacro zomp-add-seperator ()
+  "Will add a seperator line to the Zomp mode menu."
+  `(local-set-key [menu-bar zomp ,(gensym "zomp-seperator")] '("--")))
+
 (defmacro zomp-add-action (command key caption &rest path)
+  "Will add a command with a key binding to the Zomp menu."
   `(list (local-set-key ,key (quote ,command))
          (local-set-key [menu-bar zomp ,@path ,command] '(,caption . ,command))))
 
-(defun zomp-forward-sexp ()
-  (interactive)
-  (forward-sexp) )
-
-(defun zomp-backward-sexp ()
-  (interactive)
-  (backward-sexp) )
-
 (defun zomp-current-line ()
-  "Return number of current line in current buffer
-    (provided by `zomp.el` because it was not defined)"
+  "Helper function which returns number of current line in current buffer."
   (count-lines (point-min) (if (eobp) (point) (1+ (point)))))
 
 (defun zomp-indent-line ()
+  "Will indent the current line. Tries to be smart about various situation but
+still screws up sometimes. Please file bug reports!"
   (interactive)
   (let ((left 0) (oldindent 0))
     (save-excursion

      (indent-region (region-beginning) (region-end)))))

(defun zomp-indent-buffer ()
  (interactive)
  (save-excursion
    (indent-region 0 (buffer-end 1))))

(defun zomp-current-line-indent ()
  (let (lineBegin)
    (save-excursion
      (beginning-of-line)

        (backward-char)
        (if (looking-at "end")
            (forward-word)
          (goto-char next-line-pos))))))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; shell interaction
