«Локализатор исходного кода» предназначен для локализации программных продуктов путем изменения их исходных кодов без предварительной подготовки.
Программа может быть использована при разработке программного обеспечения на серверах сборки, для автоматической локализации исходного кода, но она может также применяться и на рабочих компьютерах пользователей для проверки орфографии в исходных кодах, текстовых файлах, буфере обмена и словарях переводов.
Специальная версия программы позволяет проводить обфускацию исходного кода.


 

суббота, 14 декабря 2013 г.

Результаты проверки орфографии файлов локализации WordPress 3.7.1 Lecactus Edition

Предыдущие проверки в основном проводились на основе локализаций поддерживаемых целыми сообществами, но в данном случае решил провести проверку одной из наиболее популярных сборок WordPress - Lecactus.

Надеюсь найденные ошибки будут учтены в данной сборке и возможно, благодаря автору сборки, быстрей попадут в официальную версию программы.

Ссылка на исходные файлы:
http://lecactus.ru/download-manager.php?id=521

Проверка осуществлялась "броском" распакованного каталога на ярлык "Автоматическая проверка орфографии PO-файлов (OpenOffice, русский язык) (бросить файлы или каталоги)" (его следует добавить из меню программы в "Пуск" на рабочий стол), после чего был автоматически открыт сформированный html-файл отчета в браузере.

ОТЧЕТ ПО ПРОВЕРКЕ ОРФОГРАФИИ:

Графы орфографических ошибок:



Часть слов написана начиная с латинской буквы:
Cпрятать, cтраниц, cтраница, cтраницы

Список файлов и найденных замечаний (без учета предыдущих):

File: wordpress\wp-content\languages\admin-network-ru_RU.po
000084 chk: соответсвующие text: Для поиска пользователя или сайта, используйте соответсвующие окна поиска. 000190 chk: проблеами text: Настройки регистрации могут разрешать или запрещать публичную регистрацию... 000236 chk: привелегии text: Главные администраторы ... 001018 chk: сарвер text: Внимание! Проблема при обновлении %1$s. Ваш сарвер не может подключиться ко всем запущенным на нем сайтам. Сообщение об ошибке: <em>%2$s</em> 001175 chk: привелегию text: Вы можете сделать существующих ... 001265 chk: нструментов text: Режим множества сайтов будет включен сразу после добавления этого кода и обновления окна браузера. ... 001589 chk: уникакльный text: Этот уникакльный ключ ... 001592 chk: уникакльные text: Эти уникакльные ключи ... 001595 chk: уникакльные text: Эти уникакльные ключи ...

Результаты проверки орфографии файлов локализации Drupal 8.0-alpha4

Проверка осуществлялась по файлам локализации Drupal core (8.0-alpha4) с сайта https://localize.drupal.org/translate/languages/ru.

Ссылка на исходный файл:
http://ftp.drupal.org/files/translations/8.x/drupal/drupal-8.0-alpha4.ru.po

Проверка осуществлялась "броском" po-файла на ярлык "Автоматическая проверка орфографии PO-файлов (OpenOffice, русский язык) (бросить файлы или каталоги)" (его следует добавить из меню программы в "Пуск" на рабочий стол), после чего был автоматически открыт сформированный html-файл отчета в браузере.

Часть слов написана с латинскими буквами:
Cредство, сron

Список файлов и найденных замечаний (без учета предыдущих):

File: drupal-8.0-alpha4.ru.po

000416     chk:   отсуствует     text:   снимок экрана отсуствует
000520     chk:   огрлавления     text:   Убрать из огрлавления
001004     chk:   коментарий     text:   1 коментарий
001010     chk:   комментрий     text:   1 новый комментрий
001590     chk:   кеширования     text:   Включение/выключение кеширования страниц для анонимных пользователей, а также оптимизации CSS и JS.
003087     chk:   длинее     text:   Ссылки длинее этого количества знаков обрезаются, чтобы избежать нарушения форматирования текста. Сама ссылка сохраняется, но ее текстовая часть обрезается.
003855     chk:   Фильтраци     text:   Фильтраци представления по текущему вошедшему пользователю.
003998     chk:   Доспутные     text:   Доспутные действия
004576     chk:   кеширование     text:   Простое кеширование данных, основанное на времени.
004931     chk:   помеченые     text:   Глубина будет соответствовать ...
004987     chk:   разделеные     text:   ID терминов, разделеные ',' или '+'
005128     chk:   заголока     text:   Этот заголовок будет отображаться с представлением, на месте обычного заголока, таком, как Заголовок страницы, блока и т.п.

пятница, 13 декабря 2013 г.

Результаты проверки орфографии файлов локализации Joomla 3.1.4

