1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-Deskreen

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
how-to-add-new-language-translation-to-Deskreen.md 13 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 08.06.2025 18:02 61dedaa

Руководство по добавлению новой языковой локализации для Deskreen

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

Если вы хотите внести вклад в перевод только приложения и не хотите помогать с переводом веб-сайта, то ваша подача новой языковой поддержки будет приостановлена до тех пор, пока не будет переведен веб-сайт Deskreen. Следуйте руководствам по локализации веб-сайта Deskreen для добавления перевода вашего языка для веб-сайта Deskreen.

Руководства по подаче переводов для веб-сайта Deskreen будут добавлены здесь в ближайшее время (в течение следующей недели). Оставайтесь на связи.

Вы можете подписаться на эту тему для получения новостей о переводах: https://github.com/pavlobu/deskreen/issues/60


Содержание- Примечания по редактированию файлов translation.json. (Применимо ко всем участникам, независимо от того, знают ли они программировать или нет)

Примечания по редактированию файлов `translation.json`. (Применимо ко всем участникам, независимо от того, знают ли они программировать или нет)

При редактировании файла translation.json, не изменяйте левую часть перевода до :. Изменяйте только текст между " на правой стороне знака :.

Пример:

Некоторое содержимое файла translation.json

До вашего изменения (оригинал):
...
"Hello": "Hello"
...
Пример хорошего изменения (например, поддержка испанского языка):
...
"Hello": "Hola"
...
Пример плохого изменения (левая часть отличается от оригинала):
...
"Greetings": "Привет"
...

Я не знаю, как программировать или не знаю, как работает git, но хочу помочь с добавлением поддержки нового языка для приложения Deskreen и веб-сайта

Добавьте поддержку нового языка для приложения Deskreen, если вы не знаете, как программировать

Вы можете использовать любой простой текстовый редактор для редактирования файла translation.json. Хорошие текстовые редакторы для различных операционных систем:

  • Windows (Notepad)
  • MacOS (TextEdit)
  • Linux (gedit, mousepad и т.д.)

Вы можете получить файл translation.json на английском языке здесь и использовать его как шаблон. **Этот файл предназначен для приложения Deskreen, которое работает на компьютере.**Второй файл translation.json на английском языке, который вам нужно отредактировать, находится здесь и также можно использовать его как шаблон. Этот файл предназначен для веб-браузера Deskreen Viewer, который работает на любом устройстве.

Как скачать файл translation.json

откройте ссылку -> нажмите правой кнопкой мыши в окне браузера -> Сохранить как..

Добавьте поддержку нового языка для веб-сайта Deskreen, если вы не знаете, как программировать

Следуйте руководствам на репозитории языков Deskreen website

Когда закончите редактирование файлов translation.json

Вы можете отправить мне ссылку на Google Drive для этих файлов с переводами приложения Deskreen и веб-сайта, или прикрепить их к письму. Пожалуйста, дайте разные имена для файлов при их прикреплении. Также пожалуйста, укажите, какой это язык, для которого вы сделали перевод. После этого мы добавим поддержку нового языка и выпустим новую версию с вашим именем в логе изменений :) Большое спасибо!

Я знаю, как программировать и знаю, как работает git, с чего мне начать добавление поддержки нового языка для приложения Deskreen и веб-сайта?

### ВАЖНО: Пожалуйста, убедитесь, что ваш PR состоит из 1 или максимум 2 коммитов. Если он длиннее, вас попросят уменьшить количество коммитов в PR. Если вы не знаете, как это сделать, обратитесь к [этому руководству](#dont-know-code)### Добавление новой языковой поддержки для приложения Deskreen. Пошаговое руководство для разработчиков и людей, знающих, как использовать gitВы должны добавить её в двух местах: 1. хост-приложение, которое работает на компьютере и 2. клиентский просмотрщик, который работает в веб-браузере

Допустим, вы хотите добавить поддержку языка испанский.

Пошаговое руководство по переводу хост-приложения:

  • в папке app/locales создайте новую директорию с кодом языка ISO 639-1 испанского языка, который равен es
  • создайте файл app/locales/es/translation.json
  • скопируйте содержимое файла app/locales/en/translation.json в файл app/locales/es/translation.json
  • редактируйте переводы в файле app/locales/es/translation.json переводя только то, что находится справа от : на каждой строке на испанский язык
  • в файле app/configs/app.lang.config.ts добавьте полное имя языка с ключом ISO в карте langISOKeyToLangFullNameMap. Пример: es: Español
  • в файле app/configs/app.lang.config.ts добавьте ключ языка ISO в список languages. Пример: ['en', .... , 'es']
  • на верхней части всех файлов translation.json в папке app/locales добавьте es: Español под всеми языками. Пример:
    ....
    "ru": "Русский",
    "en": "English",
    "ua": "Українська",
    "es": "Español",
    ....
  • В функции getShuffledArrayOfHello (найдите стрелочную функцию) добавьте слово приветствие на вашем языке в список res таким образом: res.push(translationES.Hello);. Вам сначала нужно будет импортировать translationES в верхней части файла, где находится эта стрелочная функция. Пример: import translationES from '../locales/es/translation.json'- Готово с хост-приложением!
  • Теперь приступайте к клиентскому просмотрщику. Создайте директорию es в папке app/client/public/locales
  • создайте файл app/client/public/locales/es/translation.json
  • скопируйте содержимое файла app/client/public/locales/en/translation.json в файл app/client/public/locales/es/translation.json
  • редактируйте переводы в файле app/client/public/locales/es/translation.json переводя только то, что находится справа от : на каждой строке на испанский язык
  • в файле app/client/src/config/i18n.ts в whitelist добавьте es в конец. Пример: whitelist: ['en', 'ru', 'ua', 'es']
  • Готово с переводами клиента!

Не забудьте протестировать, работает ли ваша правка. Запустите приложение с помощью yarn start из корневой директории проекта Deskreen.### Когда переводы в Deskreen App завершены, исправьте тесты, если они сломаны. И перегенерируйте снимки экрана, если это необходимо.

Как перегенерировать снимки экрана, если у вас есть не проходящие тесты при запуске yarn test?

в корневом ./ каталоге проекта выполните это:

yarn jest --updateSnapshot

в каталоге Deskreen Viewer ./app/client проекта выполните это:

cd app/client
SKIP_PREFLIGHT_CHECK=true yarn test:nowatch -- -u

Выполните yarn test-all локально, чтобы убедиться, что у вас нет ошибок, перед отправкой вашего Pull Request

На этом этапе вы должны завершить добавление перевода.

Добавьте новую языковую версию для Deskreen Website. Пошаговое руководство для разработчиков и людей, знающих, как использовать gitСледуйте руководствам на Deskreen website locales repo

ВАЖНО: Пожалуйста, убедитесь, что ваш Pull Request состоит из 1 или максимум 2 коммитов. Если он длиннее, вас попросят уменьшить количество коммитов в Pull Request. Если вы не знаете, как это сделать, обратитесь к этому руководству

После этого вы можете отправить ваш Pull Request, и он будет проверен. Если всё в порядке и переводы для сайта завершены, то он будет объединён, и ваши переводы будут включены в новую версию Deskreen. Большое спасибо за вашу работу!

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-Deskreen.git
git@api.gitlife.ru:oschina-mirror/mirrors-Deskreen.git
oschina-mirror
mirrors-Deskreen
mirrors-Deskreen
master