On Saturday, April 8, 2017 at 7:12:29 PM UTC+2, Bram Moolenaar wrote: > Björn Linse wrote: > > > start vim 8.0.550 with "LANG=tr_TR.UTF-8" (tested on Linux). Type "iI" > > on a line and do gu/gU > > > > Expected behavior: > > with casemap=keepascii,internal (default) it should behave like C or > > English locale with casemap= it should use the Turkish dotted > > uppercase and dotless lowercase variants > > > > Actual behavior: > > Neither works, in both cases i and I are left completely unchanged. > > The issue seems to be that vim_tolower always uses single-byte > > locale-dependent implementation for c < 0x80, disregarding the fact > > that a single-byte char might become multi-byte in the locale (and > > also ignoring casemap=keepascii, which I guess is unintended). On the > > other hand f_tolower and f_toupper works correctly as they call > > utf_tolower directly which implements the correct behavior respecting > > casemap. > > Thanks for noticing. It probably only matters for Turkish. > I'll fix vim_tolower() and vim_toupper() and add a test. > Please check that it works properly then. > > -- > Facepalm statement #8: "Drive faster, the petrol is running out" > > /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\ > /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ > \\\ an exciting new programming language -- http://www.Zimbu.org /// > \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
552 fixes it for casemap=, but as I said, it is broken even for casemap=keepascii,internal (i and I are completely unchanged) -- -- 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 --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
