/ / Най-добра практика превежда дълги текстове с Java Spring i18n - java, spring, интернационализация

Най-добрата практика превежда дълги текстове с Java Spring i18n - Java, пролет, интернационализация

Използвам Java Spring i18n за превода на моята уеб страница. Искам да знам каква е най-добрата практика за превод на дълги текстове.

Пример: Имам файл с имоти usermsg_bg.properties:

short_text = short line
long_text = post about something with lot of text lines...

и jsp файл:

....
<div id="content"><spring:message code="long_text"/></div>
....

Отговори:

1 за отговор № 1

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

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

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

Има голяма статия за интернационализацията тук

В работата си от този списък правим много неща за интернационализация, а най-важните неща са:

  • не свързвайте низове
  • не използвайте стойности за дата / час / валута
  • давайте на струните стая да расте и да се свива
  • НИКОГА никога не се доверявайте на браузъра да знае локал (подчертайте „никога“) и направи проучване)

Също така, ако вече не сте, определено искате да съхранявате всички низове във файловете .properties


2 за отговор № 2

Всичко, което е написал Джеймс Скот Тейлер, е правилно: моля, следвайте съвета му. Все още има още две неща за превода на дълги низове, които може да искате да разгледате:

  1. Избягвайте твърди кодирани прекъсвания на редове в източника сиезикови низове. Освен ако преводачите нямат достъп до жива система, където могат да видят къде трябва да поставят прекъсвания на редовете в целевия език, те просто няма да знаят къде трябва да бъдат опаковани линиите на целевите езици. уебсайтове, но съм виждал твърде много случаи n в низове за уеб сайтове, за да не споменава това.

  2. Професионалните преводачи работят в преводаческа среда преводачески памети, Спомените за превод са бази данни, които се съхраняватпредишни преводи и когато преводачът срещне нов низ, който трябва да бъде преведен, този низ и предишният превод ще бъдат прегледани в паметта за превод. Типичното устройство за съхранение на софтуерни UI текстове е единичен низ, за ​​документация той е изречение или абзац. Когато преводач отвори файл със свойства за превод, паметта за превод обикновено търси един съществуващ превод за дългия ви текст (тъй като той идва от файл с свойства). Ако дългият текст е бил обработен, изречението по изречение може да е получило повече съвпадения, което означава, че преводът може да се извърши по-бързо и по-евтино.

Разбира се, вторият брой вече не се прилага след първия кръг на превода за дългите ви текстове. И това също не се прилага, ако не се налага да плащате за преводите си. :-)