СвалянеOnlineГалерия

Ръководство за превод

Въведение

Говориш чужд език, който все още не се поддържа в Sweet Home 3D и искаш да допринесеш за превода му на този език? От версия 2.3, Sweet Home 3D поддържа SH3L файлове и това ръководство ще ти покаже как да създадеш такъв файл самостоятелно. SH3L файлът е автоматично инсталиращ се езиков файл и потребителите трябва само да кликнат два пъти върху SH3L файл, за да преведат Sweet Home 3D на езика, описан в този файл.

Основни инструкции

Създаването на SH3L файл се състои от:

  1. downloading an English version of the files to translate,
  2. разархивиране на изтегления файл,
  3. добавяне на 2-буквен суфикс, съответстващ на твоя език към .properties файловете, които съдържа,
  4. превеждане на текста в .properties файловете,
  5. конвертиране в ASCII кодировка,
  6. превеждане на помощния текст в .html файловете (не е задължително, но ще бъде наистина полезно за потребителите),
  7. архивиране на .properties файловете и помощните файлове обратно във файл с разширение SH3L,
  8. двойно кликване върху SH3L файла, за да тестваш превода си в Sweet Home 3D,
  9. разпространение на твоя SH3L файл.

Подробни инструкции

Ако не се притесняваш от предишните основни инструкции, продължи със следващите стъпки.

Получаване на английската версия

Download the archive at https://www.sweethome3d.com/SweetHome3DTranslation.zip (version 7.5) and unzip it with the tools of your system.
SweetHome3DTranslation.zip contains a set of files with .properties and .html extensions placed in subfolders as shown in figure 1.

Файлове за превод
Фигура 1. Файлове за превод

Всички .properties и .html файлове съдържат английската версия на текстовете, които трябва да преведеш на твоя език:

.properties файловете трябва да бъдат поставени в папките, показани на фигура 1. В противен случай Sweet Home 3D няма да може да ги използва правилно. Затова не премествай файловете от техните папки, не преименувай никоя папка (с изключение на en поддиректорията на help) и не изтривай никоя папка.

Преименуване на файловете според твоя език

Преди да преведеш .properties файловете, трябва да преименуваш всеки от тях, като добавиш към името им долна черта, последвана от 2-буквения ISO код, съответстващ на твоя език. Ще намериш този код в последната колона на документа https://www.loc.gov/standards/iso639-2/php/English_list.php.
След това, ако искаш да преведеш помощните файлове, трябва да преименуваш също и поддиректорията на с този 2-буквен код.
Например, ISO кодът за чешки език е . Ако искаш да преведеш Sweet Home 3D на чешки, всяко име на файл трябва да завършва с _cs, и трябва да преименуваш файловете както е показано на фигура 2.

Ръководство за превод
Фигура 2. Properties файлове с техния ISO код суфикс

Превеждане на properties файлове

.properties файловете са обикновени текстови файлове и можеш да ги редактираш с всеки текстов редактор като Wordpad, TextEdit или emacs. Например, com/eteks/sweethome3d/package.properties файлът в Sweet Home 3D 3.0 съдържа следния текст:

# package.properties 10 oct. 2007
# 
# Copyright (c) 2024 Space Mushrooms <[email protected]>. All Rights Reserved.
# 
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
# 
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
# details.
# 
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
# Place, Suite 330, Boston, MA 02111-1307 USA

# Ресурси за HomeFramePane клас
HomeFramePane.untitled=Без име


# Ресурси за MacOSXConfiguration клас
MacOSXConfiguration.WINDOW_MENU.Name=Прозорец
MacOSXConfiguration.MINIMIZE.Name=Минимизирай
MacOSXConfiguration.ZOOM.Name=Мащабиране
MacOSXConfiguration.BRING_ALL_TO_FRONT.Name=Изведи всички напред


# Ресурси за SweetHome3D клас
SweetHome3D.3DError.message=<html> Sweet Home 3D ще се затвори поради фатална грешка
    <br>в 3D системата за рендериране. Моля, обнови DirectX/OpenGL драйверите
    <br>на твоята графична карта. 
SweetHome3D.3DError.title=3D Грешка
    
SweetHome3D.confirmSaveAfter3DError.message=<html> Sweet Home 3D трябва да се затвори поради фатална грешка в
    <br>3D системата за рендериране. Искаш ли да запазиш всички променени проекти? 
SweetHome3D.confirmSaveAfter3DError.title=3D Грешка
SweetHome3D.confirmSaveAfter3DError.save=Запази
SweetHome3D.confirmSaveAfter3DError.doNotSave=Не запазвай

.properties файлът съдържа три вида редове:

Специални случаи:

Конвертиране на properties файлове в ASCII кодировка

