               (error nil))))
     (when (and (> linestart parenopen) linesym funcsym)
       (setq funcsym nil))
+    ;; (message "exprsym = %s, funcsym = %s, linesym = %s" exprsym funcsym linesym)
     (or exprsym funcsym linesym "nothing found")))
 
 (defun zomp-get-eldoc-string ()


(defun zomp-symbol-at-point ()
  (interactive)
  (let ((linestart 0) (parenopen 0) funcend linesym funcsym)
    (setq linesym
          (save-excursion
            (back-to-indentation)
            (setq linestart (point))
            ;; (forward-word)
            (condition-case nil
                (search-forward-regexp zomp-identifier-regexp)
              (error nil))

            (when (search-backward-regexp " [:=/*+-]+ " linestart t)
              (forward-char 1)
              (search-forward-regexp "[ a-aA-Z0-9]")
              (setq exprstart (point))
              (condition-case nil
                  (search-forward-regexp zomp-identifier-regexp)
                (error nil))
              (buffer-substring exprstart (point)))))
    (setq funcsym
          (save-excursion
            (condition-case nil
