/r/DoomEmacs
A Reddit for Doom Emacs: a configuration framework for GNU Emacs.
This community is for discussing features, issues, questions, and more related to the Doom flavor of Emacs
/r/DoomEmacs
Hey! I'm new to Doom Emacs, and have been struggling to get ligatures to work. When consulting with the doctor, I get the following:
> :ui ligatures
! The (:ui ligatures) module does not support your version of Emacs. Make sure to have at least Emacs 28 with Harfbuzz configured (should be the default).
I find this confusing as I have GNU Emacs 29.3
installed, which is more recent than Emacs 28 and thus should have support for Harfbuzz (if I understood this correctly)...
To clarify, I haven't set up any prettify-symbols, since according to this, prettify-symbols is only used as a fallback if Harfbuzz isn't present.
Hi all, I have been trying to setup lsp-java on my doom emacs, I am a new emacs user, and I have no idea what's going on :(
https://imgur.com/a/edEENnU
In the ~/.doom.d/init.el I have turned on :lang ( java + lsp) and install flycheck, and not sure what's going on :/ anything that I can do ? thank you
Hello I'm quite new to doom emacs, and I'm trying to rebind <C-s> to save the current buffer, but isearch keeps popping up instead
when i'm in emacs gui i see the cursor become like a line however when i'm in terminal when i switch to insert mode i don't see the cursor become like a line it's just annoying as i've to look to the bar below to check wheather i'm in insert mode>!!<
I noticed earlier today that running `doom/help-packages` was not building the packages list, and echoing a message I do not remeber exactly saying something was off with Emacs tags. Sounded like a git issue to me, I thought maybe an OS update messed up some pacakge compatibility or something in that vein.
I just ran `doom upgrade` succesfully, fird up Emacs, and retried `doom/help-packages` out of curiosity. It still is not working, I get a `(wrong-type-argument arrayp nil)` error now. Doom doctor sees no issue, I have checked doom-module-context, it is the default value, `doom-module-packages-file` is set to "packages.el", I have never messed with that part of Doom anyway.
It is not a breaking issue, but it is annoying, any help would be appreciated, thanks.
Again, some updates, and now I get this retarded comments. Anyone using typescript-ts-mode
?
Hey, I program solely in C/C++, is there any guide for setting up doom emacs for C programming where I can hop to defination and implementations in my codebase. And should have intellisense for large codebase. Also is how can I add my personal key bindings like el instead of $ for end line jump. Also I use XMake so if there is any plugin that generates compile-commands.json from it then please tell me.
If there already is an answer please share the link to it.
I have an M1 macbook pro and everytime i run: git clone https://github.com/hlissner/doom-emacs ~/.emacs.d
~/.emacs.d/bin/doom install
it gives the error "zsh: no such file or directory: /Users/MyUsername/.emacs.d/bin/doom"
I'm running emacs --daemon and emacsclient
When I make change to a config.el and run eval-buffer it works fine but only once. So if I make another change and run eval-buffer again, changes wouldn't be applied. To apply changes I have to restart daemon (same after restart. eval-buffer would work once)
is there a way to show combined (any) emphasis on the org mode?
i.e. i want /bold italic/ or /italic underline/ or =verbatim bold= or even =/triple markup/=
nb: i use ==, ~~ and ++ as highlighter
i've read and searched the interned it actually still works if i export it, and it just did not showed on fontify.
the thing is, i just use doom emacs as my note taking app, so i dont do any export and just stick with the .org file.
I've been having a rough time getting bookmark-plus to load under doom. Trying to do this using the github mirror for emacswiki: https://github.com/emacsmirror/bookmark-plus
Here's the declared install in my config:
(package! bookmark-plus :recipe (
:host github
:repo "/emacsmirror/bookmark-plus"
:files ("*.el")))
When I run doom sync it recognizes and compiles the package, though commands still don't seem to pop up when I m-x for them. What am I doing wrong here?
Every time I try to reload my doom emacs config with SPC h r r, a doom.ps1 window opens up.
Is this normal? If not, how do I solve this?
For those of us, who are bound to jvm and android development (and, subsequently, to jetbrains IDEs), this plugin lets us replicate a mighty SPACE button leader key in conjunction with IdeaVim. It is simple, yet effective tool to emulate doom emacs experience.
Hi folks!
Jumped to Emacs as I admire org mode from neovim.
One annoying think I can't figure out is that lsp-mode seems to be very laggy. If I only have one buffer of a project open it is all good. The moment I open 2 buffers something breaks loose and the cursor starts blinking vigorously and navigation is painfully laggy (still kinda works)
I have Emacs 29 and native comp enabled (lsp doctor says all Ok) actually tried the lap booster ..does seem to help somewhat but still choppy in particular compared to neovim.
Any ideas?
Using rustic mode with lsp mode. But the same issue happens on eglot.
I've only gotten started with Emacs and so decided to go with Doom Emacs since it seems more beginner friendly.
I also want to see about using the Elpaca package manager instead of Straight.el. Is that possible with Doom Emacs? I did see something about Elpaca as a module when I searched in the GitHub repo but as I'm new I'm not sure what that means or how to go about changing it out.
Any advice or pointing me in the right direction such as a video or guide would be great.
I used to go into visual mode and select lines I wanted to move up or down with M-up and M-down but it doesn't do anything anymore, is there a new way to do this?
I found out today I might be using daemons wrong, and I am relieved if true because my setup is an awful mess. I run multiple named servers all managed using systemd services so I can use multiple Emacs frames simultaneously. And it is hard to maintain, configure aliases and restart/reload on config changes !
I have been doing it that way because if I open two frames of Emacs using the same server, they mirror each other. If I open a file in one frame, it opens in the other, the goes if I load a session. Since I want to have a few different frames open for different purposes like one for my usual editor, and another for my `$EDITOR` I can use in the terminal, I thought I had no choice. I even thought that was the reason why Emacs had the option to run a 'named daemon'.
But today, while chatting with an LLM about an unrelated matter, I have been made aware of some `frame-parameter` variable where you could set a `global-buffer-list` VS a `per-frame-buffer-list` that could solve my problem. Running only one daemon would be a game changer for me, but I could not find this variable or anyone related for that matter.
Can I configure Doom Emacs to run a per-frame buffer list ? Do I have to ditch perspective.el (which I enjoy so far) for another package as I read somewhere while searching to solve that problem ?
Thanks in advance for taking the time.
Hello - I use doom/save-session function to save all the workspaces that I have opened. When I restart emacs, I reload the session which reloads all the workspaces. But I was also expecting it to restore the frames that were opened and the workspaces that were associated with these frames which is not done.
A couple of questions.
How do I get rid of the top header thing that shows the options of "Suggest Edits" and "Help"?
I've deleted both emacs.d and .emacs files since, before deleting them, emacs would boot into the vanilla version. Once deleted, it would boot into doom emacs but it would pop the following error:
⛔ Warning (initialization): An error occurred while booting Doom Emacs:
Error in a Doom module: modules/config/default/+evil-bindings.el, (void-variable evil-window-map)
To ensure normal operation, you should investigate and remove the
cause of the error in your Doom config files. Start Emacs with
the ‘--debug-init’ option to view a complete error backtrace.
I have one very large org file. I'd like to change how i manage my work notes and want to incorporate org-roam into it. Does anyoen have a suggestion for a post or video to help me setup and use org-roam on my doom setup?
Hello,
I have the following problem which I could not solve by googling yet:
If I want to insert an environment in LaTeX with `LaTeX-environment` I get a drop-down selection for possible environments that doom knows about. But if the environment I want to insert is a prefix of one that exists in the selection (e.g. I want to insert `prop` but the selection contains `proposition`) then I can only autocomplete to the one that doom knows (in this case `proposition`), as in this scenario: https://ibb.co/NL5XzCv
How do I abort autocompletion and just use precisely what I typed into the minibuffer?
x There was an unexpected runtime error
Message: Package was not properly cloned due to a connection failure, please try again later
Backtrace:
(error "Package was not properly cloned due to a connection failure,...
(if (car args) nil (error "Package was not properly cloned due to a ...
(progn (if (car args) nil (error "Package was not properly cloned du...
(shell-quote-argument nil)
(mapconcat shell-quote-argument ("git" "branch" "-m" nil) " ")
(format "$ cd %s\n$ %s\n\n" (shell-quote-argument (expand-file-name ...
(propertize (format "$ cd %s\n$ %s\n\n" (shell-quote-argument (expan...
(concat (propertize (format "$ cd %s\n$ %s\n\n" (shell-quote-argumen...
(let* ((inhibit-read-only t) (entry (concat (propertize (format "$ c...
(let* ((result result) (exit (car result)) (invoked (numberp exit)) ...
(let ((program x55) (args x57) (result x59) (directory x61)) (let* (...
(progn (ignore (null x62)) (let ((program x55) (args x57) (result x5...
I am getting error wrong type sentinel messages since last upgrade when saving my literate config. eMacs is barely useable , I get lots of initialisation errors.
I found a year old thread on GitHub about that error. Op fixed it by commenting out ‘litterate’ in their configuration. It did not change anything.
Thanks for your help.
Hi everyone,
I'm working on customizing the export of Org-mode files to LaTeX/PDF in Emacs. Specifically, I need to replace Org checklist symbols with custom LaTeX commands. The goal is to transform [ ]
into \checkbox
and [X]
into \checkedbox
when exporting to PDF.
Here’s the Emacs Lisp code I’m using for this transformation:
elisp
;; Define the custom checklist symbols in LaTeX
(defun my-org-latex-checklist-filter (text backend info)
"Replace Org checklist symbols with custom LaTeX symbols."
(when (org-export-derived-backend-p backend 'latex)
;; Ensure that LaTeX commands are properly escaped
(let ((checkbox-replacement "\\\\checkbox")
(checkedbox-replacement "\\\\checkedbox"))
;; Perform replacements
(replace-regexp-in-string "\\[ \\]" checkbox-replacement
(replace-regexp-in-string "\\[X\\]" checkedbox-replacement text)))))
;; Add the custom filter to the export process
(add-hook 'org-export-filter-final-output-functions
'my-org-latex-checklist-filter)
The issue I’m encountering is an error message: "Invalid use of '\' in replacement text."
I’m unsure whether this is due to incorrect use of replace-regexp-in-string
or if there might be a simpler way to achieve this transformation.
My Questions:
replace-regexp-in-string
correct, especially regarding escaping backslashes in the replacement text?Any insights or solutions would be greatly appreciated!
I haven't modified anything, yet I am getting errors today on running doom upgrade. Fixes?
$ doom upgrade
> Preparing to upgrade Doom Emacs and its packages...
- A new version of Doom Emacs is available!
Old revision: ff9c59df46 (26 hours ago)
New revision: dbcd30820b (17 hours ago)
Link to diff: https://github.com/doomemacs/doomemacs/compare/ff9c59df468bcba569067f3c72c5c05b26c0d00a...dbcd30820bccc79680ad83f8a09cdc1614027c5a
View the comparison diff in your browser? (y or n) n
Proceed with upgrade? (y or n) y
> Upgrading Doom Emacs...
- Reloading Doom Emacs
- Using Emacs 29.4 @ /usr/bin/emacs
> Synchronizing "default" profile...
> Regenerating envvars file
✓ Generated ~/.config/emacs/.local/env
> Ensuring packages are installed and built...
- No packages need attention
> Updating all packages (this may take a while)...
x The package manager threw an error
x Last 16 lines of straight's error log:
$ git rev-parse --verify melpa
fatal: Needed a single revision
[Return code: 128]
$ cd /home/devansh/.config/emacs/.local/straight/repos/with-editor/
$ git branch --track -- melpa origin/melpa
fatal: the requested upstream branch 'origin/melpa' does not exist
hint:
hint: If you are planning on basing your work on an upstream
hint: branch that already exists at the remote, you may need to
hint: run "git fetch" to retrieve it.
hint:
hint: If you are planning to push out a new local branch that
hint: will track its remote counterpart, you may want to use
hint: "git push -u" to set the upstream config as you push.
hint: Disable this message with "git config advice.setUpstreamFailure false"
[Return code: 128]
! Wrote extended straight log to ~/.config/emacs/.local/state/logs/cli.doom.240822170058.238457.error
! Script was abruptly aborted, leaving Doom in an incomplete state!
- Run 'doom sync' to repair it.
✓ Finished in 26.25085s
Error code 128 thrown by
‘git rev-parse —verify melpa’
for the package ‘with-editor’.
I have run doom sync afterwards, no problem there. What should I do to fix it? Thanks.
I’m trying to bind TAB
to the corfu-complete
function, with the following at the end of my config.el:
(map! :after corfu
:map corfu-map
"TAB" #'corfu-complete
[tab] #'corfu-complete)
Right now, in the corfu popup window, TAB
cycles forward, and S-TAB
cycles backwards. I’m having a lot of trouble understanding how to un-bind TAB
from this cycling functionality, though.
I’m sure I’m missing something super obvious, and would appreciate any advice or assistance!
Hi I switched to doom emacs yesterday (from vs codium and nvim). I have almost customized it to meet my basic needs, but one things i am unable to do as now if to set it up for web development. Some things like when i do div*3 it creates 3 divs in codium and when i do div#main it creates a div with id main plus may other things like emmets and code completion and linting in css and js. Any help is highly appreciable. Also if possible please share your setup if you code in C++/C/web development
I'm relatively new to emacs, and brand new to troubleshooting it, and I've been running into a very strange issue.
I've been having some trouble with gdscript-mode, crashing the emacs client and server. It seemed to be related to company's auto-completion, so I tried disabling company-mode for the buffer, which seemed to clear up the crashes.
How would I go about identifying the root of the issue? I'm feeling a little lost, and would really appreciate some help!