Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Переводы _ Замена в Qt документации стандартных предложений

Автор: Admin 21.1.2008, 13:38

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

Цитата
{"[модуль <a href=\"qtcore.html\">QtCore</a>]", "[<a href=\"qtcore.html\">QtCore</a> module]"},
{"[модуль <a href=\"qtgui.html\">QtGui</a>]", "[<a href=\"qtgui.html\">QtGui</a> module]"},
{"[модуль <a href=\"qtnetwork.html\">QtNetwork</a>]", "[<a href=\"qtnetwork.html\">QtNetwork</a> module]"},
{"[модуль <a href=\"qtopengl.html\">QtOpenGL</a>]", "[<a href=\"qtopengl.html\">QtOpenGL</a> module]"},
{"[модуль <a href=\"qtsql.html\">QtSql</a>]", "[<a href=\"qtsql.html\">QtSql</a> module]"},
{"[модуль <a href=\"qtscript.html\">QtScript</a>]", "[<a href=\"qtscript.html\">QtScript</a> module]"},
{"[модуль <a href=\"qtsvg.html\">QtSvg</a>]", "[<a href=\"qtsvg.html\">QtSvg</a> module]"},
{"[модуль <a href=\"qtxml.html\">QtXml</a>]", "[<a href=\"qtxml.html\">QtXml</a> module]"},
{"[модуль <a href=\"qtdesigner.html\">QtDesigner</a>]", "[<a href=\"qtdesigner.html\">QtDesigner</a> module]"},
{"[модуль <a href=\"qtuitools.html\">QtUiTools</a>]", "[<a href=\"qtuitools.html\">QtUiTools</a> module]"},
{"[модуль <a href=\"qtassistant.html\">QtAssistant</a>]", "[<a href=\"qtassistant.html\">QtAssistant</a> module]"},
{"[модуль <a href=\"qt3support.html\">Qt3Support</a>]", "[<a href=\"qt3support.html\">Qt3Support</a> module]"},
{"[модуль <a href=\"qttest.html\">QtTest</a>]", "[<a href=\"qttest.html\">QtTest</a> module]"},
{"[модуль <a href=\"qaxcontainer.html\">QAxContainer</a>]", "[<a href=\"qaxcontainer.html\">QAxContainer</a> module]"},
{"[модуль <a href=\"qaxserver.html\">QAxServer</a>]", "[<a href=\"qaxserver.html\">QAxServer</a> module]"},
{"[модуль <a href=\"qtdbus.html\">QtDBus</a>]", "[<a href=\"qtdbus.html\">QtDBus</a> module]"},

{"Список всех членов включая унаследованные", "List of all members, including inherited members"},
{"Поддержка членов Qt 3", "Qt 3 support members"},

{"Открытые типы", "Public Types"},
{"Связанные не-члены", "Related Non-Members"},
{"Описание типов членов", "Member Type Documentation"},

{"Свойства", "Properties"},
{"свойства унаследованных от", "properties inherited from"},
{"свойство унаследованное от", "property inherited from"},

{"Открытые функции", "Public Functions"},
{"открытых функций унаследованных от", "public functions inherited from"},
{"открытая функция унаследованная от", "public function inherited from"},

{"Открытые слоты", "Public Slots"},
{"открытых слотов унаследованных от", "public slots inherited from"},
{"открытый слот унаследованный от", "public slot inherited from"},

{"Защищенные слоты", "Protected Slots"},
{"защищенных слотов унаследованных от", "protected slots inherited from"},
{"защищенный слот унаследованный от", "protected slot inherited from"},

{"Сигналы", "Signals"},
{"сигнала унаследованных от", "signals inherited from"},
{"сигнал унаследованный от", "signal inherited from"},

{"Защищенные функции", "Protected Functions"},
{"защищенных функций унаследованных от", "protected functions inherited from"},
{"защищенная функция унаследованна от", "protected function inherited from"},

{"Дополнительные унаследованные члены", "Additional Inherited Members"},
{"статических открытых члена унаследованных от", "static public members inherited from"},
{"защищенный слот унаследованный от", "protected slot inherited from"},

{"Подробное описание", "Detailed Description"},
{"Описание свойств", "Property Documentation"},
{"Функции доступа:", "Access functions:"},
{"Описание функций-членов", "Member Function Documentation"},

