вторник, 29 января 2019 г.

Разработка LibreOffice. Локализация интерфейса пользователя и справки

В настоящее время процесс локализации интерфейса пользователя LibreOffice на русский язык выглядит следующим образом:
Заходим на сайт https://translations.documentfoundation.org/
Нажимаем большую зелёную кнопку "Войти" и видим:
Если аккаунт уже есть, то вводим логин/пароль и входим, если нет, то жмём ссылку "Зарегистрироваться, как новый пользователь", появится следующее окно:
в котором нужно придумать себе логин (Имя пользователя), ввести адрес вашей работающей электронной почты, задать пароль, повторить пароль, установить галочку/флажок у опции (метка которой почему-то не локализована) "I agree to the privecy policy" и нажать кнопку "Зарегистрировать".
Далее вам покажут следующее окно (адрес почты конечно будет вашим):
Идем в почту, переходим по ссылке из полученного письма, чтобы подтвердить адрес почты и регистрацию.
Далее просто в первом окне вводим ваш логин и пароль и попадаем на собственно сайт:
Я зашел под своей учеткой, и у меня сразу выбран целевой язык "Russian". У вас язык может быть задан, как "Все языки". В этом случае щёлкните по этим словам и во всплывающем окне введите в единственное поле Russian и выберите его.
Обратите внимание на разноцветные строки с вполне говорящими названиями типа LibreOffice 6.2 - UI или LibreOffice 6.2 - Help. Это соответственно переводы интерфейса пользователя и справки. Числа справа по столбцам подписаны и это количество:
красное - критические (ошибки)
коричневое - предложения по переводам, которые ждут подтверждения от людей с правами подтверждать переводы
синее - не завершённые переводы (термины и предложения).
Справка сегодня находится просто в невменяемом состоянии. Кто захочет помочь с переводами - вери велкам, что называется.
На сегодня нас интересует перевод UI в версиях 6.2 и в master (это будущий 6.3 на сегодня).
В строке LibreOffice 6.2 - UI щёлкаем по числу на синем фоне "Не завершено" и попадаем непосредственно в интерфейс перевода:
По середине у вас будет большое поле для ввода перевода, над которым располагается непосредственно термин или фраза, которая перевода требует. Старайтесь переводить максимально понятно и максимально КОРОТКО.
В левой части при этом есть подсказка, какой именно термин и, где именно в исходном коде, переводится (а мы переводим по сути метки, которые заданы именно в исходном коде LibreOffice). Человеку, ориентирующемуся в исходниках LibreOffice - это реально может помочь понять контекст для более корректного перевода.
Справа от поля для ввода перевода находятся две связанные кнопки "Зафиксировать"<->"Предложить". У вас будет доступна для работы только "Предложить", которую и нужно нажимать после ввода перевода. После этого фрагмент перейдет в коричневый статус "Предложения переводов", нажав на которые люди с правами смогут подтвердить или исправить ваш перевод. Так что не бойтесь ничего испортить, вам просто не дадут ;-)
После нажатия кнопки "Предложить" система автоматически предложит вам следующий требующий перевода термин/фразу.
Также в правом верхнем углу показывается число оставшихся фрагментов для перевода и стрелки возле них "Вверх" и "Вниз". Нажимая на стрелки, можно пропускать фрагменты, если не знаете, как перевести.
Вернуться к списку проектов можно, нажав на синюю ссылку "Вернуться к просмотру".
Обратите внимание, что пока названия emoji мы не локализуем! В левой части, если видите такое слово, то термин просто пропускайте.
Это собственно всё! Каждый может зайти и предложить свой перевод! Спасибо заранее всем, кто захочет сделать LibreOffice лучше.

ps: в принципе, даже если система будет показывать, что все возможные фрагменты переведены, LibreOffice всё равно может оказаться без каких-то переведённых терминов. Но, это уже, либо отсутствие ID у термина, либо сбой слияния перевода при подготовке билда. Это явно не проблемы самого перевода, но сообщить о таком всё равно надо.

суббота, 12 января 2019 г.

LibreOffice принимает теперь донаты и в криптовалюте

LibreOffice принимает теперь донаты и в криптовалюте. Если кому-то так удобнее, то теперь вы можете задонатить свой евро или пару в проект.

пятница, 4 января 2019 г.

Отчёт LibreOffice QA за декабрь 2018 года

TDF QA инженер Xisco Fauli опубликовал ежемесячный отчет о работе QA в проекте LibreOffice за декабрь 2018 года. По ссылке много разной информации и цифр.
Я обращу ваше внимание на две весьма показательные цифры из всего отчёта:
Подано отчетов об ошибках в декабре - 560.
Исправлено ошибок в декабре - 150.
Я не буду искать и вникать в то, насколько критичные ошибки были поданы в декабре и насколько критичные ошибки были исправлены в декабре. Вдумайтесь только в их количественное соотношение! Более чем в 3,5 раза ошибок новых заведено, чем было исправлено. И такое соотношение оно не только в декабре было. Оно ежемесячно сохраняется.
Это говорит об очень простой вещи. Проекту не хватает кодеров. Причем кодеров любого уровня и с самыми разными талантами.
Так что, если вы используете LibreOffice дома (абсолютно бесплатно) или на работе (опять же бесплатно, по своей воле или вам его навязал работодатель, который его с 99% вероятностью не купил), то вы легко сможете отблагодарить проект:
Персонально вы - можете найти программиста среди своих друзей или на просторах интернета, который за бутылку пива, хороший кофе, просто спасибо или некое вознаграждение исправит пару ошибок в LibreOffice.
Ваш работодатель - может сделать абсолютно то же самое. А может завести постоянную хорошую практику - платить какие-то деньги штатному/наемному программисту за исправление ошибок в LibreOffice, которые мешают именно его работникам.
О том, как зайти в проект и начать исправлять ошибки написано вот тут https://wiki.documentfoundation.org/Development и здесь https://wiki.documentfoundation.org/Development/GetInvolved

среда, 2 января 2019 г.

Макросы на Python в LibreOffice

Не все знают, что в LibreOffice можно использовать Python для написания макросов вместо Basic. Преимуществом будет в разы бОльшая производительность макроса. Недостатком - невозможность нормального написания и отладки макроса в IDE, встроенной в LibreOffice.
Самое первое, что нужно сделать, если вы захотите использовать Python для написания своих макросов (помимо знания самого Python'a) - это установить расширение APSO для возможности нормально управлять макросами, написанными на Python.
Второе - осилить вот эти статьи (на английском, к сожалению) и все ссылки с них на другие статьи: https://wiki.documentfoundation.org/Macros/Design_Guide, https://wiki.openoffice.org/wiki/Python.
Ах да, учитывайте, что LibreOffice таскает в своей поставке свой Python, уж не знаю какой версии. Однако, есть возможность использовать и внешний Python. Другое дело, что в этом случае будет возможность напороться на то, что ваш макрос на другом компьютере работать не будет из-за несовместимостей в версиях Python (я про 2.7 vs. 3.x).
По-хорошему, следовало бы развивать эту замечательную возможность в LibreOffice, начиная от приведения во вменяемый вид диалогов управления и организации макросов и внедрением в базовую поставку какой-нить простенькой IDE для Python, и заканчивая написанием полного хорошего руководства по написанию макросов на Python. Однако, к сожалению и как всегда, этим просто некому заниматься =(.
Update: иностранные товарищи подсказали мне, что внезапно они пишут справку по макросам на Python. Вот ссылка https://help.libreoffice.org/6.3/en-US/text/sbasic/python/main0000.html.