doomemacs / doomemacs/core

+eval/open-repl prioritizes found over known REPLs

Open
#8,209 0 comments 0 reactions 0 assignees View on GitHub
is:bug needs-triage
Dominant language
Emacs Lisp
Stars
22.7k
Forks
3.1k
Avg merge
10h 46m
Merged PRs (30d)
4

Description

### I confirm that...

- [x] I have searched the [issue tracker](https://github.com/doomemacs/doomemacs/issues), [documentation](https://docs.doomemacs.org), [FAQ](https://docs.doomemacs.org/-/faq), [Discourse](https://discourse.doomemacs.org), and [Google](https://google.com), in case this issue has already been reported/resolved.

- [x] I have read "[How to Debug Issues](https://doomemacs.org/d/how2debug)", and will use it to provide as much information about this issue as possible.

- [x] The issue can be reproduced on the **latest** available commit of Doom.

- [x] The issue can be reproduced on a stable release of Emacs, such as 27, 28, or 29. *(Unstable versions end in .50, .60, or .9x)*

### Expected behavior

When using `+eval/open-repl` and choosing a major mode from the prompt, the REPL set in `+eval-repls` should be opened.

### Current behavior

Instead, the first REPL for the chosen major mode found by the function `+eval-repl-found-repls` is opened.

More concretely, in my case, when running `+eval/open-repl-other-window` and choosing "Python", it runs `+python/open-jupyter-repl` instead of my preferred `+python/open-repl`.

### Steps to reproduce

1. Evaluate `(set-repl-handler! 'python-mode #'+python/open-repl)`
2. `M-x +eval/open-repl-other-window`
3. Select "Python"

### System Information

https://pastebin.com/MfzBJFWv

Contributor guide

Open the contributing guide

Research direction

Start with +eval/open-repl-other-window and trace how it uses +eval-repl-found-repls after the user selects a major mode. Reproduce the Python case with set-repl-handler! and compare the selected REPL with the configured +python/open-repl; done means the configured handler is opened instead of the first found REPL.

Written by the indexing model from the issue text.

Assessment

Tech stack
emacs-lisp
Domain
developer-experience
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.