О переводе начинаешь думать тогда, когда приложение уже написано и работает. Архитектура сложилась органически, строки разбросаны по хелперам и метаданным перечислений, или торчат где-то в теле функции. Когда код пишется, особо не задумываешься о том, что всё это однажды придётся переводить.Добавить поддержку i18n в Lazarus — дело пяти минут. Проблемы начинаются потом: DefaultTranslator не подхватывает файлы, компилятор молча принимает resourcestring в const-массиве и ничего не переводит, fuzzy-флаг тихо блокирует строку без единого предупреждения.Эта статья — про те вещи, которые не являются очевидными и, к сожалению, не описаны в базовых руководствах. Читать далее