In general, I am pretty happy with the tab-completion provided by Emacs. However, I would like to avoid situations like this one.

While programming in Lisp with Slime and SBCL, I am doing a let-binding of this expression (render-url url-instance)) in the following code snippet:

 (dolist (url-instance  (urls-visited-over-threshold (url->bookmark-visit-threshold *browser*)))
      (if (is-url-new-to-bookmarks-p (render-url url-instance))
          (if-confirm ("Do you want to bookmark ~a?" (render-url url-instance))
                      (bookmark-url :url (render-url url-instance)))))))

After creating the let-binding with the url-address I thought I would be able to replace it using tab-completion

(let ((url-address (render-url url-instance)))
        (if (is-url-new-to-bookmarks-p url-address)
            (if-confirm ("Bookmark ~a?" url-address)
                        (bookmark-url :url (render-url url-instance)))))

However, as I remove (render-url url-instance) and I start to type url-a... to achieve url-address I cannot do tab completion. And I have saved the file.

Is there a way to solve this?

  • 1
    This seems more like a content for bug report rather than a Q&A site.
    – Dmitry
    Jul 3 at 22:01
  • 1
    FWIW, this example works fine in emacs-lisp-mode. Try the SLIME bug tracker.
    – Dmitry
    Jul 3 at 22:04
  • @Dmitry I did not know this could be a bug. Jul 3 at 22:29
  • 1
    The important thing is to evaluate the the let expression, not to save the file.
    – aadcg
    Jul 28 at 22:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.