{"Статические открытые члены", "Static Public Members"},
{"Макросы", "Macros"},
{"Устаревшие члены", "Obsolete members"},


Как считаете, стоит автоматом менять или нет? У меня уже впринципе все готово для их замены... :)

Автор: archimed7592 21.1.2008, 15:00

Стоит, но только в тех файлых, которые хотя бы начали переводить. В нетронутых файлах, я считаю, не должно быть никаких изменений(т.е. они должны оставаться нетронутыми).

Автор: ViGOur 21.1.2008, 16:18

Ну смотри, будет переведена стандартная часть. А остальное, что требует перевода постепенно будет переведено.
Просто думается, что так меньше времени будет затрачено на перевод.

Автор: archimed7592 21.1.2008, 16:43

У меня сейчас крутятся кое-какие мысли в голове относительно того, чтобы зусунуть всё это дело в SVN и мне не кажется хорошей идеей трогать(вообще как-либо) непереведённые файлы. Точнее говоря я вижу в этом некоторую проблему.
Скажем так: сейчас есть возможность разом отделить переведённые(возможно, частично) файлы от непереведённых? Или для этого нужно каждый конкретный файл открывать и смотреть?
Если такое разделение можно будет сделать без особой крови, то проблемы нет.

Автор: Admin 21.1.2008, 17:06

Открывать и смотреть.
Не учли этого... :(

Автор: archimed7592 21.1.2008, 17:36

Вот поэтому очень рекомендую оставлять непереведённые файлы нетронутыми. На данный момент это достаточно просто можно решить, идентифицировав непереведённые файлы по единственным отличиям: в "шапке" и "подписи". Если ты сделаешь предлагаемые замены, то идентифицировать станет на порядок сложнее. Как вариант: напиши скрипт, который делает необходимые замены и прогони через него серверную версию, но, локальная версия(которую ты недавно выкладывал) должна, содержать либо только переведённые файлы, либо вместе с "неиспорченными" непереведёнными файлами(если, по каким-то причинам ты захочешь чтобы мы скачивали на мегабайт больше, чем нужно :lol:).

Автор: Litkevich Yuriy 20.3.2008, 22:55

В копилку стандартных фраз:

This class was introduced in Qt 4.2. = Этот класс был введен в Qt 4.2.
This function was introduced in Qt 4.1. = Эта функция была введена в Qt 4.1.

Автор: Novak 24.3.2008, 8:57

{"Список всех членов включая унаследованные", "List of all members, including inherited members"}

Почемуто мне кажется, что нужна запятая, то есть
"Список всех членов, включая унаследованные"

Автор: Litkevich Yuriy 24.3.2008, 9:17

да, похоже ты прав

Автор: Novak 24.3.2008, 9:34

В список стандартных фраз:

{"Смотрите также", "See also "}

Автор: Litkevich Yuriy 25.3.2008, 6:37

Еще в копилочку

Цитата
{"Далее...", "More... "}

Автор: ViGOur 25.3.2008, 8:45

Давайте поднаберем побольше, а потом все разом я заменю.
Чтобы по чуть чуть это не делать.

Автор: Litkevich Yuriy 25.3.2008, 8:47

согласен

Автор: Novak 9.4.2008, 23:25

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

Автор: Litkevich Yuriy 10.4.2008, 4:58

не понял, т.е. в html'ном файле должно выглядеть так?

Цитата
7 protected functions inherited from (защищенных функций унаследованных от) QObject
1 protected function inherited from (защищенная функция унаследованна от) QPaintDevice
Protected Slots (Защищенные слоты )
virtual void closeEditor ( QWidget * editor, QAbstractItemDelegate::EndEditHint hint )

Автор: Novak 10.4.2008, 6:41

Примерно да, но это скорее относится именно к определенным терминам из глоссария и стандартным выражениям, состоящим из одного слова:

{"Макросы", "Macros"}

{"вспомогательная функция", "convenience function"}

Цитата
This convenience function (вспомогательная функция) is equivalent to..

Автор: Litkevich Yuriy 10.4.2008, 6:58

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

Цитата
This convenience function (вспомогательная функция) is equivalent to..

ведь автоматом "convenience function" не переводится.
Если доживем до автоматизации то можно поступить например так, автоматически переведенную фразу в ставлять в html код в виде коментария:
This convenience function <!--вспомогательная функция--> is equivalent to..

тогда читатель его не видит и она его не смущает, а переводчик видит и может использовать.

Автор: ViGOur 10.4.2008, 8:22

Цитата(Litkevich Yuriy @ 10.4.2008, 7:58) *
ведь автоматом "convenience function" не переводится.
Угу, не будет. :)

