By default, the keyword manager just displays one keyword for different case varieties, i.e.
- Test
- TEST
- test
will be displayed just once. Which variety is displayed in the keyword manager depends on which is found first while scanning all pictures for keywords. If you edit that (actually 3 in my example) keyword, all case varieties will be changed to the new keyword. This is okay, as Coppermine (actually the MySQL database) doesn't care about the case.
However, it obviously won't work for non-latin characters (at least not in my testbed, but I just noticed that there seems to be an encoding issue, as those characters aren't displayed correctly in my database). Additionally, there's an inconsistency in the keyword manager. The "edit" mode always submits the keyword in lower case (which is why editing keywords with upper case non-latin characters fails), while the "delete" mode submits it (respectively the first match of that lower case keyword, see above) in its actual case. This is why deleting keywords works as expected.
A quick and dirty solution would be to modify the keyword manager to display all case varieties of each keyword. It's quick and dirty, as it's not obvious for users if they edit keyword "Test", the keyword "TEST" will also be changed. This is why that change won't be added to the official Coppermine code. If you want to use it anyway, open keywordmgr.php, find
$lowercase_word = addslashes(utf_strtolower($word_escaped));
and replace with
$lowercase_word = addslashes(($word_escaped));
I'll try to find a better fix.