This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-09-21
Channels
- # announcements (51)
- # asami (5)
- # babashka (25)
- # babashka-sci-dev (26)
- # beginners (33)
- # calva (10)
- # clj-kondo (51)
- # clj-yaml (99)
- # clojure (96)
- # clojure-australia (3)
- # clojure-berlin (5)
- # clojure-europe (151)
- # clojure-norway (58)
- # clojurescript (20)
- # cursive (13)
- # datalevin (1)
- # datomic (19)
- # docker (6)
- # emacs (55)
- # events (1)
- # fulcro (50)
- # gratitude (8)
- # juxt (7)
- # leiningen (5)
- # malli (6)
- # membrane (1)
- # nbb (28)
- # off-topic (22)
- # pathom (7)
- # polylith (20)
- # portal (1)
- # reagent (37)
- # reitit (2)
- # releases (2)
- # reveal (32)
- # scittle (34)
- # shadow-cljs (46)
- # testing (10)
- # tools-deps (33)
- # xtdb (18)
Hey folks, as I am preparing my emacs for my new full time clojure job (🎉🎉🎉) I'm pondering if switching from Lsp to eglot is actually something worth pursuing
I was hoping to have lease dependencies and use more emacs internal stuff and hopefully get an increase in performance
Did any of you switch or have any insight on this to share?
@U976F1AR2 did that a year or so ago
How did it go? Easy? Have you been happy with eldoc reporting or are you using eldoc-box or something else entirely?
I made the switch somewhat recently, it was pretty easy. Also, I am using eldoc-box, just because I dont always like eldoc to be in the minibuffer, but im sure it would be fine without it
Im not sure if there were any increases in performance, but I like that eglot uses mostly built-in functionality
I enjoyed Eglot for a long time but i went back to lsp-mode because I was missing this one a lot https://github.com/joaotavora/eglot/issues/661
Oh, good to know that @UBRV1HXPD! find definition of external dependencies including java stuff that clojure-lsp now supports seems quite important
Thanks for the input folks
Is there a resource forbidding dap mode with clojure?
(Newbie to dap mode in general)
@U0J8XN37Y So far I have used DAP only with C, unfortunately I don’t know any resources regarding Clojure.
@UBRV1HXPD nevermind, I go through the dap-mode readme 👌:skin-tone-4:
Found that on the lsp document site 😅
@U0J8XN37Y At first glance, it seemed to me that it only concerns Java.
Looks like one needs to configure the jvm for debug info
Just curious about debugging tools
Need to further my knowledge with cider too
Thanks for all the input! I‘m looking at the cider debugging documentation right now
@UKFSJSM38 my emacs-lisp fu is not very deep, but I'd love to help out and learn 🦾
If in any case you want to start the clojure-dap 😅
Just saw that cider debugger had conditional breakpoints, which is super awesome
@U0J8XN37Y the good news is dap-mod eos already done, we just need the server side of dap which could be in any lang including clojure :)
That sounds good, is there any resource you could share on how that's done? I'd love to give it a shot
Yes, https://microsoft.github.io/debug-adapter-protocol/ should be a good start
Awesome, thx! Will have a look at that
If there any projectile users here… C-p seems to immediately show a list of files to jump to… I think I’m supposed to be able to add another key to tell projectile what to do (i.e. ‘r’ for replace) but r just narrows the list to files that have r in the name. Thoughts?
C-p does nothing on my emacs. What's the name of the command? projectile-switch-to-buffer
?
I think you need projectile-replace
aha… you’ve helped me with my question…
so, I guess, projectile comes with built in bindings somehow…
C-p does in fact do something projectiley in my setup… let me look at my .init.el
C-h c
and then type C-p
to see the command it runs
aha… so I had added:
(define-key evil-normal-state-map (kbd "C-p") 'helm-projectile)
(define-key evil-normal-state-map (kbd "C-c a") 'helm-projectile-ag)
(define-key evil-normal-state-map (kbd "C-c s") 'helm-projectile-switch-project)
(define-key evil-normal-state-map (kbd "C-c b") 'list-buffers)
and that’s probably a projectile antipattern as the documentation above suggests that I’ve gone outside of somekind of baked in binding scheme of theirs.
that’s probably what I need to set up properly.
so I just need to bind C-p to projectile-commander, apparently, instead of helm-projectile (but we’ll see).
I’m as always confused by projectile vs helm-projectile and so on.
Most of these libraries aren't even needed imho. Just use the built-in packages until you're sure they don't cut it for you. One of my resolutions for 2023 will be to trim down my init.el 😉
that is actually sound advice… both for emacs and clojure.
I mean, I reach for libraries when I could use built in features.
This year I switched from ido to ivy+a bunch of other packages that supposedly "enhance" it. Sure, the result was fancier than what I had before, e.g. searches are on another level but on the other hand the new setup breaks more frequently and I don't even use most of what the packages offer :man-shrugging:
that is awesome, and I totally support it.
spacemacs is probably something I should look at, but I’m holding out.
terminal emacs here.