Русский и английский языки интерфейса
Язык выбирается в шапке панели, а до первого выбора берётся из настроек браузера. Переведены интерфейс, подписи и описания всех параметров конфигов, ошибки API и служебные сообщения менеджера в консоли. Подписи параметров вынесены из app.js в hints-<язык>.json: их больше четырёхсот на язык, и грузить чужой язык незачем. Сообщения менеджера переводятся на выходе из API по словарю, где ключом служит русская фраза из кода, — вывод самого игрового сервера через него проходит без изменений. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -29,6 +29,8 @@
|
||||
- **Бэкапы** — ручные и по расписанию, отдельно по каждому профилю, с
|
||||
ротацией, скачиванием и восстановлением (перед восстановлением
|
||||
автоматически снимается страховочная копия).
|
||||
- **Два языка** — русский и английский, с выбором в шапке и автоопределением
|
||||
по языку браузера.
|
||||
- **Установка и обновление** сервера через SteamCMD прямо из панели.
|
||||
- **Обновление самой панели** — кнопкой из интерфейса или одной командой в
|
||||
терминале.
|
||||
@@ -162,6 +164,18 @@ sudo /opt/pzmanager/install.sh --uninstall --purge
|
||||
curl -fsSL https://gitea.hsrv.site/mrleo1nid/pzmanager/raw/branch/main/deploy/get.sh | sudo bash -s -- --uninstall --purge
|
||||
```
|
||||
|
||||
## Язык интерфейса
|
||||
|
||||
Панель говорит по-русски и по-английски. Язык выбирается списком в шапке (и на
|
||||
экране входа, до того как вошли), а до первого выбора берётся из настроек
|
||||
браузера: русский — русским, всем остальным — английский. Выбор запоминается в
|
||||
браузере, поэтому у каждого, кто заходит в панель, он свой.
|
||||
|
||||
Переводится всё, что показывает панель: интерфейс, подписи и описания всех
|
||||
параметров `servertest.ini` и `SandboxVars.lua`, ошибки и служебные сообщения
|
||||
менеджера в консоли. Вывод самого игрового сервера остаётся как есть — он
|
||||
приходит от Project Zomboid.
|
||||
|
||||
## Моды
|
||||
|
||||
Project Zomboid хранит моды в двух строках конфига: `WorkshopItems` — что
|
||||
@@ -201,9 +215,10 @@ Mod ID, который нужен серверу, лежит внутри сам
|
||||
совпадение. Ключи, которых панель не знает (в новой версии игры их всегда
|
||||
добавляют), не теряются — они собираются в раздел «Прочее».
|
||||
|
||||
Описания параметров панель берёт из самого конфига: игра пишет их
|
||||
комментариями на языке сервера. Полный текст виден при наведении, начало —
|
||||
прямо под полем.
|
||||
Подписи и описания у панели свои, на языке интерфейса: игра пишет свои
|
||||
комментарии на языке сервера, а на Linux он почти всегда английский. Расшифровку
|
||||
конкретных значений (что означает 1, 2, 3) панель добавляет из самого конфига.
|
||||
Полный текст виден при наведении, начало — прямо под полем.
|
||||
|
||||
Правка меняет ровно ту строку, которую поправили: комментарии, порядок и
|
||||
переводы строк файла сохраняются, а рядом остаётся копия прежней версии с
|
||||
@@ -445,6 +460,12 @@ make run # локальный запуск с конфигом в ./dev
|
||||
Веб-интерфейс — обычные HTML, CSS и JS в `web/static`, без сборщика; при
|
||||
`go build` они вшиваются в бинарник через `embed`.
|
||||
|
||||
Переводы лежат рядом: строки интерфейса — в `web/static/i18n.js`, подписи
|
||||
параметров конфигов — в `web/static/hints-ru.json` и `hints-en.json`
|
||||
(загружается только нужный язык), сообщения самого менеджера — в
|
||||
`internal/i18n/catalog.go`, где ключом служит русская фраза из кода. Тесты в
|
||||
`web` и `internal/i18n` следят, чтобы словари не разъезжались.
|
||||
|
||||
## Лицензия
|
||||
|
||||
[MIT](LICENSE) — делайте с кодом что угодно, но без каких-либо гарантий.
|
||||
|
||||
Reference in New Issue
Block a user