doomemacs / doomemacs/core

Fast typing with other English layout in evil state makes some typos.

Open
#6,497 3 comments 0 reactions 0 assignees View on GitHub
:editor evil
Dominant language
Emacs Lisp
Stars
22.7k
Forks
3.1k
Avg merge
10h 46m
Merged PRs (30d)
4

Description

### What did you expect to happen?

When I type "json" with `english-dvorak` layout in evil-insert-state, it should show "json".

### What actually happened?

I use dvorak input layout only inside Emacs with qwerty keyboard because of for shortcuts.
This phenomenon happens with both Emacs 28.1 and Emacs 29.
When I type `"json"` fast with `english-dvorak` layout in evil-insert-state, it shows `"j;on"`.
`"json"` text is mapped `Qc;slQ` in qwerty. When I type `Qc;slQ` a bit slower, `"json"` is typed correctly.

I found that "/" makes similar typo.
- "/lib/libjemalloc.so" -> "/lib/libjdmalloc.so" (`e` position of dvorak is `d` of qwerty)

I think special chracters such as `" (double quote)` makes typings incorrect.
I tested this in `evil` only with Vanilla emacs. And the issue does not happen.
I have no idea what mode or feature in doom-emacs makes this phenomenon.

```elisp
;; Set up package.el to work with MELPA
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
(package-initialize)
(package-refresh-contents)

;; Download Evil
(unless (package-installed-p 'evil)
(package-install 'evil))

;; Enable Evil
(require 'evil)
(evil-mode 1)

;; Change input mode
(set-input-method "english-dvorak")
```

### Describe your attempts to resolve the issue

_No response_

### Steps to reproduce

1. Open Emacs
2. Open some buffer(e.g. `*scratch*`)
3. Change dvorak input layout (`M-x set-input-method` and type `english-dvorak`)
4. Change to evil-insert-state(e.g. press `i` key).
5. Type `Qc;` or `[cd` in qwerty as fast as possible.
- `Qc;` is `"js` in dvorak. It will show `"j;` in this phenomenon.
- `[cd` is `/je` in dvorak. It will show `/jd` in this phenomenon.

### System Information

https://pastebin.com/2evvJQkj

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.