Using latest Vim 7.3c, compiled 2010-07-31 21:22:42 +0200 immediately after pulling.

Hitting ~ (tilde) on a letter + combining character gives faulty result.


Reproducible: Always.


Steps to reproduce(1):
1. Type text in some case-sensitive script (not Hebrew or Arabic) with some combining characters in it (e.g. Russian with combining acute accent(s)). 2. In Normal mode, move the cursor over a letter with combining accent and hit ~ (tilde).

Expected result:
The letter should change case and keep its combining accent.

Actual result:
The accented letter is replaced by both its upper- and lower-case variants, without the accent.


Steps to reproduce(2)
1. Like before, type text with some combining characters in it.
2. Select a section of text (I used V for single-line linewise-visual).
3. Hit the tilde.

Expected result:
The text should change case, with the combining characters remaining where they belong.

Actual result:
- Accented characters become doubled, losing their accent.
- At the end of the selection, the last characters (as many as there were accents) are not case-toggled.


Additional info:
I haven't tested what happens with _several_ combining characters on a single letter (e.g. non-precomposed Classical Greek with breathing, accent and/or iota-subscript/adscript on the same vowel), or with spacing and combining characters of different byte-length (Cyrillic letters and combining-acute are all two bytes per codepoint in UTF-8). Neither did I check that ~ in case-neutral text with combining characters (such as vocalised Semitic text) is a no-op.


Best regards,
Tony.
--
Brady's First Law of Problem Solving:
        When confronted by a difficult problem, you can solve it more
easily by reducing it to the question, "How would the Lone Ranger have
handled this?"

--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Raspunde prin e-mail lui