anchor.diff:               (insert-string point string))))
       (let* ((port (or (spec-port spec) (lem-utils/socket:random-available-port)))
              (process (when-let (command (get-spec-command spec port))
  +                      (check-exist-program (first command) spec)
                         (lem-process:run-process command
                                                  :output-callback #'output-callback))))
         (make-server-info :process process
  
positive.code:                         :disposable (lambda () (lem-process:delete-process process))))))
  
  (defmethod run-server-using-mode ((mode (eql :stdio)) spec)
    (let ((process (async-process:create-process (get-spec-command spec) :nonblock nil)))
      (make-server-info :process process
                        :disposable (lambda () (async-process:delete-process process)))))
  
  (defun run-server (spec)
    (run-server-using-mode (spec-mode spec) spec))
  
negative.code:                     (find-root-pathname (buffer-directory buffer)
                                          (spec-root-uri-patterns spec)))))
      (handler-bind ((error (lambda (c)
                              (log:info c (princ-to-string c))
                              (kill-server-process spec))))
        (let ((new-client (establish-connection spec)))
          (cond ((null new-client)
  