Как раз для гибкости localize! не является просто обёрткой над format!. Есть поддержка использования функций в выражениях. В функции может быть любое преобразование данных, в том числе смена места имени и фамилии.
Это демонстрируется в примере в конце статьи - там функция, которая подставляет имя в простой format!, но ничто не мешает добавить в неё любую доп логику
Теперь я не понимаю как библиотека для локализации интерфейсов связана с предугадыванием слов
Я не совсем понял, что вы хотели сказать.
Если нужна сложная структура результата localize!, то просто нужно создать выражение с функциями, а не строками и возвращать любые данные.
Как раз для гибкости localize! не является просто обёрткой над format!. Есть поддержка использования функций в выражениях. В функции может быть любое преобразование данных, в том числе смена места имени и фамилии.
Это демонстрируется в примере в конце статьи - там функция, которая подставляет имя в простой format!, но ничто не мешает добавить в неё любую доп логику