Проверка осуществлялась по файлам локализации сайта joomlaportal.ru.

Ссылка на исходные файлы:
http://joomlaportal.ru/downloads/joomla/languages/ru-RU_joomla_lang_full_3.1.4v1.zip

Проверка осуществлялась "броском" распакованного каталога локализации на ярлык "Автоматическая проверка орфографии любых файлов (UTF8, OpenOffice, русский язык) (бросить файлы или каталоги)" (его следует добавить из меню программы в "Пуск" на рабочий стол), после чего был автоматически открыт сформированный html-файл отчета в браузере.

ОТЧЕТ ПО ПРОВЕРКЕ ОРФОГРАФИИ:

Графы орфографических ошибок:



Часть слов написана начиная с латинской буквы:
cинтаксис, Cнежок, Cписок, cсылки, Cсылки

Возможно слово "интернационализованные" следует заменить на "интернационализированные"?

Список файлов и найденных замечаний (без учета предыдущих):

File: C:\testsourcelocalizer\joomla\admin_ru-RU\ru-RU.com_tags.ini

000113     chk:   меткм     text:   COM_TAGS_N_ITEMS_TRASHED_2="%d меткм отправлены в корзину"
000118     chk:   расчитанная     text:   COM_TAGS_NUMBER_COLUMNS_DESC="Количество колонок для вывода меток. Обратите внимание, что для вывода меток используется сетка, расчитанная на 12 колонок."
000166     chk:   Параметы     text:   COM_TAGS_TAG_VIEW_LIST_OPTION="Параметы отображения списка"

четверг, 12 декабря 2013 г.

Необходимость проверки орфографии в комментариях для внутренней документации на примере XMLDoc и программы "Локализатор исходного кода"

В постах очень часто затрагиваю тему орфографии текстовых фрагментов переменных в коде программы, но проверка орфографии комментариев так же важна.

Часто комментарии пишутся для внутреннего использования, и орфографические ошибки в них считаются не критичными, так как клиент их не увидит.
Но даже в случае "закрытого кода", когда код программ не доступен клиентам, ошибки из комментариев могут попасть в документацию по API-функциям программы, которая, как правило, генерируется из специально оформленных комментариев, и клиенты смогут
оценить грамотность (или неграмотность) программистов.

Популярными форматами документирования кода для формирования документации являются JavaDoc, XMLDoc и ряд других.

Программа "Локализатор исходного кода" написана на MS Visual Basic и использует оформление комментариев XMLDoc, которое позволяет получать интерактивные подсказки при написании кода по функциям и их параметрам.
Для формирования документации по коду проекта используется SandCastle.

Далее приведены скриншоты созданной документации (из chm-файла).

Список функций одного из классов:

четверг, 21 ноября 2013 г.

Проверка орфографии на сайтах основанных на mediawiki

Mediawiki популярная CMS для разработки сайтов в стиле wikipedia, позволяющая
организовать отлично структурированный справочный(обычно) сайт, которая не только позволяет легко получить необходимую информацию с помощью простой навигации, но и дает возможность пользователям сайта вносить правки в статьи.

Множество проектов использует эту CMS или схожую с ней.

Такими проектами являются: 

  • Справочный сайт ОС OpenSuse - http://ru.opensuse.org/ (MediaWiki 1.19.3)
  • Популярный сайт игровой тематики sc2tv - http://sc2tv.ru/wiki (MediaWiki 1.19.2)
  • Публичная неофициальная документация хостинга 1gb.ru - http://1gb.ru/wiki (MediaWiki)
  • Школьная база знаний - http://wiki.nntc.nnov.ru (MediaWiki 1.19.2)

Ряд проектов используют схожие CMS, например Справочный сайт ОС Ubuntu - http://help.ubuntu.ru/wiki/ (DokuWiki)


Приведенный далее пример проверки орфографии рассчитан на MediaWiki, но возможно подойдет и для DocuWiki (Ubuntu).

Как видно из приведенного перечня сайтов, данная CMS успешно применяется для различных сфер деятельности.

В тоже время на ряде сайтов присутствуют ошибки:
  • ru.opensuse.org/openSUSE:Общение - см. "новичек"
  • help.ubuntu.ru/wiki/virtualbox - см. "диаллог". Слово "cистемы" начинается с латинской буквы, в "сd-rom" - русская "с", что делает невозможным нахождение таких слов поиском, что может быть серьезной проблемой поиска термина в wiki, если в нем будет такая опечатка.
  • sc2tv.ru/wiki/index.php?title=Заглавная_страница - см. "комаду", "едиственным".

