diff --git a/.github/workflows/appbuild.yml b/.github/workflows/appbuild.yml index 78daaf253..34a5c149e 100644 --- a/.github/workflows/appbuild.yml +++ b/.github/workflows/appbuild.yml @@ -5,8 +5,7 @@ on: jobs: build: - - runs-on: ubuntu-latest + runs-on: ubuntu-18.04 strategy: matrix: diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml index 6374cab85..b8411259b 100644 --- a/.github/workflows/phpunit.yml +++ b/.github/workflows/phpunit.yml @@ -66,7 +66,7 @@ jobs: with: php-version: ${{ matrix.php-versions }} tools: phpunit - extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, mysql, pdo_mysql, pgsql, pdo_pgsql + extensions: zip, gd, mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, mysql, pdo_mysql, pgsql, pdo_pgsql coverage: none - name: Set up PHPUnit diff --git a/l10n/bg.js b/l10n/bg.js index 2a5c646ec..501ea94bd 100644 --- a/l10n/bg.js +++ b/l10n/bg.js @@ -1,48 +1,269 @@ OC.L10N.register( "deck", { + "You have created a new board {board}" : "Създадохте ново табло {board}", + "{user} has created a new board {board}" : "{user} създаде ново табло {board}", + "You have deleted the board {board}" : "Изтрихте таблото {board}", + "{user} has deleted the board {board}" : "{user} изтри таблото {board}", + "You have restored the board {board}" : "Възстановихте таблото {board}", + "{user} has restored the board {board}" : "{user} възстанови таблото {board}", + "You have shared the board {board} with {acl}" : "Споделихте таблото {board} с {acl}", + "{user} has shared the board {board} with {acl}" : "{user} сподели таблото {board} с {acl}", + "You have removed {acl} from the board {board}" : "Премахнахте {acl} от таблото {board}", + "{user} has removed {acl} from the board {board}" : "{user} премахна {acl} от таблото {board}", + "You have renamed the board {before} to {board}" : "Преименувахте таблото от {before} на {board}", + "{user} has renamed the board {before} to {board}" : "{user} преименува таблото от {before} на {board}", + "You have archived the board {board}" : "Архивирахте таблото {board}", + "{user} has archived the board {before}" : "{user} архивира таблото {board}", + "You have unarchived the board {board}" : "Разархивирали сте таблото {board}", + "{user} has unarchived the board {before}" : "{user} е разархивирал таблото {before}", + "You have created a new list {stack} on board {board}" : "Създадохте нов списък {stack} на таблото {board}", + "{user} has created a new list {stack} on board {board}" : "{user} създаде нов списък {stack} на таблото {board}", + "You have renamed list {before} to {stack} on board {board}" : "Преименувахте списъка {before} на {stack} на таблото {board}", + "{user} has renamed list {before} to {stack} on board {board}" : "{user} преименува списъка {before} на {stack} на таблото {board}", + "You have deleted list {stack} on board {board}" : "Изтрихте списък {stack} на таблото {board}", + "{user} has deleted list {stack} on board {board}" : "{user} изтри списък {stack} на таблото {board}", + "You have created card {card} in list {stack} on board {board}" : "Създали сте карта {card} в списък {stack} на таблото {board}", + "{user} has created card {card} in list {stack} on board {board}" : "{user} създаде карта {card} в списък {stack} на таблото {board}", + "You have deleted card {card} in list {stack} on board {board}" : "Изтрили сте карта {card} в списък {stack} на таблото {board}", + "{user} has deleted card {card} in list {stack} on board {board}" : "{user} изтри карта {card} в списък {stack} на таблото {board}", + "You have renamed the card {before} to {card}" : "Преименувахте картата {before} на {card}", + "{user} has renamed the card {before} to {card}" : "{user} преименува картата {before} на {card}", + "You have added a description to card {card} in list {stack} on board {board}" : "Добавили сте описание към карта {card} в списък {stack} на таблото {board}", + "{user} has added a description to card {card} in list {stack} on board {board}" : "{user} добави описание към карта {card} в списък {stack} на таблото {board}", + "You have updated the description of card {card} in list {stack} on board {board}" : " Актуализирали сте описанието към карта {card} в списък {stack} на таблото {board}", + "{user} has updated the description of the card {card} in list {stack} on board {board}" : " {user} актуализира описанието към карта {card} в списък {stack} на таблото {board}", + "You have archived card {card} in list {stack} on board {board}" : "Архивирали сте карта {card} в списък {stack} на борда {board}", + "{user} has archived card {card} in list {stack} on board {board}" : "{user} архивира карта {card} в списък {stack} на борда {board}", + "You have unarchived card {card} in list {stack} on board {board}" : "Разархивирали сте карта {card} в списък {stack} на борда {board}", + "{user} has unarchived card {card} in list {stack} on board {board}" : "{user} разархивира карта {card} в списък {stack} на борда {board}", + "You have removed the due date of card {card}" : "Премахнахте датата на падежа на картата {card}", + "{user} has removed the due date of card {card}" : "{user} премахна датата на падежа на картата {card}", + "You have set the due date of card {card} to {after}" : "Задали сте датата на падежа на картата {card} на {after}", + "{user} has set the due date of card {card} to {after}" : "{user} зададе дата на падежа на картата {card} на {after}", + "You have updated the due date of card {card} to {after}" : "Актуализирали сте датата на падежа на картата {card} на {after}", + "{user} has updated the due date of card {card} to {after}" : "{user} актуализира датата на падежа на картата {card} на {after}", + "You have added the tag {label} to card {card} in list {stack} on board {board}" : "Добавихте етикет {label} към карта {card} в списък {stack} на таблото {board}", + "{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} добави етикет {label} към карта {card} в списък {stack} натаблото {board}", + "You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Премахнахте етикет {label} към карта {card} в списък {stack} на таблото {board}", + "{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} премахна етикет {label} към карта {card} в списък {stack} на таблото {board}", + "You have assigned {assigneduser} to card {card} on board {board}" : "Присвоили сте {assigneduser} на карта {card} на борда {board}", + "{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} присвои {assigneduser} на карта {card} на борда {board}", + "You have unassigned {assigneduser} from card {card} on board {board}" : "Имате неопределен {assigneduser} на карта {card} на борда {board}", + "{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} има неопределен {assigneduser} на карта {card} на борда {board}", + "You have moved the card {card} from list {stackBefore} to {stack}" : "Преместихте картата {card} от списък {stackBefore} в {stack}", + "{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} премести картата {card} от списък {stackBefore} в {stack}", + "You have added the attachment {attachment} to card {card}" : "Добавихте прикачения файл {attachment} към карта {card}", + "{user} has added the attachment {attachment} to card {card}" : "{user} добави прикачения файл {attachment} към карта {card}", + "You have updated the attachment {attachment} on card {card}" : " Актуализирали сте прикачения файл {attachment} към карта {card}", + "{user} has updated the attachment {attachment} on card {card}" : "{user} актуализира прикачения файл {attachment} към карта {card}", + "You have deleted the attachment {attachment} from card {card}" : "Изтрихте прикачения файл {attachment} от карта {card}", + "{user} has deleted the attachment {attachment} from card {card}" : "{user} изтри прикачения файл {attachment} към карта {card}", + "You have restored the attachment {attachment} to card {card}" : "Възстановили сте прикачения файл {attachment} към карта {card}", + "{user} has restored the attachment {attachment} to card {card}" : "{user} възстанови прикачения файл {attachment} към карта {card}", + "You have commented on card {card}" : "Коментирали сте карта {card}", + "{user} has commented on card {card}" : "{user} коментира карта {card}", + "A card description inside the Deck app has been changed" : "Описанието на картата в приложението Deck/набор/ е променено", + "Deck" : "Набор", + "Changes in the Deck app" : "Промени в приложението Deck", + "A comment was created on a card" : "На картата е създаден коментар", + "Upcoming cards" : "Предстоящи карти", "Personal" : "Лични", + "The card \"%s\" on \"%s\" has been assigned to you by %s." : "Картата \"%s\" на \"%s\" Ви е била възложена от %s.", + "{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} е възложил картата \"%s\"\" on “%s“ на Вас.", + "The card \"%s\" on \"%s\" has reached its due date." : "Картата \"%s\" on \"%s\" е достигнала датата на падежа си.", + "%s has mentioned you in a comment on \"%s\"." : "%s те спомена в коментар за “%s”", + "{user} has mentioned you in a comment on \"%s\"." : "{user} те спомена в коментар за “%s”", + "The board \"%s\" has been shared with you by %s." : "Таблото \"%s\" е споделено с вас от%s.", + "{user} has shared the board %s with you." : "{user} сподели таблото %s с Вас", + "No data was provided to create an attachment." : "Не бяха предоставени данни за създаване на прикачен файл.", "Finished" : "Готово", "To review" : "За преглед", "Action needed" : "Необходимо е действие", "Later" : "По-късно", "copy" : "Копиране", + "To do" : "Да направя", + "Doing" : "Правя", "Done" : "Готово", + "Example Task 3" : "Примерна задача 3", + "Example Task 2" : "Примерна задача 2", + "Example Task 1" : "Примерна задача 1", "The file was uploaded" : "Файлът е качен", + "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Каченият файл надвишава директивата upload_max_filesize в php.ini", "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Размерът на файла надвишава максималния размер определен от MAX_FILE_SIZE в HTML формата.", "The file was only partially uploaded" : "Файлът е качен частично", "No file was uploaded" : "Нито един файл не е качен", "Missing a temporary folder" : "Липсва временна папка", + "Could not write file to disk" : " Файлът не можа да бъде записан на диск", + "A PHP extension stopped the file upload" : "PHP разширение спря качването на файла", + "No file uploaded or file size exceeds maximum of %s" : "Няма качен файл или размерът на файла надвишава максимума от %s", + "Card not found" : "Катртата не е намерена", + "Path is already shared with this card" : "Пътят вече е споделен с тази карта", + "Invalid date, date format must be YYYY-MM-DD" : "Невалидна дата, форматът е различен от ГГГГ-ММ-ДД", + "Personal planning and team project organization" : "Лично планиране и организация на екипни проекти", + "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck е инструмент за организация в стил kanban, насочен към лично планиране и организация на проекти за екипи, интегрирани с Nextcloud.\n\n\n- 📥 Добавете задачите си към карти и ги подредете\n- 📄 Запишете допълнителни бележки в markdown формат\n- Присвояване на етикети за още по-добра организация\n- 👥 Споделете с вашия екип, приятели или семейство\n- 📎Прикачете файлове и ги вградете във вашето описание за маркиране\n- 💬Обсъдете с вашия екип, като използвате коментари\n- ⚡ Проследявайте промените в потока от дейности\n- 🚀 Организирайте проекта си", + "Card details" : "Подробности за картата", + "Add board" : "Добави табло", + "Select the board to link to a project" : "Изберете таблото, което да свържете към проект", + "Search by board title" : "Търсене по заглавие на таблото", + "Select board" : "Избор на табло", + "Select a board" : "Избор на табло", + "Select a card" : "Избор на карта", "Cancel" : "Отказ", + "Select the card to link to a project" : "Изберете картата, която да свържете към проект", + "Link to card" : "Връзка към карта", "File already exists" : "Файлът вече съществува", + "A file with the name {filename} already exists." : "Вече съществува файл с името {filename}.", "Do you want to overwrite it?" : "Искате ли да го презапишете?", + "Overwrite file" : "Презапиши файла", + "Keep existing file" : "Запазване на съществуващ файл", + "This board is read only" : "Таблото е само за четене", + "Drop your files to upload" : "Пуснете вашите файлове, за да ги качите", + "Archived cards" : "Архивирани карти", + "Add list" : "Добави списък", + "List name" : "Име на списък", + "Apply filter" : "Приложи филтър", "Filter by tag" : "Филтрирай по маркер", + "Filter by assigned user" : "Филтриране по назначен потребител", + "Unassigned" : "Неприсвоен", + "Filter by due date" : "Филтриране по крайна дата", + "Overdue" : "Просрочен", + "Next 24 hours" : "Следващите 24 часа", + "Next 7 days" : "Следващите 7 дни", + "Next 30 days" : "Следващите 30 дни", + "No due date" : "Няма крайна дата", + "Clear filter" : "Изчстиване на филтър", + "Hide archived cards" : "Скриване на архивирани карти", + "Show archived cards" : "Показване на архивирани карти", + "Toggle compact mode" : "Превключване на компактен режим", "Details" : "Подробности", + "Loading board" : "Зареждане на табло", + "No lists available" : "Няма налична списъци.", + "Create a new list to add cards to this board" : "Създайте нов списък, за да добавите карти към това табло", + "Board not found" : "Таблото не е намерено", "Sharing" : "Споделяне", "Tags" : "Етикети", + "Deleted items" : "Изтрити елементи", + "Timeline" : "Времева линия", + "Deleted lists" : "Изтрити списъци", "Undo" : "Отмяна", + "Deleted cards" : "Изтрити карти", + "Share board with a user, group or circle …" : "Споделяне на таблото с потребител, група или кръг ...", + "Searching for users, groups and circles …" : "Търсене за потребители, групи и кръгове ...", + "No participants found" : "Няма намерени участници", + "Board owner" : "Собственик на табло", + "(Group)" : "(Група)", + "(Circle)" : "(Кръг)", "Can edit" : "Може да редактира", "Can share" : "Може да споделя", + "Can manage" : "Може да управлява", "Delete" : "Изтриване", + "Failed to create share with {displayName}" : "Създаването на споделяне с {displayName} не бе успешно", + "Add a new list" : "Добавяне на нов списък", + "Archive all cards" : "Архивира всички карти", + "Delete list" : "Изтрива списък", + "Add card" : "Добави карта", + "Archive all cards in this list" : "Архивира всички карти в този списък", + "Add a new card" : "Добави нова карта", + "Card name" : "Име на карта", + "List deleted" : "Списъкът е изтрит", "Edit" : "Редакция", + "Add a new tag" : "Добавяне на нов етикет", + "title and color value must be provided" : "трябва да се предоставят заглавие и стойност на цвета", + "Board name" : "Име на табло", "Members" : "Членове", + "Upload new files" : "Качи нови файлове", + "Share from Files" : "Споделяне от Файлове", + "Add this attachment" : "Добавете този прикачен файл", + "Show in Files" : "Показване във файлове", + "Unshare file" : "Прекратяване на споделянето на файла", + "Delete Attachment" : "Изтриване на прикачен файл", + "Restore Attachment" : "Възстановяване на прикачен файл", + "File to share" : "Файл за споделяне", + "Invalid path selected" : "Избран е невалиден път ", + "Open in sidebar view" : "Отваряне в изгледа на страничната лента", + "Open in bigger view" : "Отваря се в по-голям изглед", "Attachments" : "Прикачени файлове", "Comments" : "Коментари", "Modified" : "Промяна", "Created" : "Създаден", + "The title cannot be empty." : "Заглавието не може да бъде празно.", + "No comments yet. Begin the discussion!" : "Все още няма коментари. Започнете дискусията!", + "Assign a tag to this card…" : "Присвояване на етикет на тази карта ...", + "Assign to users" : "Зачисляване към потребители", + "Assign to users/groups/circles" : "Зачисляване към потребители/групи/кръгове", + "Assign a user to this card…" : "Зачисляване на потребител на тази карта ...", "Due date" : "Крайна дата", + "Set a due date" : "Задаване на крайна дата", "Remove due date" : "Премахни крайната дата", "Select Date" : "Изберете дата", "Save" : "Запазване", + "The comment cannot be empty." : "Коментарът не може да бъде празен.", + "The comment cannot be longer than 1000 characters." : "Коментарът не може да бъде по-дълъг от 1000 знака.", + "In reply to" : "В отговор на", "Reply" : "Отговори", "Update" : "Обновяване", "Description" : "Описание", + "(Unsaved)" : " (Незаписан)", + "(Saving…)" : "(Записване...)", + "Formatting help" : "Помощ за форматиране", + "Edit description" : "Редактиране на описанието", + "View description" : "Преглед на описанието", + "Add Attachment" : "Добавяне на прикачен файл", + "Write a description …" : "Напишете описание ...", + "Choose attachment" : "Избор на прикачен файл", "(group)" : "(група)", + "(circle)" : "(кръг)", + "Assign to me" : "Зачисляване към мен", + "Unassign myself" : "Отмяна на зачисляването към мен", + "Move card" : "Преместване на карта", + "Unarchive card" : "Разархивиране на карта", + "Archive card" : "Архивиране на карта", + "Delete card" : "Изтриване на карта", + "Move card to another board" : "Преместване на картата на друго табло", + "Select a list" : "Избор на списък", + "Card deleted" : "Картата е изтрита", "seconds ago" : "преди секунди", + "All boards" : "Всички табла", + "Archived boards" : "Архивирани табла", "Shared with you" : "Споделени с вас", + "Use bigger card view" : "Използва по-голям изглед на картата", + "Show boards in calendar/tasks" : "Показване на таблата в календар / задачи", + "Limit deck usage of groups" : "Ограничава използването на набора от групи", + "Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Ограничаването на приложението Deck/набор/ ще блокира потребителите, които не са част от тези групи, да създават свои собствени табла. Потребителите все още ще могат да работят на таблата, които са споделени с тях.", + "Board details" : "Подробности за табло", + "Edit board" : "Редактиране на табло", + "Clone board" : " Клониране на табло", + "Unarchive board" : "Разархивиране натабло", + "Archive board" : "Архивиране на табло", + "Turn on due date reminders" : "Включва напомнянията за краен срок", + "Turn off due date reminders" : "Изключва напомнянията за краен срок", + "Due date reminders" : " Напомняния за краен срок", + "All cards" : "Всички карти", + "Assigned cards" : "Зачислени карти", + "No notifications" : "Няма известия", + "Delete board" : "Изтриване на табло", + "Board {0} deleted" : "Табло {0} изтрито", + "Only assigned cards" : "Само зачислените карти", + "No reminder" : "Няма напомняне", "An error occurred" : "Възникна грешка", + "Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Сигурни ли сте, че искате да изтриете таблото {title}? Това ще изтрие всички данни на това табло.", + "Delete the board?" : "Изтриване на таблото?", + "Loading filtered view" : "Зареждане на филтриран изглед", "Today" : "Днес", "Tomorrow" : "Утре", - "This week" : "Тази седмица" + "This week" : "Тази седмица", + "No due" : "Не се дължи", + "No upcoming cards" : "Няма предстоящи карти", + "upcoming cards" : "предстоящи карти", + "Link to a board" : "Линк към табло", + "Link to a card" : "Линк към карта", + "Something went wrong" : "Нещо се обърка", + "Failed to upload {name}" : " Неуспешно качване на {name}", + "Maximum file size of {size} exceeded" : "Максималният размер на файла от {size} е надвишен", + "Error creating the share" : "Грешка при създаване на споделяне", + "Share with a Deck card" : "Споделяне с Deck карта", + "Share {file} with a Deck card" : "Споделяне {file} с Deck карта", + "Share" : "Споделяне" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/bg.json b/l10n/bg.json index 0f5b49798..afe92e757 100644 --- a/l10n/bg.json +++ b/l10n/bg.json @@ -1,46 +1,267 @@ { "translations": { + "You have created a new board {board}" : "Създадохте ново табло {board}", + "{user} has created a new board {board}" : "{user} създаде ново табло {board}", + "You have deleted the board {board}" : "Изтрихте таблото {board}", + "{user} has deleted the board {board}" : "{user} изтри таблото {board}", + "You have restored the board {board}" : "Възстановихте таблото {board}", + "{user} has restored the board {board}" : "{user} възстанови таблото {board}", + "You have shared the board {board} with {acl}" : "Споделихте таблото {board} с {acl}", + "{user} has shared the board {board} with {acl}" : "{user} сподели таблото {board} с {acl}", + "You have removed {acl} from the board {board}" : "Премахнахте {acl} от таблото {board}", + "{user} has removed {acl} from the board {board}" : "{user} премахна {acl} от таблото {board}", + "You have renamed the board {before} to {board}" : "Преименувахте таблото от {before} на {board}", + "{user} has renamed the board {before} to {board}" : "{user} преименува таблото от {before} на {board}", + "You have archived the board {board}" : "Архивирахте таблото {board}", + "{user} has archived the board {before}" : "{user} архивира таблото {board}", + "You have unarchived the board {board}" : "Разархивирали сте таблото {board}", + "{user} has unarchived the board {before}" : "{user} е разархивирал таблото {before}", + "You have created a new list {stack} on board {board}" : "Създадохте нов списък {stack} на таблото {board}", + "{user} has created a new list {stack} on board {board}" : "{user} създаде нов списък {stack} на таблото {board}", + "You have renamed list {before} to {stack} on board {board}" : "Преименувахте списъка {before} на {stack} на таблото {board}", + "{user} has renamed list {before} to {stack} on board {board}" : "{user} преименува списъка {before} на {stack} на таблото {board}", + "You have deleted list {stack} on board {board}" : "Изтрихте списък {stack} на таблото {board}", + "{user} has deleted list {stack} on board {board}" : "{user} изтри списък {stack} на таблото {board}", + "You have created card {card} in list {stack} on board {board}" : "Създали сте карта {card} в списък {stack} на таблото {board}", + "{user} has created card {card} in list {stack} on board {board}" : "{user} създаде карта {card} в списък {stack} на таблото {board}", + "You have deleted card {card} in list {stack} on board {board}" : "Изтрили сте карта {card} в списък {stack} на таблото {board}", + "{user} has deleted card {card} in list {stack} on board {board}" : "{user} изтри карта {card} в списък {stack} на таблото {board}", + "You have renamed the card {before} to {card}" : "Преименувахте картата {before} на {card}", + "{user} has renamed the card {before} to {card}" : "{user} преименува картата {before} на {card}", + "You have added a description to card {card} in list {stack} on board {board}" : "Добавили сте описание към карта {card} в списък {stack} на таблото {board}", + "{user} has added a description to card {card} in list {stack} on board {board}" : "{user} добави описание към карта {card} в списък {stack} на таблото {board}", + "You have updated the description of card {card} in list {stack} on board {board}" : " Актуализирали сте описанието към карта {card} в списък {stack} на таблото {board}", + "{user} has updated the description of the card {card} in list {stack} on board {board}" : " {user} актуализира описанието към карта {card} в списък {stack} на таблото {board}", + "You have archived card {card} in list {stack} on board {board}" : "Архивирали сте карта {card} в списък {stack} на борда {board}", + "{user} has archived card {card} in list {stack} on board {board}" : "{user} архивира карта {card} в списък {stack} на борда {board}", + "You have unarchived card {card} in list {stack} on board {board}" : "Разархивирали сте карта {card} в списък {stack} на борда {board}", + "{user} has unarchived card {card} in list {stack} on board {board}" : "{user} разархивира карта {card} в списък {stack} на борда {board}", + "You have removed the due date of card {card}" : "Премахнахте датата на падежа на картата {card}", + "{user} has removed the due date of card {card}" : "{user} премахна датата на падежа на картата {card}", + "You have set the due date of card {card} to {after}" : "Задали сте датата на падежа на картата {card} на {after}", + "{user} has set the due date of card {card} to {after}" : "{user} зададе дата на падежа на картата {card} на {after}", + "You have updated the due date of card {card} to {after}" : "Актуализирали сте датата на падежа на картата {card} на {after}", + "{user} has updated the due date of card {card} to {after}" : "{user} актуализира датата на падежа на картата {card} на {after}", + "You have added the tag {label} to card {card} in list {stack} on board {board}" : "Добавихте етикет {label} към карта {card} в списък {stack} на таблото {board}", + "{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} добави етикет {label} към карта {card} в списък {stack} натаблото {board}", + "You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Премахнахте етикет {label} към карта {card} в списък {stack} на таблото {board}", + "{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} премахна етикет {label} към карта {card} в списък {stack} на таблото {board}", + "You have assigned {assigneduser} to card {card} on board {board}" : "Присвоили сте {assigneduser} на карта {card} на борда {board}", + "{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} присвои {assigneduser} на карта {card} на борда {board}", + "You have unassigned {assigneduser} from card {card} on board {board}" : "Имате неопределен {assigneduser} на карта {card} на борда {board}", + "{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} има неопределен {assigneduser} на карта {card} на борда {board}", + "You have moved the card {card} from list {stackBefore} to {stack}" : "Преместихте картата {card} от списък {stackBefore} в {stack}", + "{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} премести картата {card} от списък {stackBefore} в {stack}", + "You have added the attachment {attachment} to card {card}" : "Добавихте прикачения файл {attachment} към карта {card}", + "{user} has added the attachment {attachment} to card {card}" : "{user} добави прикачения файл {attachment} към карта {card}", + "You have updated the attachment {attachment} on card {card}" : " Актуализирали сте прикачения файл {attachment} към карта {card}", + "{user} has updated the attachment {attachment} on card {card}" : "{user} актуализира прикачения файл {attachment} към карта {card}", + "You have deleted the attachment {attachment} from card {card}" : "Изтрихте прикачения файл {attachment} от карта {card}", + "{user} has deleted the attachment {attachment} from card {card}" : "{user} изтри прикачения файл {attachment} към карта {card}", + "You have restored the attachment {attachment} to card {card}" : "Възстановили сте прикачения файл {attachment} към карта {card}", + "{user} has restored the attachment {attachment} to card {card}" : "{user} възстанови прикачения файл {attachment} към карта {card}", + "You have commented on card {card}" : "Коментирали сте карта {card}", + "{user} has commented on card {card}" : "{user} коментира карта {card}", + "A card description inside the Deck app has been changed" : "Описанието на картата в приложението Deck/набор/ е променено", + "Deck" : "Набор", + "Changes in the Deck app" : "Промени в приложението Deck", + "A comment was created on a card" : "На картата е създаден коментар", + "Upcoming cards" : "Предстоящи карти", "Personal" : "Лични", + "The card \"%s\" on \"%s\" has been assigned to you by %s." : "Картата \"%s\" на \"%s\" Ви е била възложена от %s.", + "{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} е възложил картата \"%s\"\" on “%s“ на Вас.", + "The card \"%s\" on \"%s\" has reached its due date." : "Картата \"%s\" on \"%s\" е достигнала датата на падежа си.", + "%s has mentioned you in a comment on \"%s\"." : "%s те спомена в коментар за “%s”", + "{user} has mentioned you in a comment on \"%s\"." : "{user} те спомена в коментар за “%s”", + "The board \"%s\" has been shared with you by %s." : "Таблото \"%s\" е споделено с вас от%s.", + "{user} has shared the board %s with you." : "{user} сподели таблото %s с Вас", + "No data was provided to create an attachment." : "Не бяха предоставени данни за създаване на прикачен файл.", "Finished" : "Готово", "To review" : "За преглед", "Action needed" : "Необходимо е действие", "Later" : "По-късно", "copy" : "Копиране", + "To do" : "Да направя", + "Doing" : "Правя", "Done" : "Готово", + "Example Task 3" : "Примерна задача 3", + "Example Task 2" : "Примерна задача 2", + "Example Task 1" : "Примерна задача 1", "The file was uploaded" : "Файлът е качен", + "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Каченият файл надвишава директивата upload_max_filesize в php.ini", "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Размерът на файла надвишава максималния размер определен от MAX_FILE_SIZE в HTML формата.", "The file was only partially uploaded" : "Файлът е качен частично", "No file was uploaded" : "Нито един файл не е качен", "Missing a temporary folder" : "Липсва временна папка", + "Could not write file to disk" : " Файлът не можа да бъде записан на диск", + "A PHP extension stopped the file upload" : "PHP разширение спря качването на файла", + "No file uploaded or file size exceeds maximum of %s" : "Няма качен файл или размерът на файла надвишава максимума от %s", + "Card not found" : "Катртата не е намерена", + "Path is already shared with this card" : "Пътят вече е споделен с тази карта", + "Invalid date, date format must be YYYY-MM-DD" : "Невалидна дата, форматът е различен от ГГГГ-ММ-ДД", + "Personal planning and team project organization" : "Лично планиране и организация на екипни проекти", + "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck е инструмент за организация в стил kanban, насочен към лично планиране и организация на проекти за екипи, интегрирани с Nextcloud.\n\n\n- 📥 Добавете задачите си към карти и ги подредете\n- 📄 Запишете допълнителни бележки в markdown формат\n- Присвояване на етикети за още по-добра организация\n- 👥 Споделете с вашия екип, приятели или семейство\n- 📎Прикачете файлове и ги вградете във вашето описание за маркиране\n- 💬Обсъдете с вашия екип, като използвате коментари\n- ⚡ Проследявайте промените в потока от дейности\n- 🚀 Организирайте проекта си", + "Card details" : "Подробности за картата", + "Add board" : "Добави табло", + "Select the board to link to a project" : "Изберете таблото, което да свържете към проект", + "Search by board title" : "Търсене по заглавие на таблото", + "Select board" : "Избор на табло", + "Select a board" : "Избор на табло", + "Select a card" : "Избор на карта", "Cancel" : "Отказ", + "Select the card to link to a project" : "Изберете картата, която да свържете към проект", + "Link to card" : "Връзка към карта", "File already exists" : "Файлът вече съществува", + "A file with the name {filename} already exists." : "Вече съществува файл с името {filename}.", "Do you want to overwrite it?" : "Искате ли да го презапишете?", + "Overwrite file" : "Презапиши файла", + "Keep existing file" : "Запазване на съществуващ файл", + "This board is read only" : "Таблото е само за четене", + "Drop your files to upload" : "Пуснете вашите файлове, за да ги качите", + "Archived cards" : "Архивирани карти", + "Add list" : "Добави списък", + "List name" : "Име на списък", + "Apply filter" : "Приложи филтър", "Filter by tag" : "Филтрирай по маркер", + "Filter by assigned user" : "Филтриране по назначен потребител", + "Unassigned" : "Неприсвоен", + "Filter by due date" : "Филтриране по крайна дата", + "Overdue" : "Просрочен", + "Next 24 hours" : "Следващите 24 часа", + "Next 7 days" : "Следващите 7 дни", + "Next 30 days" : "Следващите 30 дни", + "No due date" : "Няма крайна дата", + "Clear filter" : "Изчстиване на филтър", + "Hide archived cards" : "Скриване на архивирани карти", + "Show archived cards" : "Показване на архивирани карти", + "Toggle compact mode" : "Превключване на компактен режим", "Details" : "Подробности", + "Loading board" : "Зареждане на табло", + "No lists available" : "Няма налична списъци.", + "Create a new list to add cards to this board" : "Създайте нов списък, за да добавите карти към това табло", + "Board not found" : "Таблото не е намерено", "Sharing" : "Споделяне", "Tags" : "Етикети", + "Deleted items" : "Изтрити елементи", + "Timeline" : "Времева линия", + "Deleted lists" : "Изтрити списъци", "Undo" : "Отмяна", + "Deleted cards" : "Изтрити карти", + "Share board with a user, group or circle …" : "Споделяне на таблото с потребител, група или кръг ...", + "Searching for users, groups and circles …" : "Търсене за потребители, групи и кръгове ...", + "No participants found" : "Няма намерени участници", + "Board owner" : "Собственик на табло", + "(Group)" : "(Група)", + "(Circle)" : "(Кръг)", "Can edit" : "Може да редактира", "Can share" : "Може да споделя", + "Can manage" : "Може да управлява", "Delete" : "Изтриване", + "Failed to create share with {displayName}" : "Създаването на споделяне с {displayName} не бе успешно", + "Add a new list" : "Добавяне на нов списък", + "Archive all cards" : "Архивира всички карти", + "Delete list" : "Изтрива списък", + "Add card" : "Добави карта", + "Archive all cards in this list" : "Архивира всички карти в този списък", + "Add a new card" : "Добави нова карта", + "Card name" : "Име на карта", + "List deleted" : "Списъкът е изтрит", "Edit" : "Редакция", + "Add a new tag" : "Добавяне на нов етикет", + "title and color value must be provided" : "трябва да се предоставят заглавие и стойност на цвета", + "Board name" : "Име на табло", "Members" : "Членове", + "Upload new files" : "Качи нови файлове", + "Share from Files" : "Споделяне от Файлове", + "Add this attachment" : "Добавете този прикачен файл", + "Show in Files" : "Показване във файлове", + "Unshare file" : "Прекратяване на споделянето на файла", + "Delete Attachment" : "Изтриване на прикачен файл", + "Restore Attachment" : "Възстановяване на прикачен файл", + "File to share" : "Файл за споделяне", + "Invalid path selected" : "Избран е невалиден път ", + "Open in sidebar view" : "Отваряне в изгледа на страничната лента", + "Open in bigger view" : "Отваря се в по-голям изглед", "Attachments" : "Прикачени файлове", "Comments" : "Коментари", "Modified" : "Промяна", "Created" : "Създаден", + "The title cannot be empty." : "Заглавието не може да бъде празно.", + "No comments yet. Begin the discussion!" : "Все още няма коментари. Започнете дискусията!", + "Assign a tag to this card…" : "Присвояване на етикет на тази карта ...", + "Assign to users" : "Зачисляване към потребители", + "Assign to users/groups/circles" : "Зачисляване към потребители/групи/кръгове", + "Assign a user to this card…" : "Зачисляване на потребител на тази карта ...", "Due date" : "Крайна дата", + "Set a due date" : "Задаване на крайна дата", "Remove due date" : "Премахни крайната дата", "Select Date" : "Изберете дата", "Save" : "Запазване", + "The comment cannot be empty." : "Коментарът не може да бъде празен.", + "The comment cannot be longer than 1000 characters." : "Коментарът не може да бъде по-дълъг от 1000 знака.", + "In reply to" : "В отговор на", "Reply" : "Отговори", "Update" : "Обновяване", "Description" : "Описание", + "(Unsaved)" : " (Незаписан)", + "(Saving…)" : "(Записване...)", + "Formatting help" : "Помощ за форматиране", + "Edit description" : "Редактиране на описанието", + "View description" : "Преглед на описанието", + "Add Attachment" : "Добавяне на прикачен файл", + "Write a description …" : "Напишете описание ...", + "Choose attachment" : "Избор на прикачен файл", "(group)" : "(група)", + "(circle)" : "(кръг)", + "Assign to me" : "Зачисляване към мен", + "Unassign myself" : "Отмяна на зачисляването към мен", + "Move card" : "Преместване на карта", + "Unarchive card" : "Разархивиране на карта", + "Archive card" : "Архивиране на карта", + "Delete card" : "Изтриване на карта", + "Move card to another board" : "Преместване на картата на друго табло", + "Select a list" : "Избор на списък", + "Card deleted" : "Картата е изтрита", "seconds ago" : "преди секунди", + "All boards" : "Всички табла", + "Archived boards" : "Архивирани табла", "Shared with you" : "Споделени с вас", + "Use bigger card view" : "Използва по-голям изглед на картата", + "Show boards in calendar/tasks" : "Показване на таблата в календар / задачи", + "Limit deck usage of groups" : "Ограничава използването на набора от групи", + "Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Ограничаването на приложението Deck/набор/ ще блокира потребителите, които не са част от тези групи, да създават свои собствени табла. Потребителите все още ще могат да работят на таблата, които са споделени с тях.", + "Board details" : "Подробности за табло", + "Edit board" : "Редактиране на табло", + "Clone board" : " Клониране на табло", + "Unarchive board" : "Разархивиране натабло", + "Archive board" : "Архивиране на табло", + "Turn on due date reminders" : "Включва напомнянията за краен срок", + "Turn off due date reminders" : "Изключва напомнянията за краен срок", + "Due date reminders" : " Напомняния за краен срок", + "All cards" : "Всички карти", + "Assigned cards" : "Зачислени карти", + "No notifications" : "Няма известия", + "Delete board" : "Изтриване на табло", + "Board {0} deleted" : "Табло {0} изтрито", + "Only assigned cards" : "Само зачислените карти", + "No reminder" : "Няма напомняне", "An error occurred" : "Възникна грешка", + "Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Сигурни ли сте, че искате да изтриете таблото {title}? Това ще изтрие всички данни на това табло.", + "Delete the board?" : "Изтриване на таблото?", + "Loading filtered view" : "Зареждане на филтриран изглед", "Today" : "Днес", "Tomorrow" : "Утре", - "This week" : "Тази седмица" + "This week" : "Тази седмица", + "No due" : "Не се дължи", + "No upcoming cards" : "Няма предстоящи карти", + "upcoming cards" : "предстоящи карти", + "Link to a board" : "Линк към табло", + "Link to a card" : "Линк към карта", + "Something went wrong" : "Нещо се обърка", + "Failed to upload {name}" : " Неуспешно качване на {name}", + "Maximum file size of {size} exceeded" : "Максималният размер на файла от {size} е надвишен", + "Error creating the share" : "Грешка при създаване на споделяне", + "Share with a Deck card" : "Споделяне с Deck карта", + "Share {file} with a Deck card" : "Споделяне {file} с Deck карта", + "Share" : "Споделяне" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/cs.js b/l10n/cs.js index 5e52af6fc..b67c51075 100644 --- a/l10n/cs.js +++ b/l10n/cs.js @@ -262,6 +262,8 @@ OC.L10N.register( "Failed to upload {name}" : "Nepodařilo se nahrát {name}", "Maximum file size of {size} exceeded" : "Překročena nejvyšší umožněná velikost souboru {size}", "Error creating the share" : "Chyba při vytváření sdílení", + "Share with a Deck card" : "Sdílet kartu aplikace Deck", + "Share {file} with a Deck card" : "Sdílet {file} s kartou aplikace Deck", "Share" : "Sdílet" }, "nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"); diff --git a/l10n/cs.json b/l10n/cs.json index dd32f5689..222ec0982 100644 --- a/l10n/cs.json +++ b/l10n/cs.json @@ -260,6 +260,8 @@ "Failed to upload {name}" : "Nepodařilo se nahrát {name}", "Maximum file size of {size} exceeded" : "Překročena nejvyšší umožněná velikost souboru {size}", "Error creating the share" : "Chyba při vytváření sdílení", + "Share with a Deck card" : "Sdílet kartu aplikace Deck", + "Share {file} with a Deck card" : "Sdílet {file} s kartou aplikace Deck", "Share" : "Sdílet" },"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;" } \ No newline at end of file diff --git a/l10n/zh_CN.js b/l10n/zh_CN.js index 29ac76598..acdf256c8 100644 --- a/l10n/zh_CN.js +++ b/l10n/zh_CN.js @@ -13,24 +13,46 @@ OC.L10N.register( "{user} has removed {acl} from the board {board}" : "{user} 从面板 {board} 中移除了 {acl} ", "You have renamed the board {before} to {board}" : "您将面板 {before} 重命名为 {board}", "{user} has renamed the board {before} to {board}" : "{user} 将面板 {before} 重命名为 {board}", - "You have archived the board {board}" : "您已将面板 {board} 存档", - "{user} has archived the board {before}" : "{user} 已将面板 {before} 存档", - "You have unarchived the board {board}" : "您撤销了 {board} 存档", - "{user} has unarchived the board {before}" : "{user} 撤销了面板 {before} 存档", + "You have archived the board {board}" : "您已将面板 {board} 归档", + "{user} has archived the board {before}" : "{user} 已将面板 {before} 归档", + "You have unarchived the board {board}" : "您已将面板 {board} 撤销归档", + "{user} has unarchived the board {before}" : "{user} 已将面板 {before} 撤销归档", "You have created a new list {stack} on board {board}" : "您在 {board} 上创建了一个新列表 {stack}面板", "{user} has created a new list {stack} on board {board}" : "{user} 在 {board} 上创建了一个新列表 {stack}", + "You have renamed list {before} to {stack} on board {board}" : "您将面板 {board} 上的列表 {before} 重命名为 {stack}", + "{user} has renamed list {before} to {stack} on board {board}" : "{user} 将面板 {board} 上的列表 {before} 重命名为 {stack}", + "You have deleted list {stack} on board {board}" : "您删除了面板 {board} 上的列表 {stack}", + "{user} has deleted list {stack} on board {board}" : "{user} 删除了面板 {board} 上的列表 {stack}", + "You have created card {card} in list {stack} on board {board}" : "您在面板 {board} 上的列表 {stack} 中创建了卡片 {card}", + "{user} has created card {card} in list {stack} on board {board}" : "{user} 在面板 {board} 上的列表 {stack} 中创建了卡片 {card}", + "You have deleted card {card} in list {stack} on board {board}" : "您在面板 {board} 上的列表 {stack} 中删除了卡片 {card}", + "{user} has deleted card {card} in list {stack} on board {board}" : "{user} 在面板 {board} 上的列表 {stack} 中删除了卡片 {card}", "You have renamed the card {before} to {card}" : "您将卡片 {before} 重命名为 {card}", "{user} has renamed the card {before} to {card}" : "{user} 将卡片 {before} 重命名为 {card}", - "You have removed the due date of card {card}" : "您移除了到期的卡片 {card}", - "{user} has removed the due date of card {card}" : "{user} 移除了到期的卡片 {card}", - "You have set the due date of card {card} to {after}" : "您设置到期的卡片 {card} 为 {after}", - "{user} has set the due date of card {card} to {after}" : "{user} 设置到期的卡片 {card} 为 {after}", - "You have updated the due date of card {card} to {after}" : "您更新到期的卡片 {card} 为 {after}", - "{user} has updated the due date of card {card} to {after}" : "{user} 更新到期的卡片 {card} 为 {after}", + "You have added a description to card {card} in list {stack} on board {board}" : "您为面板 {board} 上的列表 {stack} 中的卡片 {card} 添加了描述", + "{user} has added a description to card {card} in list {stack} on board {board}" : "{user} 为面板 {board} 上的列表 {stack} 中的卡片 {card} 添加了描述", + "You have updated the description of card {card} in list {stack} on board {board}" : "您更新了面板 {board} 上的列表 {stack} 中的卡片 {card} 的描述", + "{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} 更新了面板 {board} 上,列表 {stack} 的卡片 {card}中的描述", + "You have archived card {card} in list {stack} on board {board}" : "您已对面板 {board} 上的列表 {stack} 中的卡片 {card} 执行归档", + "{user} has archived card {card} in list {stack} on board {board}" : "{user} 已对面板 {board} 上的列表 {stack} 中的卡片 {card} 执行归档", + "You have unarchived card {card} in list {stack} on board {board}" : "您已对面板 {board} 上的列表 {stack} 中的卡片 {card} 撤销归档", + "{user} has unarchived card {card} in list {stack} on board {board}" : "{user} 已对面板 {board} 上的列表 {stack} 中的卡片 {card} 撤销归档", + "You have removed the due date of card {card}" : "您移除了卡片 {card} 的截止日期", + "{user} has removed the due date of card {card}" : "{user} 移除了卡片 {card} 的截止日期", + "You have set the due date of card {card} to {after}" : "您将卡片 {card} 的截止日期设置为 {after}", + "{user} has set the due date of card {card} to {after}" : "{user} 将卡片 {card} 的截止日期设置为 {after}", + "You have updated the due date of card {card} to {after}" : "您将卡片 {card} 的截止日期变更为 {after}", + "{user} has updated the due date of card {card} to {after}" : "{user} 将卡片 {card} 的截止日期变更为 {after}", + "You have added the tag {label} to card {card} in list {stack} on board {board}" : "您为面板 {board} 上的列表 {stack} 中的卡片 {card} 添加了标签 {label}", + "{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} 为面板 {board} 上的列表 {stack} 中的卡片 {card} 添加了标签 {label}", + "You have removed the tag {label} from card {card} in list {stack} on board {board}" : "您移除了面板 {board} 上的列表 {stack} 中的卡片 {card} 的标签 {label}", + "{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} 移除了面板 {board} 上的列表 {stack} 中的卡片 {card} 的标签 {label}", "You have assigned {assigneduser} to card {card} on board {board}" : "您将面板 {board} 上的卡片 {card} 指派给了 {assigneduser}", "{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} 将面板 {board} 上的卡片 {card} 指派给了 {assigneduser}", - "You have unassigned {assigneduser} from card {card} on board {board}" : "您对 {assigneduser} 取消了面板 {board} 上的卡片 {card} 指派", - "{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} 对 {assigneduser} 取消了面板 {board} 上的卡片 {card} 指派", + "You have unassigned {assigneduser} from card {card} on board {board}" : "您不再将面板 {board} 上的卡片 {card} 指派给 {assigneduser}", + "{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} 不再将面板 {board} 上的卡片 {card} 指派给 {assigneduser}", + "You have moved the card {card} from list {stackBefore} to {stack}" : "您将卡片 {card} 从列表 {stackBefore} 移到列表 {stack}", + "{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} 将卡片 {card} 从列表 {stackBefore} 移到列表 {stack}", "You have added the attachment {attachment} to card {card}" : "您为卡片 {card} 添加了附件 {attachment}", "{user} has added the attachment {attachment} to card {card}" : "{user} 为卡片 {card} 添加了附件 {attachment}", "You have updated the attachment {attachment} on card {card}" : "您更新了卡片 {card} 中的附件 {attachment}", @@ -47,16 +69,16 @@ OC.L10N.register( "A comment was created on a card" : "卡片上创建了一个 评论", "Upcoming cards" : "即将到来的卡片", "Personal" : "个人", - "The card \"%s\" on \"%s\" has been assigned to you by %s." : "%s已给您指派\"%s\" 中的卡片\"%s\"。", - "{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} 已给您指派\"%s\" 中的卡片\"%s\"。", - "The card \"%s\" on \"%s\" has reached its due date." : "\"%s\"中的卡片 \"%s\" 已到期。", + "The card \"%s\" on \"%s\" has been assigned to you by %s." : "卡片 \"%s\" (在 \"%s\" 中)已由%s指派给您。", + "{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} 已将卡片 \"%s\" (在 \"%s\" 中)指派给您。", + "The card \"%s\" on \"%s\" has reached its due date." : "卡片 \"%s\" (在 \"%s\" 中)已到期.", "%s has mentioned you in a comment on \"%s\"." : "%s 在 “%s” 的评论中提到了您。", "{user} has mentioned you in a comment on \"%s\"." : "{user} 在 “%s” 的评论中提到了您。", "The board \"%s\" has been shared with you by %s." : "面板 \"%s\" 已由 %s 共享给您。", "{user} has shared the board %s with you." : "{user} 共享面板 %s 给您。", "No data was provided to create an attachment." : "未能提供数据以创建附件", - "Finished" : "完成", - "To review" : "回顾", + "Finished" : "已完成", + "To review" : "待复核", "Action needed" : "需要操作", "Later" : "稍后", "copy" : "复制", @@ -68,18 +90,18 @@ OC.L10N.register( "Example Task 1" : "示例任务 1", "The file was uploaded" : "文件已上传", "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "上传文件的大小已超过 php.ini 中 upload_max_filesize 设置的值", - "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "上传的文件长度超出了 HTML 表单中 MAX_FILE_SIZE 的限制", + "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "上传的文件长度超出了 HTML 表单中设定的 MAX_FILE_SIZE 上限", "The file was only partially uploaded" : "文件仅部分上传", - "No file was uploaded" : "没有文件被上传", + "No file was uploaded" : "文件未被上传", "Missing a temporary folder" : "缺少临时文件夹", "Could not write file to disk" : "无法写入文件到磁盘", - "A PHP extension stopped the file upload" : "PHP扩展停止了文件上传。", + "A PHP extension stopped the file upload" : "一个PHP扩展程序中断了文件上传。", "No file uploaded or file size exceeds maximum of %s" : "没有文件被上传或文件大小超出最大值 %s", "Card not found" : "未找到卡片", "Path is already shared with this card" : "已和这张卡片分享了路径", "Invalid date, date format must be YYYY-MM-DD" : "无效日期,日期格式必须为 YYYY-MM-DD", - "Personal planning and team project organization" : "个人规划和团队项目组织", - "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "看板是集成于 Nextcloud 中的一款看板风格的任务管理工具,用于帮助进行个人计划与项目安排。\n\n\n- 📥 把您的任务添加到卡片上,并将它们有序排列\n- 📄 将您的补充说明用markdown写下来\n- 🔖 利用指派标签更好地进行筹划\n- 👥 与您的团队,朋友或家人共享\n- 📎 附加文件并将它们嵌入到您的markdown说明中\n- 💬 用评论与您的团队讨论\n- ⚡ 在活动流中紧跟变化\n- 🚀 使您的项目井井有条", + "Personal planning and team project organization" : "个人规划和团队项目安排", + "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "“看板”是 Nextcloud 集成的一款看板式任务管理工具,用于个人计划与项目安排。\n\n\n- 📥 将您的任务添加到卡片上,并将它们有序排列\n- 📄 将您的补充说明用markdown写下来\n- 🔖 利用指派标签更好地进行筹划\n- 👥 与您的团队,朋友或家人共享\n- 📎 附加文件并将它们嵌入到您的markdown说明中\n- 💬 用评论与您的团队讨论\n- ⚡ 在活动流中紧跟变化\n- 🚀 使您的项目井井有条", "Card details" : "卡片详情", "Add board" : "添加面板", "Select the board to link to a project" : "选择要链接到一个项目的面板", @@ -97,27 +119,27 @@ OC.L10N.register( "Keep existing file" : "保持已存在的文件", "This board is read only" : "此面板是只读的", "Drop your files to upload" : "拖放您的文件以上传", - "Archived cards" : "已存档卡片", + "Archived cards" : "已归档卡片", "Add list" : "添加列表", "List name" : "列表名称", - "Apply filter" : "应用过滤器", - "Filter by tag" : "标签筛选", - "Filter by assigned user" : "根据指定用户过滤", - "Unassigned" : "未分配", - "Filter by due date" : "根据截止日期过滤", + "Apply filter" : "应用筛选", + "Filter by tag" : "按标签筛选", + "Filter by assigned user" : "按指派的用户筛选", + "Unassigned" : "未指派", + "Filter by due date" : "按截止日期筛选", "Overdue" : "逾期", "Next 24 hours" : "未来24小时", - "Next 7 days" : "下个7天", - "Next 30 days" : "下个30天", + "Next 7 days" : "未来7天", + "Next 30 days" : "未来30天", "No due date" : "无截止日期", - "Clear filter" : "清空过滤器", - "Hide archived cards" : "隐藏已存档的卡片", - "Show archived cards" : "显示已存档的卡片", + "Clear filter" : "清除筛选", + "Hide archived cards" : "隐藏已归档卡片", + "Show archived cards" : "显示已归档卡片", "Toggle compact mode" : "切换简洁模式", "Details" : "详情", "Loading board" : "正在加载面板", "No lists available" : "无列表可用", - "Create a new list to add cards to this board" : "创建一个新列表来添加卡片到这个看板", + "Create a new list to add cards to this board" : "创建新列表后,即可在面板中新建卡片", "Board not found" : "未找到面板", "Sharing" : "正在共享", "Tags" : "标签", @@ -125,7 +147,7 @@ OC.L10N.register( "Timeline" : "时间线", "Deleted lists" : "已删除的列表", "Undo" : "撤消", - "Deleted cards" : "已删除卡片", + "Deleted cards" : "已删除的卡片", "Share board with a user, group or circle …" : "与一个用户,群组或圈子共享面板...", "Searching for users, groups and circles …" : "正在搜索用户、群组和圈子 ......", "No participants found" : "未找到参与者", @@ -137,28 +159,28 @@ OC.L10N.register( "Can manage" : "可以管理", "Delete" : "删除", "Failed to create share with {displayName}" : "用 {displayName} 创建分享失败", - "Add a new list" : "添加一个新列表", - "Archive all cards" : "存档所有卡片", + "Add a new list" : "添加新列表", + "Archive all cards" : "归档所有卡片", "Delete list" : "删除列表", "Add card" : "添加卡片", - "Archive all cards in this list" : "存档该列表的所有卡片", + "Archive all cards in this list" : "将该列表中的所有卡片归档", "Add a new card" : "添加一张新卡片", "Card name" : "卡片名", "List deleted" : "列表被删除", "Edit" : "编辑", "Add a new tag" : "新增一个标签", "title and color value must be provided" : "必须提供标题和颜色值", - "Board name" : "看板名", - "Members" : "会员", + "Board name" : "面板名称", + "Members" : "成员", "Upload new files" : "上传新文件", - "Share from Files" : "从文件进行分享", + "Share from Files" : "从文件共享", "Add this attachment" : "添加此附件", - "Show in Files" : "显示在文件中", + "Show in Files" : "在文件中显示", "Unshare file" : "取消分享文件", "Delete Attachment" : "删除附件", "Restore Attachment" : "恢复附件", "File to share" : "要分享的文件", - "Invalid path selected" : "选中了无效的路径", + "Invalid path selected" : "选择的路径无效", "Open in sidebar view" : "在侧边栏视图中打开", "Open in bigger view" : "在较大视图中打开", "Attachments" : "附件", @@ -169,11 +191,11 @@ OC.L10N.register( "No comments yet. Begin the discussion!" : "还没有评论。 开始讨论吧!", "Assign a tag to this card…" : "为该卡片分配标签…", "Assign to users" : "指派给用户", - "Assign to users/groups/circles" : "分配给用户/群组/圈子", + "Assign to users/groups/circles" : "指派给用户/群组/圈子", "Assign a user to this card…" : "为该卡片指派用户…", - "Due date" : "截至日期", - "Set a due date" : "设置一个截止日期", - "Remove due date" : "移除截至日期", + "Due date" : "截止日期", + "Set a due date" : "设置截止日期", + "Remove due date" : "移除截止日期", "Select Date" : "选择日期", "Save" : "保存", "The comment cannot be empty." : "注释不能为空。", @@ -184,7 +206,7 @@ OC.L10N.register( "Description" : "描述", "(Unsaved)" : "(未保存的)", "(Saving…)" : "(正在保存...)", - "Formatting help" : "格式化帮助", + "Formatting help" : "排版指南", "Edit description" : "编辑描述", "View description" : "查看描述", "Add Attachment" : "添加附件", @@ -193,9 +215,9 @@ OC.L10N.register( "(group)" : "(组)", "(circle)" : "(圈子)", "Assign to me" : "指派给我", - "Unassign myself" : "自己解除分配", + "Unassign myself" : "不再指派给我", "Move card" : "移动卡片", - "Unarchive card" : "恢复卡片存档", + "Unarchive card" : "撤销对卡片的归档", "Archive card" : "归档卡片", "Delete card" : "删除卡片", "Move card to another board" : "将卡片移到其他面板", @@ -207,27 +229,27 @@ OC.L10N.register( "Shared with you" : "收到的共享", "Use bigger card view" : "使用较大的卡片视图", "Show boards in calendar/tasks" : "在日历/任务中显示看板", - "Limit deck usage of groups" : "限制群组的看板使用", - "Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "非面板创建用户组的用户将不能使用受限看板。但用户仍然能够使用已共享给他们的面板工作。", + "Limit deck usage of groups" : "按群组限制看板的使用权", + "Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "限制看板的使用权后,不在指定群组中的用户将不能新建面板,但仍可使用已共享给他们的面板。", "Board details" : "面板详情", "Edit board" : "编辑面板", - "Clone board" : "克隆看板", - "Unarchive board" : "取消对看板的存档", - "Archive board" : "存档看板", - "Turn on due date reminders" : "打开到期日期提醒 ", - "Turn off due date reminders" : "关闭到期日提醒", - "Due date reminders" : "到期日期提醒", + "Clone board" : "克隆面板", + "Unarchive board" : "撤销对面板的归档", + "Archive board" : "归档面板", + "Turn on due date reminders" : "打开截止日期提醒", + "Turn off due date reminders" : "关闭截止日期提醒", + "Due date reminders" : "截止日期提醒", "All cards" : "所有卡片", - "Assigned cards" : "分配的卡片", + "Assigned cards" : "已指派的卡片", "No notifications" : "无通知", "Delete board" : "删除看板", "Board {0} deleted" : "面板{0} 被删除", - "Only assigned cards" : "仅分配的卡片", + "Only assigned cards" : "仅限已指派的卡片", "No reminder" : "无提醒", "An error occurred" : "发生错误", "Are you sure you want to delete the board {title}? This will delete all the data of this board." : "你确定你要删除 {title}面板吗?面板内所有数据都将因此被删除。", "Delete the board?" : "是否删除面板?", - "Loading filtered view" : "正在加载已过滤视图", + "Loading filtered view" : "正在加载已筛选的视图", "Today" : "今天", "Tomorrow" : "明天", "This week" : "本周", @@ -236,12 +258,12 @@ OC.L10N.register( "upcoming cards" : "即将到来的卡片", "Link to a board" : "链接到一个面板", "Link to a card" : "链接到一张卡片", - "Something went wrong" : "有地方出错了", + "Something went wrong" : "发生了错误", "Failed to upload {name}" : "未能上传 {name}", - "Maximum file size of {size} exceeded" : "文件大小 {size} 超出最大限制", + "Maximum file size of {size} exceeded" : "文件容量已超过 {size} 的上限", "Error creating the share" : "创建分享出错", - "Share with a Deck card" : "用一张 Deck 卡片进行分享 ", - "Share {file} with a Deck card" : "用一张 Deck 卡片分享 {file}", + "Share with a Deck card" : "分享给一张看板卡片", + "Share {file} with a Deck card" : "将{file}分享给一张看板卡片", "Share" : "分享" }, "nplurals=1; plural=0;"); diff --git a/l10n/zh_CN.json b/l10n/zh_CN.json index b1086b5f5..0db89dbec 100644 --- a/l10n/zh_CN.json +++ b/l10n/zh_CN.json @@ -11,24 +11,46 @@ "{user} has removed {acl} from the board {board}" : "{user} 从面板 {board} 中移除了 {acl} ", "You have renamed the board {before} to {board}" : "您将面板 {before} 重命名为 {board}", "{user} has renamed the board {before} to {board}" : "{user} 将面板 {before} 重命名为 {board}", - "You have archived the board {board}" : "您已将面板 {board} 存档", - "{user} has archived the board {before}" : "{user} 已将面板 {before} 存档", - "You have unarchived the board {board}" : "您撤销了 {board} 存档", - "{user} has unarchived the board {before}" : "{user} 撤销了面板 {before} 存档", + "You have archived the board {board}" : "您已将面板 {board} 归档", + "{user} has archived the board {before}" : "{user} 已将面板 {before} 归档", + "You have unarchived the board {board}" : "您已将面板 {board} 撤销归档", + "{user} has unarchived the board {before}" : "{user} 已将面板 {before} 撤销归档", "You have created a new list {stack} on board {board}" : "您在 {board} 上创建了一个新列表 {stack}面板", "{user} has created a new list {stack} on board {board}" : "{user} 在 {board} 上创建了一个新列表 {stack}", + "You have renamed list {before} to {stack} on board {board}" : "您将面板 {board} 上的列表 {before} 重命名为 {stack}", + "{user} has renamed list {before} to {stack} on board {board}" : "{user} 将面板 {board} 上的列表 {before} 重命名为 {stack}", + "You have deleted list {stack} on board {board}" : "您删除了面板 {board} 上的列表 {stack}", + "{user} has deleted list {stack} on board {board}" : "{user} 删除了面板 {board} 上的列表 {stack}", + "You have created card {card} in list {stack} on board {board}" : "您在面板 {board} 上的列表 {stack} 中创建了卡片 {card}", + "{user} has created card {card} in list {stack} on board {board}" : "{user} 在面板 {board} 上的列表 {stack} 中创建了卡片 {card}", + "You have deleted card {card} in list {stack} on board {board}" : "您在面板 {board} 上的列表 {stack} 中删除了卡片 {card}", + "{user} has deleted card {card} in list {stack} on board {board}" : "{user} 在面板 {board} 上的列表 {stack} 中删除了卡片 {card}", "You have renamed the card {before} to {card}" : "您将卡片 {before} 重命名为 {card}", "{user} has renamed the card {before} to {card}" : "{user} 将卡片 {before} 重命名为 {card}", - "You have removed the due date of card {card}" : "您移除了到期的卡片 {card}", - "{user} has removed the due date of card {card}" : "{user} 移除了到期的卡片 {card}", - "You have set the due date of card {card} to {after}" : "您设置到期的卡片 {card} 为 {after}", - "{user} has set the due date of card {card} to {after}" : "{user} 设置到期的卡片 {card} 为 {after}", - "You have updated the due date of card {card} to {after}" : "您更新到期的卡片 {card} 为 {after}", - "{user} has updated the due date of card {card} to {after}" : "{user} 更新到期的卡片 {card} 为 {after}", + "You have added a description to card {card} in list {stack} on board {board}" : "您为面板 {board} 上的列表 {stack} 中的卡片 {card} 添加了描述", + "{user} has added a description to card {card} in list {stack} on board {board}" : "{user} 为面板 {board} 上的列表 {stack} 中的卡片 {card} 添加了描述", + "You have updated the description of card {card} in list {stack} on board {board}" : "您更新了面板 {board} 上的列表 {stack} 中的卡片 {card} 的描述", + "{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} 更新了面板 {board} 上,列表 {stack} 的卡片 {card}中的描述", + "You have archived card {card} in list {stack} on board {board}" : "您已对面板 {board} 上的列表 {stack} 中的卡片 {card} 执行归档", + "{user} has archived card {card} in list {stack} on board {board}" : "{user} 已对面板 {board} 上的列表 {stack} 中的卡片 {card} 执行归档", + "You have unarchived card {card} in list {stack} on board {board}" : "您已对面板 {board} 上的列表 {stack} 中的卡片 {card} 撤销归档", + "{user} has unarchived card {card} in list {stack} on board {board}" : "{user} 已对面板 {board} 上的列表 {stack} 中的卡片 {card} 撤销归档", + "You have removed the due date of card {card}" : "您移除了卡片 {card} 的截止日期", + "{user} has removed the due date of card {card}" : "{user} 移除了卡片 {card} 的截止日期", + "You have set the due date of card {card} to {after}" : "您将卡片 {card} 的截止日期设置为 {after}", + "{user} has set the due date of card {card} to {after}" : "{user} 将卡片 {card} 的截止日期设置为 {after}", + "You have updated the due date of card {card} to {after}" : "您将卡片 {card} 的截止日期变更为 {after}", + "{user} has updated the due date of card {card} to {after}" : "{user} 将卡片 {card} 的截止日期变更为 {after}", + "You have added the tag {label} to card {card} in list {stack} on board {board}" : "您为面板 {board} 上的列表 {stack} 中的卡片 {card} 添加了标签 {label}", + "{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} 为面板 {board} 上的列表 {stack} 中的卡片 {card} 添加了标签 {label}", + "You have removed the tag {label} from card {card} in list {stack} on board {board}" : "您移除了面板 {board} 上的列表 {stack} 中的卡片 {card} 的标签 {label}", + "{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} 移除了面板 {board} 上的列表 {stack} 中的卡片 {card} 的标签 {label}", "You have assigned {assigneduser} to card {card} on board {board}" : "您将面板 {board} 上的卡片 {card} 指派给了 {assigneduser}", "{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} 将面板 {board} 上的卡片 {card} 指派给了 {assigneduser}", - "You have unassigned {assigneduser} from card {card} on board {board}" : "您对 {assigneduser} 取消了面板 {board} 上的卡片 {card} 指派", - "{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} 对 {assigneduser} 取消了面板 {board} 上的卡片 {card} 指派", + "You have unassigned {assigneduser} from card {card} on board {board}" : "您不再将面板 {board} 上的卡片 {card} 指派给 {assigneduser}", + "{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} 不再将面板 {board} 上的卡片 {card} 指派给 {assigneduser}", + "You have moved the card {card} from list {stackBefore} to {stack}" : "您将卡片 {card} 从列表 {stackBefore} 移到列表 {stack}", + "{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} 将卡片 {card} 从列表 {stackBefore} 移到列表 {stack}", "You have added the attachment {attachment} to card {card}" : "您为卡片 {card} 添加了附件 {attachment}", "{user} has added the attachment {attachment} to card {card}" : "{user} 为卡片 {card} 添加了附件 {attachment}", "You have updated the attachment {attachment} on card {card}" : "您更新了卡片 {card} 中的附件 {attachment}", @@ -45,16 +67,16 @@ "A comment was created on a card" : "卡片上创建了一个 评论", "Upcoming cards" : "即将到来的卡片", "Personal" : "个人", - "The card \"%s\" on \"%s\" has been assigned to you by %s." : "%s已给您指派\"%s\" 中的卡片\"%s\"。", - "{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} 已给您指派\"%s\" 中的卡片\"%s\"。", - "The card \"%s\" on \"%s\" has reached its due date." : "\"%s\"中的卡片 \"%s\" 已到期。", + "The card \"%s\" on \"%s\" has been assigned to you by %s." : "卡片 \"%s\" (在 \"%s\" 中)已由%s指派给您。", + "{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} 已将卡片 \"%s\" (在 \"%s\" 中)指派给您。", + "The card \"%s\" on \"%s\" has reached its due date." : "卡片 \"%s\" (在 \"%s\" 中)已到期.", "%s has mentioned you in a comment on \"%s\"." : "%s 在 “%s” 的评论中提到了您。", "{user} has mentioned you in a comment on \"%s\"." : "{user} 在 “%s” 的评论中提到了您。", "The board \"%s\" has been shared with you by %s." : "面板 \"%s\" 已由 %s 共享给您。", "{user} has shared the board %s with you." : "{user} 共享面板 %s 给您。", "No data was provided to create an attachment." : "未能提供数据以创建附件", - "Finished" : "完成", - "To review" : "回顾", + "Finished" : "已完成", + "To review" : "待复核", "Action needed" : "需要操作", "Later" : "稍后", "copy" : "复制", @@ -66,18 +88,18 @@ "Example Task 1" : "示例任务 1", "The file was uploaded" : "文件已上传", "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "上传文件的大小已超过 php.ini 中 upload_max_filesize 设置的值", - "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "上传的文件长度超出了 HTML 表单中 MAX_FILE_SIZE 的限制", + "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "上传的文件长度超出了 HTML 表单中设定的 MAX_FILE_SIZE 上限", "The file was only partially uploaded" : "文件仅部分上传", - "No file was uploaded" : "没有文件被上传", + "No file was uploaded" : "文件未被上传", "Missing a temporary folder" : "缺少临时文件夹", "Could not write file to disk" : "无法写入文件到磁盘", - "A PHP extension stopped the file upload" : "PHP扩展停止了文件上传。", + "A PHP extension stopped the file upload" : "一个PHP扩展程序中断了文件上传。", "No file uploaded or file size exceeds maximum of %s" : "没有文件被上传或文件大小超出最大值 %s", "Card not found" : "未找到卡片", "Path is already shared with this card" : "已和这张卡片分享了路径", "Invalid date, date format must be YYYY-MM-DD" : "无效日期,日期格式必须为 YYYY-MM-DD", - "Personal planning and team project organization" : "个人规划和团队项目组织", - "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "看板是集成于 Nextcloud 中的一款看板风格的任务管理工具,用于帮助进行个人计划与项目安排。\n\n\n- 📥 把您的任务添加到卡片上,并将它们有序排列\n- 📄 将您的补充说明用markdown写下来\n- 🔖 利用指派标签更好地进行筹划\n- 👥 与您的团队,朋友或家人共享\n- 📎 附加文件并将它们嵌入到您的markdown说明中\n- 💬 用评论与您的团队讨论\n- ⚡ 在活动流中紧跟变化\n- 🚀 使您的项目井井有条", + "Personal planning and team project organization" : "个人规划和团队项目安排", + "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "“看板”是 Nextcloud 集成的一款看板式任务管理工具,用于个人计划与项目安排。\n\n\n- 📥 将您的任务添加到卡片上,并将它们有序排列\n- 📄 将您的补充说明用markdown写下来\n- 🔖 利用指派标签更好地进行筹划\n- 👥 与您的团队,朋友或家人共享\n- 📎 附加文件并将它们嵌入到您的markdown说明中\n- 💬 用评论与您的团队讨论\n- ⚡ 在活动流中紧跟变化\n- 🚀 使您的项目井井有条", "Card details" : "卡片详情", "Add board" : "添加面板", "Select the board to link to a project" : "选择要链接到一个项目的面板", @@ -95,27 +117,27 @@ "Keep existing file" : "保持已存在的文件", "This board is read only" : "此面板是只读的", "Drop your files to upload" : "拖放您的文件以上传", - "Archived cards" : "已存档卡片", + "Archived cards" : "已归档卡片", "Add list" : "添加列表", "List name" : "列表名称", - "Apply filter" : "应用过滤器", - "Filter by tag" : "标签筛选", - "Filter by assigned user" : "根据指定用户过滤", - "Unassigned" : "未分配", - "Filter by due date" : "根据截止日期过滤", + "Apply filter" : "应用筛选", + "Filter by tag" : "按标签筛选", + "Filter by assigned user" : "按指派的用户筛选", + "Unassigned" : "未指派", + "Filter by due date" : "按截止日期筛选", "Overdue" : "逾期", "Next 24 hours" : "未来24小时", - "Next 7 days" : "下个7天", - "Next 30 days" : "下个30天", + "Next 7 days" : "未来7天", + "Next 30 days" : "未来30天", "No due date" : "无截止日期", - "Clear filter" : "清空过滤器", - "Hide archived cards" : "隐藏已存档的卡片", - "Show archived cards" : "显示已存档的卡片", + "Clear filter" : "清除筛选", + "Hide archived cards" : "隐藏已归档卡片", + "Show archived cards" : "显示已归档卡片", "Toggle compact mode" : "切换简洁模式", "Details" : "详情", "Loading board" : "正在加载面板", "No lists available" : "无列表可用", - "Create a new list to add cards to this board" : "创建一个新列表来添加卡片到这个看板", + "Create a new list to add cards to this board" : "创建新列表后,即可在面板中新建卡片", "Board not found" : "未找到面板", "Sharing" : "正在共享", "Tags" : "标签", @@ -123,7 +145,7 @@ "Timeline" : "时间线", "Deleted lists" : "已删除的列表", "Undo" : "撤消", - "Deleted cards" : "已删除卡片", + "Deleted cards" : "已删除的卡片", "Share board with a user, group or circle …" : "与一个用户,群组或圈子共享面板...", "Searching for users, groups and circles …" : "正在搜索用户、群组和圈子 ......", "No participants found" : "未找到参与者", @@ -135,28 +157,28 @@ "Can manage" : "可以管理", "Delete" : "删除", "Failed to create share with {displayName}" : "用 {displayName} 创建分享失败", - "Add a new list" : "添加一个新列表", - "Archive all cards" : "存档所有卡片", + "Add a new list" : "添加新列表", + "Archive all cards" : "归档所有卡片", "Delete list" : "删除列表", "Add card" : "添加卡片", - "Archive all cards in this list" : "存档该列表的所有卡片", + "Archive all cards in this list" : "将该列表中的所有卡片归档", "Add a new card" : "添加一张新卡片", "Card name" : "卡片名", "List deleted" : "列表被删除", "Edit" : "编辑", "Add a new tag" : "新增一个标签", "title and color value must be provided" : "必须提供标题和颜色值", - "Board name" : "看板名", - "Members" : "会员", + "Board name" : "面板名称", + "Members" : "成员", "Upload new files" : "上传新文件", - "Share from Files" : "从文件进行分享", + "Share from Files" : "从文件共享", "Add this attachment" : "添加此附件", - "Show in Files" : "显示在文件中", + "Show in Files" : "在文件中显示", "Unshare file" : "取消分享文件", "Delete Attachment" : "删除附件", "Restore Attachment" : "恢复附件", "File to share" : "要分享的文件", - "Invalid path selected" : "选中了无效的路径", + "Invalid path selected" : "选择的路径无效", "Open in sidebar view" : "在侧边栏视图中打开", "Open in bigger view" : "在较大视图中打开", "Attachments" : "附件", @@ -167,11 +189,11 @@ "No comments yet. Begin the discussion!" : "还没有评论。 开始讨论吧!", "Assign a tag to this card…" : "为该卡片分配标签…", "Assign to users" : "指派给用户", - "Assign to users/groups/circles" : "分配给用户/群组/圈子", + "Assign to users/groups/circles" : "指派给用户/群组/圈子", "Assign a user to this card…" : "为该卡片指派用户…", - "Due date" : "截至日期", - "Set a due date" : "设置一个截止日期", - "Remove due date" : "移除截至日期", + "Due date" : "截止日期", + "Set a due date" : "设置截止日期", + "Remove due date" : "移除截止日期", "Select Date" : "选择日期", "Save" : "保存", "The comment cannot be empty." : "注释不能为空。", @@ -182,7 +204,7 @@ "Description" : "描述", "(Unsaved)" : "(未保存的)", "(Saving…)" : "(正在保存...)", - "Formatting help" : "格式化帮助", + "Formatting help" : "排版指南", "Edit description" : "编辑描述", "View description" : "查看描述", "Add Attachment" : "添加附件", @@ -191,9 +213,9 @@ "(group)" : "(组)", "(circle)" : "(圈子)", "Assign to me" : "指派给我", - "Unassign myself" : "自己解除分配", + "Unassign myself" : "不再指派给我", "Move card" : "移动卡片", - "Unarchive card" : "恢复卡片存档", + "Unarchive card" : "撤销对卡片的归档", "Archive card" : "归档卡片", "Delete card" : "删除卡片", "Move card to another board" : "将卡片移到其他面板", @@ -205,27 +227,27 @@ "Shared with you" : "收到的共享", "Use bigger card view" : "使用较大的卡片视图", "Show boards in calendar/tasks" : "在日历/任务中显示看板", - "Limit deck usage of groups" : "限制群组的看板使用", - "Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "非面板创建用户组的用户将不能使用受限看板。但用户仍然能够使用已共享给他们的面板工作。", + "Limit deck usage of groups" : "按群组限制看板的使用权", + "Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "限制看板的使用权后,不在指定群组中的用户将不能新建面板,但仍可使用已共享给他们的面板。", "Board details" : "面板详情", "Edit board" : "编辑面板", - "Clone board" : "克隆看板", - "Unarchive board" : "取消对看板的存档", - "Archive board" : "存档看板", - "Turn on due date reminders" : "打开到期日期提醒 ", - "Turn off due date reminders" : "关闭到期日提醒", - "Due date reminders" : "到期日期提醒", + "Clone board" : "克隆面板", + "Unarchive board" : "撤销对面板的归档", + "Archive board" : "归档面板", + "Turn on due date reminders" : "打开截止日期提醒", + "Turn off due date reminders" : "关闭截止日期提醒", + "Due date reminders" : "截止日期提醒", "All cards" : "所有卡片", - "Assigned cards" : "分配的卡片", + "Assigned cards" : "已指派的卡片", "No notifications" : "无通知", "Delete board" : "删除看板", "Board {0} deleted" : "面板{0} 被删除", - "Only assigned cards" : "仅分配的卡片", + "Only assigned cards" : "仅限已指派的卡片", "No reminder" : "无提醒", "An error occurred" : "发生错误", "Are you sure you want to delete the board {title}? This will delete all the data of this board." : "你确定你要删除 {title}面板吗?面板内所有数据都将因此被删除。", "Delete the board?" : "是否删除面板?", - "Loading filtered view" : "正在加载已过滤视图", + "Loading filtered view" : "正在加载已筛选的视图", "Today" : "今天", "Tomorrow" : "明天", "This week" : "本周", @@ -234,12 +256,12 @@ "upcoming cards" : "即将到来的卡片", "Link to a board" : "链接到一个面板", "Link to a card" : "链接到一张卡片", - "Something went wrong" : "有地方出错了", + "Something went wrong" : "发生了错误", "Failed to upload {name}" : "未能上传 {name}", - "Maximum file size of {size} exceeded" : "文件大小 {size} 超出最大限制", + "Maximum file size of {size} exceeded" : "文件容量已超过 {size} 的上限", "Error creating the share" : "创建分享出错", - "Share with a Deck card" : "用一张 Deck 卡片进行分享 ", - "Share {file} with a Deck card" : "用一张 Deck 卡片分享 {file}", + "Share with a Deck card" : "分享给一张看板卡片", + "Share {file} with a Deck card" : "将{file}分享给一张看板卡片", "Share" : "分享" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/zh_HK.js b/l10n/zh_HK.js index b42c5fd63..227a776df 100644 --- a/l10n/zh_HK.js +++ b/l10n/zh_HK.js @@ -1,81 +1,269 @@ OC.L10N.register( "deck", { - "You have created a new board {board}" : "您已建立新的佈告欄 {board}", - "{user} has created a new board {board}" : "{user} 已建立新的佈告欄  {board}", - "You have deleted the board {board}" : "您已刪除佈告欄 {board}", - "{user} has deleted the board {board}" : "{user} 已刪除佈告欄{board}", - "You have restored the board {board}" : "您已還原佈告欄{board}", - "{user} has restored the board {board}" : "{user}已還原佈告欄{board}", - "You have shared the board {board} with {acl}" : "您已和{acl}分享佈告欄{board}", - "{user} has shared the board {board} with {acl}" : "{user} 已和{acl}分享佈告欄{board}", - "You have removed {acl} from the board {board}" : "您已從佈告欄 {board} 中刪除了 {acl}", - "{user} has removed {acl} from the board {board}" : "{user} 已從佈告欄 {board} 中刪除了 {acl}", - "Personal" : "私人的", - "Finished" : "已完成", + "You have created a new board {board}" : "您創建了一個新面板 {board}", + "{user} has created a new board {board}" : "{user} 創建了一個新面板 {board}", + "You have deleted the board {board}" : "您刪除了面板 {board}", + "{user} has deleted the board {board}" : "{user} 刪除了面板 {board}", + "You have restored the board {board}" : "您恢復了面板 {board}", + "{user} has restored the board {board}" : "{user} 恢復了 {board}", + "You have shared the board {board} with {acl}" : "您已分享 {board} 給 {acl}", + "{user} has shared the board {board} with {acl}" : "{user} 已使用 {acl} 分享面板 {board}", + "You have removed {acl} from the board {board}" : "您從面板 {board} 中移除了 {acl}", + "{user} has removed {acl} from the board {board}" : "{user} 從面板 {board} 中移除了 {acl} ", + "You have renamed the board {before} to {board}" : "您將面板 {before} 重命名為 {board}", + "{user} has renamed the board {before} to {board}" : "{user} 將面板 {before} 重命名為 {board}", + "You have archived the board {board}" : "您已將面板 {board} 存檔", + "{user} has archived the board {before}" : "{user} 已將面板 {before} 存檔", + "You have unarchived the board {board}" : "您撤銷了 {board} 存檔", + "{user} has unarchived the board {before}" : "{user} 撤銷了面板 {before} 存檔", + "You have created a new list {stack} on board {board}" : "您在 {board} 上創建了一個新列表 {stack}面板", + "{user} has created a new list {stack} on board {board}" : "{user} 在 {board} 上創建了一個新列表 {stack}", + "You have renamed list {before} to {stack} on board {board}" : "您已將 {board} 上的 {before} 列表重命名為 {stack}", + "{user} has renamed list {before} to {stack} on board {board}" : "{user} 已將 {board} 上的 {before} 列表重命名為 {stack}", + "You have deleted list {stack} on board {board}" : "您已刪除了 {board} 上的 {stack} 列表", + "{user} has deleted list {stack} on board {board}" : "{user} 已刪除了 {board} 上的 {stack} 列表", + "You have created card {card} in list {stack} on board {board}" : "您在 {board} 上的 {stack} 列表中創建了一張新卡片 {card}", + "{user} has created card {card} in list {stack} on board {board}" : "{user} 在 {board} 上的 {stack} 列表中創建了一張新卡片 {card}", + "You have deleted card {card} in list {stack} on board {board}" : "您已刪除了 {board} 上 {stack} 列表中的卡片 {card}", + "{user} has deleted card {card} in list {stack} on board {board}" : "{user} 已刪除了 {board} 上 {stack} 列表中的卡片 {card}", + "You have renamed the card {before} to {card}" : "您將卡片 {before} 重命名為 {card}", + "{user} has renamed the card {before} to {card}" : "{user} 將卡片 {before} 重命名為 {card}", + "You have added a description to card {card} in list {stack} on board {board}" : "您已在 {board} 上列表 {stack} 中的卡片 {card} 中添加了描述", + "{user} has added a description to card {card} in list {stack} on board {board}" : "{user} 已在 {board} 上列表 {stack} 中的卡片 {card} 中添加了描述", + "You have updated the description of card {card} in list {stack} on board {board}" : "您已在 {board} 上列表 {stack} 中的卡片 {card} 中更新了描述", + "{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} 已在 {board} 上列表 {stack} 中的卡片 {card} 中更新了描述", + "You have archived card {card} in list {stack} on board {board}" : "您已將 {board} 上 {stack} 列表中的卡片 {card} 存檔", + "{user} has archived card {card} in list {stack} on board {board}" : "{user} 已將 {board} 上 {stack} 列表中的卡片 {card} 存檔", + "You have unarchived card {card} in list {stack} on board {board}" : "您已將 {board} 上 {stack} 列表中的卡片 {card} 解除存檔", + "{user} has unarchived card {card} in list {stack} on board {board}" : "{user} 已將 {board} 上 {stack} 列表中的卡片 {card} 解除存檔", + "You have removed the due date of card {card}" : "您移除了到期的卡片 {card}", + "{user} has removed the due date of card {card}" : "{user} 移除了到期的卡片 {card}", + "You have set the due date of card {card} to {after}" : "您已將卡片 {card} 的到期日設置為 {after}", + "{user} has set the due date of card {card} to {after}" : "{user} 已將卡片 {card} 的到期日設置為 {after}", + "You have updated the due date of card {card} to {after}" : "您已將卡片 {card} 的到期日更新為 {after}", + "{user} has updated the due date of card {card} to {after}" : "{user} 已將卡片 {card} 的到期日更新為 {after}", + "You have added the tag {label} to card {card} in list {stack} on board {board}" : "您已將標籤 {label} 添加到 {board} 上列表 {stack} 中的卡片 {card} 裡", + "{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} 已將標籤 {label} 添加到 {board} 上列表 {stack} 中的卡片 {card} 裡", + "You have removed the tag {label} from card {card} in list {stack} on board {board}" : "您已從 {board} 上列表 {stack} 中的卡片 {card} 裡刪除標籤 {label}", + "{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} 已從 {board} 上列表 {stack} 中的卡片 {card} 裡刪除標籤 {label}", + "You have assigned {assigneduser} to card {card} on board {board}" : "您將面板 {board} 上的卡片 {card} 指派給了 {assigneduser}", + "{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} 將面板 {board} 上的卡片 {card} 指派給了 {assigneduser}", + "You have unassigned {assigneduser} from card {card} on board {board}" : "您對 {assigneduser} 取消了面板 {board} 上的卡片 {card} 指派", + "{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} 對 {assigneduser} 取消了面板 {board} 上的卡片 {card} 指派", + "You have moved the card {card} from list {stackBefore} to {stack}" : "您已將卡片 {card} 從列表 {stackBefore} 移至 {stack}", + "{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} 已將卡片 {card} 從列表 {stackBefore} 移至 {stack}", + "You have added the attachment {attachment} to card {card}" : "您為卡片 {card} 添加了附件 {attachment}", + "{user} has added the attachment {attachment} to card {card}" : "{user} 為卡片 {card} 添加了附件 {attachment}", + "You have updated the attachment {attachment} on card {card}" : "您更新了卡片 {card} 中的附件 {attachment}", + "{user} has updated the attachment {attachment} on card {card}" : "{user} 更新了卡 {card} 上的附件 {attachment}", + "You have deleted the attachment {attachment} from card {card}" : "您刪除了卡片 {card} 中的附件 {attachment}", + "{user} has deleted the attachment {attachment} from card {card}" : "{user} 已從卡 {card} 中刪除附件 {attachment}", + "You have restored the attachment {attachment} to card {card}" : "您恢復了卡片 {card} 中的附件 {attachment}", + "{user} has restored the attachment {attachment} to card {card}" : "{user} 恢復了卡片 {card} 中的附件 {attachment}", + "You have commented on card {card}" : "您評論了卡片 {card}", + "{user} has commented on card {card}" : "{user} 評論了卡片 {card}", + "A card description inside the Deck app has been changed" : "看板應用中的 卡片描述 已改變", + "Deck" : "看板", + "Changes in the Deck app" : "看板應用中的改變", + "A comment was created on a card" : "卡片上創建了一個 評論", + "Upcoming cards" : "即將到來的卡片", + "Personal" : "個人", + "The card \"%s\" on \"%s\" has been assigned to you by %s." : "%s 已將 “%s” 中的卡片 “%s” 指派給您。", + "{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} 已將 “%s” 中的卡片 “%s” 指派給您。", + "The card \"%s\" on \"%s\" has reached its due date." : "\"%s\"中的卡片 \"%s\" 已到期。", + "%s has mentioned you in a comment on \"%s\"." : "%s 在 “%s” 的評論中提到了您。", + "{user} has mentioned you in a comment on \"%s\"." : "{user} 在 “%s” 的評論中提到了您。", + "The board \"%s\" has been shared with you by %s." : "面板 \"%s\" 已由 %s 分享給您。", + "{user} has shared the board %s with you." : "{user} 分享面板 %s 給您。", + "No data was provided to create an attachment." : "未能提供數據以創建附件", + "Finished" : "完成", + "To review" : "回顧", + "Action needed" : "需要操作", "Later" : "稍後", "copy" : "複製", + "To do" : "待辦", + "Doing" : "進行中", "Done" : "完成", - "Example Task 3" : "示例任務3", - "Example Task 2" : "示例任務2", - "Example Task 1" : "示例任務1", - "The file was uploaded" : "檔案已上傳", - "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "上傳的檔案大小超過 HTML 表單中 MAX_FILE_SIZE 的限制", - "The file was only partially uploaded" : "該文件僅部分上傳", - "No file was uploaded" : "沒有檔案被上傳", - "Missing a temporary folder" : "找不到暫存資料夾", - "Could not write file to disk" : "寫入硬碟失敗", - "A PHP extension stopped the file upload" : "一個 PHP 擴充功能終止檔案的上傳", - "No file uploaded or file size exceeds maximum of %s" : "沒有上傳文件或文件大小超過 %s 的最大值", - "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck是一種看板式組織工具,旨在針對與Nextcloud集成的團隊進行個人計劃和項目組織。\n\n\n- 📥 增加您的任務到card和把它們整理好\n- 📄 寫下額外的筆記在markdown\n- 🔖 分配標籤以更好地組織\n- 👥 與您的團隊,朋友或家人分享\n- 📎 附加檔案並將其嵌入到您的 markdown 描述\n- 💬 使用評論與您的團隊討論\n- ⚡ 跟踪變化在活動流程中\n- 🚀 取得您的專案組織", - "Add board" : "新增佈告欄", + "Example Task 3" : "示例任務 3", + "Example Task 2" : "示例任務 2", + "Example Task 1" : "示例任務 1", + "The file was uploaded" : "文件已上傳", + "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "上傳文件的大小已超過 php.ini 中 upload_max_filesize 設置的值", + "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "上傳的文件長度超出了 HTML 表單中 MAX_FILE_SIZE 的限制", + "The file was only partially uploaded" : "文件僅部分上傳", + "No file was uploaded" : "沒有文件被上傳", + "Missing a temporary folder" : "缺少臨時文件夾", + "Could not write file to disk" : "無法寫入文件到磁盤", + "A PHP extension stopped the file upload" : "PHP擴展停止了文件上傳。", + "No file uploaded or file size exceeds maximum of %s" : "沒有文件被上傳或文件大小超出最大值 %s", + "Card not found" : "未找到卡片", + "Path is already shared with this card" : "已和這張卡片分享了路徑", + "Invalid date, date format must be YYYY-MM-DD" : "無效日期,日期格式必須為 YYYY-MM-DD", + "Personal planning and team project organization" : "組織個人計劃和團隊項目", + "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck是一種看板式組織工具,旨在針對與Nextcloud集成的團隊進行個人計劃和項目組織。\n\n\n- 📥 增加您的任務到card和把它們整理好\n- 📄 寫下額外的筆記在markdown\n- 🔖 分配標籤以更好地組織您的工作\n- 👥 與您的團隊,朋友或家人分享\n- 📎 附加檔案並將其嵌入到您的 markdown 描述\n- 💬 使用評論與您的團隊討論\n- ⚡ 在活動流中跟踪更改\n- 🚀 讓您的項目井井有條", + "Card details" : "卡片詳情", + "Add board" : "添加面板", + "Select the board to link to a project" : "選擇要鏈接到一個項目的面板", + "Search by board title" : "通過標題搜索面板", + "Select board" : "選擇面板", + "Select a board" : "選擇一個面板", + "Select a card" : "選擇一張卡片", "Cancel" : "取消", - "File already exists" : "檔案已存在", - "Add list" : "新增清單", - "Next 24 hours" : "接下來的24小時", - "Next 7 days" : "接下來 7 天", - "Next 30 days" : "接下來 30 天", - "Details" : "詳細資料", - "Sharing" : "分享", + "Select the card to link to a project" : "選擇要鏈接到一個項目的卡片", + "Link to card" : "鏈接到卡片", + "File already exists" : "文件已存在", + "A file with the name {filename} already exists." : "使用文件名 {filename} 的文件已存在。", + "Do you want to overwrite it?" : "您確定要覆蓋嗎?", + "Overwrite file" : "覆蓋文件", + "Keep existing file" : "保持已存在的文件", + "This board is read only" : "此面板是只讀的", + "Drop your files to upload" : "拖放您的文件以上傳", + "Archived cards" : "已存檔卡片", + "Add list" : "添加列表", + "List name" : "列表名稱", + "Apply filter" : "應用過濾器", + "Filter by tag" : "標籤篩選", + "Filter by assigned user" : "根據指定用戶過濾", + "Unassigned" : "未分配", + "Filter by due date" : "根據到期日過濾", + "Overdue" : "逾期", + "Next 24 hours" : "未來24小時", + "Next 7 days" : "未來7曰", + "Next 30 days" : "未來30曰", + "No due date" : "無到期日", + "Clear filter" : "清空過濾器", + "Hide archived cards" : "隱藏已存檔的卡片", + "Show archived cards" : "顯示已存檔的卡片", + "Toggle compact mode" : "切換簡潔模式", + "Details" : "詳情", + "Loading board" : "正在加載面板", + "No lists available" : "無列表可用", + "Create a new list to add cards to this board" : "創建一個新列表來添加卡片到這個看板", + "Board not found" : "未找到面板", + "Sharing" : "正在分享", "Tags" : "標籤", - "Deleted items" : "刪除的項目", - "Timeline" : "時間軸", - "Undo" : "復原", - "(Group)" : "(群組)", + "Deleted items" : "已刪除項", + "Timeline" : "時間線", + "Deleted lists" : "已刪除的列表", + "Undo" : "撤消", + "Deleted cards" : "已刪除卡片", + "Share board with a user, group or circle …" : "與一個用戶,群組或圈子分享面板...", + "Searching for users, groups and circles …" : "正在搜索用戶、群組和圈子 ......", + "No participants found" : "未找到參與者", + "Board owner" : "面板擁有者", + "(Group)" : "(群組)", + "(Circle)" : "(圈子)", "Can edit" : "可以編輯", "Can share" : "可以分享", + "Can manage" : "可以管理", "Delete" : "刪除", - "Delete list" : "刪除清單", - "Add card" : "增加卡片", + "Failed to create share with {displayName}" : "用 {displayName} 創建分享失敗", + "Add a new list" : "添加一個新列表", + "Archive all cards" : "封存所有卡片", + "Delete list" : "刪除列表", + "Add card" : "添加卡片", + "Archive all cards in this list" : "存檔該列表的所有卡片", + "Add a new card" : "添加一張新卡片", + "Card name" : "卡片名", + "List deleted" : "列表被刪除", "Edit" : "編輯", - "Members" : "成員", + "Add a new tag" : "新增一個標籤", + "title and color value must be provided" : "必須提供標題和顏色值", + "Board name" : "看板名", + "Members" : "會員", "Upload new files" : "上傳新文件", - "Unshare file" : "取消文件分享", + "Share from Files" : "從文件進行分享", + "Add this attachment" : "添加此附件", + "Show in Files" : "顯示在文件中", + "Unshare file" : "取消分享文件", + "Delete Attachment" : "刪除附件", + "Restore Attachment" : "恢復附件", + "File to share" : "要分享的文件", + "Invalid path selected" : "選中了無效的路徑", + "Open in sidebar view" : "在側邊欄視圖中打開", + "Open in bigger view" : "在較大視圖中打開", "Attachments" : "附件", - "Comments" : "意見", + "Comments" : "評論", "Modified" : "已修改", - "Created" : "已新增", - "Assign to users" : "分派給使用者", - "Due date" : "截止日", + "Created" : "已創建", + "The title cannot be empty." : "標題不能為空", + "No comments yet. Begin the discussion!" : "還沒有評論。 開始討論吧!", + "Assign a tag to this card…" : "為該卡片分配標籤…", + "Assign to users" : "指派給用戶", + "Assign to users/groups/circles" : "分配給用戶/群組/圈子", + "Assign a user to this card…" : "為該卡片指派用戶…", + "Due date" : "截至日期", + "Set a due date" : "設置一個到期日", + "Remove due date" : "移除截至日期", "Select Date" : "選擇日期", - "Save" : "儲存", - "Reply" : "回覆", + "Save" : "保存", + "The comment cannot be empty." : "註釋不能為空。", + "The comment cannot be longer than 1000 characters." : "註釋不能超過 1000 個字符。", + "In reply to" : "回复", + "Reply" : "回复", "Update" : "更新", "Description" : "描述", - "(group)" : "(群組)", - "Assign to me" : "分派給我", + "(Unsaved)" : "(未保存的)", + "(Saving…)" : "(正在保存...)", + "Formatting help" : "格式化幫助", + "Edit description" : "編輯描述", + "View description" : "查看描述", + "Add Attachment" : "添加附件", + "Write a description …" : "寫一段描述", + "Choose attachment" : "選擇附件", + "(group)" : "(組)", + "(circle)" : "(圈子)", + "Assign to me" : "指派給我", + "Unassign myself" : "自己解除分配", "Move card" : "移動卡片", + "Unarchive card" : "恢復卡片存檔", "Archive card" : "封存卡片", - "Delete card" : "刪除作業", + "Delete card" : "刪除卡片", + "Move card to another board" : "將卡片移到其他面板", + "Select a list" : "選擇一個列表", + "Card deleted" : "卡片被刪除", "seconds ago" : "幾秒前", - "Shared with you" : "與您分享", - "Edit board" : "編輯專案", + "All boards" : "全部面板", + "Archived boards" : "已封存面板", + "Shared with you" : "收到的分享", + "Use bigger card view" : "使用較大的卡片視圖", + "Show boards in calendar/tasks" : "在日曆/任務中顯示面板", + "Limit deck usage of groups" : "限制群組使用看板", + "Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "非面板創建用戶組的用戶將不能使用受限看板。但用戶仍然能夠使用已分享給他們的面板工作。", + "Board details" : "面板詳情", + "Edit board" : "編輯面板", + "Clone board" : "複製面板", + "Unarchive board" : "取消對面板的封存", + "Archive board" : "封存面板", + "Turn on due date reminders" : "開啟到期日提醒", + "Turn off due date reminders" : "關閉到期日提醒", + "Due date reminders" : "到期日提醒", + "All cards" : "所有卡片", + "Assigned cards" : "分配的卡片", + "No notifications" : "無通知", + "Delete board" : "刪除面板", + "Board {0} deleted" : "面板 {0} 被刪除", + "Only assigned cards" : "僅分配的卡片", + "No reminder" : "無提醒", "An error occurred" : "發生錯誤", + "Are you sure you want to delete the board {title}? This will delete all the data of this board." : "你確定你要刪除 {title} 面板嗎?面板內所有數據都將因此被刪除。", + "Delete the board?" : "是否刪除面板?", + "Loading filtered view" : "正在加載已過濾視圖", "Today" : "今天", "Tomorrow" : "明天", - "This week" : "本週", - "Link to a board" : "連結到佈告欄", - "Maximum file size of {size} exceeded" : "達到最大的檔案大小 {size} ", + "This week" : "本星期", + "No due" : "沒有到期的", + "No upcoming cards" : "沒有即將到來的卡片", + "upcoming cards" : "即將到來的卡片", + "Link to a board" : "連結到一個面板", + "Link to a card" : "連結到一張卡片", + "Something went wrong" : "有地方出錯了", + "Failed to upload {name}" : "未能上傳 {name}", + "Maximum file size of {size} exceeded" : "文件大小 {size} 超出最大限制", + "Error creating the share" : "創建分享出錯", + "Share with a Deck card" : "用一張 Deck 卡片進行分享 ", + "Share {file} with a Deck card" : "用一張 Deck 卡片分享 {file}", "Share" : "分享" }, "nplurals=1; plural=0;"); diff --git a/l10n/zh_HK.json b/l10n/zh_HK.json index 761e910ef..8a67bad72 100644 --- a/l10n/zh_HK.json +++ b/l10n/zh_HK.json @@ -1,79 +1,267 @@ { "translations": { - "You have created a new board {board}" : "您已建立新的佈告欄 {board}", - "{user} has created a new board {board}" : "{user} 已建立新的佈告欄  {board}", - "You have deleted the board {board}" : "您已刪除佈告欄 {board}", - "{user} has deleted the board {board}" : "{user} 已刪除佈告欄{board}", - "You have restored the board {board}" : "您已還原佈告欄{board}", - "{user} has restored the board {board}" : "{user}已還原佈告欄{board}", - "You have shared the board {board} with {acl}" : "您已和{acl}分享佈告欄{board}", - "{user} has shared the board {board} with {acl}" : "{user} 已和{acl}分享佈告欄{board}", - "You have removed {acl} from the board {board}" : "您已從佈告欄 {board} 中刪除了 {acl}", - "{user} has removed {acl} from the board {board}" : "{user} 已從佈告欄 {board} 中刪除了 {acl}", - "Personal" : "私人的", - "Finished" : "已完成", + "You have created a new board {board}" : "您創建了一個新面板 {board}", + "{user} has created a new board {board}" : "{user} 創建了一個新面板 {board}", + "You have deleted the board {board}" : "您刪除了面板 {board}", + "{user} has deleted the board {board}" : "{user} 刪除了面板 {board}", + "You have restored the board {board}" : "您恢復了面板 {board}", + "{user} has restored the board {board}" : "{user} 恢復了 {board}", + "You have shared the board {board} with {acl}" : "您已分享 {board} 給 {acl}", + "{user} has shared the board {board} with {acl}" : "{user} 已使用 {acl} 分享面板 {board}", + "You have removed {acl} from the board {board}" : "您從面板 {board} 中移除了 {acl}", + "{user} has removed {acl} from the board {board}" : "{user} 從面板 {board} 中移除了 {acl} ", + "You have renamed the board {before} to {board}" : "您將面板 {before} 重命名為 {board}", + "{user} has renamed the board {before} to {board}" : "{user} 將面板 {before} 重命名為 {board}", + "You have archived the board {board}" : "您已將面板 {board} 存檔", + "{user} has archived the board {before}" : "{user} 已將面板 {before} 存檔", + "You have unarchived the board {board}" : "您撤銷了 {board} 存檔", + "{user} has unarchived the board {before}" : "{user} 撤銷了面板 {before} 存檔", + "You have created a new list {stack} on board {board}" : "您在 {board} 上創建了一個新列表 {stack}面板", + "{user} has created a new list {stack} on board {board}" : "{user} 在 {board} 上創建了一個新列表 {stack}", + "You have renamed list {before} to {stack} on board {board}" : "您已將 {board} 上的 {before} 列表重命名為 {stack}", + "{user} has renamed list {before} to {stack} on board {board}" : "{user} 已將 {board} 上的 {before} 列表重命名為 {stack}", + "You have deleted list {stack} on board {board}" : "您已刪除了 {board} 上的 {stack} 列表", + "{user} has deleted list {stack} on board {board}" : "{user} 已刪除了 {board} 上的 {stack} 列表", + "You have created card {card} in list {stack} on board {board}" : "您在 {board} 上的 {stack} 列表中創建了一張新卡片 {card}", + "{user} has created card {card} in list {stack} on board {board}" : "{user} 在 {board} 上的 {stack} 列表中創建了一張新卡片 {card}", + "You have deleted card {card} in list {stack} on board {board}" : "您已刪除了 {board} 上 {stack} 列表中的卡片 {card}", + "{user} has deleted card {card} in list {stack} on board {board}" : "{user} 已刪除了 {board} 上 {stack} 列表中的卡片 {card}", + "You have renamed the card {before} to {card}" : "您將卡片 {before} 重命名為 {card}", + "{user} has renamed the card {before} to {card}" : "{user} 將卡片 {before} 重命名為 {card}", + "You have added a description to card {card} in list {stack} on board {board}" : "您已在 {board} 上列表 {stack} 中的卡片 {card} 中添加了描述", + "{user} has added a description to card {card} in list {stack} on board {board}" : "{user} 已在 {board} 上列表 {stack} 中的卡片 {card} 中添加了描述", + "You have updated the description of card {card} in list {stack} on board {board}" : "您已在 {board} 上列表 {stack} 中的卡片 {card} 中更新了描述", + "{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} 已在 {board} 上列表 {stack} 中的卡片 {card} 中更新了描述", + "You have archived card {card} in list {stack} on board {board}" : "您已將 {board} 上 {stack} 列表中的卡片 {card} 存檔", + "{user} has archived card {card} in list {stack} on board {board}" : "{user} 已將 {board} 上 {stack} 列表中的卡片 {card} 存檔", + "You have unarchived card {card} in list {stack} on board {board}" : "您已將 {board} 上 {stack} 列表中的卡片 {card} 解除存檔", + "{user} has unarchived card {card} in list {stack} on board {board}" : "{user} 已將 {board} 上 {stack} 列表中的卡片 {card} 解除存檔", + "You have removed the due date of card {card}" : "您移除了到期的卡片 {card}", + "{user} has removed the due date of card {card}" : "{user} 移除了到期的卡片 {card}", + "You have set the due date of card {card} to {after}" : "您已將卡片 {card} 的到期日設置為 {after}", + "{user} has set the due date of card {card} to {after}" : "{user} 已將卡片 {card} 的到期日設置為 {after}", + "You have updated the due date of card {card} to {after}" : "您已將卡片 {card} 的到期日更新為 {after}", + "{user} has updated the due date of card {card} to {after}" : "{user} 已將卡片 {card} 的到期日更新為 {after}", + "You have added the tag {label} to card {card} in list {stack} on board {board}" : "您已將標籤 {label} 添加到 {board} 上列表 {stack} 中的卡片 {card} 裡", + "{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} 已將標籤 {label} 添加到 {board} 上列表 {stack} 中的卡片 {card} 裡", + "You have removed the tag {label} from card {card} in list {stack} on board {board}" : "您已從 {board} 上列表 {stack} 中的卡片 {card} 裡刪除標籤 {label}", + "{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} 已從 {board} 上列表 {stack} 中的卡片 {card} 裡刪除標籤 {label}", + "You have assigned {assigneduser} to card {card} on board {board}" : "您將面板 {board} 上的卡片 {card} 指派給了 {assigneduser}", + "{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} 將面板 {board} 上的卡片 {card} 指派給了 {assigneduser}", + "You have unassigned {assigneduser} from card {card} on board {board}" : "您對 {assigneduser} 取消了面板 {board} 上的卡片 {card} 指派", + "{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} 對 {assigneduser} 取消了面板 {board} 上的卡片 {card} 指派", + "You have moved the card {card} from list {stackBefore} to {stack}" : "您已將卡片 {card} 從列表 {stackBefore} 移至 {stack}", + "{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} 已將卡片 {card} 從列表 {stackBefore} 移至 {stack}", + "You have added the attachment {attachment} to card {card}" : "您為卡片 {card} 添加了附件 {attachment}", + "{user} has added the attachment {attachment} to card {card}" : "{user} 為卡片 {card} 添加了附件 {attachment}", + "You have updated the attachment {attachment} on card {card}" : "您更新了卡片 {card} 中的附件 {attachment}", + "{user} has updated the attachment {attachment} on card {card}" : "{user} 更新了卡 {card} 上的附件 {attachment}", + "You have deleted the attachment {attachment} from card {card}" : "您刪除了卡片 {card} 中的附件 {attachment}", + "{user} has deleted the attachment {attachment} from card {card}" : "{user} 已從卡 {card} 中刪除附件 {attachment}", + "You have restored the attachment {attachment} to card {card}" : "您恢復了卡片 {card} 中的附件 {attachment}", + "{user} has restored the attachment {attachment} to card {card}" : "{user} 恢復了卡片 {card} 中的附件 {attachment}", + "You have commented on card {card}" : "您評論了卡片 {card}", + "{user} has commented on card {card}" : "{user} 評論了卡片 {card}", + "A card description inside the Deck app has been changed" : "看板應用中的 卡片描述 已改變", + "Deck" : "看板", + "Changes in the Deck app" : "看板應用中的改變", + "A comment was created on a card" : "卡片上創建了一個 評論", + "Upcoming cards" : "即將到來的卡片", + "Personal" : "個人", + "The card \"%s\" on \"%s\" has been assigned to you by %s." : "%s 已將 “%s” 中的卡片 “%s” 指派給您。", + "{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} 已將 “%s” 中的卡片 “%s” 指派給您。", + "The card \"%s\" on \"%s\" has reached its due date." : "\"%s\"中的卡片 \"%s\" 已到期。", + "%s has mentioned you in a comment on \"%s\"." : "%s 在 “%s” 的評論中提到了您。", + "{user} has mentioned you in a comment on \"%s\"." : "{user} 在 “%s” 的評論中提到了您。", + "The board \"%s\" has been shared with you by %s." : "面板 \"%s\" 已由 %s 分享給您。", + "{user} has shared the board %s with you." : "{user} 分享面板 %s 給您。", + "No data was provided to create an attachment." : "未能提供數據以創建附件", + "Finished" : "完成", + "To review" : "回顧", + "Action needed" : "需要操作", "Later" : "稍後", "copy" : "複製", + "To do" : "待辦", + "Doing" : "進行中", "Done" : "完成", - "Example Task 3" : "示例任務3", - "Example Task 2" : "示例任務2", - "Example Task 1" : "示例任務1", - "The file was uploaded" : "檔案已上傳", - "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "上傳的檔案大小超過 HTML 表單中 MAX_FILE_SIZE 的限制", - "The file was only partially uploaded" : "該文件僅部分上傳", - "No file was uploaded" : "沒有檔案被上傳", - "Missing a temporary folder" : "找不到暫存資料夾", - "Could not write file to disk" : "寫入硬碟失敗", - "A PHP extension stopped the file upload" : "一個 PHP 擴充功能終止檔案的上傳", - "No file uploaded or file size exceeds maximum of %s" : "沒有上傳文件或文件大小超過 %s 的最大值", - "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck是一種看板式組織工具,旨在針對與Nextcloud集成的團隊進行個人計劃和項目組織。\n\n\n- 📥 增加您的任務到card和把它們整理好\n- 📄 寫下額外的筆記在markdown\n- 🔖 分配標籤以更好地組織\n- 👥 與您的團隊,朋友或家人分享\n- 📎 附加檔案並將其嵌入到您的 markdown 描述\n- 💬 使用評論與您的團隊討論\n- ⚡ 跟踪變化在活動流程中\n- 🚀 取得您的專案組織", - "Add board" : "新增佈告欄", + "Example Task 3" : "示例任務 3", + "Example Task 2" : "示例任務 2", + "Example Task 1" : "示例任務 1", + "The file was uploaded" : "文件已上傳", + "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "上傳文件的大小已超過 php.ini 中 upload_max_filesize 設置的值", + "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "上傳的文件長度超出了 HTML 表單中 MAX_FILE_SIZE 的限制", + "The file was only partially uploaded" : "文件僅部分上傳", + "No file was uploaded" : "沒有文件被上傳", + "Missing a temporary folder" : "缺少臨時文件夾", + "Could not write file to disk" : "無法寫入文件到磁盤", + "A PHP extension stopped the file upload" : "PHP擴展停止了文件上傳。", + "No file uploaded or file size exceeds maximum of %s" : "沒有文件被上傳或文件大小超出最大值 %s", + "Card not found" : "未找到卡片", + "Path is already shared with this card" : "已和這張卡片分享了路徑", + "Invalid date, date format must be YYYY-MM-DD" : "無效日期,日期格式必須為 YYYY-MM-DD", + "Personal planning and team project organization" : "組織個人計劃和團隊項目", + "Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Deck是一種看板式組織工具,旨在針對與Nextcloud集成的團隊進行個人計劃和項目組織。\n\n\n- 📥 增加您的任務到card和把它們整理好\n- 📄 寫下額外的筆記在markdown\n- 🔖 分配標籤以更好地組織您的工作\n- 👥 與您的團隊,朋友或家人分享\n- 📎 附加檔案並將其嵌入到您的 markdown 描述\n- 💬 使用評論與您的團隊討論\n- ⚡ 在活動流中跟踪更改\n- 🚀 讓您的項目井井有條", + "Card details" : "卡片詳情", + "Add board" : "添加面板", + "Select the board to link to a project" : "選擇要鏈接到一個項目的面板", + "Search by board title" : "通過標題搜索面板", + "Select board" : "選擇面板", + "Select a board" : "選擇一個面板", + "Select a card" : "選擇一張卡片", "Cancel" : "取消", - "File already exists" : "檔案已存在", - "Add list" : "新增清單", - "Next 24 hours" : "接下來的24小時", - "Next 7 days" : "接下來 7 天", - "Next 30 days" : "接下來 30 天", - "Details" : "詳細資料", - "Sharing" : "分享", + "Select the card to link to a project" : "選擇要鏈接到一個項目的卡片", + "Link to card" : "鏈接到卡片", + "File already exists" : "文件已存在", + "A file with the name {filename} already exists." : "使用文件名 {filename} 的文件已存在。", + "Do you want to overwrite it?" : "您確定要覆蓋嗎?", + "Overwrite file" : "覆蓋文件", + "Keep existing file" : "保持已存在的文件", + "This board is read only" : "此面板是只讀的", + "Drop your files to upload" : "拖放您的文件以上傳", + "Archived cards" : "已存檔卡片", + "Add list" : "添加列表", + "List name" : "列表名稱", + "Apply filter" : "應用過濾器", + "Filter by tag" : "標籤篩選", + "Filter by assigned user" : "根據指定用戶過濾", + "Unassigned" : "未分配", + "Filter by due date" : "根據到期日過濾", + "Overdue" : "逾期", + "Next 24 hours" : "未來24小時", + "Next 7 days" : "未來7曰", + "Next 30 days" : "未來30曰", + "No due date" : "無到期日", + "Clear filter" : "清空過濾器", + "Hide archived cards" : "隱藏已存檔的卡片", + "Show archived cards" : "顯示已存檔的卡片", + "Toggle compact mode" : "切換簡潔模式", + "Details" : "詳情", + "Loading board" : "正在加載面板", + "No lists available" : "無列表可用", + "Create a new list to add cards to this board" : "創建一個新列表來添加卡片到這個看板", + "Board not found" : "未找到面板", + "Sharing" : "正在分享", "Tags" : "標籤", - "Deleted items" : "刪除的項目", - "Timeline" : "時間軸", - "Undo" : "復原", - "(Group)" : "(群組)", + "Deleted items" : "已刪除項", + "Timeline" : "時間線", + "Deleted lists" : "已刪除的列表", + "Undo" : "撤消", + "Deleted cards" : "已刪除卡片", + "Share board with a user, group or circle …" : "與一個用戶,群組或圈子分享面板...", + "Searching for users, groups and circles …" : "正在搜索用戶、群組和圈子 ......", + "No participants found" : "未找到參與者", + "Board owner" : "面板擁有者", + "(Group)" : "(群組)", + "(Circle)" : "(圈子)", "Can edit" : "可以編輯", "Can share" : "可以分享", + "Can manage" : "可以管理", "Delete" : "刪除", - "Delete list" : "刪除清單", - "Add card" : "增加卡片", + "Failed to create share with {displayName}" : "用 {displayName} 創建分享失敗", + "Add a new list" : "添加一個新列表", + "Archive all cards" : "封存所有卡片", + "Delete list" : "刪除列表", + "Add card" : "添加卡片", + "Archive all cards in this list" : "存檔該列表的所有卡片", + "Add a new card" : "添加一張新卡片", + "Card name" : "卡片名", + "List deleted" : "列表被刪除", "Edit" : "編輯", - "Members" : "成員", + "Add a new tag" : "新增一個標籤", + "title and color value must be provided" : "必須提供標題和顏色值", + "Board name" : "看板名", + "Members" : "會員", "Upload new files" : "上傳新文件", - "Unshare file" : "取消文件分享", + "Share from Files" : "從文件進行分享", + "Add this attachment" : "添加此附件", + "Show in Files" : "顯示在文件中", + "Unshare file" : "取消分享文件", + "Delete Attachment" : "刪除附件", + "Restore Attachment" : "恢復附件", + "File to share" : "要分享的文件", + "Invalid path selected" : "選中了無效的路徑", + "Open in sidebar view" : "在側邊欄視圖中打開", + "Open in bigger view" : "在較大視圖中打開", "Attachments" : "附件", - "Comments" : "意見", + "Comments" : "評論", "Modified" : "已修改", - "Created" : "已新增", - "Assign to users" : "分派給使用者", - "Due date" : "截止日", + "Created" : "已創建", + "The title cannot be empty." : "標題不能為空", + "No comments yet. Begin the discussion!" : "還沒有評論。 開始討論吧!", + "Assign a tag to this card…" : "為該卡片分配標籤…", + "Assign to users" : "指派給用戶", + "Assign to users/groups/circles" : "分配給用戶/群組/圈子", + "Assign a user to this card…" : "為該卡片指派用戶…", + "Due date" : "截至日期", + "Set a due date" : "設置一個到期日", + "Remove due date" : "移除截至日期", "Select Date" : "選擇日期", - "Save" : "儲存", - "Reply" : "回覆", + "Save" : "保存", + "The comment cannot be empty." : "註釋不能為空。", + "The comment cannot be longer than 1000 characters." : "註釋不能超過 1000 個字符。", + "In reply to" : "回复", + "Reply" : "回复", "Update" : "更新", "Description" : "描述", - "(group)" : "(群組)", - "Assign to me" : "分派給我", + "(Unsaved)" : "(未保存的)", + "(Saving…)" : "(正在保存...)", + "Formatting help" : "格式化幫助", + "Edit description" : "編輯描述", + "View description" : "查看描述", + "Add Attachment" : "添加附件", + "Write a description …" : "寫一段描述", + "Choose attachment" : "選擇附件", + "(group)" : "(組)", + "(circle)" : "(圈子)", + "Assign to me" : "指派給我", + "Unassign myself" : "自己解除分配", "Move card" : "移動卡片", + "Unarchive card" : "恢復卡片存檔", "Archive card" : "封存卡片", - "Delete card" : "刪除作業", + "Delete card" : "刪除卡片", + "Move card to another board" : "將卡片移到其他面板", + "Select a list" : "選擇一個列表", + "Card deleted" : "卡片被刪除", "seconds ago" : "幾秒前", - "Shared with you" : "與您分享", - "Edit board" : "編輯專案", + "All boards" : "全部面板", + "Archived boards" : "已封存面板", + "Shared with you" : "收到的分享", + "Use bigger card view" : "使用較大的卡片視圖", + "Show boards in calendar/tasks" : "在日曆/任務中顯示面板", + "Limit deck usage of groups" : "限制群組使用看板", + "Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "非面板創建用戶組的用戶將不能使用受限看板。但用戶仍然能夠使用已分享給他們的面板工作。", + "Board details" : "面板詳情", + "Edit board" : "編輯面板", + "Clone board" : "複製面板", + "Unarchive board" : "取消對面板的封存", + "Archive board" : "封存面板", + "Turn on due date reminders" : "開啟到期日提醒", + "Turn off due date reminders" : "關閉到期日提醒", + "Due date reminders" : "到期日提醒", + "All cards" : "所有卡片", + "Assigned cards" : "分配的卡片", + "No notifications" : "無通知", + "Delete board" : "刪除面板", + "Board {0} deleted" : "面板 {0} 被刪除", + "Only assigned cards" : "僅分配的卡片", + "No reminder" : "無提醒", "An error occurred" : "發生錯誤", + "Are you sure you want to delete the board {title}? This will delete all the data of this board." : "你確定你要刪除 {title} 面板嗎?面板內所有數據都將因此被刪除。", + "Delete the board?" : "是否刪除面板?", + "Loading filtered view" : "正在加載已過濾視圖", "Today" : "今天", "Tomorrow" : "明天", - "This week" : "本週", - "Link to a board" : "連結到佈告欄", - "Maximum file size of {size} exceeded" : "達到最大的檔案大小 {size} ", + "This week" : "本星期", + "No due" : "沒有到期的", + "No upcoming cards" : "沒有即將到來的卡片", + "upcoming cards" : "即將到來的卡片", + "Link to a board" : "連結到一個面板", + "Link to a card" : "連結到一張卡片", + "Something went wrong" : "有地方出錯了", + "Failed to upload {name}" : "未能上傳 {name}", + "Maximum file size of {size} exceeded" : "文件大小 {size} 超出最大限制", + "Error creating the share" : "創建分享出錯", + "Share with a Deck card" : "用一張 Deck 卡片進行分享 ", + "Share {file} with a Deck card" : "用一張 Deck 卡片分享 {file}", "Share" : "分享" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/src/components/card/CardSidebar.vue b/src/components/card/CardSidebar.vue index b1c285651..2060c0c0a 100644 --- a/src/components/card/CardSidebar.vue +++ b/src/components/card/CardSidebar.vue @@ -33,10 +33,17 @@ {{ t('deck', 'Open in sidebar view') }} - {{ t('deck', 'Open in bigger view') }} + + + {{ action.label }} + import { ActionButton, AppSidebar, AppSidebarTab } from '@nextcloud/vue' +import { generateUrl } from '@nextcloud/router' import { mapState, mapGetters } from 'vuex' import CardSidebarTabDetails from './CardSidebarTabDetails' import CardSidebarTabAttachments from './CardSidebarTabAttachments' @@ -114,7 +122,7 @@ export default { currentBoard: state => state.currentBoard, cardDetailsInModal: state => state.cardDetailsInModal, }), - ...mapGetters(['canEdit', 'assignables']), + ...mapGetters(['canEdit', 'assignables', 'cardActions', 'stackById']), title() { return this.titleEditable ? this.titleEditing : this.currentCard.title }, @@ -124,6 +132,15 @@ export default { subtitle() { return t('deck', 'Modified') + ': ' + this.relativeDate(this.currentCard.lastModified * 1000) + ' ' + t('deck', 'Created') + ': ' + this.relativeDate(this.currentCard.createdAt * 1000) }, + cardRichObject() { + return { + id: '' + this.currentCard.id, + name: this.currentCard.title, + boardname: this.currentBoard.title, + stackname: this.stackById(this.currentCard.stackId)?.title, + link: window.location.protocol + '//' + window.location.host + generateUrl('/apps/deck/') + `#/board/${this.currentBoard.id}/card/${this.currentCard.id}`, + } + }, }, methods: { handleUpdateTitleEditable(value) { diff --git a/src/main.js b/src/main.js index 710e31c59..3ac1249dd 100644 --- a/src/main.js +++ b/src/main.js @@ -103,3 +103,40 @@ new Vue({ }, render: h => h(App), }) + +if (!window.OCA.Deck) { + window.OCA.Deck = {} +} + +/** + * @typedef {Object} CardRichObject + * @property {string} id + * @property {string} name + * @property {string} boardname + * @property {string} stackname + * @property {string} link + */ + +/** + * @callback registerActionCallback + * @param {CardRichObject} card + */ + +/** + * Frontend message API for adding actions to talk messages. + * @param {*} Object the wrapping object. + * @param {String} label the action label. + * @param {registerActionCallback} callback the callback function. This function will receive + * the card as a parameter and be triggered by a click on the + * action. The card parameter will be of the format of a rich object string + * type "deck-card" + * @param {String} icon the action label. E.g. "icon-reply" + */ +window.OCA.Deck.registerCardAction = ({ label, callback, icon }) => { + const cardAction = { + label, + callback, + icon, + } + store.dispatch('addCardAction', cardAction) +} diff --git a/src/store/actions.js b/src/store/actions.js new file mode 100644 index 000000000..722d778ca --- /dev/null +++ b/src/store/actions.js @@ -0,0 +1,42 @@ +/* + * @copyright Copyright (c) 2021 Julius Härtl + * + * @author Julius Härtl + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + */ + +export default { + state: { + actions: { + card: [], + }, + }, + getters: { + cardActions: (state) => state.actions.card, + }, + mutations: { + ADD_CARD_ACTION(state, action) { + state.actions.card.push(action) + }, + }, + actions: { + async addCardAction({ commit }, action) { + commit('ADD_CARD_ACTION', action) + }, + }, +} diff --git a/src/store/main.js b/src/store/main.js index 4987421b2..b36dc942c 100644 --- a/src/store/main.js +++ b/src/store/main.js @@ -28,6 +28,7 @@ import Vuex from 'vuex' import axios from '@nextcloud/axios' import { generateOcsUrl } from '@nextcloud/router' import { BoardApi } from '../services/BoardApi' +import actions from './actions' import stack from './stack' import card from './card' import comment from './comment' @@ -47,6 +48,7 @@ export const BOARD_FILTERS = { export default new Vuex.Store({ modules: { + actions, stack, card, comment, diff --git a/src/store/stack.js b/src/store/stack.js index 3f428e71f..bbb0486be 100644 --- a/src/store/stack.js +++ b/src/store/stack.js @@ -34,6 +34,9 @@ export default { stacksByBoard: state => (id) => { return state.stacks.filter((stack) => stack.boardId === id).sort((a, b) => a.order - b.order) }, + stackById: state => (id) => { + return state.stacks.find((stack) => stack.id === id) + }, }, mutations: { addStack(state, stack) {