2009-09-26 2 views
11

Существует JavaDoc обычного Java API с английским изданием и китайским изданием, но, похоже, для каждого издания требуется отдельный исходный код. Есть ли более удобный способ сделать это?Как создать многоязычные JavaDocs?

+2

И ваш вопрос ... что именно? – hjhill

+0

@hjhill Я отредактировал этот вопрос, чтобы сделать его актуальным. –

ответ

20

Нет, по существу, нет способа сделать это.

Единственное, что приходит в голову, относится к сгенерированным страницам HTML: вы можете окружать JavaDocs в блочных элементах, которые переключают между языками с помощью CSS. Рассматривают:

/** 
* <div class="en">Documentation in English</div> 
* <div class="nl">Documentatie in Nederlands</div> 
*/ 
public void myFunction() {} 

Впоследствии редактировать CSS из JavaDocs, так что пользователь может переключать языки, например .:

div.en { display:none; } 
div.nl { display:block; } 
+0

Это отличная идея, спасибо. – xrath

+0

Очень хорошая идея Спасибо большое! Как добавить Javascripts в JavaDoc? – freddiefujiwara

+0

Я вижу, что вы уже получили ответ на свой вопрос здесь: http://stackoverflow.com/questions/1483141 –

5

Короткий ответ: нет. Существующие комментарии и инструменты javadoc не поддерживают это.

Я не думаю, что было бы неплохо добавить поддержку для встраивания нескольких переводов комментариев javadoc в исходный код. Это не было бы масштабируемым решением:

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

Учтите, что я разработчик API, который не читает и не пишет по-китайски. Когда я обновляю английские javadocs, как я могу отметить, что китайские комментарии javadoc необходимо обновить? Что мы делаем с проблемой, что потенциально большое количество переводчиков должно обновлять файлы исходного кода и может случайно ввести регрессии в фактический код? Как менеджер выпуска гарантирует, что все переводы выполняются до выпуска «золотой»?

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

Смежные вопросы