mirror of
https://github.com/navidrome/navidrome.git
synced 2026-08-01 07:21:17 +00:00
* fix(i18n): correct grammar errors in Serbian (sr) translation
Eight objective grammatical / lexical errors in `resources/i18n/sr.json`.
No stylistic or strategic re-wording — only corrections where the
current string is grammatically wrong, contains a non-word, or breaks
plural / case agreement.
| Key | Before | After | Why |
| --- | --- | --- | --- |
| `resources.song.fields.bitDepth` | `Битова` | `Битска дубина` | "Битова" is genitive plural of "bit" ("of bits") and drops the "depth" semantics. Adjective+noun shape matches `Битски проток` already used for the adjacent "Bit rate" field |
| `resources.song.fields.channels` | `Канала` | `Канали` | "Канала" is genitive plural ("of channels"); a column header needs nominative plural "Канали" |
| `resources.radio.name` plural | `Радији` | `Радио-станице` | "Радији" is not a valid plural of "Радио" in Serbian. The standard plural for radio stations is "Радио-станице" |
| `ra.input.file.upload_*` and `ra.input.image.upload_*` | `Упустите фајлове / слике …` | `Превуците фајлове / слике …` | "Упустити" means "to engage in / to indulge", not "to drop". For drag-and-drop UIs the standard Serbian verb is "Превуците" ("Drag") |
| `ra.navigation.prev` | `Претход` | `Претх.` | "Претход" is not a word — looks like a truncated "Претходна" missing the period. Restored as a proper abbreviation |
| `about.links.featureRequests` | `Захтеви за функцијама` | `Захтеви за функције` | Wrong case. Serbian "захтев за X" takes accusative ("захтев за помоћ"), not instrumental ("за функцијама") |
| `player.clickToPauseText` / `clickToPlayText` | `Кликни за паузирање / пуштање` | `Кликните за паузирање / пуштање` | The rest of the file uses formal plural imperative ("Кликните…"). Only these two used the singular informal "Кликни", which broke the consistent register |
JSON validated with `python3 -m json.tool`. No keys added, removed, or
re-ordered — diff is purely value substitution. Stylistic and lexical
modernization (e.g. "Уметник" → "Извођач" for music artist, filling
the missing `library` / `plugin` / `nowPlaying` blocks added in upstream
en.json) intentionally left for a follow-up PR after this baseline of
objective fixes lands.
* fix(i18n): fill missing keys in Serbian (sr) translation — 100% coverage
The Serbian translation was at 70% of upstream `en.json` (389 of 553 keys).
This commit fills all 164 missing keys, bringing coverage to 100%.
The file is also re-ordered to match `en.json`'s key sequence so that
future translation drift is easy to detect by diffing the two files
side-by-side. This is the same regeneration pattern used by the previous
maintainer's PR #3941.
## What was missing
| Block | Keys | Notes |
| --- | ---: | --- |
| `resources.plugin` | 58 | Whole Plugin system block — settings, config schema, permissions, notifications |
| `resources.library` | 43 | Whole Library management block — fields, scan actions, validation, notifications |
| `about.config` + `about.tabs` | 12 | Configuration export feature (TOML) |
| `message.*` | 11 | Cover-art upload/remove + Instant Mix + remove-all-missing |
| `resources.song` | 9 | composer, sample rate, gain fields, instant mix, show-in-playlist |
| `resources.playlist` | 6 | search-or-create UX, save-queue-to-playlist |
| `resources.artist` | 5 | top songs / shuffle / radio actions, missing field, maincredit role |
| `resources.user` | 5 | Per-user library access controls |
| `menu.librarySelector` | 4 | Multi-library selector |
| `activity` | 4 | selectiveScan, scanType, status, elapsedTime |
| `nowPlaying` | 3 | Now Playing widget (title / empty / minutesAgo plural) |
| `resources.album` | 2 | libraryName, missing |
| `resources.missing` | 2 | remove_all action, libraryName field |
## Translation conventions followed
- Stuck with the existing terminology already in `sr.json` for consistency
— e.g. `Уметник` for "Artist", `Плејлиста` for "Playlist", `Жетон`
for "Token". Whether `Уметник` → `Извођач` (music-context "performer")
is a worthwhile rename is a separate question that deserves its own PR
with a focused review surface; not in scope here.
- Cyrillic throughout (matches `languageName: "српски"`).
- Variable interpolation (`%{var}`) preserved exactly.
- Pluralisation separator (` |||| `) preserved on plural-aware keys
(`nowPlaying.minutesAgo`, `resources.library.name`, `resources.plugin.name`,
`resources.artist.roles.maincredit`).
## Validation
- JSON validated with `python3 -m json.tool`
- Key-count parity check: 553 keys in `en.json` → 553 keys in `sr.json`,
zero missing, zero extra.
- Diff is +408 / -200 (line moves due to canonical ordering plus the
net 164 new translations). All existing translations preserved verbatim.
## Builds on PR #5444
This branch sits on top of `i18n-sr-grammar-fixes` (PR #5444). If that
PR merges first, this one auto-rebases cleanly. If this one merges first,
PR #5444 has trivial conflicts in the same 7 strings (all already
resolved here as part of regeneration).
726 lines
38 KiB
JSON
726 lines
38 KiB
JSON
{
|
||
"languageName": "српски",
|
||
"resources": {
|
||
"song": {
|
||
"name": "Песма |||| Песме",
|
||
"fields": {
|
||
"albumArtist": "Уметник албума",
|
||
"duration": "Трајање",
|
||
"trackNumber": "#",
|
||
"playCount": "Пуштано",
|
||
"title": "Наслов",
|
||
"artist": "Уметник",
|
||
"composer": "Композитор",
|
||
"album": "Албум",
|
||
"path": "Путања фајла",
|
||
"libraryName": "Библиотека",
|
||
"genre": "Жанр",
|
||
"compilation": "Компилација",
|
||
"year": "Година",
|
||
"size": "Величина фајла",
|
||
"updatedAt": "Ажурирано",
|
||
"bitRate": "Битски проток",
|
||
"bitDepth": "Битска дубина",
|
||
"sampleRate": "Учестаност узорковања",
|
||
"albumGain": "Појачање албума",
|
||
"trackGain": "Појачање нумере",
|
||
"channels": "Канали",
|
||
"disc": "Диск %{discNumber}",
|
||
"discSubtitle": "Поднаслов диска",
|
||
"starred": "Омиљено",
|
||
"comment": "Коментар",
|
||
"rating": "Рејтинг",
|
||
"quality": "Квалитет",
|
||
"bpm": "BPM",
|
||
"playDate": "Последње пуштано",
|
||
"createdAt": "Датум додавања",
|
||
"grouping": "Груписање",
|
||
"mood": "Расположење",
|
||
"participants": "Додатни учесници",
|
||
"tags": "Додатне ознаке",
|
||
"mappedTags": "Мапиране ознаке",
|
||
"rawTags": "Сирове ознаке",
|
||
"missing": "Недостаје"
|
||
},
|
||
"actions": {
|
||
"addToQueue": "Пусти касније",
|
||
"playNow": "Пусти одмах",
|
||
"addToPlaylist": "Додај у плејлисту",
|
||
"showInPlaylist": "Прикажи у плејлисти",
|
||
"shuffleAll": "Измешај све",
|
||
"download": "Преузми",
|
||
"playNext": "Пусти наредно",
|
||
"info": "Прикажи инфо",
|
||
"instantMix": "Инстант микс"
|
||
}
|
||
},
|
||
"album": {
|
||
"name": "Албум |||| Албуми",
|
||
"fields": {
|
||
"albumArtist": "Уметник албума",
|
||
"artist": "Уметник",
|
||
"duration": "Трајање",
|
||
"songCount": "Песме",
|
||
"playCount": "Пуштано",
|
||
"size": "Величина",
|
||
"name": "Назив",
|
||
"libraryName": "Библиотека",
|
||
"genre": "Жанр",
|
||
"compilation": "Компилација",
|
||
"year": "Година",
|
||
"date": "Датум снимања",
|
||
"originalDate": "Оригинално",
|
||
"releaseDate": "Објављено",
|
||
"releases": "Издање|||| Издања",
|
||
"released": "Објављено",
|
||
"updatedAt": "Ажурирано",
|
||
"comment": "Коментар",
|
||
"rating": "Рејтинг",
|
||
"createdAt": "Датум додавања",
|
||
"recordLabel": "Издавачка кућа",
|
||
"catalogNum": "Каталошки број",
|
||
"releaseType": "Тип",
|
||
"grouping": "Груписање",
|
||
"media": "Медијум",
|
||
"mood": "Расположење",
|
||
"missing": "Недостаје"
|
||
},
|
||
"actions": {
|
||
"playAll": "Пусти",
|
||
"playNext": "Пусти наредно",
|
||
"addToQueue": "Пусти касније",
|
||
"share": "Дели",
|
||
"shuffle": "Измешај",
|
||
"addToPlaylist": "Додај у плејлисту",
|
||
"download": "Преузми",
|
||
"info": "Прикажи инфо"
|
||
},
|
||
"lists": {
|
||
"all": "Све",
|
||
"random": "Насумично",
|
||
"recentlyAdded": "Додато недавно",
|
||
"recentlyPlayed": "Пуштано недавно",
|
||
"mostPlayed": "Најчешће пуштано",
|
||
"starred": "Омиљено",
|
||
"topRated": "Најбоље рангирано"
|
||
}
|
||
},
|
||
"artist": {
|
||
"name": "Уметник |||| Уметници",
|
||
"fields": {
|
||
"name": "Назив",
|
||
"albumCount": "Број албума",
|
||
"songCount": "Број песама",
|
||
"size": "Величина",
|
||
"playCount": "Пуштано",
|
||
"rating": "Рејтинг",
|
||
"genre": "Жанр",
|
||
"role": "Улога",
|
||
"missing": "Недостаје"
|
||
},
|
||
"roles": {
|
||
"albumartist": "Уметник албума |||| Уметници албума",
|
||
"artist": "Уметник |||| Уметници",
|
||
"composer": "Композитор |||| Композитори",
|
||
"conductor": "Диригент |||| Диригенти",
|
||
"lyricist": "Текстописац |||| Текстописци",
|
||
"arranger": "Аранжер |||| Аранжери",
|
||
"producer": "Продуцент |||| Продуценти",
|
||
"director": "Режисер |||| Режисери",
|
||
"engineer": "Инжењер |||| Инжењери",
|
||
"mixer": "Миксер |||| Миксери",
|
||
"remixer": "Ремиксер |||| Ремиксери",
|
||
"djmixer": "Ди-џеј миксер |||| Ди-џеј миксер",
|
||
"performer": "Извођач |||| Извођачи",
|
||
"maincredit": "Уметник албума или уметник |||| Уметници албума или уметници"
|
||
},
|
||
"actions": {
|
||
"topSongs": "Најбоље песме",
|
||
"shuffle": "Измешај",
|
||
"radio": "Радио"
|
||
}
|
||
},
|
||
"user": {
|
||
"name": "Корисник |||| Корисници",
|
||
"fields": {
|
||
"userName": "Корисничко име",
|
||
"isAdmin": "Да ли је Админ",
|
||
"lastLoginAt": "Последња пријава",
|
||
"lastAccessAt": "Последњи приступ",
|
||
"updatedAt": "Ажурирано",
|
||
"name": "Назив",
|
||
"password": "Лозинка",
|
||
"createdAt": "Креирана",
|
||
"changePassword": "Измени лозинку?",
|
||
"currentPassword": "Текућа лозинка",
|
||
"newPassword": "Нова лозинка",
|
||
"token": "Жетон",
|
||
"libraries": "Библиотеке"
|
||
},
|
||
"helperTexts": {
|
||
"name": "Измене вашег имена ће постати видљиве након следеће пријаве",
|
||
"libraries": "Изаберите одређене библиотеке за овог корисника, или оставите празно да се користе подразумеване библиотеке"
|
||
},
|
||
"notifications": {
|
||
"created": "Корисник креиран",
|
||
"updated": "Корисник ажуриран",
|
||
"deleted": "Корисник обрисан"
|
||
},
|
||
"validation": {
|
||
"librariesRequired": "Барем једна библиотека мора да буде изабрана за кориснике који нису администратори"
|
||
},
|
||
"message": {
|
||
"listenBrainzToken": "Унесите свој ListenBrainz кориснички жетон.",
|
||
"clickHereForToken": "Кликните овде да преузмете свој жетон",
|
||
"selectAllLibraries": "Изабери све библиотеке",
|
||
"adminAutoLibraries": "Администратори аутоматски имају приступ свим библиотекама"
|
||
}
|
||
},
|
||
"player": {
|
||
"name": "Плејер |||| Плејери",
|
||
"fields": {
|
||
"name": "Назив",
|
||
"transcodingId": "Транскодирање",
|
||
"maxBitRate": "Макс. битски проток",
|
||
"client": "Клијент",
|
||
"userName": "Корисничко име",
|
||
"lastSeen": "Последњи пут виђен",
|
||
"reportRealPath": "Пријављуј реалну путању",
|
||
"scrobbleEnabled": "Шаљи скроблове на спољне сервисе"
|
||
}
|
||
},
|
||
"transcoding": {
|
||
"name": "Транскодирање |||| Транскодирања",
|
||
"fields": {
|
||
"name": "Назив",
|
||
"targetFormat": "Циљни формат",
|
||
"defaultBitRate": "Подразумевани битски проток",
|
||
"command": "Команда"
|
||
}
|
||
},
|
||
"playlist": {
|
||
"name": "Плејлиста |||| Плејлисте",
|
||
"fields": {
|
||
"name": "Назив",
|
||
"duration": "Трајање",
|
||
"ownerName": "Власник",
|
||
"public": "Јавна",
|
||
"updatedAt": "Ажурирано",
|
||
"createdAt": "Креирана",
|
||
"songCount": "Песме",
|
||
"comment": "Коментар",
|
||
"sync": "Ауто-увоз",
|
||
"path": "Увоз из"
|
||
},
|
||
"actions": {
|
||
"selectPlaylist": "Изабери плејлисту",
|
||
"addNewPlaylist": "Креирај „%{name}”",
|
||
"export": "Извези",
|
||
"saveQueue": "Сачувај ред у плејлисту",
|
||
"makePublic": "Учини јавном",
|
||
"makePrivate": "Учини приватном",
|
||
"searchOrCreate": "Претражите плејлисте или унесите назив за нову…",
|
||
"pressEnterToCreate": "Притисните Ентер да креирате нову плејлисту",
|
||
"removeFromSelection": "Уклони из избора"
|
||
},
|
||
"message": {
|
||
"duplicate_song": "Додај дуплиране песме",
|
||
"song_exist": "У плејлисту се додају дупликати. Желите ли да се додају, или да се прескоче?",
|
||
"noPlaylistsFound": "Нема пронађених плејлиста",
|
||
"noPlaylists": "Нема доступних плејлиста"
|
||
}
|
||
},
|
||
"radio": {
|
||
"name": "Радио |||| Радио-станице",
|
||
"fields": {
|
||
"name": "Назив",
|
||
"streamUrl": "URL тока",
|
||
"homePageUrl": "URL почетне странице",
|
||
"updatedAt": "Ажурирано",
|
||
"createdAt": "Креирана"
|
||
},
|
||
"actions": {
|
||
"playNow": "Пусти одмах"
|
||
}
|
||
},
|
||
"share": {
|
||
"name": "Дељење |||| Дељења",
|
||
"fields": {
|
||
"username": "Поделио",
|
||
"url": "URL",
|
||
"description": "Опис",
|
||
"downloadable": "Допушта се преузимање?",
|
||
"contents": "Садржај",
|
||
"expiresAt": "Истиче",
|
||
"lastVisitedAt": "Последњи пут посећено",
|
||
"visitCount": "Број посета",
|
||
"format": "Формат",
|
||
"maxBitRate": "Макс. битски проток",
|
||
"updatedAt": "Ажурирано",
|
||
"createdAt": "Креирано"
|
||
},
|
||
"notifications": {},
|
||
"actions": {}
|
||
},
|
||
"missing": {
|
||
"name": "Фајл који недостаје|||| Фајлови који недостају",
|
||
"empty": "Нема фајлова који недостају",
|
||
"fields": {
|
||
"path": "Путања",
|
||
"size": "Величина",
|
||
"libraryName": "Библиотека",
|
||
"updatedAt": "Нестао дана"
|
||
},
|
||
"actions": {
|
||
"remove": "Уклони",
|
||
"remove_all": "Уклони све"
|
||
},
|
||
"notifications": {
|
||
"removed": "Фајл који недостаје, или више њих, је уклоњен"
|
||
}
|
||
},
|
||
"library": {
|
||
"name": "Библиотека |||| Библиотеке",
|
||
"fields": {
|
||
"name": "Назив",
|
||
"path": "Путања",
|
||
"remotePath": "Удаљена путања",
|
||
"lastScanAt": "Последње скенирање",
|
||
"songCount": "Песме",
|
||
"albumCount": "Албуми",
|
||
"artistCount": "Уметници",
|
||
"totalSongs": "Песме",
|
||
"totalAlbums": "Албуми",
|
||
"totalArtists": "Уметници",
|
||
"totalFolders": "Фасцикле",
|
||
"totalFiles": "Фајлови",
|
||
"totalMissingFiles": "Фајлови који недостају",
|
||
"totalSize": "Укупна величина",
|
||
"totalDuration": "Трајање",
|
||
"defaultNewUsers": "Подразумевано за нове кориснике",
|
||
"createdAt": "Креирана",
|
||
"updatedAt": "Ажурирана"
|
||
},
|
||
"sections": {
|
||
"basic": "Основне информације",
|
||
"statistics": "Статистика"
|
||
},
|
||
"actions": {
|
||
"scan": "Скенирај библиотеку",
|
||
"quickScan": "Брзо скенирање",
|
||
"fullScan": "Комплетно скенирање",
|
||
"manageUsers": "Управљај приступом корисника",
|
||
"viewDetails": "Прикажи детаље"
|
||
},
|
||
"notifications": {
|
||
"created": "Библиотека је успешно креирана",
|
||
"updated": "Библиотека је успешно ажурирана",
|
||
"deleted": "Библиотека је успешно обрисана",
|
||
"scanStarted": "Скенирање библиотеке је покренуто",
|
||
"quickScanStarted": "Брзо скенирање је покренуто",
|
||
"fullScanStarted": "Комплетно скенирање је покренуто",
|
||
"scanError": "Грешка при покретању скенирања. Проверите дневнике.",
|
||
"scanCompleted": "Скенирање библиотеке је завршено"
|
||
},
|
||
"validation": {
|
||
"nameRequired": "Назив библиотеке је обавезан",
|
||
"pathRequired": "Путања библиотеке је обавезна",
|
||
"pathNotDirectory": "Путања библиотеке мора да буде фасцикла",
|
||
"pathNotFound": "Путања библиотеке није пронађена",
|
||
"pathNotAccessible": "Путања библиотеке није доступна",
|
||
"pathInvalid": "Неисправна путања библиотеке"
|
||
},
|
||
"messages": {
|
||
"deleteConfirm": "Да ли сте сигурни да желите да обришете ову библиотеку? Ово ће да уклони све повезане податке и приступ корисника.",
|
||
"scanInProgress": "Скенирање је у току…",
|
||
"noLibrariesAssigned": "Овом кориснику нема додељених библиотека"
|
||
}
|
||
},
|
||
"plugin": {
|
||
"name": "Додатак |||| Додаци",
|
||
"fields": {
|
||
"id": "ИД",
|
||
"name": "Назив",
|
||
"description": "Опис",
|
||
"version": "Верзија",
|
||
"author": "Аутор",
|
||
"website": "Веб-сајт",
|
||
"permissions": "Дозволе",
|
||
"enabled": "Омогућено",
|
||
"status": "Статус",
|
||
"path": "Путања",
|
||
"lastError": "Грешка",
|
||
"hasError": "Грешка",
|
||
"updatedAt": "Ажурирано",
|
||
"createdAt": "Инсталирано",
|
||
"configKey": "Кључ",
|
||
"configValue": "Вредност",
|
||
"allUsers": "Дозволи свим корисницима",
|
||
"selectedUsers": "Изабрани корисници",
|
||
"allLibraries": "Дозволи све библиотеке",
|
||
"selectedLibraries": "Изабране библиотеке",
|
||
"allowWriteAccess": "Дозволи приступ за упис"
|
||
},
|
||
"sections": {
|
||
"status": "Статус",
|
||
"info": "Информације о додатку",
|
||
"configuration": "Конфигурација",
|
||
"manifest": "Манифест",
|
||
"usersPermission": "Дозволе корисника",
|
||
"libraryPermission": "Дозволе библиотеке"
|
||
},
|
||
"status": {
|
||
"enabled": "Омогућено",
|
||
"disabled": "Онемогућено"
|
||
},
|
||
"actions": {
|
||
"enable": "Омогући",
|
||
"disable": "Онемогући",
|
||
"disabledDueToError": "Поправите грешку пре омогућавања",
|
||
"disabledUsersRequired": "Изаберите кориснике пре омогућавања",
|
||
"disabledLibrariesRequired": "Изаберите библиотеке пре омогућавања",
|
||
"addConfig": "Додај конфигурацију",
|
||
"rescan": "Поново скенирај"
|
||
},
|
||
"notifications": {
|
||
"enabled": "Додатак је омогућен",
|
||
"disabled": "Додатак је онемогућен",
|
||
"updated": "Додатак је ажуриран",
|
||
"error": "Грешка при ажурирању додатка"
|
||
},
|
||
"validation": {
|
||
"invalidJson": "Конфигурација мора да буде исправан JSON"
|
||
},
|
||
"messages": {
|
||
"configHelp": "Конфигуришите додатак користећи парове кључ-вредност. Оставите празно ако додатак не захтева конфигурацију.",
|
||
"configValidationError": "Провера исправности конфигурације није успела:",
|
||
"schemaRenderError": "Не може да се прикаже образац за конфигурацију. Шема додатка можда није исправна.",
|
||
"clickPermissions": "Кликните на дозволу за детаље",
|
||
"noConfig": "Конфигурација није постављена",
|
||
"allUsersHelp": "Када је омогућено, додатак ће имати приступ свим корисницима, укључујући оне који буду креирани у будућности.",
|
||
"noUsers": "Нема изабраних корисника",
|
||
"permissionReason": "Разлог",
|
||
"usersRequired": "Овај додатак захтева приступ информацијама о корисницима. Изаберите којим корисницима додатак може да приступи, или омогућите „Дозволи свим корисницима”.",
|
||
"allLibrariesHelp": "Када је омогућено, додатак ће имати приступ свим библиотекама, укључујући оне које буду креиране у будућности.",
|
||
"noLibraries": "Нема изабраних библиотека",
|
||
"librariesRequired": "Овај додатак захтева приступ информацијама о библиотекама. Изаберите којим библиотекама додатак може да приступи, или омогућите „Дозволи све библиотеке”.",
|
||
"allowWriteAccessHelp": "Када је омогућено, додатак може да мења фајлове у фасциклама библиотеке. Подразумевано, додаци имају приступ само за читање.",
|
||
"requiredHosts": "Потребни хостови"
|
||
},
|
||
"placeholders": {
|
||
"configKey": "кључ",
|
||
"configValue": "вредност"
|
||
}
|
||
}
|
||
},
|
||
"ra": {
|
||
"auth": {
|
||
"welcome1": "Хвала што сте инсталирали Navidrome!",
|
||
"welcome2": "За почетак, креирајте админ корисника",
|
||
"confirmPassword": "Потврдите лозинку",
|
||
"buttonCreateAdmin": "Креирај админа",
|
||
"auth_check_error": "Ако желите да наставите, молимо вас да се пријавите",
|
||
"user_menu": "Профил",
|
||
"username": "Корисничко име",
|
||
"password": "Лозинка",
|
||
"sign_in": "Пријави се",
|
||
"sign_in_error": "Потврда идентитета није успела, покушајте поново",
|
||
"logout": "Одјави се",
|
||
"insightsCollectionNote": "Navidrome прикупља анонимне податке о коришћењу\nшто олакшава унапређење пројекта. Кликните [овде] да\nсазнате више и да одустанете од прикупљања ако желите"
|
||
},
|
||
"validation": {
|
||
"invalidChars": "Молимо вас да користите само слова и цифре",
|
||
"passwordDoesNotMatch": "Лозинка се не подудара",
|
||
"required": "Неопходно",
|
||
"minLength": "Мора да буде барем %{min} карактера",
|
||
"maxLength": "Мора да буде %{max} карактера или мање",
|
||
"minValue": "Мора да буде барем %{min}",
|
||
"maxValue": "Мора да буде %{max} или мање",
|
||
"number": "Мора да буде број",
|
||
"email": "Мора да буде исправна и-мејл адреса",
|
||
"oneOf": "Мора да буде једно од: %{options}",
|
||
"regex": "Мора да се подудара са одређеним форматом (регуларни израз): %{pattern}",
|
||
"unique": "Мора да буде јединствено",
|
||
"url": "Мора да буде исправна URL адреса"
|
||
},
|
||
"action": {
|
||
"add_filter": "Додај филтер",
|
||
"add": "Додај",
|
||
"back": "Иди назад",
|
||
"bulk_actions": "изабрана је 1 ставка |||| изабрано је %{smart_count} ставки",
|
||
"bulk_actions_mobile": "1 |||| %{smart_count}",
|
||
"cancel": "Откажи",
|
||
"clear_input_value": "Обриши вредност",
|
||
"clone": "Клонирај",
|
||
"confirm": "Потврди",
|
||
"create": "Креирај",
|
||
"delete": "Обриши",
|
||
"edit": "Уреди",
|
||
"export": "Извези",
|
||
"list": "Листа",
|
||
"refresh": "Освежи",
|
||
"remove_filter": "Уклони овај филтер",
|
||
"remove": "Уклони",
|
||
"save": "Сачувај",
|
||
"search": "Тражи",
|
||
"show": "Прикажи",
|
||
"sort": "Сортирај",
|
||
"undo": "Поништи",
|
||
"expand": "Развиј",
|
||
"close": "Затвори",
|
||
"open_menu": "Отвори мени",
|
||
"close_menu": "Затвори мени",
|
||
"unselect": "Уклони избор",
|
||
"skip": "Прескочи",
|
||
"share": "Дели",
|
||
"download": "Преузми"
|
||
},
|
||
"boolean": {
|
||
"true": "Да",
|
||
"false": "Не"
|
||
},
|
||
"page": {
|
||
"create": "Креирај %{name}",
|
||
"dashboard": "Контролна табла",
|
||
"edit": "%{name} #%{id}",
|
||
"error": "Нешто је пошло наопако",
|
||
"list": "%{name}",
|
||
"loading": "Учитава се",
|
||
"not_found": "Није пронађено",
|
||
"show": "%{name} #%{id}",
|
||
"empty": "Још увек нема %{name}.",
|
||
"invite": "Желите ли да се дода?"
|
||
},
|
||
"input": {
|
||
"file": {
|
||
"upload_several": "Превуците фајлове да се отпреме, или кликните да их изаберете.",
|
||
"upload_single": "Превуците фајл да се отпреми, или кликните да га изаберете."
|
||
},
|
||
"image": {
|
||
"upload_several": "Превуците слике да се отпреме, или кликните да их изаберете.",
|
||
"upload_single": "Превуците слику да се отпреми, или кликните да је изаберете."
|
||
},
|
||
"references": {
|
||
"all_missing": "Не могу да се нађу подаци референци.",
|
||
"many_missing": "Изгледа да барем једна од придружених референци више није доступна.",
|
||
"single_missing": "Изгледа да придружена референца више није доступна."
|
||
},
|
||
"password": {
|
||
"toggle_visible": "Сакриј лозинку",
|
||
"toggle_hidden": "Прикажи лозинку"
|
||
}
|
||
},
|
||
"message": {
|
||
"about": "О",
|
||
"are_you_sure": "Да ли сте сигурни?",
|
||
"bulk_delete_content": "Да ли заиста желите да обришете %{name}? |||| Да ли заиста желите да обришете %{smart_count} ставке?",
|
||
"bulk_delete_title": "Брисање %{name} |||| Брисање %{smart_count} %{name}",
|
||
"delete_content": "Да ли заиста желите да обришете ову ставку?",
|
||
"delete_title": "Брисање %{name} #%{id}",
|
||
"details": "Детаљи",
|
||
"error": "Дошло је до клијентске грешке и ваш захтев није могао да се изврши.",
|
||
"invalid_form": "Формулар није исправан. Молимо вас да исправите грешке",
|
||
"loading": "Страница се учитава, сачекајте мало",
|
||
"no": "Не",
|
||
"not_found": "Или сте откуцали погрешну URL адресу, или сте следили неисправан линк.",
|
||
"yes": "Да",
|
||
"unsaved_changes": "Неке од ваших измена нису сачуване. Да ли заиста желите да их одбаците?"
|
||
},
|
||
"navigation": {
|
||
"no_results": "Није пронађен ниједан резултат",
|
||
"no_more_results": "Број странице %{page} је ван опсега. Покушајте претходну страницу.",
|
||
"page_out_of_boundaries": "Број странице %{page} је ван опсега",
|
||
"page_out_from_end": "Не може да се иде након последње странице",
|
||
"page_out_from_begin": "Не може да се иде испред странице 1",
|
||
"page_range_info": "%{offsetBegin}-%{offsetEnd} од %{total}",
|
||
"page_rows_per_page": "Ставки по страници:",
|
||
"next": "Наредна",
|
||
"prev": "Претх.",
|
||
"skip_nav": "Прескочи на садржај"
|
||
},
|
||
"notification": {
|
||
"updated": "Елемент је ажуриран |||| %{smart_count} елемената је ажурирано",
|
||
"created": "Елемент је креиран",
|
||
"deleted": "Елемент је обрисан |||| %{smart_count} елемената је обрисано",
|
||
"bad_item": "Неисправни елемент",
|
||
"item_doesnt_exist": "Елемент не постоји",
|
||
"http_error": "Грешка у комуникацији са сервером",
|
||
"data_provider_error": "dataProvider грешка. За више детаља погледајте конзолу.",
|
||
"i18n_error": "Не могу да се учитају преводи за наведени језик",
|
||
"canceled": "Акција је отказана",
|
||
"logged_out": "Ваша сесија је завршена, молимо вас да се повежите поново.",
|
||
"new_version": "Доступна је нова верзија! Молимо вас да освежите овај прозор."
|
||
},
|
||
"toggleFieldsMenu": {
|
||
"columnsToDisplay": "Колоне за приказ",
|
||
"layout": "Распоред",
|
||
"grid": "Мрежа",
|
||
"table": "Табела"
|
||
}
|
||
},
|
||
"message": {
|
||
"uploadCover": "Отпреми омот",
|
||
"removeCover": "Уклони омот",
|
||
"coverUploaded": "Омот је ажуриран",
|
||
"coverRemoved": "Омот је уклоњен",
|
||
"coverUploadError": "Грешка при отпремању омота",
|
||
"coverRemoveError": "Грешка при уклањању омота",
|
||
"note": "НАПОМЕНА",
|
||
"transcodingDisabled": "Измена конфигурације транскодирања кроз веб интерфејс је искључена из разлога безбедности. Ако желите да измените (уредите или додате) опције транскодирања, поново покрените сервер са %{config} конфигурационом опцијом.",
|
||
"transcodingEnabled": "Navidrome се тренутно извршава са %{config}, чиме је омогућено извршавање системских команди из подешавања транскодирања коришћењем веб интерфејса. Из разлога безбедности, препоручујемо да то искључите, а да омогућите само када конфигуришете опције транскодирања.",
|
||
"songsAddedToPlaylist": "У плејлисту је додата 1 песма |||| У плејлисту је додато %{smart_count} песама",
|
||
"noSimilarSongsFound": "Нису пронађене сличне песме",
|
||
"startingInstantMix": "Учитава се инстант микс…",
|
||
"noTopSongsFound": "Нису пронађене најбоље песме",
|
||
"noPlaylistsAvailable": "Није доступна ниједна",
|
||
"delete_user_title": "Брисање корисника ’%{name}’",
|
||
"delete_user_content": "Да ли заиста желите да обришете овог корисника, заједно са свим његовим подацима (плејлистама и подешавањима)?",
|
||
"remove_missing_title": "Уклони фајлове који недостају",
|
||
"remove_missing_content": "Да ли сте сигурни да из базе података желите да уклоните фајлове који недостају? Ово ће трајно да уклони све референце на њих, укључујући број пуштања и рангирања.",
|
||
"remove_all_missing_title": "Уклони све фајлове који недостају",
|
||
"remove_all_missing_content": "Да ли сте сигурни да желите да из базе података уклоните све фајлове који недостају? Ово ће трајно да уклони све референце на њих, укључујући број пуштања и рангирања.",
|
||
"notifications_blocked": "У подешавањима интернет прегледача за овај сајт, блокирали сте обавештења",
|
||
"notifications_not_available": "Овај интернет прегледач не подржава десктоп обавештења, или Navidrome серверу не приступате преко https протокола",
|
||
"lastfmLinkSuccess": "Last.fm је успешно повезан и укључено је скробловање",
|
||
"lastfmLinkFailure": "Last.fm није могао да се повеже",
|
||
"lastfmUnlinkSuccess": "Last.fm више није повезан и скробловање је искључено",
|
||
"lastfmUnlinkFailure": "Није могла да се уклони веза са Last.fm",
|
||
"listenBrainzLinkSuccess": "ListenBrainz је успешно повезан и скробловање је укључено као корисник: %{user}",
|
||
"listenBrainzLinkFailure": "ListenBrainz није могао да се повеже: %{error}",
|
||
"listenBrainzUnlinkSuccess": "ListenBrainz више није повезан и скробловање је искључено",
|
||
"listenBrainzUnlinkFailure": "Није могла да се уклони веза са ListenBrainz",
|
||
"openIn": {
|
||
"lastfm": "Отвори у Last.fm",
|
||
"musicbrainz": "Отвори у MusicBrainz"
|
||
},
|
||
"lastfmLink": "Прочитај још...",
|
||
"shareOriginalFormat": "Подели у оригиналном формату",
|
||
"shareDialogTitle": "Подели %{resource} ’%{name}’",
|
||
"shareBatchDialogTitle": "Подели 1 %{resource} |||| Подели %{smart_count} %{resource}",
|
||
"shareCopyToClipboard": "Копирај у клипборд: Ctrl+C, Ентер",
|
||
"shareSuccess": "URL је копиран у клипборд: %{url}",
|
||
"shareFailure": "Грешка приликом копирања URL адресе %{url} у клипборд",
|
||
"downloadDialogTitle": "Преузимање %{resource} ’%{name}’ (%{size})",
|
||
"downloadOriginalFormat": "Преузми у оригиналном формату"
|
||
},
|
||
"menu": {
|
||
"library": "Библиотека",
|
||
"librarySelector": {
|
||
"allLibraries": "Све библиотеке (%{count})",
|
||
"multipleLibraries": "%{selected} од %{total} библиотека",
|
||
"selectLibraries": "Изабери библиотеке",
|
||
"none": "Ниједна"
|
||
},
|
||
"settings": "Подешавања",
|
||
"version": "Верзија",
|
||
"theme": "Тема",
|
||
"personal": {
|
||
"name": "Лична",
|
||
"options": {
|
||
"theme": "Тема",
|
||
"language": "Језик",
|
||
"defaultView": "Подразумевани поглед",
|
||
"desktop_notifications": "Десктоп обавештења",
|
||
"lastfmNotConfigured": "Није подешен Last.fm API-кључ",
|
||
"lastfmScrobbling": "Скроблуј на Last.fm",
|
||
"listenBrainzScrobbling": "Скроблуј на ListenBrainz",
|
||
"replaygain": "ReplayGain режим",
|
||
"preAmp": "ReplayGain претпојачање (dB)",
|
||
"gain": {
|
||
"none": "Искључено",
|
||
"album": "Користи Album појачање",
|
||
"track": "Користи Track појачање"
|
||
}
|
||
}
|
||
},
|
||
"albumList": "Албуми",
|
||
"playlists": "Плејлисте",
|
||
"sharedPlaylists": "Дељене плејлисте",
|
||
"about": "О"
|
||
},
|
||
"player": {
|
||
"playListsText": "Ред за пуштање",
|
||
"openText": "Отвори",
|
||
"closeText": "Затвори",
|
||
"notContentText": "Нема музике",
|
||
"clickToPlayText": "Кликните за пуштање",
|
||
"clickToPauseText": "Кликните за паузирање",
|
||
"nextTrackText": "Наредна нумера",
|
||
"previousTrackText": "Претходна нумера",
|
||
"reloadText": "Поново учитај",
|
||
"volumeText": "Јачина",
|
||
"toggleLyricText": "Укљ./Искљ. стихове",
|
||
"toggleMiniModeText": "Умањи",
|
||
"destroyText": "Уништи",
|
||
"downloadText": "Преузми",
|
||
"removeAudioListsText": "Обриши аудио листе",
|
||
"clickToDeleteText": "Кликните да обришете %{name}",
|
||
"emptyLyricText": "Нема стихова",
|
||
"playModeText": {
|
||
"order": "По редоследу",
|
||
"orderLoop": "Понови",
|
||
"singleLoop": "Понови једну",
|
||
"shufflePlay": "Измешај"
|
||
}
|
||
},
|
||
"about": {
|
||
"links": {
|
||
"homepage": "Почетна страница",
|
||
"source": "Изворни кôд",
|
||
"featureRequests": "Захтеви за функције",
|
||
"lastInsightsCollection": "Последња колекција увида",
|
||
"insights": {
|
||
"disabled": "Искључено",
|
||
"waiting": "Чека се"
|
||
}
|
||
},
|
||
"tabs": {
|
||
"about": "О програму",
|
||
"config": "Конфигурација"
|
||
},
|
||
"config": {
|
||
"configName": "Назив конфигурације",
|
||
"environmentVariable": "Променљива окружења",
|
||
"currentValue": "Тренутна вредност",
|
||
"configurationFile": "Конфигурациони фајл",
|
||
"exportToml": "Извези конфигурацију (TOML)",
|
||
"downloadToml": "Преузми конфигурацију (TOML)",
|
||
"exportSuccess": "Конфигурација је извезена у клипборд у TOML формату",
|
||
"exportFailed": "Копирање конфигурације није успело",
|
||
"devFlagsHeader": "Развојне заставице (подложне промени или уклањању)",
|
||
"devFlagsComment": "Ово су експерименталне поставке и могу бити уклоњене у будућим верзијама"
|
||
}
|
||
},
|
||
"activity": {
|
||
"title": "Активност",
|
||
"totalScanned": "Укупан број скенираних фолдера",
|
||
"quickScan": "Брзо скенирање",
|
||
"fullScan": "Комплетно скенирање",
|
||
"selectiveScan": "Селективно",
|
||
"serverUptime": "Сервер се извршава",
|
||
"serverDown": "ВАН МРЕЖЕ",
|
||
"scanType": "Последње скенирање",
|
||
"status": "Грешка скенирања",
|
||
"elapsedTime": "Протекло време"
|
||
},
|
||
"nowPlaying": {
|
||
"title": "Сада се пушта",
|
||
"empty": "Ништа се не пушта",
|
||
"minutesAgo": "Пре %{smart_count} минут |||| Пре %{smart_count} минута"
|
||
},
|
||
"help": {
|
||
"title": "Navidrome пречице",
|
||
"hotkeys": {
|
||
"show_help": "Прикажи ову помоћ",
|
||
"toggle_menu": "Укљ./Искљ. бочну траку менија",
|
||
"toggle_play": "Пусти / Паузирај",
|
||
"prev_song": "Претходна песма",
|
||
"next_song": "Наредна песма",
|
||
"current_song": "Иди на текућу песму",
|
||
"vol_up": "Појачај",
|
||
"vol_down": "Утишај",
|
||
"toggle_love": "Додај ову нумеру у омиљене"
|
||
}
|
||
}
|
||
}
|