| } else { | } else { | ||||
| if (iswlower(prev_in)) { | if (iswlower(prev_in)) { | ||||
| // lower case followed by upper case, possibly CamelCase | // lower case followed by upper case, possibly CamelCase | ||||
| if (UpperCaseInWord(tr, &sbuf[ix], c) == 0) { // start a new word | |||||
| if ((prev_out != ' ') && UpperCaseInWord(tr, &sbuf[ix], c) == 0) { // start a new word | |||||
| c = ' '; | c = ' '; | ||||
| space_inserted = true; | space_inserted = true; | ||||
| prev_in_save = c; | prev_in_save = c; | ||||
| if ((tr->translator_name == L('n', 'l')) && (letter_count == 2) && (c == 'j') && (prev_in == 'I')) { | if ((tr->translator_name == L('n', 'l')) && (letter_count == 2) && (c == 'j') && (prev_in == 'I')) { | ||||
| // Dutch words may capitalise initial IJ, don't split | // Dutch words may capitalise initial IJ, don't split | ||||
| } else if (IsAlpha(next2_in)) { | |||||
| } else if ((prev_out != ' ') && IsAlpha(next2_in)) { | |||||
| // changing from upper to lower case, start new word at the last uppercase, if 3 or more letters | // changing from upper to lower case, start new word at the last uppercase, if 3 or more letters | ||||
| c = ' '; | c = ' '; | ||||
| space_inserted = true; | space_inserted = true; |