0
0
mirror of https://github.com/vim/vim.git synced 2025-09-27 04:14:06 -04:00

patch 8.0.0552: toupper and tolower don't work properly for Turkish

Problem:    Toupper and tolower don't work properly for Turkish when 'casemap'
            is empty. (Bjorn Linse)
Solution:   Check the 'casemap' options when deciding how to upper/lower case.
This commit is contained in:
Bram Moolenaar
2017-04-08 19:12:06 +02:00
parent d34f9b1155
commit 3317d5ebbe
3 changed files with 25 additions and 3 deletions

View File

@@ -960,7 +960,7 @@ vim_isfilec_or_wc(int c)
}
/*
* return TRUE if 'c' is a printable character
* Return TRUE if 'c' is a printable character.
* Assume characters above 0x100 are printable (multi-byte), except for
* Unicode.
*/
@@ -1717,7 +1717,7 @@ vim_toupper(int c)
{
if (c <= '@')
return c;
if (c >= 0x80)
if (c >= 0x80 || !(cmp_flags & CMP_KEEPASCII))
{
if (enc_utf8)
return utf_toupper(c);
@@ -1741,7 +1741,7 @@ vim_tolower(int c)
{
if (c <= '@')
return c;
if (c >= 0x80)
if (c >= 0x80 || !(cmp_flags & CMP_KEEPASCII))
{
if (enc_utf8)
return utf_tolower(c);