p3r7 / clojure-essential-ref

đź”– cider-doc to "Clojure, The Essential Reference"
MIT License
46 stars 2 forks source link

what command triggers seeing the documentation for a function? #2

Closed drewverlee closed 3 years ago

drewverlee commented 3 years ago

In short, Given I have installed the package. I expect i should be able to put my cursor over text in a clojure file and type something in e.g ", h e" and see the clojure essential docs for that function. I'm not sure what the shortcut is, or how to customize is. Typically, when i install a package i can see the commands when I type "M-x" and then the name of the package. e.g "clojure-essential-ref" but in this case, nothing seems to come up.

Thanks for any input you can give!

p3r7 commented 3 years ago

Hi,

The exposed commands are documented at the beginning of the readme (e.g. clojure-essential-ref).

That’s weird that you don’t see them available under M-x.

As for keyboard shortcuts, it’s up to you to define them with your preferred method. An example on how to do for non-vim-like bindings and via use-package is provided at https://github.com/p3r7/clojure-essential-ref#usage.

How did you “install” the package? Manually or via use-package/straight/leaf/...?

drewverlee commented 3 years ago

In order to give the package a try, i had done a temporary manual installation via M-x package-install. But i just realized I have it also have it in my .spacemacs.d/init.el > dotspacemacs-additional-packages (use-package clojure-essential-ref :bind... where i have defined shortcuts that don't see to do anything.

This is likely an issue on my end, ill try to figure it out.

p3r7 commented 3 years ago

Yes, installing a package doesn't put its functions/commands/vars in the global Emacs ns.

You have to explicitly require the package in your init.el.

use-package is a handy macro for combining both those tasks (+ others such as binding hooks and keyboard shortcuts). Note that use-package may not systematically install packages depending on the value of use-package-always-ensure. This is a common pitfall, see the appropriate doc section for more details.

Also, please note that clojure-essential-ref will only work when a CIDER session is running. Likewise, example keyboard bindings are only active when CIDER is on.

BTW, I remember enjoying your series of blog post on design patterns. I've just seen that you did another one on Datomic that I look forward to read :smiley:

p3r7 commented 3 years ago

I'm gonna close this issue due to lack of activity.

I'll reopen if there ever was something I'd have missed.