«быть самому себе злобным буратино» — это плодить костыли, вместо того, чтобы использовать уже реализованный функционал
По самому вопросу:
выдержка из файла украинской локали CentOS
% Initially alt_digits was supposed to hold alternative symbols for _digits_,
% corresponding to %O modified conversion specification.
% Although in Ukrainian language alternate _names_ are used instead of digits.
% We'll use this keyword to present a list of month names in proper form for
% date, see mon. (%Om)
%
% This hack is dedicated for months it won't work for other %O* modifiers
% (weeks, days etc).
%
Вкратце суть такова, что для правильного склонения месяцев в функции strftime нужно использовать вместо модификатора
%B модификатор
%Om
У меня в результате дата с
16 квітень 2013, 16:22 изменилась на
16 квітня 2013, 16:22