Motion with Unicode combining characters doesn't work
- 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
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