Hey: This is maybe a bit outside the clojure-eco system, but: I have used conjure (with great pleasure) in neovim. I really like the evaluate inner expression, outer expression work-flow. Conjure also works with python and julia with the same workflow. As I understand it, this functionality is based on tressitter parsing (but what do I know?). I work mostly in these two languages for non-hobby stuff. Does anybody know how to get the same experience working in julia or python in Emacs?
Is it about evaluating code? If so, I have developed some things for Python. Here's my config: https://github.com/DavidVujic/my-emacs-config A post about what it does with links to previous posts about the subject, and how the config has evolved: https://davidvujic.blogspot.com/2025/04/feedback-loops-in-python.html
The post describes a workflow with Jupyter, but the earlier posts a more simple setup for code evaluation that probably is enough most of the time (have a look at the "joyful python with the repl" post for more details.
The last time I was doing heavy python development (2 years ago or so), emacs was just not in the same ballpark as PyCharm. If you are looking for the best interactive development experience for python, I would give pycharm a try. (I say this as someone who uses emacs as my primary editor; if I were required to do significant python work, I would have pycharm open to do it).
I think Emacs is the best Python editor, even if PyCharm is great. Using "elpy" (or the lsp choices if you prefer) will make Emacs into a Python IDE. With the REPL driven additions I suggest above it will be a very nice developer experience that isn't as easy to achieve in other editors.
Iโll give your suggestions a try!
I use both gptel and eca, and like them both. Eca for the copilot/chat and connecting effortless to MCPs, but also using gpel because of its great programmatical support (request and response/callback via elisp). Here's a recording of what I mean with Emac awesomeness for Python + LLM interaction ๐ The REPL driven things (the little python-formatted popup with the data) is something I have developed (see previously shared link). The REPL buffer is IPython.
That is pretty slick!
Great! I think the combination of elpy-shell-send-statement and elpy-shell-send-group comes fairly close to what I'm looking for.
I think Emacs is the best Python editor,Small correction. Emacs off the bat, may not be but certainly can become the best Python editor. Here's a practical example from me - not a full-time, but only occasional Pythonista:
Just the other day I was having to deal with a huge nested Python map, and I know Clojure has far better tools to explore, inspect and visualize deeply nested data. So, I didn't even blink - asked gptel to help me and got two functions:
python-to-edn and python-to-json, https://github.com/agzam/.doom.d/blob/main/modules/custom/python/autoload.el#L74
These two simple suckers (each no longer than 10loc) saved good amount of time not just for me alone - my whole team.
Can you imagine anyone ever building a feature like that into Pycharm? And that's just a tiny, specific example - if I really end up using them a lot, I might be tempted to turn them into a full-fledged package with more features, extending one's workflow where only imagination is the limit.
Those are pretty slick! And no I cannot imagine anyone developing those for PyCharm. My preference for PyCharm for things Python is based around its debugger and out of the box REPL integration. It's possible that emacs has closed the gap or surpassed PyCharm there, but it hadn't the last time I was writing Python. Tangentially, but have you used ECA? I switched to ECA a while back... but I sort of think I actually used LLMs more when I was using gptel. I may switch back.
> have you used ECA No I have not used ECA, I think it's good for project-wise analysis and vibe-coding, but my Emacs needs typically don't require that level of LLMing - gptel works great for me when I need to do something very specific, like the examples above. I do need though to up my game for vibe-coding in Emacs. Even though the tasks I usually perform go beyond a single project analysis, I find Claude Code extremely helpful even for larger things, like finding relevant API documentation when analyzing failing test output, etc. gptel is a great package on its own, and I haven't even figured out yet the tools or connecting MCP servers and such.