   (interactive)
   (merlin-update-point (point))
 )
-
+(defun merlin-edit (start end length)
+  (if (< start merlin-lock-point)
+      (merlin-update-point start)))
 ;; COMPLETION
 (defun merlin-extract-complete (prefix l)
   "Parses and format completion results"

    (auto-complete-mode)
    (set (make-local-variable 'merlin-lock-point) (point-min))
    (setq ac-sources '(merlin-ac-source))
    (set-process-query-on-exit-flag (merlin-get-process) nil)
    (merlin-parse)
    (if (> merlin-idle-delay 0.)

      (merlin-tell-piece "struct" merlin-lock-point point)
      (merlin-flush-tell)
      (if (merlin-view-errors)
	  (setq merlin-lock-point (point))
	(merlin-seek merlin-lock-point)
	)
      ))
  (merlin-update-overlay)
  )