Автор: Novak 10.4.2008, 22:22

Цитата
тут есть нюанс...

Да, я и оговорился, что это скорее для слов из глоссария актуально. Просто тема близкая.
Цитата
тогда читатель его не видит и она его не смущает, а переводчик видит и может использовать.

А зачем вообще включать подобные вставки в файлы для пользователей? Возможно, имеет смысл сделать именно версию для перевода - в ней и совершить подобные замены. Это может несколько сократить время перевода. При условии расширения глоссария с ним все менее будет удобно работать в виде отдельного файлика. А контекстные вставки по сути будут отображать рекомендуемый перевод сразу, что более удобно.

Автор: Litkevich Yuriy 11.4.2008, 11:19

Цитата
Возможно, имеет смысл сделать именно версию для перевода

а как потом из нее делать для пользователей?

Автор: Novak 11.4.2008, 22:11

Цитата(Litkevich Yuriy @ 11.4.2008, 12:19) *
а как потом из нее делать для пользователей?

Легко - переведенные и верифицированные файлы переносить в версию для пользователей.

Автор: Litkevich Yuriy 11.4.2008, 22:58

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

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

Вообще вся эта система у тролей - хреновая, в плане перевода, вот еслиб все это добро в po-файлы преобразовать, тогда можно использовать систему памяти переводов.
С qdoc дела обстаят плохо, равно как и с результатами поиска в Асистенте.

поэтому я думаю, что сейчас имеет смысл переводить html'ьники как переводим, надо добить до конца, отредактировать. К тому моменту, я надеюсь, удастся поднять здесь репозитарий.
А потом уже и подход менять на основе накопленного опыта и выбранного способа работы.

Автор: Litkevich Yuriy 11.4.2008, 23:02

Проекты с качественным переводом, как правило медленно движутся, у них строгие правила, пример тому перевод документации Subversion, уних за год очень мало добавилось. Но очень хороший перевод. Вот их http://svnbook.org.ua/wiki/TranslationWorkflow

Автор: Novak 12.4.2008, 18:39

Цитата(Litkevich Yuriy @ 11.4.2008, 23:58) *
если редактировать перевод и только потом выкладывать для пользователей, то пользователи очень не скоро его увидят.

То есть сейчас даже полупереведенные файлы из репозитория доступны пользователям?

Автор: Litkevich Yuriy 12.4.2008, 18:48

да, доступны
например:
http://www.crossplatform.ru/documentation/qtdoc4.3/deployment-windows.php,
http://www.crossplatform.ru/documentation/qtdoc4.3/sql-driver.php
все таки люди имеют возможность что-то почитать, иногда это очень важно.

Автор: Novak 13.4.2008, 12:41

Цитата(Litkevich Yuriy @ 12.4.2008, 19:48) *
да, доступны

Понял, тогда, конечно, не стоит таким образом заменят.

Автор: Litkevich Yuriy 23.4.2008, 17:31

нашел еще косячек с авто переводом в qtscript.html:

Configuring the Build Process
Language Overview
Basic Usage
Making a QObject Available to the Script Engine
Using Сигналы and Slots
Signal to Function Connections
Signal to Member Function Connections
Signal to Named Member Function Connections
Error Handling
Emitting Сигналы from Scripts
Overloaded Сигналы and Slots
Accessing Свойства
Accessing Child QObjects
Controlling QObject Ownership
Customizing Access to the QObject
Conversion Between QtScript and C++ Types
How to Design and Implement Application Objects
Making a C++ object available to Scripts Written in Qt Script
Making C++ Class Member Functions Available in Qt Script
Making C++ Class Свойства Available in Qt Script
Reacting to C++ Objects Сигналы in Scripts
Design of Application Objects
Making Use of Prototype-Based Inheritance
Prototype Objects and Shared Свойства
Defining Classes in a Prototype-Based Universe
Prototype-Based Programming with the QtScript C++ API
ECMAScript Compatibility
Qt Script Extensions to ECMAScript

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

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)