Originally requested and discussed here: Әліпбиді жөндеу.
In fact, due to the lack of collation of the Kazakh alphabet, specific letters are at the end of the list, and are sorted by Unicode.
Kazakh Uppercase: А Ә Б В Г Ғ Д Е Ё Ж З И Й К Қ Л М Н Ң О Ө П Р С Т У Ұ Ү Ф Х Һ Ц Ч Ш Щ Ъ Ы І Ь Э Ю Я
Kazakh Lowercase: а ә б в г ғ д е ё ж з и й к қ л м н ң о ө п р с т у ұ ү ф х һ ц ч ш щ ъ ы і ь э ю я
Sample code:
class KazakhUppercaseCollation extends CustomUppercaseCollation {
public function __construct() {
parent::__construct( [
'А',
'Ә',
'Б',
'В',
'Г',
'Ғ',
'Д',
'Е',
'Ё',
'Ж',
'З',
'И',
'Й',
'К',
'Қ',
'Л',
'М',
'Н',
'Ң',
'О',
'Ө',
'П',
'Р',
'С',
'Т',
'У',
'Ұ',
'Ү',
'Ф',
'Х',
'Һ',
'Ц',
'Ч',
'Ш',
'Щ',
'Ъ',
'Ы',
'І',
'Ь',
'Э',
'Ю',
'Я',
], Language::factory( 'kk' ) );
}
}