emacs-evil / emacs-evil/evil

Motion with Unicode combining characters doesn't work

Open
#841 1 comment 0 reactions 0 assignees View on GitHub
bug help wanted minor
Dominant language
Emacs Lisp
Stars
3.9k
Forks
307
PR merge metrics
No merged PRs in 30d

Description

# Issue type
- Bug report

# Environment

Emacs version: GNU Emacs 25.2.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.22.12) of 2017-05-08
Operating System: Ubuntu 17.04
Evil version: evil-git-0b4f0a69
Evil installation type: MELPA (Spacemacs)
Graphical/Terminal: Graphical
Terminal multiplexer: N/A

# Reproduction steps
- Start Emacs
- Switch to scratch buffer
- Paste this text verbatim: `naïve`
- Put cursor at the beginning of the word
- Press vlly to try to yank `naï`

# Expected behavior
The `i` with a diacritic is not a unicode character `ï` (LATIN SMALL LETTER I WITH DIAERESIS), but 2 characters `i` and `̈` (COMBINING DIAERESIS). Evil should yank `naï`, but yanks `nai`.

# Actual behavior

# Further notes
See also: https://emacs.stackexchange.com/q/18617/3972

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue in an Emacs scratch buffer using the exact `naïve` text and the `vlly` motion described. Trace how Evil handles character boundaries during that motion, then verify that yanking includes both the `i` and combining diaeresis rather than stopping before the mark.

Written by the indexing model from the issue text.

Assessment

Tech stack
emacs, emacs-lisp
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.