unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Emacs tip: navigate (and fuzzy search!) your package definitions
@ 2019-02-04 19:37 Pierre Neidhardt
  2019-02-06 20:44 ` Vladimir Sedach
  0 siblings, 1 reply; 2+ messages in thread
From: Pierre Neidhardt @ 2019-02-04 19:37 UTC (permalink / raw)
  To: help-guix

[-- Attachment #1: Type: text/plain, Size: 875 bytes --]

Hi Guix!

At FOSDEM I realized that many Guix users/developers and Emacs users did
not seem to know about a nifty trick: M-x imenu (or better: helm-imenu
and helm-imenu-in-all-buffers or some Ivy/Counsel equivalent) allows you
to navigate through the package definitions in the .scm files.

This is super handy to jump from package definition to package
definition when you know which one you are looking for.

Unfortunately, Emacs' scheme-mode still has a bug and does not parse
"define-public" properly.  Alex Kost has a patch:
https://gitlab.com/alezost-config/emacs/blob/master/utils/al-scheme.el

Put the above file in your Emacs' load-path and add a "(require
'al-scheme nil :noerror)" to your Emacs' config.

(By the way I've reported the issue and Alex' patch upstream -- still no
answer.)

Hope you find it handy!

Cheers!

--
Pierre Neidhardt
https://ambrevar.xyz/

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Emacs tip: navigate (and fuzzy search!) your package definitions
  2019-02-04 19:37 Emacs tip: navigate (and fuzzy search!) your package definitions Pierre Neidhardt
@ 2019-02-06 20:44 ` Vladimir Sedach
  0 siblings, 0 replies; 2+ messages in thread
From: Vladimir Sedach @ 2019-02-06 20:44 UTC (permalink / raw)
  To: Pierre Neidhardt; +Cc: help-guix

> or some Ivy/Counsel equivalent)

I like ivy-imenu-anywhere from the imenu-anywhere package (which also
provides helm and ido versions).

imenu is one of the great ideas in GNU Emacs that does not get enough
exposure. If you work on a GNU Emacs major mode you should definitely
think about how you can provide information via imenu.

Vladimir

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-02-06 20:57 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-04 19:37 Emacs tip: navigate (and fuzzy search!) your package definitions Pierre Neidhardt
2019-02-06 20:44 ` Vladimir Sedach

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).