Fork me on GitHub
#emacs
<
2022-10-23
>
lilactown00:10:09

I've attempted to use emacs for email and failed

1
Drew Verlee00:10:18

I want to get excited about guix, because (shocker) i like lisp. But i get really nervous because i don't understand the arguments about free software and they seem to be too "consuming" for me, like if i have spare energy i'm going to go jog, not worry about nuclearwarglobalwarmingandalotofotherpain. Or at least free software issues rank fairly low on the list for me. But at the same time, i get the impression a lot of lock in services do so because they have lost their competitive edge.

Drew Verlee00:10:14

I bet I could observe this in nature, if i knew how to look.

macrobartfast18:10:15

I just got a lot farther with helm and projectile and it’s a game changer! The one thing I’m still struggling with is getting a buffer up that would show all functions in a project organized by file that has fuzzy narrowing by typing. I often forget which file a particular function is in and this would help me a lot. Any thoughts?

Benjamin17:10:28

git-grep project wide. Personally I use consult git-grep and ripgrep. There are helm-projectile commands for this. It is good enough in clojure projects I find. Symbol names are usually unique

lukasz18:10:29

helm + ctags?

lukasz18:10:35

(or etags)

macrobartfast18:10:25

I’ll take a look!

macrobartfast18:10:18

Another and different need (but this is a bit out there and may not exist): is there any way to see a tree of function calls in a buffer? What I mean is, if (foo) calls (bar) and (biz)… and (biz) calls (baz)… I should be perhaps able to get a textual tree of those calls that I could navigate and jump to the defn for them. All the better if I could browse down the tree and see the defn’s in a buffer open to the side without the pointer going there… sometimes called ‘peeking’. Any other approaches to this are welcome. I spend a lot of time walking my code base with jump-to and then I have to get back. (part of the problem I am trying to solve is from my poor code organization and, probably, using functions in too imperative a style; getting better at those aspects will also help).

fedreg18:10:23

maybe this? https://docs.cider.mx/cider/debugging/tracing.html not sure about jumping to def from there though...

macrobartfast18:10:59

Oh wow… that is sweet and in the right direction!

macrobartfast18:10:54

And this would also help me previsualize function calls, probably, before I start writing them.

vemv19:10:53

Are you seeking this? https://clojure-lsp.io/features/#call-hierarchy hierarchy is static, tracing is dynamic (both are perfectly fine and can easily complement each other)

macrobartfast19:10:19

That pretty much looks like it! I’ll play with it.

Benjamin17:10:41

I you want a list of vars in a buffer imenu