Перечисленные ошибки обнаружены 21-11-2013 и, соответственно, их можно найти в истории, если они будут исправлены. Я на это рассчитываю, так как обращусь к данным порталам с предложением проверки их wiki-проектов, что позволит улучшить ситуацию с орфографией на порталах и заодно проверить возможности моей программы. При разрешении публикации таких отчетов по wiki - выложу их в обновлениях к данному посту.

вторник, 12 ноября 2013 г.

Граф орфографических ошибок

Программа локализации успешно строит различные отчеты по орфографическим ошибкам в исходных кодах проектов, например, для Ubuntu, см. "Результаты проверки орфографии исходного кода Ubuntu 13.04"

Отчеты представлены в виде xml в формате junit, а также в виде html-документов с применением гиперссылок для связывания отчетов и подотчетов, а также css-оформлением для большей наглядности и удобства использования.

Но в больших проектах со значительным количеством ошибок текстовые отчеты не дают возможности увидеть общую картину ошибок и отслеживать процесс исправления, как позволяют простые картинки инфографики, на которых отражена ключевая информация.

В качестве одной картинки, по которой можно оценить объем исправлений и проверить текущее состояние проекта с точки зрения орфографии, я решил реализовать в программе создание графов со специальным оформлением.

Пример графа для каталога примеров программы локализации:
 
PDF-версия графа.

Описание графа:

  • желтым очень крупно - каталоги;
  • серым - файлы, в которых нет слов для проверки;
  • зеленым - файлы, в которых есть слова, но нет ошибок;
  • красным крупно - файлы со словами, в которых есть орфографические ошибки.

Единым корнем графа является "каталог" "ROOT". Файлы не относящиеся к локализации (временные, картинки, пр.) в графе игнорируются.

Построил общий граф без учета орфографии по всем файлам DoubleCommander для примера проекта со сложной структурой (скачать http://sourceforge.net/projects/doublecmd/files/Double%20Commander%20Source/doublecmd-0.5.7-src.tar.gz/download)


Данный граф строится программой в виде файла со структурой dot, который легко можно создать с помощью выгрузки отчета в файл с помощью параметра:

воскресенье, 27 октября 2013 г.

Проверка локализации игры WorldOfTanks 0.8.8

Gettext'ом в качестве программы локализации ПО пользуются не только разработчики открытого ПО, но и разработчики проприетарного ПО.

Известная игра World Of Tanks использует подобную систему, основанную на файлах перевода формата gettext.
Исходных кодов нет, поэтому утверждать на 100% не могу.

...
UPDATE:

Нашел ряд ошибок (имхо) локализации в игре. Сообщил разработчикам через баг-репорт "Ошибки игры #6739: Ошибки локализации (русский язык)" (https://bugs.wargaming.net/issues/6739). Администратор просил оставить поиск ошибок разработчикам и не исследовать файлы локализации.
Посему ошибки из поста удаляю.

P.S. Судя по форуму игры, исследованием и правкой файлов локализации занимается множество разработчиков модов игры... возможно в модах поправят ошибки...

суббота, 19 октября 2013 г.

Создание отчета из 300k+ фрагментов текста на основе проекта из 290k+ файлов (653 пакета Gnome)

Создание отчета из 300000+ фрагментов текста на основе проекта из 290000+ файлов.
В качестве исходного кода взят набор репозиториев 653 проектов Gnome рассмотренных ранее.

Отличная возможность проверить производительность программы локализации на очень больших проектах.

Отчет позволяет производить поиск фраз по всем файлам локализации пакетов, для определения в каком из пакетов находится исходная фраза.
Поиск по самим po-файлам стандартными средствами затруднен тем, что в тексте po-файлов добавляются переносы строк, которые разделяют фразы на фрагменты.
Данный отчет отображает фразы целыми.

Для перечисленных целей был использован отчет по проверке орфографии (см. Проверка орфографии в исходном коде проекта) для передаче корректору, в котором перечислены все текстовые фразы из сходного кода. В данном случае po-файлы были указаны как исходный код который следует проверить корректору.

Исходные данные:
- исходный код расположен в каталоге: i:\gnomegit
- производится поиск текста только в файлах ru.po (остальные игнорируются по рег.выражению - см. параметры)
- отключены все лишние отчеты
- программа запущена на ОС Windows
- результаты отчета выгружаются в d:\temp
- все файлы в отчете корректируются рег.выражением убирающем корневой каталог.
- используется версия программы "Локализатор исходного кода" 0.9.2 - скачать. Подходит как windows-, так и wine-версия.

Скачивание исходного кода 653 пакетов Gnome из git-репозитория

Для генерирования общего отчета по всем пакетам Gnome возникла необходимость их всех скачать. Каждый пакет представлен отдельным репозиторием, к которому необходимо обращаться отдельно.
Всего пакетов 653 (см. далее как удалось определить количество), соответственно надо обратиться к 653 репозиториям.

На странице https://git.gnome.org/browse/ представлен полный список пакетов с указанием разделов, к которым они относятся и описаний пакетов.

Скачать отдельный пакет можно командой:
"D:\Program Files\Git\bin\git" clone git://git.gnome.org/MODULE

где MODULE - название пакета.

Пример команды приведен для windows.

Проблема в том, что необходимо выполнить 653 команды с названиями пакетов.
Если хватит терпения скопировать 653 раза строку команды и 653 раза через буфер скопировать с сайта название модуля в эту строку, то можно дальше не читать... :)

Попробовав так сделать... я быстро понял, что это не решение... это отдельная проблема.

Далее привел мое решение генерирования списка команд для скачивания пакетов:

1) Копируем список с сайта в NotePad++.