Ако си превел текстове на език с букви, които не принадлежат на ISO-8859-1 кодировката (главно езици от Централна и Източна Европа и езици с нелатинска азбука), ще трябва да конвертираш всички твои .properties файлове в ASCII кодировка, поддържана от Sweet Home 3D. Това конвертиране може да бъде направено с native2ascii инструмента, предоставен с JDK или може да бъде извършено със следната форма.
За всеки .properties файл, създай резервно копие на този файл, копирай/постави текста за конвертиране в следното текстово поле, кликни върху бутона Конвертирай и копирай/постави конвертирания текст обратно в неговия .properties файл.

Инструментът за конвертиране ще замени всеки не-ASCII знак (акцентирани латински букви и нелатински букви) с последователност, започваща с \u и последвана от 4-цифрен шестнадесетичен код, съответстващ на този знак в Unicode. За съжаление, това конвертиране ще направи текста ти доста нечетлив за човек, но ако не го извършиш, Sweet Home 3D няма да може да показва правилно знаците от твоя превод. Това е причината, поради която трябва да създадеш резервно копие на оригиналните си .properties файлове, в случай че искаш да ги промениш по-късно.
Ако искаш директно да редактираш .properties файлове, конвертирани в ASCII, можеш също да използваш приложението Properties Editor, налично като изпълним Jar файл тук.

Превеждане на помощните файлове

Добрият превод на Sweet Home 3D трябва да включва също и превода на помощните файлове. Превеждането на всички .html файлове е дълга задача, но наистина ще помогне на потребителите да научат софтуера и да се избегнат някои заявки за поддръжка във форума на Sweet Home 3D. Използвай всеки HTML редактор за превод на тези файлове, опитвайки се да запазиш връзките, които съдържа и неговия стилов лист непроменени.
След като са преведени, трябва също да създадеш екранни снимки на диалоговите прозорци на твоя език, за да замениш изображенията, намиращи се в com/eteks/sweethome3d/viewcontroller/resources/help/en/images. За да можеш да създадеш такива екранни снимки, създай и тествай първо SH3L файл със следващите стъпки (след като съществува SH3L файл, съдържащ преведени .properties файлове, можеш също да поискаш от разработчика на Sweet Home 3D да генерира екранните снимки).

Създаване на SH3L файл

След като всички .properties и .html файлове са преведени и конвертирани в ASCII, ако е необходимо (или дори преди, ако искаш да тестваш тази процедура), трябва да ги архивираш в zip файл. В зависимост от твоята система, създаването на zip файл може да бъде направено със следната процедура:

Накрая, промени .zip разширението на zip файла на .sh3l. SH3L файлът може да има всякакво име, но за да избегнеш конфликти със съществуващи SH3L файлове, трябва да го именуваш според езика, който съдържа и версията на Sweet Home 3D, която си превел (например, French-4.1.sh3l би било добро име за френския превод на Sweet Home 3D 4.1).

Тестване на SH3L файл

За да тестваш превода, кликни два пъти върху SH3L файл или го избери с бутона Импортирай езиков библиотечен файл показан в горната част на панела Предпочитания. Това ще стартира Sweet Home 3D и ще преведе потребителския му интерфейс на езика, описан в SH3L файла. Това също ще копира SH3L файла в папка, зависеща от твоята система:

Отбележи също, че по време на разработката на твоя SH3L файл, вероятно ще трябва да рестартираш Sweet Home 3D, за да видиш промените в SH3L файла си.

Разпространение на SH3L файлове

Once your SH3L file is ready, you can propose it to anyone, announce it to Sweet Home 3D users in the forum part reserved to foreign languages or in other places. If you agree, it can be made available on this web site in the page about translations supported by Sweet Home 3D.

Актуализиране на SH3L файлове

Някои версии на Sweet Home 3D добавят нови функции за превод, други не. Ако не преведеш етикетите на потребителския интерфейс, съответстващи на тези нови функции, Sweet Home 3D ще работи, но всички нови етикети ще се появят на английски. За да намериш новите ключове и актуализираните ключове в .properties файловете, можеш да използваш функция, предлагана от SourceForge.net, която ти позволява да сравниш две версии на проектен файл:

  1. Search the dates of Sweet Home 3D versions you want to compare in history (for example, July 19, 2015 for version 5.0 and February 2, 2015 for version 4.6)
  2. Кликни върху .properties или .html файла, който искаш да актуализираш в фигура 1,
  3. Избери двете квадратчета на номера на ревизията, съответстващи на датата на версията за актуализирания файл, като избереш датата, която е точно преди датата на версията на Sweet Home 3D,
  4. Кликни върху бутона Сравни.

Последният клик ще ти покаже разликите между двете версии на този .properties файл (например тази връзка ще ти покаже разликите между версия 4.6 и версия 5.0 на файла com/eteks/sweethome3d/viewcontroller/package.properties).

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