Внимание

Этот блог переехал по адресу yktoo.com/ru/

Attention

This blog has moved to yktoo.com/en/

December 13, 2013

DKLang Localization Package 4.01 & 5.0

Поздравляю всех с пятницей, 13-м! Брюс Миллер, текущий мейнтейнер DKLang, принёс отличные новости для дельфистов.

Уж минуло пять лет с тех пор как библиотека для локализации программ для Delphi DKLang Localization Package обновлялась в последний раз. Могло создаться впечатление, что она заброшена-забыта — ан нет, просто DKLang выполняла свои задачи настолько хорошо, что обновления и не требовалось.

Однако в последние пару лет компания Embarcadero (текущий владелец Delphi) добавила возможность разработки на платформах, отличных от Windows, предоставив в наше распоряжение фреймворк FireMonkey. Наступила пора выпустить крупное обновление пакета: библиотека была полностью переписана и теперь поддерживает как 32- и 64-битные VCL-проекты, так и все платформы FireMonkey (Win32, Win64, OSX, iOS и Android).

Happy Friday the 13th! Bruce Miller, the current maintainer of DKLang, is bringing great news for Delphi developers.

It's been five years since DKLang Localization Package was last revised (time flies!). You might think that it had been abandoned, but no, it did its intended job well enough and it was solid enough that it didn't need an update.

That is, until now. The past couple of years Embarcadero (the current group behind Delphi) have been expanding Delphi to new platforms using a new framework, FireMonkey. So now was the time to make a major update to DKLang. We've completely rewritten DKLang so that it now works on both 32 and 64 bit VCL projects and all current FireMonkey platforms (Win32, Win64, OSX, iOS and Android).



Начиная с версии DKLang 5.0, она полностью кросс-платформенная и поддерживает как десктопные, так и на мобильные ОС.

As of version DKLang 5.0 we're cross-platform, both desktop and mobile!

В процессе обновления кода были применены всякие модные штуки, наподобие generics и статических классов. Кроме того, с заделом на будущее, все манипуляции со строками теперь осуществляются с применением современных библиотек, а необходимость в изменяемых (mutable) строках отпала. Были удалены специфические Windows-зависимости и добавлена внутренняя поддержка языков и культур, с бонусом в виде стандартных lookups для языков/культур. Помимо этого, в DKLang появился новый компонент для хранения переводов (DKLang Translation Storage) и специальный IDE-дизайнер для него.

Параллельно выпущена версия 4.01 — минорный релиз, в котором исправлена работа с read-only-свойствами. Ссылки на скачивание ниже.
In the process of updating the software we modernized the coding using generics and static classes and prepared for the future by moving to the latest string manipulation libraries and removing the need for mutable strings. While removing Win dependencies we added internal language and culture support with the bonus of getting native culture and language name lookups. We also added a new translation storage component to simplify the embedding and maintenance of translations through a new designer in the IDE.

In the 4.x family there's also a minor 4.01 release, which fixes handling of read-only properties. Read on to find download links.

Скриншоты демо-приложений

Sample app screenshots

DKLang Constants Demo on Mac OS X.


DKLang Constants demo on iOS.


DKLang Constants demo on Android.


DKLang в Delphi IDE

Это скриншот дизайнера форм Delphi и редактора DKLang Translation Storage.

DKLang in Delphi IDE

Below is a screenshot of Delphi form designer and the new DKLang Translation Storage editor.
Delphi IDE with the Translation Storage editor.


Код и документация

Репозиторий GitHub реорганизован и разбит на три ветки по мажорным версиям:

Source code and documentation

DKLang GitHub repository was rearranged into three branches by major version:

Family Latest version GitHub branch Download IDE support Changelog
3.x 3.01 DKLang_v3 dklang-3.01.zip Delphi 6; Delphi 7; BDS 2005; BDS 2006 Changes
4.x 4.01 DKLang_v4 dklang-4.01.zip Delphi 2009+ Changes
5.x 5.0 master dklang-5.0.zip Delphi XE5+ Changes


Проект также обзавёлся собственной Wiki-документацией. Скачать библиотеку можно по прямым ссылкам в таблице выше или с GitHub. The project has also got wiki-based documentation. The source code can be downloaded using direct links above or from GitHub.