doomemacs / doomemacs/core

delete-selection-mode isn't always enabled in insert state

Open
#8,179 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 I switch to insert state, then exit insert state in a different buffer, `delete-selection-mode` should still be enabled in the original buffer (since it's still in insert state). So `M-: delete-selection-mode RET` should print `t`.

### Current behavior

Because `delete-selection-mode` is a global minor mode, when you switch back to the original buffer, `delete-selection-mode` is off. So `M-: delete-selection-mode RET` prints `nil`.

### Steps to reproduce

1. Open Emacs
2. Type `SPC b N` (`evil-buffer-new`)
3. Type `SPC w v` (`evil-window-vsplit`)
4. Type `SPC b N` (`evil-buffer-new`, so that the windows aren't in the same buffer)
5. Type `i` (`evil-insert`)
6. Type `M-SPC w w` (`evil-window-next`, switch windows **without exiting insert state**)
7. Type `i` (`evil-insert`)
8. Type `ESC` (`evil-normal-state`)
9. Type `SPC w w` (`evil-window-next`)
10. Type `M-: delete-selection-mode RET`

### System Information

https://pastebin.com/s52HFwbE

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.