Далее производим замену текста регулярными выражениями и обязательно указываем учитывание регистра в NotePad++.

2) Производим замену ^(\S+\s).*$ на $1 - удаляем все описания.

Получится список первых слов в предложениях, содержащих названия пакетов.

понедельник, 7 октября 2013 г.

Результаты проверки орфографии исходного кода Ubuntu 13.04

Провел проверку исходного кода ОС Ubuntu 13.04 версии, скачанной с ftp, 29 сентября 2013: ftp://cdimage.ubuntu.com

Проверял каталоги:
- language-pack-ru
- language-pack-ru-base

Результаты проверки:
- фраз содержащих кириллицу: 99260
- на проверку ушло примерно 1700сек (виртуальная машина Win7HB 1gb 1ядро HT, на компьютере i7-860)
- найдено 3109 слов с "ошибками", встречающиеся 8525 раз в тексте.

Скачать отчет: https://docs.google.com/file/d/0B2P_Drl0OiU9OVdpeE15QmtMRXc/edit?usp=sharing

Найдено множество ошибок:
002282     chk:   аналговые     text:   Изящные аналговые часы 
003017     chk:   Настрока     text:   Настрока Debian 
017250     chk:   Интсрумент     text:   Интсрумент GNOME для поиска строки в наборе файлов
000028     chk:   значиние     text:   Применение: %s [-LRSq] -s имя_атрибута [-V
...
Фрагмент отчета:

Ранее уже проверял открытые ОС - см. Автоматическая проверка орфографии исходных файлов на примере OpenSuse, по результатам которой ошибки были исправлены в ОС (см.Update), и по совету координатора локализации этой ОС, был скорректирован и улучшен данный отчет.

Профиль в Google+ и его оформление

Обнаружил трансляцию всех моих постов в свой аккаунт на google+...
Специально его не создавал, но оказалось Google другого мнения (или мелкая "галочка" где то в соглашении есть) по этому поводу.
Но с виду хорошо все выглядит и удобно сделано, потому спасибо им.

Только странные пропорции заглавной картинки. У OpenSuse и ряда аккаунтов картинки явно горизонтальные, а у других высокие-прямоугольные... в своем аккаунте Google упорно настаивает на своих пропорциях.
Решил отрисовать заглавную картинку в новых пропорциях и светлых тонах, потом может и редизайн сайта/блога/инсталляторов сделаю под новый стиль... посмотрим...

Google+: https://plus.google.com/u/0/103029391702241740789/posts
Картинка:
P.S. Застолбил название сообщества SourceLocalizer, но так как все записи транслировались в мой профиль, вероятно так и останусь на нем... 

воскресенье, 6 октября 2013 г.

Обновление программы локализации до версии 0.9.2.752

Изменения в программе:

  • Добавлена работа с буфером обмена.
  • Добавлена обработка po-файлов как текстового формата.
  • Улучшена подготовка текста к проверке орфографии (чистка спец.символов и тегов).
  • Добавлена настройка орфографии через параметр (для нижнего подчеркивания).
  • Добавлен пользовательский словарь исключений.
  • Изменены настройки контекста.
  • Добавлены параметры для гибкой настройки орфографии OpenOffice.
  • Продлил дату Бета-версии.
  • Расширены отчеты орфографии.
  • Добавлено игнорирование специальных файлов и каталогов при проверке "любых" файлов.
  • Добавлена информация в справку.
  • Добавлен отдельный инсталлятор тестовой версии для Linux(wine).

    суббота, 5 октября 2013 г.

    Проверка орфографии в буфере обмена или эволюция от командной строки до окон

    При разработке программы ориентировался на то, что необходимо будет работать с ней из командной строки или командных файлов, соответственно, отчеты генерировались в формате JUnit для сервера сборки.

    Со временем пришел к тому, что разработчику порой приходится работать локально, без сервера сборки и ему пригодится система отчетов в более привычном виде, например, HTML, что и сделал.

    Разработчику может быть не удобно писать скрипты и указывать проверяемые каталоги/файлы, поэтому сделал ярлыки, на которые их можно "бросать".

    Когда пишешь текст, то не удобно сохранять файл, например, в NotePad++, чтобы потом файл "бросить" на ярлык, поэтому добавил значок проверки буфера обмена.

    Читать мысли программы пока еще не умеют, поэтому эволюцию своей программы в этом направлении приостановлю... :)

    Проверка буфера обмена позволяет не только проверять свои текстовые файлы, но и страницы сайтов, PDF и прочее.

    Давайте проверим работу на примере сайта для переводчиков:
    https://help.launchpad.net/Translations/GuidesList/Russian
    "Справка Launchpad > Переводы > Общий путеводитель по переводу"

    Выделяем всю страницу и копируем в буфер, затем запускаем ярлык "Буфер обмена - проверка орфографии...".

    Получаем список ошибок:
    преводить, путеводтель, перевдчиками, пределать, середие, управляющи, преводить, коментарии, утройство, некторых, предложний, иформацию, свобдного, преводы, преведённая, преводить, преводу, преводчиков, способв, инфорацию, ладитьс, программынаваш

    Словарь локализатора GPL. Почему его нет?

    Для крупных проектов существует множество инструкций и советов, но нет (не нашел) словарей орфографии, которые можно было бы использовать переводчиками и тестировщиками.

    Если загрузить перевод в текстовый редактор, например, в OpenOffice или другой поддерживающий словари орфографии, например, Notepad, то целый ряд слов будет подчеркнут, как ошибки. Это в первую очередь относится к терминам и названиям, которых нет в словарях.
    Между такими терминами и названиями легко "прячутся" ошибки, которых не заметно на фоне множества ложных срабатываний.

    Кроме того, "устоявшиеся термины" и прочее можно было бы добавить в такой словарь, чтобы при ошибке в термине было сразу ее видно.

    Пример: "Словарь устоявшихся терминов" http://team.ubuntu.ru/translate/словарь_переводов

    В примечании к "кеш" (по ссылке к слову):
      Уважаемые переводчики, использующие слово "кеш"!
      Пожалуйста, пишите правильно - "кэш". Спасибо. --Артём

    Если слово "кэш" добавить в словарь, как и ряд других, то подчеркнутое слово "кеш" явно подскажет локализатору об ошибке.

    Отличным примером является название "Ши-сен-сё" и второй его вариант "Ши-сён-сё", встречающийся в переводе OpenSuse. При наличии правильной версии данного названия
    в словаре локализатор сразу бы увидел ошибку.

    Наиболее распространенными являются словари для утилиты hunspell, но также можно использовать словари пользователей для OpenOffice.

    Для начала рассмотрим формат OpenOfice, основной пользовательский словарь standard.dic, который имеет следующее содержание:

    четверг, 3 октября 2013 г.

    Тестовая версия программы для Linux (wine)

    Добавил инсталлятор для Linux.
    В связи с необходимостью наличия wine/mono в Linux, решил не делать deb-пакет, а реализовать все средствами InnoSetup, просто упростив основной инсталлятор: отключив создание ярлыков, регистрацию журналов, наличие большого количества примеров и убрав оконную программу "Генератор параметров" из инсталлятора.

    Получился простой дистрибутив с простой установкой.

    четверг, 19 сентября 2013 г.

    Автоматическая проверка орфографии для систем генерирования справочной документации на примере AsciiDoc, NovellDoc и OpenSuse.

    В своем проекте я использую программу (скрипт) Asciidoc для формирования документации на основе единого источника информации.

    Создаю текстовый документ со специальными метками и с помощью AsciiDoc, преобразую его в DocBook, а затем с помощью Apache FOP - в набор документов формата HTML,PDF,CHM.

    Пример фрагмента исходного текста:

    [[spellcheck]]
    == Проверка орфографии

    === Автоматическая проверка орфографии

    Для автоматической проверки орфографии используется модуль проверки из <<softOpenOffice,OpenOffice>>. 
    По результатам проверки Формируется ряд отчетов, например: "ОТЧЕТ ПО АВТОМАТИЧЕСКОЙ ПРОВЕРКЕ ОРФОГРАФИИ ИСХОДНЫХ ФАЙЛОВ", "ОТЧЕТ ПО АВТОМАТИЧЕСКОЙ ПРОВЕРКЕ ОРФОГРАФИИ СЛОВАРЯ".

    [NOTE]
    Для использования автоматической проверки обязательно наличие установленного на компьютере <<softOpenOffice,OpenOffice>>.

    [[spellcheck_orphoautosourcecodeany]]
    ==== Автоматическая проверка орфографии исходных файлов (любых)

    Как выглядит:
    На сайте: http://www.sourcelocalizer.ru/help/spellcheck.html
    PDF: см. ссылку в углу экрана онлайн-справки или по ссылке http://www.sourcelocalizer.ru/help/sourcelocalizer.pdf
    CHM: скачайте программу http://sourcelocalizer.ru/download :)

    AsciiDoc очень удобен и прост в использовании, так как справка генерируется из системы контроля версий (svn) на сервере сборки (CI Hudson) с помощью сборочной программы (NAnt), которая еще и правит (используя регулярное выражение добавления ссылок для всех html-файлов) HTML, чтобы добавить в онлайн версию ссылки на содержание и прочее (штатные средства AsciiDoc для таких ссылок не очень подошли, см. формируемую ссылку в справке в правом верхнем угле).

    вторник, 17 сентября 2013 г.

    Автоматическая проверка орфографии исходных файлов на примере OpenSuse

    Программа локализации позволяет проверять орфографию (используя модуль OpenOffice) в любых текстовых файлах.

    Перед локализацией необходимо исправить все ошибки орфографии, опечатки, грамматические ошибки в исходных файлах, в связи с этим в программе "Локализатор исходного кода" присутствует данная функция.

    При установке программы со значениями по умолчанию (включен пункт "Автоматическая проверка орфографии") на рабочий стол устанавливается ярлык "Автоматическая проверка орфографии ...". При "броске" на него файлов и каталогов проводится проверка орфографии для "брошенных" файлов, кроме не текстовых форматов jpg/png/exe/и т.п. Также исключаются файлы из специальных каталогов SVN (\.svn\).

    При проверке учитываются спец.символы \n,\t,%s и прочие, которые встречаются среди текста в программах, а также теги <b>/<i>/... как пустые элементы, что позволяет найти ошибки слитых слов ("пример<b>текста</b>" должен быть "пример <b>текста</b>").

    Для данного ярлыка указана кодировка проверяемых файлов UTF8. Если следует использовать ANSI то выберите другой ярлык, подробней см. справку.


    понедельник, 16 сентября 2013 г.

    Обновление программы локализации до версии 0.9.1.704

    Изменения в программе:

    • Скорректированы параметры ярлыков для проверки орфографии файлов.
    • Добавлена чистка спец.символов для OpenSuse.
      Страница скачивания программы локализации

      Обновление программы локализации до версии 0.9.0.700

      Изменения в программе:

      • Добавлена возможность проверки орфографии любых файлов (ярлыки для UTF8 и ANSI).
      • Добавлена поддержка контекста.
      • Проверка орфография проводится не только для кода, но и для сформированного/загруженного словаря.
      • Добавлены параметры разрешения/запрета перевода по шаблону, например, только содержащие кириллицу и т.п.
      • Добавлен ряд новых типов исходных файлов: Delphi2009, DelphiXE2 и пр.
      • Ускорена работа обработки отчетов.
      • Используется внутренняя XML-документация, для возможности дальнейшего предоставления API-функций.
      • Добавлена возможность в коде отмечать текст для локализации, например, двойными скобками.
      • Для указания исходных типов файлов теперь следует указывать язык программрования к которому они относится, а нет типы файлов.
      • Значительно ускорена обработка текстовых исходных файлов.
      • Отображение статистики обработанных файлов (скорость, объем, время)
      • Добавлен параметр отключения медленных отчетов.
      • Добавлен ряд ярлыков.
      • Добавлен ряд отчетов.
      • Добавлены статьи в справку программы.
      • Добавлено генерирование текста build.xml с параметрами локализации для NAnt.

        Страница скачивания программы локализации

        суббота, 7 сентября 2013 г.

        Онлайн справка

        Справочная информация программы локализации генерируется из единого источника информации.
        Формат этого источника - AsciiDoc, из которого формируется DocBook и затем все необходимые форматы CHM/PDF/HTML.
        Соответственно, справка во всех форматах полностью идентична.

        О AsciiDoc подробно изложено в статье "Подготовка технической документации с использованием asciidoc и DocBook"
        http://iportnov.blogspot.ru/2011/03/asciidoc-docbook.html

        На тему справочной информации имеется интересная презентация "Разработка справочной документации, ч.1", в которой рассмотрены основные аспекты разработки справочной информации.
        Данная презентация подвигла на создание онлайн справки кроме уже созданной "оффлайновой" в форматах CHM и PDF.

        Постепенно буду добавлять все рассмотренные в презентации специальные разделы: HowTo, QuickStart и пр.

        Созданная онлайн справка позволяет:
        1. пользователю до скачивания самой программы ознакомиться с интересующими возможностями программы;
        2. переходить на нее по ссылкам из видеороликов(youtube) с примерами в которых рассмотрен функционал программы;
        3. поисковые системы позволят искать по ней интересующую информацию;
        4. по ссылке ("PDF") вверху страницы онлайн справки можно скачать/посмотреть справку в формате PDF.

        Онлайн справка: http://sourcelocalizer.ru/help

        четверг, 29 августа 2013 г.

        Государственная регистрация программы "Локализатор исходного кода"

        Зарегистрировал программу.

        В основном регистрировал из-за названия программы, так как много вариантов при придумывании названия было уже занято и не хотел, чтобы потом кто то "придумал" такое же как и у меня и претендовал на него. Регистрация позволяет в значительной степени "застолбить" название,
        и в меньшей степени код программы, так как программа активно развивается и постепенно код меняется.

        Процесс разработки протекает интересно и весело, в подтверждение см. прошлый пост ("пиу-пиу" по коду и программа готова :) ).

        суббота, 6 июля 2013 г.

        Обновление программы локализации до версии 0.8.7.560

        Изменения в программе:

        • Добавил параметры для программы: AUTHOR, BUILD, VERSION, REVISION.
        • Время в html-отчете теперь генерируется автоматически.
        • Добавил в Help ссылки на ресурсы проекта в интернете.
        • Оптимизация исходных файлов производится с учетом автоматического их генерирования в IDE, например, для .designer.vb объединение текстовых строк теперь настраивается отдельно от обычного кода.
        • Изменился набор значков(ярлыков) за счет объединения основных форматов исходных файлов в один значок и создания отдельных значков для других форматов.
        • При инсталляции добавлен пункт выбора установки дополнительных значков на рабочий стол, а также подключения значков на Рабочем столе и в Главном меню для экспериментальных функций, которые после тестирования появятся среди основного функционала.
        • Добавил ряд экспериментальных функций.
        Страница скачивания программы локализации

        пятница, 3 мая 2013 г.

        Установка и настройка svn-сервера и svn-клиента (VisualSVN+TortoiseSVN)

        Программа локализации специально разрабатывалась для работы с системами контроля версий на серверах сборки, поэтому решил опубликовать ряд постов, посвященных установке и настройке вспомогательных инструментов разработки (системы контроля версий, серверы сборки, автоматические тесты и пр.)

        В данном посте приведены видео по установке и настройке svn-сервера, а также svn-клиента.

        Скачать:
        * VisualSVN Server - http://www.visualsvn.com/server/download/
        * TortoiseSVN - http://tortoisesvn.net/downloads.html

        SVN-сервер VisualSVN Server:


        SVN-клиент TortoiseSVN:

        суббота, 13 апреля 2013 г.

        Автоматическая проверка орфографии в исходном коде проекта

        Данная статья является продолжением статьи Проверка орфографии в исходном коде проекта.

        Для возможности оперативного отслеживания ошибок орфографии в исходном коде была добавлена автоматическая проверка орфографии на основе Open Office.

        В отчете для корректора появились новые подотчеты по тексту, в котором обнаружены орфографические ошибки.

        Добавлен ярлык Ярлыки\Проверка орфографии\Автоматическая проверка орфографии для основных форматов (OpenOffice) (бросить файлы), при переносе файлов на который будет проведена проверка и выведен отчет с указанием орфографических ошибок.

        При проверке орфографии учитывается ряд настроек:

        Для текста на английском языке можно выбрать отдельные настройки проверки, чтобы не было ошибок при проверке слов "html-файл" или специальных сокращений, не требующих проверки - "AppData".

        Возможно использование проверки текста для любых доступных Open Office языков. Для этого необходимо указать буквы языка и страны (ruRU, enUS, ...) в поле "Другой...", а для "Английский язык в тексте" указать "Как основной язык", если в проверяемом языке могут использоваться английские символы.

        Обновление программы локализации до версии 0.8.6.530

        Изменения в программе:
        • Добавлена автоматическая проверка орфографии на основе OpenOffice и расширен отчет для корректора.
        • Добавлен пример кода с ошибками орфографии.
        • Добавлен ярлык автоматической проверки орфографии.
        • Изменен интерфейс генератора параметров.
        • Разделен набор форматов файлов на основные и дополнительные.
        Страница скачивания программы локализации

        Новый интерфейс программы генератора параметров:

        Описание автоматической проверки орфографии можно посмотреть в следующем посте.

        воскресенье, 7 апреля 2013 г.

        Проверка орфографии в исходном коде проекта

        При разработке программ возможны опечатки в названиях кнопок, форм, вызываемых сообщений, а также более сложные случаи, заключающиеся в различии терминологии, грамматических ошибок и пр.

        В ряде сред программирования применяется автоматическая проверка орфографии введенного текста, но не во всех средах (например, Delphi).

        Используемые системы интерактивной проверки хорошо справляются с опечатками, но менее эффективны при проверке грамматики, особенно когда строка формируется из фрагментов, а также они не дают возможности проверить терминологию.

        В программе локализации реализовано получение списка всех текстовых значений и комментариев, а также оформление их в виде отчета, в котором перечислен список файлов, и к каждому из них - список найденных текстов с указанием номера строки в файле для исправления.

        На скриншотах ниже в описании отчетов присутствуют рекомендации для корректора, которые можно передать ему вместе с отчетом.

        Рекомендации для передачи корректору (из отчета):

        вторник, 2 апреля 2013 г.

        Обновление программы локализации до версии 0.8.5.518


        Изменения в программе:

        • Добавлен отчет для корректора по словам и комментариям в исходном коде
        • Добавлен пример для отчета корректору
        • Добавлен ярлык: Ярлыки - Проверка орфографии - DELPHI проверка орфографии (бросить файлы)
        • Ограничена длина строки в 255 символов при оптимизации путем конкатенации строк


        воскресенье, 17 марта 2013 г.

        Решение проблем с кириллицей в dfm-файлах Delphi

        Проблема состоит из двух частей:
        1) проблема передачи исходных файлов программисту команды, у которого локализация (н.п. английская вместо русской) ОС отличается от ОС у других программистов;
        2) проблема отображения кириллицы при работе программы на ОС (операционная система) разной локализации.

        Решение пункта 1

        Для правильной передачи dfm-файлов между разработчиками достаточно вместо кодов в dfm вписать простой текст.
        Это довольно трудоемкий процесс, кроме того, при внесении новых компонент текст в них будет оформлен кодами.

        Такой функционал присутствует в программе локализации, и его можно использовать даже без настройки программы локализации, а просто бросить на специальный ярлык свой dfm-файл, и коды в нем будет преобразованы в текст.

        Решение пункта 2

        В Delphi7(6) есть проблема с отображением текста форм в зависимости от кодировки системы, заключающаяся в появлении знаков вопросов, если кодировки не совпадают - delphi, начинает считать юникод как 1251 или наоборот.

        Основным решением, которое я встречал, является использование специальных unicode-компонентов, но это будет серьезной переработкой форм.
        Для больших проектов это мало подходит. Особенно, когда нужно старый готовый проект локализовать для иностранных пользователей и при этом "ничего не трогать" в коде проекта.

        Предлагаю следующее решение этой проблемы: автоматическое формирование кода вызова всех элементов формы с заполнением их теми же текстовыми значениями, но уже из кода.

        Причины создания программы "Локализатор исходного кода"

        Проект, с которым я сотрудничаю, содержит очень большое количество кода;
        он поддерживается давно группой программистов и явно не планировался изначально к локализации.

        При выборе программы локализации к ней были определены следующие требования:
        1. Отсутствие или минимум доработки исходного кода для локализации.
        2. Отслеживание дальнейших изменений/дополнений, требующих локализации.
        3. Хорошая работа с системами сборки для выполнения пункта 2 (Junit-отчеты) и возможности получать переведенный проект при изменении только функционала без необходимости обращаться к переводчикам.

        4. Дополнительное, но важное, требование - решить проблему с кириллицей, а именно ее замену на знаки вопросов в формах при работе с разрабатываемой программой в ОС с другой кодировкой (Английская, Немецкая, пр.), в том числе с Русской (1251), так как описание формы в Delphi7 генерируются в 1251 либо юникоде (либо другой кодировке).
        Проблема с кириллицей касается и разработчиков, если один из них работает с ОС другой локализации, то работать с формами проекта он не может, а с его формами не могут другие.
        Был вариант использовать для решения этой проблемы юникод-компоненты, но это привело бы к полному переписыванию форм программы.

        Все рассмотренные программы локализации не соответствовали перечисленным требованиям.

        В связи с этим я разработал свою программу локализации, которая отвечает всем требованиям.

        Сайт моей программы локализации: www.sourcelocalizer.ru

        http://www.youtube.com/watch?feature=playe...p;v=OFFzXvI_A9k
        Пример локализации разрабатываемой программы с помощью "Локализатора исходного кода", на примере тестового проекта на Lazarus. На видео показаны все этапы локализации примера подробно описанные в руководстве пользователя.
        На видео, начиная с 19:45, описан процесс внесение изменений в проект, отслеживание их программой локализации, а также процесс локализации добавленных элементов.

        Основной упор при разработке программы локализации был сделан на работу с уже существующим кодом проекта и с минимумом привлечения к локализации программистов, т.е. никакой специальной подготовки кода к локализации не требуется.