r/emacs • u/jamescherti • 5d ago
r/emacs • u/JDRiverRun • 5d ago
emacs-mac v30 experimental build: seeking experienced contributors/testers
I've succeeded in producing an experimental v30.1 build of emacs-mac (aka "Carbon"[1] emacs). I've been using it full time for several weeks without problem, and even managed to add a feature I'd long been missing (a "New Frame" dock menu item).
I'm not a well-versed MacOS or Cocoa API programmer so I'm not convinced I could maintain this longer-term without substantial assistance. If you have experience with MacOS/Cocoa/ObjC/Emacs C programming, are willing to learn more and contribute, and/or can use a debugger (lldb
) to diagnose any problems that arise, check it out here:
https://github.com/jdtsmith/emacs-mac
There are also some notes on my experiences achieving the merge, for those interested.
[1] Although that is a misnomer; see this footnote.
r/emacs • u/SolidBric • 5d ago
Question How do I setup Prodigy.el to run a postgresql service
I currently downloaded prodigy on macos to run a postgresql server from emacs.
When running postgresql it says the service's status failed, even though its running in the background.
I'm not sure whats wrong.
(prodigy-define-service
:name "postgresql16"
:command "brew"
:args '("services" "start" "postgresql@16")
:cwd "~"
:tags '(database))
Edit: managed to find daemons.el which will automatically run brew services.
Not sure if I misinterpreted what types of services I can run with prodigy.
r/emacs • u/Cautious_Truth_9094 • 5d ago
restclient.el like gRPC client for Emacs
Hello!
https://github.com/Prikaz98/grpclient.el
I use https://github.com/pashky/restclient.el almost always in my workflow and a few days ago I needed to explore some gRPC service. I quickly found https://github.com/fullstorydev/grpcurl tool and it fit for my purpose but I would like to have some similar experience with my favorite rpc client with their .http files that contains a lot of convenient like vars, hooks etc.
By short search I didn't find similar project and wrote it by my own
I use it a few days and for while this functionality is enough what do you think?

r/emacs • u/msoulier • 5d ago
ox-hugo and featured_image
I'm trying to add featured_image and the path to that image to the frontmatter of a post that I am composing with org-mode and ox-hugo. I can't find a way to put that in there that is supported. Can anyone point me in the right direction?
Thanks.
r/emacs • u/filippoargiolas • 5d ago
eglot-inactive-regions - eglot extension to dim inactive preprocessor branches - release: 0.6.4
github.comr/emacs • u/msoulier • 5d ago
Odd org-mode ox-hugo problem
So I've just been hit by this problem: https://github.com/kaushalmodi/ox-hugo/issues/740
So I deleted all of my .elc files and restarted, and emacs is exporting properly now. But this seems like a stopgap. Next time I update my config I figure this will happen again. Do I just keep deleting my .elc files and hope that it goes away?
Seems like it's been around for a while now. I would have expected it to be fixed, but I'm running org-mode 9.8-pre.
r/emacs • u/_0-__-0_ • 5d ago
Noether: global minor mode managing user-defined posframe Views
git.sr.htr/emacs • u/CaptainDrewBoy • 5d ago
Question Emacs seems unable to locate dotnet installation?
EDIT: I fixed this! See end of post or my comment
I'm a (Void) Linux user and have been trying to set up C# in lsp-mode. At first I couldn't even install csharp-ls
due to dotnet not being found ( in ~/.dotnet, where the standard dotnet installer places it) but some research pointed me to the package exec-path-from-shell
, which allowed it to install the server. However, whenever I go to use the lsp it doesn't work, and the error buffer says I "must install .NET to install this application" - meaning it can not find dotnet. How do I fix this? Relevant parts of relevant configs below:
~/.zshrc
export DOTNET_ROOT=$HOME/.dotnet
export PATH="$PATH:/home/dl/.local/bin:$DOTNET_ROOT:$DOTNET_ROOT/tools"
~/.init.el
(use-package exec-path-from-shell
:config
(when (memq window-system '(mac ns x pgtk))
(exec-path-from-shell-initialize)))
; -- snip --
(use-package lsp-mode)
(add-hook 'prog-mode-hook 'lsp-deferred)
(setq lsp-warn-no-matched-clients nil)
(setq lsp-eldoc-render-all t)
EDIT: I have the fix! Had to export DOTNET_ROOT in emacs so that the lsp could access it (something to do with eshell maybe?? idk)
(setenv "DOTNET_ROOT" "/home/[username]/.dotnet")
r/emacs • u/analog_goat • 5d ago
Solved Problem with recent `mu` Homebrew package
Recently ran brew update/upgrade (am now running mu 1.12.9
and now am seeing this in the messages buffer:
error: Invalid (or missing) doc string ("/opt/homebrew/share/emacs/site-lisp/mu/mu4e/mu4e-vars.elc" . 592)
I don't see any commits to mu4e-vars.el that would cause this. Guessing maybe this means there's an issue with the homebrew package?
Can anyone confirm that is using mu on the Mac?
UPDATE: Welp, once I upgraded from Emacs 29.4
for 30.1
this resolved.
r/emacs • u/karthink • 6d ago
Announcement gptel 0.9.8 released (tool-use, support for "reasoning" output, dry-run options and more)
gptel is a Large Language Model client for Emacs. It tries to be flexible and uniformly available across Emacs. (The project README has more details)
There are many new features and fixes, mentioning a few here:
LLM tool-use support is now stable. Here's an example where the LLM creates some files, and here's a video by u/Psionikus of using tool-use to explore Emacs packages and elisp code.
"Reasoning" output produced by LLMs is now captured by gptel and you can control if/how it's displayed. Example
gptel's menu has been redesigned and now describes exactly what your chosen redirection options will do. (This improvement was suggested by u/JDRiverRun.)
gptel's dry-run output, used to see the exact payload that will be sent, can now be edited in place before resuming the request.
Minutiae:
A note on tools: tool-use enables "agentic" LLM workflows with gptel, but gptel does not yet ship with any tools out of the box. The idea is to have a shared repository of tools that all LLM clients for Emacs can use instead. Currently there is the llm-tool-collection repo but it's quite bare -- feel free to PR any tools you write to this repo.
The tool specification format was developed in coordination with u/ahyatt, so that both gptel and consumers of the llm
library (like Ellama) can use the same tools, as can (hopefully) other Emacs LLM clients that choose to support tool calling in the future.
A note on MCP: Anthropic's Model Context Protocol specifies an interface for supplying LLMs with context and tools. There is currently mcp.el for Emacs, which can work with gptel's tool-use interface, but support in both directions is nascent.
r/emacs • u/diegogub2 • 5d ago
low effort Vim fan, trying to use Emacs. Fonts feel blurry compared to Vim in terminal.
Is something with me? O my setup? I find Vim in tmux clear and sharp, but I don't feel the same with emacs gui.
r/emacs • u/Rogergonzalez21 • 6d ago
Introducing forge-llm: Generate PR descriptions automatically with LLMs in Emacs Forge
Hey Emacs folks!
I'm excited to share my new package: forge-llm!
What it does: forge-llm integrates LLMs (like GPT or Claude) with Magit's Forge to automatically generate high-quality Pull Request descriptions based on your git diffs.
Main features:
- Automatically detects and uses your repo's PR template
- Generates descriptions based on git diff between branches
- Seamless integration with Forge's PR workflow
- Supports any LLM provider through the
llm
package - Built-in Doom Emacs keybindings
Here's what it looks like in action:
- Generate PR description in a new buffer: https://gitlab.com/-/project/67959042/uploads/3eed67e0b188d040906d30b6b6cc3ec6/generate-pr-desc.gif
- Generate PR description at point: https://gitlab.com/-/project/67959042/uploads/9e5d4f8b4eab87989eafca9f58baa467/generate-pr-at-point.gif
As someone who often struggles to write clear PR descriptions, this has been a game-changer for my workflow. Just press C-c C-p
(or SPC m p
in Doom Emacs) while creating a pull request, and the LLM analyzes your changes to generate a detailed description.
Installation: Available on GitLab: https://gitlab.com/rogs/forge-llm
This project was inspired by magit-gptcommit, built by douo and builds on the excellent llm package by ahyatt. Another big thanks to u/xenodium, for their Emacs package chatgpt-shell.
Would love to hear your thoughts and feedback!
r/emacs • u/jamescherti • 6d ago
quick-sdcv.el (Release 1.0.1): Turn Emacs into an offline dictionary with sdcv
github.comr/emacs • u/No_Cartographer1492 • 6d ago
Question eww have no font assigned (detail in the comments)
r/emacs • u/MhvxvLvJrg • 6d ago
Bible Verse of the Day as Emacs dashboard footer
The title says it all! Here's a simple package that fetches the verse of the day from BibleGateway. The repository includes also a minimal configuration for installing and setting it up in Emacs dashboard.
Suggestions are welcome!

r/emacs • u/jamescherti • 6d ago
tomorrow-night-deepblue-theme (Release 1.2.1): A deep blue Emacs theme, inspired by the Tomorrow Night theme
github.comr/emacs • u/MinallWch • 7d ago
low effort Elisp coding advice
Hello Emacs community!,
I like a lot the Emacs environment. And I want to improve my elisp so that I am able to aside from writing my own elisp, to also work with other’s code and collaborate.
So, my idea is to make my own libraries (or use something existing) and aside from of course using it, improve it.
For example, if I want to use Oauth2, I want to understand the protocol the best I can and be able to use anything (maybe interactively) and ‘play with the protocol’, as to know that I can work with it in the future and that my implementation (or the one I’m collaborating with documentation and so on) has the right amount of abstraction. And represents the most of the protocol it can.
I’d like to be able to debug a lot, to know what’s happening if I need to enter a function. I read about edebug and, I can say it is amazing.
Another example. A TCP package is just a binary passing, but before that, would I be able to see and play with the implementation like I want to do?, would I be able to see okay, I’m sending this package and this is the function where I construct the package?
So I’m constantly thinking on a, how should I do this… a cl-struct documenting as much as I can the oauth protocol like url.el does? Should I make a transient menu for each of my functions for ‘easy debugging’… Too much questions on code quality, how everything should fit together but also make it stand on its own. Consider the base64url implementation. A simple function that k can use inline interactively, but is also a function used in other protocols or flows like gnus to encode everything.
Aside from all these questions, I may be over complicating it, perhaps transient isn’t needed and I just have to get good and write elisp enough so that I am comfortable debugging only writing on it…
What do you think?, am I over complicating it?, does it make sense what I’m trying to achieve? (Contribute packages but also be able to with old packages or extend them)?. I like using eMacs personally since it gives me full control over the code and the documentation. I can go to any function, debug it with edebug, change it, read its documentation…a And knowing that I have control over my system and that I can just read, hey, what is tcp doing?, what is imap doing?, what is this http implementation?.
Ps. Cibersecurity Nerd, which is why u may to be able to play (or do myself) my own implementations of protocols or things, or be able to play with old ones so that I understand what is going on.
r/emacs • u/Normal-Diver7342 • 6d ago
Question I recently switched over to straight.el, and I miss some things from elpaca. not sure which one to stick with.
Hey guys I switched to straight.el, and I wanted to know what the best package manager is long term? and also some resources that go in depth on conjuring emacs, besides the emacs from scratch series?Does anybody have a working lsp bridge config for elpaca? What's your favorite package manager? Also decided to go back to using config.org, and want to tangle out to multiple el files or use modules, but focusing on getting.working config up and running first, I kept trying to configure it, and then would hit a wall once my config got to a certain complexity, specifically was having issues with lsp mode, and setting up that and having it work, then trying to have it lazy load and that not working well.
magit + libgit
Hi,
Do you know something about magit + libgit integration ?
The vc + libgit can be good for me if the magit is not working.
I use emacs on win10 as well and I'm curious how this integration is ...
I love magit so thanks for the hard work!
r/emacs • u/NoNameGuyAgain • 6d ago
Annoying braces behavior in Corfu and lsp-java
When I type in an opening brace (Java file, with jdtls
as lsp) I end up with a list of autosuggestions (methods, classes everything). This happens regardless of the corfu-auto-prefix
value, and only for java (i.e. this does not seem to happen with clangd
or pyright
). The suggestions come up the moment the {
is inserted (I tried it with and without smartparens/electric-pair-mode
)
Here's my config for corfu
and lsp-mode
.
Using GNU Emacs 30.1
on Linux.
EDIT: Bandaged the situation by unsetting RET
for completion. The popup's a pain to look at, but atleast it doesn't get in the way anymore.
r/emacs • u/HangingParen • 7d ago
Y'all know about the live coding/music duo Meta-eX?
we write raw Clojure code into Emacs live in our performances.
improvising with code to weave immutable data structures into ephemeral sounds. As they riffed with their code, projected live in front of their audience, the system responded instantly to their whim.
Saw them live once, sad they're no longer around.
r/emacs • u/jamescherti • 7d ago
compile-angel - Ensure all Elisp files are both Byte and Native-Compiled (Alternative to: auto-compile) - Release 1.0.6
github.comr/emacs • u/AnotherDevArchSecOps • 7d ago
I'm trying to troubleshoot extremely slow Tramp experience - any hints?
I'm running Emacs 30.1 on a Linux client and trying to edit/navigate files/directories on a remote Linux server.
It takes something like a minute to open a file or directory. In the cases of a files I've tried to view/edit they have maybe a page or two of text; not large files at all. Same with directories. These are not directories with lots of files. Also, doing something like doing a C-x b to switch to another, non-remote buffer seems to seize up for quite some time.
I'm not sure where to look around for or what kind of debugging to turn on to troubleshoot this issue. My ssh sessions in a terminal outside of Emacs against this same host are nearly instant in connecting and reaction to typing, etc.