Giter VIP home page Giter VIP logo

Comments (6)

vemv avatar vemv commented on May 25, 2024

Hi, thanks for creating the discussion!

I'm not sure I understand the use case, mind to expand?

completing-read normally is a tool for accomplishing something else - it's not a end user intent in itself.

from cider.

enzuru avatar enzuru commented on May 25, 2024

@vemv very simply, I can search a Clojure symbol that is defined by name, and then select it to get documentation. With something like Ivy or Vert&co (which puts completing-read on steroids), I can fuzzy search said name. Here is a picture
cider

By using completing-read, I can be mostly agnostic to the completion framework you use, even if you use none. (Not sure if Helm supports completing-read yet though...)

from cider.

vemv avatar vemv commented on May 25, 2024

Hmm, I can M-x cider-doc, type "red", trigger completion, and see:

image

Then the following pops up:

image

Probably that *Completions* buffer can be customized by users for Ivy/etc to be used instead.

Let me know if that workflow isn't sufficient to replicate what you built - we'd welcome a PR that optionally made it richer.

from cider.

vemv avatar vemv commented on May 25, 2024

A simpler workflow is typing "red", triggering autocompletion with TAB or a similar keybinding, and letting a framework like company-mode show the doc:

image

from cider.

enzuru avatar enzuru commented on May 25, 2024

@vemv yeah, swapping out completing-read (which is what the completion frameworks do) does not change the cider-doc, which I am guessing is using separate completion machinery?

I agree there are other ways to search, I was just trying to search in the same way I search Emacs Lisp.

from cider.

vemv avatar vemv commented on May 25, 2024

cider-doc is defined honoring a cider-prompt-for-symbol-function defcustom, like so:

cider/cider-doc.el

Lines 287 to 298 in 25c51fd

(defun cider-doc (&optional arg)
"Open Clojure documentation in a popup buffer.
Prompts for the symbol to use, or uses the symbol at point, depending on
the value of `cider-prompt-for-symbol'. With prefix arg ARG, does the
opposite of what that option dictates."
(interactive "P")
(cider-ensure-connected)
(funcall (cider-prompt-for-symbol-function arg)
"Doc for"
#'cider-doc-lookup))

Note that it receives #'cider-doc-lookup as an argument.

By customizing cider-prompt-for-symbol-function you should have all it takes for a custom UX, with docs displayed inline.

Let us know how it works for you. I'll close the issue for now, but feel free to keep the conversation going!

We'd always welcome further customization options or perhaps, if no changes are needed, a "how to" in our user manual.

Cheers - V

from cider.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.