 
     (save-excursion
       (back-to-indentation)
-      (setq wordAtLineBeginning (zomp-symbol-at-point)))
+      (setq wordAtLineBeginning (zomp-function-before-point)))
 
     (unless (eobp)
       (save-excursion

        (setq left (- left 2)))

      ;; unindent keywords like elseif etc.
      (when (member (zomp-symbol-at-point) zomp-unindent-keywords)
        (setq left (- left 2)))

      (delete-horizontal-space)

                      (current-column))
                  (error 0)))

          (let ((w (zomp-function-before-point)))
            (cond ((looking-at "\\*")
                   (setq left (- left 1)))))

