Compare commits

...
505 Commits
Author SHA1 Message Date
github-actions[bot] 1657a96943 Bump versions for v11.85 2026-09-17 15:17:56 +00:00
Lauri Ojansivu ee4eeedaa2 Prepare v11.85 release 2026-09-17 18:16:04 +03:00
Lauri Ojansivu 20b7dd33fa Merge remote-tracking branch 'origin/main' 2026-09-17 18:15:42 +03:00
Lauri Ojansivu 53a23258cf Document the global date format setting and verification 2026-09-17 18:14:28 +03:00
Lauri Ojansivu 46607d4299 Add an admin date format override for everyone
Place the global date format checkbox and selector between Board member
list and Wait Spinner in Visibility settings. While enabled, use the
selected format for members and guests, call the card section Date and
hide its personal format selector. Preserve personal preferences so they
return when the override is disabled.

Apply the same policy to date displays, filter parsing and browser export
requests. Validate supported formats and retain admin-only settings writes.
Add positive, negative and browser regression coverage and document the
setting. Translate the new label without changing existing translations.

Lower-confidence new translations include Acehnese, Aymara, Cherokee,
Inuktitut, Kashmiri, Nahuatl, Veps, Volapuk and Wolaytta; native-speaker
review would improve these labels.

Thanks to Mathia2 and xet7 !

Fixes #6703,
2026-09-17 18:13:20 +03:00
github-actions[bot] 4f5013ec48 Bump versions for v11.84 2026-09-17 14:04:58 +00:00
Lauri Ojansivu e2993617bc Prepare v11.84 release 2026-09-17 17:02:52 +03:00
Lauri Ojansivu f297cd989b Document the My Cards and My Attachments popup fix
Thanks to Mathia2 and xet7 !
2026-09-17 16:33:31 +03:00
Lauri Ojansivu d01b3a3d92 Open the selected card from My Cards and My Attachments
Bind card and board identifiers explicitly on links rendered under lexical each loops. Open the subscribed card popup from the link rather than the unrelated outer Blaze data context, while preserving modified-click navigation.

Regression tests cover outer-context mismatch, nested click targets, missing identifiers, modified clicks, and sequential card popup selection on both pages. The fresh bundle passes both page regressions in Chromium, Firefox and WebKit using polling reactivity.

Thanks to Mathia2 and xet7 !

Fixes #6702,
2026-09-17 16:32:53 +03:00
Lauri Ojansivu 4c1bcca5f7 Document verified translation repair and card visibility guard fixes
Thanks to xet7 !
2026-09-17 14:21:01 +03:00
Lauri Ojansivu 5dd0b11f7c Keep translation repairs and card visibility guards aligned with reviewed changes
Preserve the newer Traditional Chinese wording in historical repair records. Locate the card read-only branch by its matching conditional rather than fixed indentation after optional field grouping.

Verified all 1169 Node suites pass, translation pull/fill protection passes, and missing requester or assigner avatars still fail the repaired guard.

Thanks to xet7 !
2026-09-17 14:20:35 +03:00
Lauri Ojansivu d23e666aec Document verified issue fixes and the remaining login investigation.
Record notification, empty-card-section, WIP-group and duplicate-checklist fixes with their regression coverage. Link the tested FerretDB oplog changes and retain #6701 in TODO Later until the affected snap's database is confirmed. Verify the exact resumed user in the session regression.

Thanks to Nissulya, fabiosalles, Mahgozar, rmb82 and xet7 !
2026-09-17 13:47:31 +03:00
Lauri Ojansivu fd41207c54 Cover LDAP session restoration around large directory changes.
Resume an LDAP account with 1600 directory users, verify reloads before and after a bulk deletion, keep the directory out of client publications, and reject invalid cookies. The test passes against MongoDB and patched FerretDB; retain #6701 pending confirmation of the reported deployment's backend.

Thanks to Nissulya and xet7 !

Refs #6701,
2026-09-17 13:44:10 +03:00
Lauri Ojansivu 783733623e Authorize and persist edits to saved WIP limit groups.
Route group edits through a validated server method with board/site-admin authorization. Compare the saved group array before updating so concurrent edits are not overwritten and database backends need no positional array update. Unit and Chromium tests cover editing, invalid lists and limits, and unauthorized users.

Thanks to Mahgozar and xet7 !

Fixes #6699,
2026-09-17 13:43:01 +03:00
Lauri Ojansivu 762e742b24 Verify muted-board and explicit-list notification delivery.
Check the persisted profile notification array and exercise comments delivered to explicit list subscribers on otherwise muted boards.

Thanks to Nissulya and xet7 !

Fixes #6658,
2026-09-17 13:34:50 +03:00
Lauri Ojansivu 5c9e5045f8 Preserve checklist insert validation while awaiting submission.
Keep the existing client insert path, wait for its server callback, and retain the editor on failure. Verified click, Enter and Ctrl+Enter creation and persistence in Chromium, plus duplicate-submit and retry unit tests.

Thanks to rmb82 and xet7 !

Fixes #6700,
2026-09-17 13:34:50 +03:00
Lauri Ojansivu 0a8ee08d56 Submit checklist creation once per user action.
Stop handled Enter events before the enclosing checklist submits them again. Await the insert, scope the textarea to its form, and reject duplicate submits while the write is pending. Keep failed edits available for retry.

Thanks to rmb82 and xet7 !

Fixes #6700,
2026-09-17 13:12:32 +03:00
Lauri Ojansivu 87d69358dc Make WIP group list checkboxes visible and editable.
Restore native checkbox visibility and keyboard interaction inside the WIP group editor, and resolve list rows through the template helper when editing saved groups.

Thanks to Mahgozar and xet7 !

Fixes #6699,
2026-09-17 13:08:06 +03:00
Lauri Ojansivu 5c7f455285 Hide empty card field groups and their separators.
Render Dates, Members and Sort groups only when their fields can display content. Keep a group when any independently enabled field remains visible.

Thanks to fabiosalles and xet7 !

Fixes #6696,
2026-09-17 13:07:01 +03:00
Lauri Ojansivu 03e8a6bf66 Honor scoped notification subscriptions and settings.
Keep muted board assignments silent while honoring explicit list and card subscriptions. Resolve notification controls against their owning settings scope and show the selected option.

Thanks to Nissulya and xet7 !

Fixes #6658,
2026-09-17 13:05:45 +03:00
Lauri Ojansivu 959f15cbe0 Merge pull request #6697 from AmigaAbattoir/patch-1
fix(docs): images missing in multiple lines to checklist page
2026-09-16 21:52:36 +03:00
Christopher Pollati d87ec3954b fix(docs): images missing in multiple lines to checklist page 2026-09-16 10:26:41 -04:00
github-actions[bot] 97f74ea3b5 Bump versions for v11.83 2026-09-15 23:48:36 +00:00
Lauri Ojansivu 278f7b869a Prepare v11.83 release 2026-09-16 02:47:17 +03:00
Lauri Ojansivu e71e20036c Merge remote-tracking branch 'origin/main' 2026-09-16 02:47:00 +03:00
Lauri Ojansivu 9aeeac51a8 Bring upcoming changelog into release format 2026-09-16 02:38:41 +03:00
Lauri Ojansivu 522a7e88e8 Document custom logo loading and uploads in upcoming changelog 2026-09-16 02:26:43 +03:00
Lauri Ojansivu 593cab5911 Load configured logos without stock logo flash and allow uploads 2026-09-16 02:26:25 +03:00
Lauri Ojansivu a4eda40c89 Document live-only mirror links in upcoming changelog 2026-09-16 02:07:37 +03:00
Lauri Ojansivu f7da598ad2 Stop using archive.org for mirror linked files 2026-09-16 02:07:22 +03:00
github-actions[bot] f32a0f7e10 Bump versions for v11.82 2026-09-15 22:40:21 +00:00
Lauri Ojansivu e478ce7309 Prepare v11.82 release 2026-09-16 01:38:35 +03:00
Lauri Ojansivu f60df9b0be Merge remote-tracking branch 'origin/main' 2026-09-16 01:38:07 +03:00
Lauri Ojansivu b68dd01893 Document release preflight and keep changelog checks current 2026-09-16 01:37:35 +03:00
Lauri Ojansivu 7489120eb9 Validate translation languages before release tagging 2026-09-16 01:35:55 +03:00
github-actions[bot] f238c02af7 Bump versions for v11.81 2026-09-15 22:23:51 +00:00
Lauri Ojansivu 3ecc62c960 Prepare v11.81 release 2026-09-16 01:22:26 +03:00
Lauri Ojansivu 5e951845eb Update Upcoming WeKan changelog for recent fixes 2026-09-16 01:17:08 +03:00
Lauri Ojansivu 3865c3fdea Avoid incomplete escaping in Veps sync test 2026-09-16 01:10:05 +03:00
Lauri Ojansivu 8acf5d947d Preserve PR 6695 human translations across pull and push 2026-09-16 01:07:00 +03:00
Lauri Ojansivu c399aeeee6 Protect PR 6695 human translations from machine fills 2026-09-16 01:04:06 +03:00
Lauri Ojansivu 2078c21819 Merge pull request #6695 from l10n-tw/main
Replace zh-Hant and zh-TW translations with Transifex ones
2026-09-16 01:01:44 +03:00
Lauri Ojansivu 25ed0c3067 Keep local Docker build available during Quay outages 2026-09-16 00:58:35 +03:00
Lauri Ojansivu 0e962bba3f Record interrupted translation audit status 2026-09-16 00:54:14 +03:00
Lauri Ojansivu 99570e213f Serve Admin Panel assetlinks at well-known URL 2026-09-16 00:51:35 +03:00
Lauri Ojansivu 1cf93f7e52 Distinguish native Tamazight card and list URL labels 2026-09-15 15:54:57 +03:00
Lauri Ojansivu bfac55c30c Record dated board and card translation audit progress 2026-09-15 15:52:25 +03:00
Lauri Ojansivu 18a11d1210 Replace Arabic and French Tamazight board and card labels 2026-09-15 15:51:48 +03:00
Lauri Ojansivu 77d574a627 Record dated Tamazight version-check audit progress 2026-09-15 15:49:32 +03:00
Lauri Ojansivu ff5a286b53 Replace mixed Tamazight version-check messages 2026-09-15 15:48:22 +03:00
Lauri Ojansivu cf14bd7db9 Record dated Tamazight version terminology progress 2026-09-15 15:46:44 +03:00
Lauri Ojansivu 413b4ef405 Use native Tamazight version noun in Admin Panel 2026-09-15 15:46:05 +03:00
Lauri Ojansivu 7da3334c47 Record dated Tamazight shared-label repair progress 2026-09-15 15:42:18 +03:00
Lauri Ojansivu 63da3d3c97 Reuse native Tamazight labels in shared UI controls 2026-09-15 15:41:26 +03:00
Lauri Ojansivu 1cf705484e Record Tamazight popup audit progress 2026-09-15 15:28:59 +03:00
Lauri Ojansivu e11a2654c7 Align Arabic Tamazight popup labels with native controls 2026-09-15 15:27:09 +03:00
Lauri Ojansivu 1405047ba7 Record Tamazight noun audit progress and source evidence 2026-09-15 15:24:39 +03:00
Lauri Ojansivu 2b22dd0bef Replace Arabic Tamazight common nouns with native labels 2026-09-15 15:23:19 +03:00
Lauri Ojansivu 3447011b4d Record successful sequential EVERYTHING verification 2026-09-15 15:17:51 +03:00
Lauri Ojansivu 7a37811883 Record browser matrix and Firefox avatar fixture repair 2026-09-15 13:57:45 +03:00
Lauri Ojansivu 66c5b85c30 Use a valid PNG in legacy avatar browser coverage 2026-09-15 13:57:26 +03:00
Lauri Ojansivu 7b5dd6549d Document sequential board title viewer coverage 2026-09-15 12:59:21 +03:00
Lauri Ojansivu 929326ba22 Exercise board title viewers through visible controls
Activate the card link instead of its date badge and open the Board View popup before choosing timeline, chart and Gantt views. The complete 24-case Chromium title suite passes sequentially.
2026-09-15 12:58:07 +03:00
Lauri Ojansivu 56f04dcab7 Guard external link autolink sync against repeated renders
Update the regression check to require one value-guarded ReactiveVar setter shared by the viewer and startup autorun. The focused external-link suite now passes all 24 tests.
2026-09-15 12:20:06 +03:00
Lauri Ojansivu 128e482d7a Document browser and markdown repairs in Upcoming release 2026-09-15 12:12:08 +03:00
Lauri Ojansivu fb66fa95cf Repair browser test flows and Meteor markdown package exports
Expose the renderer through a Meteor main module, synchronize security settings without repeated reactive invalidation, and route canonical avatar downloads around the automatic Meteor-Files handler. Update browser tests for the visible Board View and list menus, correct fixture IDs and authentication headers, and wait for the settings publication where direct Mongo updates are used.
2026-09-15 12:10:40 +03:00
Lauri Ojansivu 0ebfe1d775 Record security reporting and node regression repairs 2026-09-15 10:36:01 +03:00
Lauri Ojansivu c4c6e34ec4 Repair node regressions and align security problem names 2026-09-15 10:35:31 +03:00
Lauri Ojansivu 9b49eb1c43 Document Docker outage handling and repair language test harness 2026-09-15 10:16:14 +03:00
Lauri Ojansivu e6685eb0b4 Keep Docker publication available during Quay read-only outages 2026-09-15 10:12:39 +03:00
Lauri Ojansivu 0134b39520 Record Tamazight popup title audit progress 2026-09-15 10:12:19 +03:00
Lauri Ojansivu 79e5a93b42 Repair Tamazight common popup titles 2026-09-15 10:09:27 +03:00
Lauri Ojansivu 0b7606194e Record Tamazight Unset context audit progress 2026-09-15 10:04:49 +03:00
Lauri Ojansivu f0ceb8d72b Separate translated removal actions from Unset status 2026-09-15 10:04:08 +03:00
Lauri Ojansivu 0b2cc01e6f Record Tamazight board popup audit progress 2026-09-15 09:58:53 +03:00
Lauri Ojansivu 87c0495710 Repair Tamazight board and color popup titles 2026-09-15 09:58:15 +03:00
Lauri Ojansivu 0539ac8a23 Merge remote-tracking branch 'origin/main' 2026-09-15 09:55:38 +03:00
Lauri Ojansivu 6de53fb0c1 Record Tamazight board background audit progress 2026-09-15 09:55:12 +03:00
Lauri Ojansivu 79d58098f4 Repair Tamazight board background controls 2026-09-15 09:54:38 +03:00
Lauri Ojansivu 8922a87f2a Record Tamazight activity audit progress 2026-09-15 09:52:17 +03:00
Lauri Ojansivu ada7e35333 Repair Tamazight activity messages using UI meanings 2026-09-15 09:51:39 +03:00
Lauri Ojansivu 1990e60396 Record Tamazight admin status audit progress 2026-09-15 09:49:06 +03:00
Lauri Ojansivu f10daf2ae9 Repair Tamazight admin activity status labels 2026-09-15 09:48:29 +03:00
Lauri Ojansivu 987c5c22b5 Record Tamazight filter and sort audit progress 2026-09-15 09:47:07 +03:00
Lauri Ojansivu 65c6674196 Repair Tamazight filter and sort control labels 2026-09-15 09:46:20 +03:00
Lauri Ojansivu a58c572961 Record Tamazight creator-label audit progress 2026-09-15 09:44:15 +03:00
Lauri Ojansivu bea96680ee Repair Tamazight creator labels in filters and minicards 2026-09-15 09:43:31 +03:00
Lauri Ojansivu f30c32e897 Record Tamazight search predicate audit progress 2026-09-15 09:41:33 +03:00
Lauri Ojansivu 32c2d95756 Repair Tamazight search predicates and protect syntax keywords 2026-09-15 09:38:45 +03:00
Lauri Ojansivu fc2a8da2c8 Record Tamazight search syntax audit progress 2026-09-15 09:32:43 +03:00
Lauri Ojansivu c365e2cf6a Repair Tamazight search operator names and aliases 2026-09-15 09:31:43 +03:00
Lauri Ojansivu 278ca10a0f Record Tamazight board label repairs and Arabic-script queue 2026-09-15 09:27:31 +03:00
Lauri Ojansivu d1c4a7290a Replace Arabic and French Tamazight board labels 2026-09-15 09:26:37 +03:00
Lauri Ojansivu f851f409d7 Record Tamazight sky and metal-color audit progress 2026-09-15 09:23:34 +03:00
Lauri Ojansivu e114ffde89 Replace Tamazight sky and metal-color seeds 2026-09-15 09:22:50 +03:00
Lauri Ojansivu 5fcd43df39 Record Tamazight color repairs and remaining plural review 2026-09-15 09:20:42 +03:00
Lauri Ojansivu 06678678d0 Replace Arabic and French Tamazight color labels 2026-09-15 09:19:58 +03:00
Lauri Ojansivu 3ed7dd3761 Record Tamazight email-address repair and plural review 2026-09-15 09:14:58 +03:00
Lauri Ojansivu ce50929661 Replace French Tamazight email-address placeholder 2026-09-15 09:14:13 +03:00
Lauri Ojansivu a43727f0bc Record Tigre slate-blue review and reconcile overlap counts 2026-09-15 09:10:49 +03:00
Lauri Ojansivu 6f14c9a8c6 Repair Tigre slate-blue component 2026-09-15 09:09:19 +03:00
Lauri Ojansivu 59a7261e33 Record Tigre dark-green audit progress 2026-09-15 09:06:57 +03:00
Lauri Ojansivu de0cc0ce45 Repair copied Tigre dark-green translation 2026-09-15 09:05:50 +03:00
Lauri Ojansivu 10fff07af3 Record dated Tigre transport corpus audit 2026-09-15 09:00:19 +03:00
Jeff Huang 460263f21b Replace zh-Hant and zh-TW translations with Transifex ones 2026-09-15 14:00:08 +08:00
Lauri Ojansivu ae76ba79d0 Use corpus Tigre noun for DDP transport 2026-09-15 08:58:45 +03:00
Lauri Ojansivu 23b77ed14a Reconcile translation audit summary after width repairs 2026-09-15 08:54:31 +03:00
Lauri Ojansivu f4097bfda1 Record dated final width-rule translation audit 2026-09-15 08:53:36 +03:00
Lauri Ojansivu 31a238d91b Correct Cherokee and Wolaytta list-width bounds 2026-09-15 08:52:54 +03:00
Lauri Ojansivu 4ac8c5d129 Record dated Xitsonga translation audit 2026-09-15 08:49:12 +03:00
Lauri Ojansivu 21319c523d Replace corrupt Tsonga list-width seeds 2026-09-15 08:48:42 +03:00
Lauri Ojansivu c95017d560 Record dated Aymara Quechua translation audit 2026-09-15 08:47:12 +03:00
Lauri Ojansivu 83c8d0c2bb Repair Aymara and Quechua list-width strings 2026-09-15 08:46:36 +03:00
Lauri Ojansivu 04df435baf Record dated Hawaiian Klingon Inuktitut audit 2026-09-15 08:43:38 +03:00
Lauri Ojansivu c18780d5bd Correct three more native list-width bounds 2026-09-15 08:43:08 +03:00
Lauri Ojansivu 4e67398440 Record dated three-locale width repair audit 2026-09-15 08:41:11 +03:00
Lauri Ojansivu bb2d2dfebe Correct three native list-width minimum messages 2026-09-15 08:40:38 +03:00
Lauri Ojansivu 0bd8f32316 Record dated Serbian and regional translation audit progress 2026-09-15 08:35:55 +03:00
Lauri Ojansivu beddec7cb9 Repair Serbian list-width controls and four locale rules 2026-09-15 08:35:09 +03:00
Lauri Ojansivu 77cf4af47e Record dated wrong-language translation audit progress 2026-09-15 08:31:00 +03:00
Lauri Ojansivu 3eaeac9e7e Repair ten wrong-language and obsolete list-width values 2026-09-15 08:29:49 +03:00
Lauri Ojansivu e855bb7ede Record dated native-minimum translation audit progress 2026-09-15 08:25:37 +03:00
Lauri Ojansivu 92ea2a0f0c Repair ten native list-width minimum translations 2026-09-15 08:25:01 +03:00
Lauri Ojansivu 91555657e2 Record dated ten-locale translation audit progress 2026-09-15 08:21:53 +03:00
Lauri Ojansivu 9c1388a496 Repair ten native and mixed-seed list-width values 2026-09-15 08:21:00 +03:00
Lauri Ojansivu 376ecf3043 Record dated nine-locale translation audit progress 2026-09-15 08:18:23 +03:00
Lauri Ojansivu 3bf6a4c821 Repair nine African and Pacific list-width translations 2026-09-15 08:17:46 +03:00
Lauri Ojansivu bf18a5b737 Record dated list-width audit progress for twelve locales 2026-09-15 08:15:04 +03:00
Lauri Ojansivu 74e6deabe8 Repair twelve African, Kurdish and Yiddish list-width translations 2026-09-15 08:14:26 +03:00
Lauri Ojansivu e20321100b Record Asian-script list-width audit progress on 2026-09-15 2026-09-15 08:08:37 +03:00
Lauri Ojansivu 8cc659ac92 Repair 24 Asian list-width locale values and progress gates 2026-09-15 08:07:38 +03:00
Lauri Ojansivu 217dd1e3df Record Romance and Celtic audit progress on 2026-09-15 2026-09-15 08:02:49 +03:00
Lauri Ojansivu 0fe4ecb480 Repair twenty Romance and Celtic list-width meanings 2026-09-15 08:02:03 +03:00
Lauri Ojansivu d0388a2c0e Record Eurasian list-width audit progress on 2026-09-15 2026-09-15 07:57:31 +03:00
Lauri Ojansivu 6d94f4edb4 Repair 28 locale list-width rules and update regression gates 2026-09-15 07:56:49 +03:00
Lauri Ojansivu 17d3a34054 Record Chinese variant audit progress on 2026-09-15 2026-09-15 07:52:18 +03:00
Lauri Ojansivu 0b0349d34d Repair Chinese variant list-width rules in eleven locales 2026-09-15 07:51:42 +03:00
Lauri Ojansivu 7bf55675f6 Record native lower-bound audit progress on 2026-09-15 2026-09-15 07:48:52 +03:00
Lauri Ojansivu 212a46c078 Repair 33 native list-width rules and align Galician archive check 2026-09-15 07:48:17 +03:00
Lauri Ojansivu 0fdeaf7994 Record multilingual list-width audit progress on 2026-09-15 2026-09-15 07:44:58 +03:00
Lauri Ojansivu d6e6c558d6 Repair 22 multilingual list-width validation translations 2026-09-15 07:44:00 +03:00
Lauri Ojansivu 3a6463541c Record German and Romance list-width translation repairs 2026-09-15 07:38:28 +03:00
Lauri Ojansivu e6895b3dee Repair Romance and German list-width validation translations 2026-09-15 07:37:31 +03:00
Lauri Ojansivu 49a0654bd1 Document Persian-digit list-width repairs 2026-09-15 07:35:35 +03:00
Lauri Ojansivu 196bc49df9 Repair Persian-digit list-width messages 2026-09-15 07:34:12 +03:00
Lauri Ojansivu c249bacaa2 Record list-width source mismatch and locale repair queue 2026-09-15 07:32:39 +03:00
Lauri Ojansivu 68d679c6c7 Align list-width validation and source translations with 200px minimum 2026-09-15 07:30:40 +03:00
Lauri Ojansivu 8bf19dada2 Document Tigre Trello and S3 plural repair 2026-09-15 07:23:24 +03:00
Lauri Ojansivu 6909fb85e7 Repair Tigre Trello key terminology and S3 file plural 2026-09-15 07:22:09 +03:00
Lauri Ojansivu 99e0121b0e Document Tigre PDF preview translation review 2026-09-15 07:17:34 +03:00
Lauri Ojansivu 78f2c9bf78 Repair Tigre PDF preview warning copied from Tigrinya 2026-09-15 07:16:11 +03:00
Lauri Ojansivu e24a4fe717 Document Tigre authentication error review 2026-09-15 07:14:24 +03:00
Lauri Ojansivu 36c2148ecb Repair Tigre authentication error copied from Tigrinya 2026-09-15 07:12:31 +03:00
Lauri Ojansivu 7030814546 Record Tigre S3 translation audit progress 2026-09-15 07:10:05 +03:00
Lauri Ojansivu 970d9e664b Fill Tigre S3 settings English placeholders 2026-09-15 07:08:17 +03:00
Lauri Ojansivu 3d8b41be8c Document Tamazight due-reminder activity repair 2026-09-15 07:04:46 +03:00
Lauri Ojansivu 780a75a2bb Repair French Tamazight due-reminder activity 2026-09-15 07:04:00 +03:00
Lauri Ojansivu d140ac347f Document corpus-attested Tigre plural follow-up 2026-09-15 06:59:29 +03:00
Lauri Ojansivu 5d53aa9904 Correct provisional Tigre plurals using corpus evidence 2026-09-15 06:58:48 +03:00
Lauri Ojansivu 95a3a4baff Document Tigre Star and Break repairs 2026-09-15 06:54:02 +03:00
Lauri Ojansivu 009d7f8329 Repair Tigre star and break terms and refresh reviewed tests 2026-09-15 06:53:22 +03:00
Lauri Ojansivu f4dd67eb3b Document Tigre Endpoint meaning repair 2026-09-15 06:48:18 +03:00
Lauri Ojansivu 6b78c88cb9 Repair Tigre Endpoint terminology 2026-09-15 06:47:45 +03:00
Lauri Ojansivu c450740d78 Document Tigre exact control reviews 2026-09-15 06:46:53 +03:00
Lauri Ojansivu 0eac733cdb Repair corpus-supported Tigre exact controls 2026-09-15 06:45:57 +03:00
Lauri Ojansivu 0f9f13d1d9 Document missed Tigre organizations repair 2026-09-15 06:44:49 +03:00
Lauri Ojansivu 0ef3ca6dd6 Repair missed Tigre organizations control 2026-09-15 06:44:21 +03:00
Lauri Ojansivu 238e331278 Document full Tigre noun family repairs 2026-09-15 06:43:26 +03:00
Lauri Ojansivu 08e7092c36 Repair established Tigre noun families throughout 2026-09-15 06:42:10 +03:00
Lauri Ojansivu d954922c90 Document full Tigre board and card cleanup 2026-09-15 06:38:45 +03:00
Lauri Ojansivu 83546ed248 Repair Tigre board and card terms throughout 2026-09-15 06:37:59 +03:00
Lauri Ojansivu b30134be78 Document Tigre short control repairs 2026-09-15 06:34:26 +03:00
Lauri Ojansivu 40a20207bd Repair Tigre short interface controls 2026-09-15 06:33:45 +03:00
Lauri Ojansivu 4e09c23b21 Document additional Tigre interface repairs 2026-09-15 06:32:18 +03:00
Lauri Ojansivu 088b01587f Repair additional Tigre interface terms 2026-09-15 06:31:27 +03:00
Lauri Ojansivu 828800a301 Document second Tigre ledger reuse pass 2026-09-15 06:29:02 +03:00
Lauri Ojansivu 45a568aea7 Reuse reviewed Tigre terms in remaining controls 2026-09-15 06:28:06 +03:00
Lauri Ojansivu 2fa5a88449 Document Tigre edit and template repairs 2026-09-15 06:25:39 +03:00
Lauri Ojansivu e50072bc32 Repair Tigre edit and template terms 2026-09-15 06:24:01 +03:00
Lauri Ojansivu 876d879596 Document embedded Tigre terminology repairs 2026-09-15 06:22:22 +03:00
Lauri Ojansivu eb1add1f21 Repair embedded Tigre account storage and description terms 2026-09-15 06:21:31 +03:00
Lauri Ojansivu 79b144ae76 Document Tigre account storage and template repairs 2026-09-15 06:19:12 +03:00
Lauri Ojansivu 8296c12a57 Repair Tigre account storage and template terms 2026-09-15 06:17:14 +03:00
Lauri Ojansivu 9173c62599 Document remaining Tigre card repairs 2026-09-15 06:14:14 +03:00
Lauri Ojansivu c73362aae6 Repair remaining Tigre card terms 2026-09-15 06:13:23 +03:00
Lauri Ojansivu b0fd098cea Document Tigre outcome and account repairs 2026-09-15 06:11:46 +03:00
Lauri Ojansivu c91e56a504 Repair Tigre outcome and account terms 2026-09-15 06:10:55 +03:00
Lauri Ojansivu 1ae4305237 Document Tigre date and time repairs 2026-09-15 06:09:49 +03:00
Lauri Ojansivu 0896117b5a Repair Tigre date and time terms 2026-09-15 06:08:58 +03:00
Lauri Ojansivu 4a8323c96f Document Tigre noun repairs 2026-09-15 06:07:42 +03:00
Lauri Ojansivu 242c1f27ba Repair Tigre label organization and team terms 2026-09-15 06:06:53 +03:00
Lauri Ojansivu b658832f59 Document repeated Tigre component repairs 2026-09-15 06:05:39 +03:00
Lauri Ojansivu 8b6c21ff90 Repair repeated Tigre interface components 2026-09-15 06:04:49 +03:00
Lauri Ojansivu 7e49057262 Document Tigre board repairs 2026-09-15 06:02:56 +03:00
Lauri Ojansivu 1196bebaab Repair Tigre board terms 2026-09-15 06:02:01 +03:00
Lauri Ojansivu 79708827c7 Document Tigre file-clause repairs 2026-09-15 06:00:37 +03:00
Lauri Ojansivu 71a15613c7 Repair Tigre file terms in longer clauses 2026-09-15 05:59:48 +03:00
Lauri Ojansivu f81c9ab58f Document Tigre card and file repairs 2026-09-15 05:58:49 +03:00
Lauri Ojansivu 8560f3d7c2 Repair Tigre card and file terms 2026-09-15 05:58:06 +03:00
Lauri Ojansivu b0bef07079 Document shared Tigre plural review 2026-09-15 05:55:59 +03:00
Lauri Ojansivu a69ed23251 Retain attested Tigre account and error plurals 2026-09-15 05:55:23 +03:00
Lauri Ojansivu a56cccfeb3 Document multi-component Tigre repairs 2026-09-15 05:54:08 +03:00
Lauri Ojansivu f64f9c98d3 Repair multi-component Tigre labels 2026-09-15 05:52:49 +03:00
Lauri Ojansivu 4a25311bf7 Document compact Tigre repairs 2026-09-15 05:47:59 +03:00
Lauri Ojansivu fc61397455 Repair compact Tigre terminology 2026-09-15 05:47:17 +03:00
Lauri Ojansivu edb736acf0 Document Tigre name repairs 2026-09-15 05:43:52 +03:00
Lauri Ojansivu 002f8bc7bb Repair Tigre name controls 2026-09-15 05:43:11 +03:00
Lauri Ojansivu fcc461b156 Document Tigre import repairs 2026-09-15 05:41:32 +03:00
Lauri Ojansivu b8bbd8fa39 Repair Tigre import controls 2026-09-15 05:40:52 +03:00
Lauri Ojansivu 69c1145a87 Document reused Tigre terms 2026-09-15 05:39:29 +03:00
Lauri Ojansivu 22615501d1 Reuse reviewed Tigre interface terms 2026-09-15 05:38:51 +03:00
Lauri Ojansivu 46cccccd3a Document Tigre selection repairs 2026-09-15 05:37:13 +03:00
Lauri Ojansivu a6dd320fd2 Repair Tigre selection controls 2026-09-15 05:36:33 +03:00
Lauri Ojansivu d73a200439 Document Tigre date repairs 2026-09-15 05:35:04 +03:00
Lauri Ojansivu a03aa027cb Repair Tigre date controls 2026-09-15 05:33:22 +03:00
Lauri Ojansivu d44beb0228 Document Tigre member compound repairs
Record reused corpus evidence, residual overlap, limitations and regression coverage for seven corrected member controls.\n\nThanks to xet7 !
2026-09-15 05:28:28 +03:00
Lauri Ojansivu 284fcff144 Repair Tigre member compounds
Use the explicit Tigre Member and Members pair across seven board, filter, selection and rule controls. Reuse reviewed Tigre control terms and add former-seed coverage.\n\nThanks to xet7 !
2026-09-15 05:27:54 +03:00
Lauri Ojansivu d39930eb77 Document ledger-grounded Tigre repairs
Record the reused evidence, residual overlap, limitations and regression coverage for 17 corrected Tigre compounds.\n\nThanks to xet7 !
2026-09-15 05:25:10 +03:00
Lauri Ojansivu 0651f745bc Repair Tigre interface compounds
Replace 17 compact Tigrinya-seeded controls using only independently reviewed Tigre ledger terms. Add exact and former-seed regression coverage.\n\nThanks to xet7 !
2026-09-15 05:24:37 +03:00
Lauri Ojansivu 387e10980e Document Tigre speed and storage repairs
Record corpus and native-interface evidence, residual overlap and regression coverage for four corrected controls.\n\nThanks to xet7 !
2026-09-15 05:21:32 +03:00
Lauri Ojansivu b8ebfc67e3 Repair Tigre speed and storage terms
Replace Tigrinya-specific Speed and Storage spellings with forms attested in the Tigre corpus and native Tigre Wikidata interface. Add exact and former-seed coverage.\n\nThanks to xet7 !
2026-09-15 05:20:58 +03:00
Lauri Ojansivu 194f4556aa Document Tigre interface action repairs
Record corpus evidence, residual overlap, limitations and regression coverage for the Font, Invite and permissions controls.\n\nThanks to xet7 !
2026-09-15 05:20:07 +03:00
Lauri Ojansivu e4ae5173fc Repair Tigre interface actions
Use corpus-grounded Tigre terms across seven Font, Invite People and Change permissions controls. Add exact and former-seed regression coverage.\n\nThanks to xet7 !
2026-09-15 05:19:35 +03:00
Lauri Ojansivu 4a26ff5412 Document Tigre visual repairs
Record corpus evidence, residual overlap, limitations and regression coverage for the repaired Rename and board-background controls.\n\nThanks to xet7 !
2026-09-15 05:17:49 +03:00
Lauri Ojansivu f1b12cc668 Repair Tigre visual controls
Use corpus-attested Tigre name, change, image and background terms across eight Rename and board-background controls. Add exact and former-seed regression coverage.\n\nThanks to xet7 !
2026-09-15 05:17:15 +03:00
Lauri Ojansivu c0f430b0b3 Document Tigre status repairs
Record the evidence, residual overlap count, limitations and regression coverage for eight repaired Tigre status controls.\n\nThanks to xet7 !
2026-09-15 05:15:49 +03:00
Lauri Ojansivu b4586ba970 Repair Tigre status controls
Use corpus-attested Tigre terms across eight Overall progress, CPU usage, Card loading and Remaining time controls. Preserve CPU and add exact former-seed coverage.\n\nThanks to xet7 !
2026-09-15 05:15:16 +03:00
Lauri Ojansivu 33300f303e Add Tigre severity repair to changelog
Record the three corrected Severity controls in the upcoming WeKan release.\n\nThanks to xet7 !
2026-09-15 05:13:52 +03:00
Lauri Ojansivu c59789dfb5 Document Tigre severity repairs
Record the contradicted weight sense, replacement evidence, low-confidence compound limitation and residual overlap count.\n\nThanks to xet7 !
2026-09-15 05:13:39 +03:00
Lauri Ojansivu e27abadf67 Repair Tigre severity controls
Replace the misleading physical-weight seed in three Severity controls with a corpus-grounded Tigre severity-level compound. Record its compound grammar as low confidence and add negative coverage for the former seed.\n\nThanks to xet7 !
2026-09-15 05:13:06 +03:00
Lauri Ojansivu 3d2c249f21 Document Tigre export repairs
Record the corpus evidence, residual overlap count, limitations and regression coverage for the repaired Tigre Export controls.\n\nThanks to xet7 !
2026-09-15 05:12:12 +03:00
Lauri Ojansivu 6d8f830a70 Repair Tigre export controls
Use the Tigre export action attested in a software-context corpus entry across the generic, list and board export controls. Add exact and former-seed regression coverage.\n\nThanks to xet7 !
2026-09-15 05:11:36 +03:00
Lauri Ojansivu ee6607dc9d Document Tigre administrative term repairs
Record the evidence, residual overlap counts, test coverage and source commit for the reviewed Tigre administrative and location controls.\n\nThanks to xet7 !
2026-09-15 05:10:30 +03:00
Lauri Ojansivu 9f5f2d1dba Repair Tigre administrative controls
Use corpus-attested Tigre terminology for administrator, organization administrators, confirmation, type, location and adding a location. Add focused coverage for all corrected controls and their former Tigrinya seeds.\n\nThanks to xet7 !
2026-09-15 05:09:45 +03:00
Lauri Ojansivu fbfb37e272 Document Tigre member terminology correction 2026-09-15 05:06:21 +03:00
Lauri Ojansivu 2bb4b88cb5 Correct Tigre member terminology 2026-09-15 05:05:42 +03:00
Lauri Ojansivu 212232a5c0 Document Tigre interface compound repairs 2026-09-15 05:04:06 +03:00
Lauri Ojansivu 6f25928145 Repair Tigre interface compounds 2026-09-15 05:03:31 +03:00
Lauri Ojansivu eb797932fe Document Tigre operational term repairs 2026-09-15 05:02:14 +03:00
Lauri Ojansivu fa6cbd1666 Retain shared Tigre seconds term 2026-09-15 05:01:34 +03:00
Lauri Ojansivu a268d6167a Repair Tigre operational terms 2026-09-15 05:01:19 +03:00
Lauri Ojansivu 4936e9fc47 Document basic Tigre term repairs 2026-09-15 05:00:07 +03:00
Lauri Ojansivu 62ff72c607 Repair basic Tigre interface terms 2026-09-15 04:59:34 +03:00
Lauri Ojansivu 8c324ff5e9 Document Tigre sense repairs 2026-09-15 04:58:14 +03:00
Lauri Ojansivu 67632637c2 Repair conflicting Tigre interface senses 2026-09-15 04:57:44 +03:00
Lauri Ojansivu c839ae2bf3 Document shared Tigre term review 2026-09-15 04:56:51 +03:00
Lauri Ojansivu b2caad45b7 Retain corpus-backed shared Tigre terms 2026-09-15 04:56:15 +03:00
Lauri Ojansivu 154c3cc31f Document repeated Tigre noun repairs 2026-09-15 04:54:11 +03:00
Lauri Ojansivu f9b716fd61 Repair repeated Tigre interface nouns 2026-09-15 04:53:42 +03:00
Lauri Ojansivu 9b266cc353 Document Tigre Azure path repairs 2026-09-15 04:52:45 +03:00
Lauri Ojansivu 77e08a8f61 Repair Tigre Azure menu paths 2026-09-15 04:52:14 +03:00
Lauri Ojansivu a568dc4208 Document repeated Tigre interface repairs 2026-09-15 04:50:49 +03:00
Lauri Ojansivu 2530126f27 Repair repeated Tigre interface families 2026-09-15 04:50:10 +03:00
Lauri Ojansivu b7b7cd2de8 Document Tigre address and name repairs 2026-09-15 04:48:26 +03:00
Lauri Ojansivu 62956f2819 Repair Tigre address and name labels 2026-09-15 04:47:52 +03:00
Lauri Ojansivu 2fcf2788e5 Document lexical Tigre repairs 2026-09-15 04:47:01 +03:00
Lauri Ojansivu f27cb82ca6 Repair lexical Tigre interface terms 2026-09-15 04:45:56 +03:00
Lauri Ojansivu 7db8afc76c Document completed Veps seed review 2026-09-15 04:42:55 +03:00
Lauri Ojansivu a4ec295ffa Complete Finnish-seeded Veps translation review 2026-09-15 04:42:14 +03:00
Lauri Ojansivu 33d1a89761 Document Veps account and rule repairs 2026-09-15 04:39:52 +03:00
Lauri Ojansivu 4caef872b0 Repair Veps account and rule interface families 2026-09-15 04:39:14 +03:00
Lauri Ojansivu be8c47c26a Document Veps board interface repairs 2026-09-15 04:36:32 +03:00
Lauri Ojansivu a222bad2d7 Repair Veps board interface families 2026-09-15 04:35:53 +03:00
Lauri Ojansivu 8858912ed4 Document lexical Veps repairs 2026-09-15 04:33:33 +03:00
Lauri Ojansivu c67a91a416 Repair lexical Veps interface terms 2026-09-15 04:32:34 +03:00
Lauri Ojansivu 8d02a5d758 Document native-catalogue Veps repairs 2026-09-15 04:31:18 +03:00
Lauri Ojansivu e17bb2b5e3 Repair native-catalogue Veps interface terms 2026-09-15 04:30:06 +03:00
Lauri Ojansivu 3e492107cb Document shared Tigre vocabulary review 2026-09-15 04:27:38 +03:00
Lauri Ojansivu 5b2c5942ef Record corpus-attested shared Tigre terms 2026-09-15 04:27:05 +03:00
Lauri Ojansivu 8db30cf182 Document corpus-backed Tigre interface repairs 2026-09-15 04:25:58 +03:00
Lauri Ojansivu 0e94189604 Repair corpus-backed Tigre interface terms 2026-09-15 04:24:56 +03:00
Lauri Ojansivu 391e7fc811 Document Tigre date vocabulary repairs 2026-09-15 04:22:31 +03:00
Lauri Ojansivu 9ab9215c6b Repair Tigre basic date vocabulary 2026-09-15 04:19:37 +03:00
Lauri Ojansivu e911879b6b Document completion of tracked translation audit 2026-09-15 04:17:44 +03:00
Lauri Ojansivu 2ecd746378 Complete restored Basque rule translation review 2026-09-15 04:16:25 +03:00
Lauri Ojansivu f18a925c26 Translate Aromanian magenta color label 2026-09-15 04:14:38 +03:00
Lauri Ojansivu ee9228ab6d Complete tracked Tamazight migration translations 2026-09-15 04:13:44 +03:00
Lauri Ojansivu a11978016d Repair Tamazight global search guidance 2026-09-15 04:11:42 +03:00
Lauri Ojansivu 36c8afc8ea Repair Tamazight board and import guidance 2026-09-15 04:10:38 +03:00
Lauri Ojansivu 667eb393dd Document Tamazight diagnostic translation repairs 2026-09-15 04:08:50 +03:00
Lauri Ojansivu 3d79d5ca5b Repair Tamazight diagnostics and repository actions 2026-09-15 04:07:33 +03:00
Lauri Ojansivu c9d838170b Document Tamazight accessibility translation repairs 2026-09-15 04:06:17 +03:00
Lauri Ojansivu 7d87955de3 Repair Tamazight accessibility and UI labels 2026-09-15 04:05:00 +03:00
Lauri Ojansivu e0bb7f2ca1 Document Tamazight calendar repairs 2026-09-15 04:01:51 +03:00
Lauri Ojansivu 10aa310033 Translate Tamazight tabular Hijri labels 2026-09-15 04:01:24 +03:00
Lauri Ojansivu 3caf5f6a73 Document completed Inuktitut audit queue 2026-09-15 03:59:31 +03:00
Lauri Ojansivu b5acfdaec3 Complete Inuktitut calendar labels 2026-09-15 03:58:53 +03:00
Lauri Ojansivu 97dc41d076 Document Inuktitut orthography review 2026-09-15 03:57:22 +03:00
Lauri Ojansivu a0eeee9d63 Retain valid Roman Inuktitut translations 2026-09-15 03:56:49 +03:00
Lauri Ojansivu 81f18f4807 Document Tigre translation audit progress 2026-09-15 03:55:55 +03:00
Lauri Ojansivu 88caf17515 Translate Tigre calendar system labels 2026-09-15 03:54:16 +03:00
Lauri Ojansivu 85d994c2fb Document completed Wolaytta tracked audit
Record the final calendar repairs, source commit, updated counts, verification, and remaining low-confidence compounds.

Thanks to xet7 !
2026-09-15 03:49:22 +03:00
Lauri Ojansivu e97f8fb206 Complete Wolaytta calendar labels
Replace ten incomplete English seeds with the attested calendar-noun family while preserving named systems, calculated epochs, and moon-sighting distinctions.

Thanks to xet7 !
2026-09-15 03:48:41 +03:00
Lauri Ojansivu 54f008fc5d Document completed Nahuatl tracked audit
Record the calendar-system repair, source rationale, updated counts, verification, and remaining low-confidence scope.

Thanks to xet7 !
2026-09-15 03:47:22 +03:00
Lauri Ojansivu 56ce505d0c Translate Nahuatl calendar system labels
Replace seventeen Azerbaijani, English, and incomplete labels with a coordinated modern date-reckoning family while preserving every named calendar and variant distinction.

Thanks to xet7 !
2026-09-15 03:46:07 +03:00
Lauri Ojansivu 78fda5345a Document completed Ewe tracked audit
Record the calendar terminology evidence, source commit, updated counts, and remaining low-confidence construction.

Thanks to xet7 !
2026-09-15 03:43:57 +03:00
Lauri Ojansivu 52836b241d Complete Ewe tabular Hijri label
Replace the incomplete English calendar name with an Ewe calculation-and-epoch draft while preserving the distinct astronomical variant.

Thanks to xet7 !
2026-09-15 03:42:46 +03:00
Lauri Ojansivu 38cde52187 Document completed Veps tracked audit
Record the final tracked Veps repair, parser evidence, updated counts, and the remaining low-confidence review scope.

Thanks to xet7 !
2026-09-15 03:40:32 +03:00
Lauri Ojansivu 7bc3b73b05 Translate Veps advanced filter help
Replace the final tracked Finnish paragraph with a Veps draft while preserving every executable operator, quote, escape, grouping, and regular-expression example.

Thanks to xet7 !
2026-09-15 03:39:52 +03:00
Lauri Ojansivu a229d53471 Document Veps keyboard translation repair
Record the dated source commit, verified behavior, updated audit counts, and remaining low-confidence terminology.

Thanks to xet7 !
2026-09-15 03:38:17 +03:00
Lauri Ojansivu 4d74f7080f Fix Veps keyboard command translations
Replace four Finnish keyboard-shortcut values with a coordinated Veps keyboard-command draft while preserving state transitions, route behavior, and the literal question-mark binding.

Thanks to xet7 !
2026-09-15 03:36:49 +03:00
Lauri Ojansivu 3830365ecd Document Veps scrollbar translation repair
Record the affected UI scope, native component evidence, focused checks, updated queue, and low-confidence compound limit.\n\nThanks to xet7 !
2026-09-15 03:33:39 +03:00
Lauri Ojansivu b82d5761ed Fix Veps vertical scrollbar translation
Replace the Finnish toggle label with a Veps vertical-scrollbar draft and verify its visible control and affected containers.\n\nThanks to xet7 !
2026-09-15 03:32:56 +03:00
Lauri Ojansivu e8d971489b Document Veps field sum translation repair
Record the numeric-only source context, dictionary evidence, focused checks, updated queue, and remaining low-confidence grammar.\n\nThanks to xet7 !
2026-09-15 03:31:49 +03:00
Lauri Ojansivu 1b35cd8b4f Fix Veps field sum control translation
Replace the Finnish checkbox label with Veps arithmetic-addition and list-top terminology already verified for the numeric total tooltip.\n\nThanks to xet7 !
2026-09-15 03:31:03 +03:00
Lauri Ojansivu 68c82d941c Document Veps accessibility translation repairs
Record the five repaired UI roles, source bindings, descriptive terminology basis, focused checks, and remaining low-confidence review.\n\nThanks to xet7 !
2026-09-15 03:29:21 +03:00
Lauri Ojansivu 09b62ffa40 Fix Veps accessibility translations
Replace the Finnish accessibility family with a consistent Veps access-for-everyone draft across navigation, settings, fields, and the public empty state.\n\nThanks to xet7 !
2026-09-15 03:28:29 +03:00
Lauri Ojansivu a31eebdc39 Document Veps card loading translation repairs
Record the corrected card-loading semantics, native terminology basis, focused verification, and remaining low-confidence review in the audit and Upcoming changelog.\n\nThanks to xet7 !
2026-09-15 03:26:07 +03:00
Lauri Ojansivu 8480bee00b Fix Veps card loading translations
Replace wrong-language labels, stale manual loading guidance, and a Russian multi-selection hybrid with a coherent Veps card-loading group. Preserve the automatic threshold behavior and exact operator configuration literals.\n\nThanks to xet7 !
2026-09-15 03:25:01 +03:00
Lauri Ojansivu c4f049e320 Record Veps voting translation repairs
Update the audit, native evidence review, and Upcoming changelog with the verified voting-side repair and its remaining confidence limit.\n\nThanks to xet7 !
2026-09-15 03:19:14 +03:00
Lauri Ojansivu 8a66f4c746 Repair Veps voting-side translations
Replace four Finnish participant and action labels with Veps forms based on the native voting, support, defense, and opposition entries. Add semantic regression checks.\n\nThanks to xet7 !
2026-09-15 03:18:50 +03:00
Lauri Ojansivu 8061759d2c Record Veps Problems heading repairs
Update the short audit, detailed evidence, Veps review, and Upcoming changelog with the verified native heading evidence.\n\nThanks to xet7 !
2026-09-15 03:16:11 +03:00
Lauri Ojansivu 052937ff0a Repair Veps Problems page headings
Replace Tshivenda and Finnish headings with an attested Veps summary term and the locale's existing status label. Add exact regression checks.\n\nThanks to xet7 !
2026-09-15 03:15:49 +03:00
Lauri Ojansivu 3e0c124d4a Record Veps card-number translation repair
Update the short audit, detailed evidence, Veps review, and Upcoming changelog with the verified local repair and expanded wrong-language candidate scan.\n\nThanks to xet7 !
2026-09-15 03:15:07 +03:00
Lauri Ojansivu 21e43e8b56 Repair Veps card-number search translations
Replace Zulu card-number labels with Veps wording, preserve the search syntax placeholders, and add regression coverage for the complete search group.\n\nThanks to xet7 !
2026-09-15 03:14:23 +03:00
Lauri Ojansivu 832e44c7e9 Record Veps numeric addition repair and primary evidence 2026-09-15 03:11:15 +03:00
Lauri Ojansivu 7c17acd340 Replace wrong-language Veps numeric total description
Use the rendered native phrase for addition of numbers and preserve custom number fields marked for list top. Full compound and case grammar remains under review.
2026-09-15 03:10:54 +03:00
Lauri Ojansivu 3d47446dfe Record Veps date range repair and native interval evidence 2026-09-15 03:09:58 +03:00
Lauri Ojansivu 046830b355 Replace wrong-language Veps list date range description
Use rendered native time-interval noun; preserve custom date fields marked for list top. Full case and compound grammar remain low confidence.
2026-09-15 03:09:39 +03:00
Lauri Ojansivu 7dcdc054a4 Record Veps severity draft and technical review limits 2026-09-15 03:08:30 +03:00
Lauri Ojansivu 91d0cbf5ed Replace wrong-language Veps event severity label
Use rendered native noun forms in a direct severity-level draft. Technical harshness analogy and full compound remain low confidence and under review.
2026-09-15 03:08:09 +03:00
Lauri Ojansivu 9e5758a508 Verify native Veps abstract-level noun for severity review 2026-09-15 03:07:35 +03:00
Lauri Ojansivu dad7f2ae35 Verify rendered Veps hardness noun and limit severity inference 2026-09-15 03:06:44 +03:00
Lauri Ojansivu 99aeb90cdb Record Veps severity lexical evidence and excluded meanings 2026-09-15 03:06:02 +03:00
Lauri Ojansivu 10f1a4964b Record Veps backup scope repairs and terminology limits 2026-09-15 03:05:19 +03:00
Lauri Ojansivu cfed82e70c Replace wrong-language Veps backup scope text
Preserve organization boards and attachments, shared accounts/settings exclusions and restore ownership restriction. Whole-system paraphrase and full native grammar remain low confidence.
2026-09-15 03:04:59 +03:00
Lauri Ojansivu eb056cf59f Record Veps acknowledgment repairs and open grammar review 2026-09-15 03:04:15 +03:00
Lauri Ojansivu bc8988c9d7 Replace wrong-language Veps problem acknowledgment text
Preserve checked reviewed areas and resetting new-problem counts. Full plural, case and acknowledgment grammar remains low confidence.
2026-09-15 03:03:57 +03:00
Lauri Ojansivu ed2565e9b7 Record Veps CPU repairs and remaining core terminology review 2026-09-15 03:03:14 +03:00
Lauri Ojansivu 9e06803310 Replace wrong-language Veps CPU usage and load labels
Preserve current versus generic usage and average system load. Reuse local Veps terminology; full computing compounds and core vocabulary remain under review.
2026-09-15 03:02:55 +03:00
Lauri Ojansivu f46fb0272e Record Veps loading and status repairs with review limits 2026-09-15 03:02:14 +03:00
Lauri Ojansivu e8826e71a0 Replace wrong-language Veps loading and migration status
Preserve possible login delay, login-required message, loading indicator and CPU condition until background work finishes. Full computing terminology and grammar remain low confidence.
2026-09-15 03:01:55 +03:00
Lauri Ojansivu 4cf2381c66 Record Veps forecast repairs and remaining grammar review 2026-09-15 03:01:03 +03:00
Lauri Ojansivu 201f8d0a41 Replace wrong-language Veps chart forecast messages
Preserve zero remaining, missing recent completions, weekly pace and conditional completion date. Full projection, recency and count grammar remains low confidence.
2026-09-15 03:00:44 +03:00
Lauri Ojansivu b7a903473d Record Veps repair message corrections and grammar limits 2026-09-15 02:59:49 +03:00
Lauri Ojansivu f5d72bae8a Replace wrong-language Veps repair and restore messages
Preserve exact counters, missing-board explanation and automatic-repair limitation. Full count, passive and case grammar remains low confidence.
2026-09-15 02:59:29 +03:00
Lauri Ojansivu 6fd9eb88d3 Record Veps voting repairs and expanded review scope 2026-09-15 02:58:45 +03:00
Lauri Ojansivu 4b2009229c Fix Veps voting and event detail labels
Replace Tshivenda vote-sorting and detail text and Finnish voting heading with Veps vocabulary. Sorting case and full context terminology remain under review.
2026-09-15 02:58:23 +03:00
Lauri Ojansivu 5a62a6b3b1 Record native Veps software-key evidence and title repair 2026-09-15 02:57:43 +03:00
Lauri Ojansivu e722a6c17c Improve Veps synchronization title and software-key wording
Use native MediaWiki software sort-key evidence for the project-key analogy, preserving ID/path alternatives. Replace overlooked Tshivenda popup title. Full compound grammar remains low confidence.
2026-09-15 02:57:22 +03:00
Lauri Ojansivu 1aacb92a3b Record Veps two-factor instruction repairs and uncertainty 2026-09-15 02:56:38 +03:00
Lauri Ojansivu f9d9c454dc Replace wrong-language Veps two-factor setup and login text
Preserve QR and manual setup alternatives, six-digit codes, every-login requirement and invalid-code retry. Full computing compounds and native grammar remain low confidence.
2026-09-15 02:56:16 +03:00
Lauri Ojansivu c476aa4a10 Record Veps two-factor control repairs and open instructions 2026-09-15 02:55:29 +03:00
Lauri Ojansivu 7deff5697c Replace wrong-language Veps two-factor controls
Preserve enable and disable actions, popup title and account-specific enabled status. Full two-factor terminology and grammar remain low confidence; setup instructions still require repair.
2026-09-15 02:55:08 +03:00
Lauri Ojansivu 8e8150478f Record Veps identifier repair and terminology limits 2026-09-15 02:54:25 +03:00
Lauri Ojansivu 29f93a8886 Fix Veps multi-tracker project identifier label
Replace Tshivenda with a project-code paraphrase and retain ID and owner/repo alternatives. Native project and code vocabulary is attested; full multi-tracker terminology remains low confidence.
2026-09-15 02:54:03 +03:00
Lauri Ojansivu d84b5bb9be Record Veps sync instruction draft and remaining review 2026-09-15 02:52:37 +03:00
Lauri Ojansivu 25e6eefba0 Replace wrong-language Veps synchronization instructions
Preserve external tracker, background checks every 15 minutes, and the immediate manual action. Full draft grammar and computing loans remain low confidence.
2026-09-15 02:52:16 +03:00
Lauri Ojansivu c37bd8f962 Record Veps inactive sync repair and review limits 2026-09-15 02:51:34 +03:00
Lauri Ojansivu b30fa05a93 Fix Veps inactive synchronization source label
Replace the Tshivenda empty-source option with a Veps inactive-state paraphrase. Keep enabled, failed and never-synced states distinct. Derived noun and complete grammar remain low confidence.
2026-09-15 02:51:14 +03:00
Lauri Ojansivu 11b3061c98 Record Veps never-synced repair and primary native evidence 2026-09-15 02:48:10 +03:00
Lauri Ojansivu 81c17c1960 Fix Veps never-synced state with native adverb 2026-09-15 02:47:47 +03:00
Lauri Ojansivu 7e59bb8b63 Record Veps credential repairs and remaining language review 2026-09-15 02:47:08 +03:00
Lauri Ojansivu c117936edd Fix Veps synchronization credential labels and status messages
Preserve API token/password meaning and set versus not-yet-set state. Full status grammar and credential paraphrase remain low confidence.
2026-09-15 02:46:45 +03:00
Lauri Ojansivu d04457bb37 Record dated Veps optional-field repairs and review limits 2026-09-15 02:46:09 +03:00
Lauri Ojansivu 5d0583ef54 Fix Veps optional-field and synchronization username wording
Preserve the not-required qualification using a direct native-wording draft. Full contextual grammar remains low confidence.
2026-09-15 02:45:44 +03:00
Lauri Ojansivu 7cbef0b3c7 Record Veps source label repair and optional-field review 2026-09-15 02:45:10 +03:00
Lauri Ojansivu 0ca3422a46 Fix wrong-language Veps synchronization source label 2026-09-15 02:44:48 +03:00
Lauri Ojansivu be501c32fa Record Veps synchronization state repairs and remaining grammar 2026-09-15 02:44:14 +03:00
Lauri Ojansivu c379de7d7e Fix six Veps synchronization state and result translations
Preserve pending, success, error and stop meanings and the exact error placeholder. Derived synchronization noun and case grammar remain low confidence.
2026-09-15 02:43:51 +03:00
Lauri Ojansivu e7cecc9c7f Record five Veps synchronization repairs and remaining block 2026-09-15 02:43:12 +03:00
Lauri Ojansivu 93a48d724d Fix five wrong-language Veps synchronization labels
Reuse existing Veps wording and preserve literal project and credential examples. Full assembled synchronization grammar remains under review.
2026-09-15 02:42:49 +03:00
Lauri Ojansivu 7c540c5f5b Record dated Veps rule-state repairs and grammar limits 2026-09-15 02:41:59 +03:00
Lauri Ojansivu 3658f17556 Fix Tshivenda rule-state text in Veps translations
Keep both enable and disable actions and preserve the existing enabled label. Assembled Veps rule-object grammar remains low confidence.
2026-09-15 02:41:37 +03:00
Lauri Ojansivu 4f879334c9 Record Veps rules repair and additional mixed-language findings 2026-09-15 02:40:54 +03:00
Lauri Ojansivu 29bf7aa221 Fix unflagged Finnish rules heading in Veps translation 2026-09-15 02:40:32 +03:00
Lauri Ojansivu 84af30f9b5 Record dated Veps URL scheme repair and remaining review 2026-09-15 02:39:51 +03:00
Lauri Ojansivu f10fe2fa5b Fix Veps automatic URL scheme setting translation
Preserve automatic clickability and one scheme per line. Assembled grammar and singular scheme form remain low confidence.
2026-09-15 02:39:29 +03:00
Lauri Ojansivu be42c5771f Verify Veps button dictionary senses from rendered source 2026-09-15 02:38:40 +03:00
Lauri Ojansivu b60ea7bc12 Correct Veps dictionary search evidence for legacy PDF text 2026-09-15 02:38:09 +03:00
Lauri Ojansivu d0f721b481 Extend Veps shortcut review to untranslated popup title 2026-09-15 02:37:10 +03:00
Lauri Ojansivu b9dae272e7 Record dated resident-memory repair and remaining native review 2026-09-15 02:36:19 +03:00
Lauri Ojansivu ef5a6c5bad Fix Tamazight resident-memory diagnostic label
Use native memory-usage and size wording with the precise RSS acronym. Full computing grammar and native expansion of resident set remain under review.
2026-09-15 02:35:57 +03:00
Lauri Ojansivu d30a2f5737 Correct Tamazight memory review and preserve attested alternatives 2026-09-15 02:35:26 +03:00
Lauri Ojansivu efa6b0eb11 Record dated used-memory translation repair and terminology limits 2026-09-15 02:34:47 +03:00
Lauri Ojansivu 06be232017 Fix Tamazight actual used-memory diagnostic wording
Preserve the V8 used-memory scope. Computing memory adaptation, passive grammar and actual-use paraphrase remain low confidence.
2026-09-15 02:34:24 +03:00
Lauri Ojansivu 9570c3af3f Record dated Tamazight reminder repair and review limits 2026-09-15 02:33:33 +03:00
Lauri Ojansivu a6d77ba0e0 Fix Tamazight first due-reminder activity translation
Preserve named activity placeholders and first-reminder wording. Full deadline compound and possessive grammar remain low confidence.
2026-09-15 02:33:12 +03:00
Lauri Ojansivu 36f33b5304 Record CSV schema translation repair and remaining phrase review 2026-09-15 02:29:30 +03:00
Lauri Ojansivu 52b73cacc5 Repair Tamazight CSV and TSV schema warning 2026-09-15 02:29:06 +03:00
Lauri Ojansivu 3797e952ed Document JSON schema translation repair and remaining import terminology 2026-09-15 02:28:25 +03:00
Lauri Ojansivu ac95ce3aad Repair Tamazight JSON schema error wording 2026-09-15 02:28:02 +03:00
Lauri Ojansivu c3bc95dc3f Record accessibility translation scope and disabled page wording conflict 2026-09-15 02:27:04 +03:00
Lauri Ojansivu 68d7f2d899 Document logo wording repairs and remaining contextual review 2026-09-15 02:26:09 +03:00
Lauri Ojansivu 8d9facf9a8 Repair Tamazight logo height hide and navigation labels 2026-09-15 02:25:47 +03:00
Lauri Ojansivu 0c34382f87 Document logo URL translation repairs and remaining spatial review 2026-09-15 02:24:58 +03:00
Lauri Ojansivu ec1f2cb219 Repair Tamazight top left logo image and link URL labels 2026-09-15 02:24:36 +03:00
Lauri Ojansivu b31065a9d0 Document physical heap translation repair and remaining batch validation 2026-09-15 02:23:33 +03:00
Lauri Ojansivu 0b259c2d3d Repair Tamazight physical heap size diagnostic label 2026-09-15 02:23:10 +03:00
Lauri Ojansivu ddc8e9fcab Document V8 context translation repairs and borrowed qualifier limits 2026-09-15 02:22:35 +03:00
Lauri Ojansivu 0f4fc5d227 Repair Tamazight V8 context count diagnostic wording 2026-09-15 02:22:09 +03:00
Lauri Ojansivu 1951b0417a Document garbage flag translation repair and literal identifier rationale 2026-09-15 02:21:15 +03:00
Lauri Ojansivu 8516ab9a72 Repair Tamazight heap garbage diagnostic flag label 2026-09-15 02:20:52 +03:00
Lauri Ojansivu f194046ec2 Document heap capability translation repairs and review limits 2026-09-15 02:20:17 +03:00
Lauri Ojansivu 0f545fd8a7 Repair Tamazight available and executable heap diagnostic labels 2026-09-15 02:19:55 +03:00
Lauri Ojansivu 2f8b930391 Document malloc diagnostic translation repairs and paraphrase limits 2026-09-15 02:19:12 +03:00
Lauri Ojansivu 6481e8bbd6 Repair Tamazight malloc memory and peak diagnostic labels 2026-09-15 02:18:48 +03:00
Lauri Ojansivu dfbe6056fc Record heap limit translation repair and allocation wording review 2026-09-15 02:18:01 +03:00
Lauri Ojansivu 88add30060 Repair Tamazight heap size limit diagnostic 2026-09-15 02:17:39 +03:00
Lauri Ojansivu 9ab9db9611 Document heap diagnostic translation repairs and remaining metric distinctions 2026-09-15 02:16:51 +03:00
Lauri Ojansivu 0567c1aacc Repair Tamazight total and used heap size diagnostics 2026-09-15 02:16:24 +03:00
Lauri Ojansivu b8bffce9c3 Record account protection explanation repair and contextual limits 2026-09-15 02:15:20 +03:00
Lauri Ojansivu 5211bf3152 Repair Tamazight account protection explanatory text 2026-09-15 02:14:56 +03:00
Lauri Ojansivu 64b716d623 Document account protection translation repairs and grammar limits 2026-09-15 02:14:07 +03:00
Lauri Ojansivu 7c58d6c3df Repair Tamazight brute force settings heading and update confirmation 2026-09-15 02:13:44 +03:00
Lauri Ojansivu 4dad59ba12 Record failed attempts translation draft and remaining contextual review 2026-09-15 02:12:56 +03:00
Lauri Ojansivu bf9a929e13 Repair Tamazight failed attempts label with trial and failure terminology 2026-09-15 02:12:34 +03:00
Lauri Ojansivu b1ba19e837 Record native software evidence for Tamazight attempt wording 2026-09-15 02:11:58 +03:00
Lauri Ojansivu 3cc93cb240 Document locked users translation repair and remaining attempt terminology 2026-09-15 02:10:55 +03:00
Lauri Ojansivu e908ec0a2f Repair Tamazight locked users navigation label 2026-09-15 02:10:36 +03:00
Lauri Ojansivu 41dbd148c2 Document due search translation repair and source cutoff discrepancy 2026-09-15 02:09:46 +03:00
Lauri Ojansivu 64e524f27a Repair Tamazight due date search instruction 2026-09-15 02:09:25 +03:00
Lauri Ojansivu b347233c1b Document Tamazight search date hint repairs and contextual review limits 2026-09-15 02:08:34 +03:00
Lauri Ojansivu 66f2a8feed Repair Tamazight created and modified search date hints 2026-09-15 02:08:12 +03:00
Lauri Ojansivu 87323967b3 Record Tamazight drag handle terminology repair and review limits 2026-09-15 02:07:08 +03:00
Lauri Ojansivu b0ad9320f2 Repair Tamazight desktop drag handle label 2026-09-15 02:06:47 +03:00
Lauri Ojansivu 0f73724fa8 Document SMTP port translation repairs and retained terminology limits 2026-09-15 02:05:50 +03:00
Lauri Ojansivu e1c3720715 Repair Tamazight outgoing SMTP port description 2026-09-15 02:05:27 +03:00
Lauri Ojansivu 8f49df189a Record Tamazight SMTP translation repairs and remaining terminology review 2026-09-15 02:04:36 +03:00
Lauri Ojansivu 11fc595a00 Repair Tamazight SMTP labels and test email subject 2026-09-15 02:04:17 +03:00
Lauri Ojansivu cd895cfef7 Document Tamazight owner heading repair and review limits 2026-09-15 02:03:30 +03:00
Lauri Ojansivu 3da9c1f4ee Repair Tamazight card owner export heading 2026-09-15 02:03:11 +03:00
Lauri Ojansivu 8505afdf9e Document list warning repair and pending Transifex language support 2026-09-15 02:02:22 +03:00
Lauri Ojansivu 0f393c5c8f Repair Tamazight list deletion warning 2026-09-15 01:59:17 +03:00
Lauri Ojansivu f7b7da9c3f Document member removal translation repair and preserved placeholders 2026-09-15 01:58:39 +03:00
Lauri Ojansivu 3fd9413b3f Repair Tamazight member removal confirmation 2026-09-15 01:58:20 +03:00
Lauri Ojansivu a026b27dc5 Document Saudi calendar translation repair and sighting grammar limits 2026-09-15 01:57:35 +03:00
Lauri Ojansivu 103457ada4 Repair Tamazight Saudi sighting calendar label 2026-09-15 01:57:15 +03:00
Lauri Ojansivu 65b0fe0ab4 Record Tamazight tabular calendar qualifier evidence limits 2026-09-15 01:56:37 +03:00
Lauri Ojansivu 2c200ab5b9 Document Dzongkha epoch label repairs and native review limits 2026-09-15 01:55:53 +03:00
Lauri Ojansivu 1a174e357a Repair Dzongkha tabular Hijri calendar epoch labels 2026-09-15 01:55:32 +03:00
Lauri Ojansivu 87835255ae Verify Dzongkha epoch and start entries from rendered source 2026-09-15 01:54:51 +03:00
Lauri Ojansivu 1b10527d1b Verify Dzongkha tabular spelling from rendered dictionary page 2026-09-15 01:54:08 +03:00
Lauri Ojansivu fd0b18431f Verify Dzongkha tabular calendar epoch distinction against current CLDR 2026-09-15 01:52:50 +03:00
Lauri Ojansivu 39daf05c88 Document clipboard gesture translation repair and review limits 2026-09-15 01:52:06 +03:00
Lauri Ojansivu 047c860ea3 Repair Tamazight clipboard image gesture instruction 2026-09-15 01:51:47 +03:00
Lauri Ojansivu 29121d44c8 Record clipboard image gesture meaning for translation repair 2026-09-15 01:51:20 +03:00
Lauri Ojansivu aafcae48fb Document private page translation repair and remaining reviews 2026-09-15 01:50:39 +03:00
Lauri Ojansivu 27dbc30c22 Repair Tamazight private page login guidance 2026-09-15 01:50:21 +03:00
Lauri Ojansivu f2c6e77eb2 Document list dependency translation repair and contextual review limits 2026-09-15 01:49:37 +03:00
Lauri Ojansivu 18e1979477 Repair Tamazight linked card list deletion warning 2026-09-15 01:49:18 +03:00
Lauri Ojansivu 8cbcb52451 Document linked card warning repair and native grammar review 2026-09-15 01:48:45 +03:00
Lauri Ojansivu efdf49b29f Repair Tamazight linked card deletion warning 2026-09-15 01:48:26 +03:00
Lauri Ojansivu 9bd8e04d9f Record linked card deletion dependency direction for translation repair 2026-09-15 01:47:46 +03:00
Lauri Ojansivu 32b46051fa Document permanent attachment translation repair and grammar limits 2026-09-15 01:47:13 +03:00
Lauri Ojansivu ecbe3856d2 Repair Tamazight permanent attachment warning 2026-09-15 01:46:53 +03:00
Lauri Ojansivu 6eda842fea Record search limit grammar and parser distinction for translation review 2026-09-15 01:46:15 +03:00
Lauri Ojansivu 04a4f92b45 Document rule instruction repair and computing matching evidence 2026-09-15 01:45:34 +03:00
Lauri Ojansivu d90707d5dc Repair Tamazight blank rule field instruction 2026-09-15 01:45:13 +03:00
Lauri Ojansivu 0a1ce60ed7 Document mobile mode translation repairs and native review limits 2026-09-15 01:44:32 +03:00
Lauri Ojansivu 5f41f83ca3 Repair Tamazight mobile and desktop mode labels 2026-09-15 01:44:14 +03:00
Lauri Ojansivu 9774b20c12 Exclude misleading matching homographs from Tamazight rule repair 2026-09-15 01:43:40 +03:00
Lauri Ojansivu 2a3c8ad7b2 Record blank rule field wildcard meaning for translation repair 2026-09-15 01:42:56 +03:00
Lauri Ojansivu 0a333ce51a Document card export people translation repair and review limits 2026-09-15 01:42:11 +03:00
Lauri Ojansivu 897c89740d Repair Tamazight card export people label 2026-09-15 01:41:52 +03:00
Lauri Ojansivu 98bbc03fcf Record computing disk space translation evidence and limits 2026-09-15 01:41:15 +03:00
Lauri Ojansivu 343971eb86 Document automatic watching translation repair and audit progress 2026-09-15 01:40:39 +03:00
Lauri Ojansivu d0bf777156 Repair Tamazight automatic board watching instruction 2026-09-15 01:40:20 +03:00
Lauri Ojansivu 9a56d1720b Record imported member empty state translation constraints 2026-09-15 01:39:44 +03:00
Lauri Ojansivu b39e4e0ee2 Document due card translation repairs and pending native review 2026-09-15 01:39:11 +03:00
Lauri Ojansivu 3ce7ed2a04 Repair Tamazight due card empty states 2026-09-15 01:38:51 +03:00
Lauri Ojansivu 1a64d5a1fc Record Tamazight possessive placement constraint for notice acceptance 2026-09-15 01:38:08 +03:00
Lauri Ojansivu 61be887618 Verify generic Tamazight acceptance verb from dictionary source 2026-09-15 01:37:33 +03:00
Lauri Ojansivu f37ba5f581 Record missing ownership in legal notice acceptance translation 2026-09-15 01:36:40 +03:00
Lauri Ojansivu 89185d39ca Document legal notice translation repairs and review limits 2026-09-15 01:36:04 +03:00
Lauri Ojansivu 9baa8f69df Repair Tamazight legal notice labels 2026-09-15 01:35:47 +03:00
Lauri Ojansivu 74d2228fbd Document web manifest translation repairs and remaining review 2026-09-15 01:34:59 +03:00
Lauri Ojansivu 7c1c4623d3 Repair Tamazight custom web manifest labels 2026-09-15 01:34:42 +03:00
Lauri Ojansivu 0d6f145961 Document custom head-tag translation repair and audit progress 2026-09-15 01:34:13 +03:00
Lauri Ojansivu 8362a8a2eb Repair Tamazight custom head tag activation label 2026-09-15 01:33:55 +03:00
Lauri Ojansivu 2722961397 Record Tamazight folder evidence and ZIP import constraints 2026-09-15 01:33:15 +03:00
Lauri Ojansivu 8dee03d542 Record attachment permanence terminology evidence and review limits 2026-09-15 01:32:39 +03:00
Lauri Ojansivu 53a6891d59 Record Tamazight import translation repair and remaining review 2026-09-15 01:31:58 +03:00
Lauri Ojansivu cc2b110ba4 Repair Tamazight CSV and TSV import guidance
Preserve paste action and comma or tab separators; Tab loan and full grammar remain low confidence.

Thanks to xet7 !
2026-09-15 01:29:03 +03:00
Lauri Ojansivu 4065b7c91f Record Tamazight checklist terminology revisions
Update dated audit and Upcoming notes with evidence for the noun and remaining contextual limits.

Thanks to xet7 !
2026-09-15 01:28:24 +03:00
Lauri Ojansivu 5434775ba1 Repair Tamazight checklist verification terminology
Revise 49 prior checklist compounds with attested verification noun, preserving prose and placeholders. Full software compound remains low confidence.

Thanks to xet7 !
2026-09-15 01:27:46 +03:00
Lauri Ojansivu b7837bf05b Record Tamazight mapping repair and check spelling evidence
Update dated audit and Upcoming notes; retain prior checklist compounds for renewed terminology review.

Thanks to xet7 !
2026-09-15 01:26:48 +03:00
Lauri Ojansivu 4a28218359 Repair Tamazight import member mapping label
Use attested check verb distinct from light; mapping compound remains low confidence.

Thanks to xet7 !
2026-09-15 01:26:21 +03:00
Lauri Ojansivu f259be34a4 Record translation constraints for search date bounds
Verify inclusive created/modified lower bounds and keep uncertain quantitative Tamazight wording open.

Thanks to xet7 !
2026-09-15 01:25:25 +03:00
Lauri Ojansivu 47883aa91d Record Tamazight filename warning repair progress
Update dated audit and Upcoming notes with contextual uncertainty and lexical evidence.

Thanks to xet7 !
2026-09-15 01:23:53 +03:00
Lauri Ojansivu 327a35b82f Repair Tamazight invalid filename warning
Preserve conditional rejection and upload or rename cancellation; avoid physical invalidity vocabulary. Complete grammar remains low confidence.

Thanks to xet7 !
2026-09-15 01:23:28 +03:00
Lauri Ojansivu 5704470be8 Record newer Aromanian dictionary search results
Verify Bara search with a positive color entry; retain unresolved magenta without misclassifying missing results as language approval.

Thanks to xet7 !
2026-09-15 01:22:39 +03:00
Lauri Ojansivu 2b60bc6ce0 Record second Aromanian color dictionary review
Inspect Cunia dictionary entries and identify the newer Bara dictionary for unresolved magenta attestation. Preserve existing translation and counts.

Thanks to xet7 !
2026-09-15 01:21:41 +03:00
Lauri Ojansivu 8bc4426f53 Record Tamazight search guidance translation repair
Update dated audit and Upcoming notes with lexical evidence and contextual uncertainty.

Thanks to xet7 !
2026-09-15 01:18:15 +03:00
Lauri Ojansivu 35f74fd042 Repair Tamazight case-insensitive search guidance
Preserve letter-case distinction with an A/a example. Complete computing terminology and grammar remain low confidence.

Thanks to xet7 !
2026-09-15 01:17:41 +03:00
Lauri Ojansivu efe7146186 Record Tamazight watch translation repair progress
Update dated audit and concise Upcoming summary with source evidence and grammar review limits.

Thanks to xet7 !
2026-09-15 01:16:38 +03:00
Lauri Ojansivu 45d2b2b2e7 Repair Tamazight watching label and disabled warning
Preserve administrator action and board/card scope using IRCAM monitoring terminology. Complete grammar remains low confidence.

Thanks to xet7 !
2026-09-15 01:16:03 +03:00
Lauri Ojansivu 5104dbaf43 Record source review of Tamazight JSON schema warning
Identify the invalid watch-type caller and keep unverified format terminology open without changing translation counts.

Thanks to xet7 !
2026-09-15 01:15:18 +03:00
Lauri Ojansivu aed519ac5f Record Tamazight import guidance translation repair
Update dated audit and Upcoming notes with lexical evidence and contextual review limits.

Thanks to xet7 !
2026-09-15 01:14:29 +03:00
Lauri Ojansivu 40f06e1d8d Repair Tamazight import error guidance
Preserve possible successful import despite errors and the All Boards location. Probability paraphrase and complete grammar remain low confidence.

Thanks to xet7 !
2026-09-15 01:14:04 +03:00
Lauri Ojansivu 6ceeace0e7 Record Tamazight last administrator translation repair
Update dated audit, verified counts and Upcoming notes with contextual review limits.

Thanks to xet7 !
2026-09-15 01:13:17 +03:00
Lauri Ojansivu 14af25915c Repair Tamazight last administrator warning
Preserve the requirement for at least one administrator, replacing the wrong permission explanation. Complete grammar remains low confidence.

Thanks to xet7 !
2026-09-15 01:12:51 +03:00
Lauri Ojansivu 7ba4642883 Record Tamazight PDF warning translation repair
Update dated audit and Upcoming notes; retain accessibility and contextual grammar reviews.

Thanks to xet7 !
2026-09-15 01:12:07 +03:00
Lauri Ojansivu 9680e2393e Repair Tamazight PDF preview warning
Retain device capability failure and download alternative. Complete contextual grammar remains low confidence.

Thanks to xet7 !
2026-09-15 01:11:41 +03:00
Lauri Ojansivu 2e50c81154 Record Tamazight shortcut translation repair progress
Update dated audit and Upcoming notes with lexical evidence and contextual uncertainty.

Thanks to xet7 !
2026-09-15 01:10:48 +03:00
Lauri Ojansivu 260258983d Repair Tamazight keyboard shortcut status labels
Preserve current enabled/disabled state and opposite click action. Derived passive and complete grammar remain low confidence.

Thanks to xet7 !
2026-09-15 01:10:23 +03:00
Lauri Ojansivu 94549d762a Record Tamazight label warning repair evidence
Update dated audit progress and Upcoming notes, retaining native grammar review limits.

Thanks to xet7 !
2026-09-15 01:09:24 +03:00
Lauri Ojansivu 4f07f43d81 Repair Tamazight label deletion warning
Retain no undo, removal from all cards and destruction of label history. Complete grammatical composition remains low confidence.

Thanks to xet7 !
2026-09-15 01:09:00 +03:00
Lauri Ojansivu d7f32047fc Record Tamazight deletion warning repair progress
Update dated audit and Upcoming notes; distinguish legacy hard-delete wording from active attachment soft deletion.

Thanks to xet7 !
2026-09-15 01:08:06 +03:00
Lauri Ojansivu 53fba52404 Repair Tamazight Planning Poker deletion warning
Preserve irreversibility and loss of all associated actions. Complete contextual grammar remains low confidence.

Thanks to xet7 !
2026-09-15 01:07:42 +03:00
Lauri Ojansivu 884f040d64 Record Tamazight board action translation repairs
Update dated evidence, audit counts and Upcoming notes with contextual review limits.

Thanks to xet7 !
2026-09-15 01:06:46 +03:00
Lauri Ojansivu 7c6688b63e Repair Tamazight card movement and creation rule labels
Preserve destination and new-card semantics using existing terminology and IRCAM lexical evidence. Complete contextual grammar remains low confidence.

Thanks to xet7 !
2026-09-15 01:06:13 +03:00
Lauri Ojansivu 0245682e3e Record Tamazight checkbox-state repair evidence
Update dated audit, uncertainty limits and Upcoming release notes.

Thanks to xet7 !
2026-09-15 01:05:09 +03:00
Lauri Ojansivu 4e8f1b7dde Repair Tamazight checklist trigger state labels
Replace French checked and unchecked labels with state phrases, keeping them distinct from imperative actions. Checkbox terminology and complete grammar remain low confidence.

Thanks to xet7 !
2026-09-15 01:04:29 +03:00
Lauri Ojansivu 723ffbd524 Reconcile dated Tamazight assignee repair audit
Record source commit, verified counts and remaining contextual grammar uncertainty.

Thanks to xet7 !
2026-09-15 01:03:39 +03:00
534 changed files with 39528 additions and 3783 deletions

No files matched your search

+49 -6
View File
@@ -3900,6 +3900,11 @@ jobs:
# continuation comments out the rest of the joined line, leaving
# `docker buildx build` with no platforms and no tags. This block is a
# shell script like any other, and it was written the wrong way first.
# Build once for Docker Hub and GHCR, then copy the published manifest
# to Quay in the next step. Quay can switch to read-only mode after
# this expensive build starts; a single --push across all three
# registries then reports the whole job failed even when the first
# two received a complete image.
# ONE IMAGE NAME, on three registries. wekan-ondra and wekan-gantt-gpl
# are SNAP names - they exist because a snap name cannot be changed once
# people have installed it - and there is nothing for them to be as
@@ -3921,8 +3926,6 @@ jobs:
--build-arg VERSION=${VERSION} \
-t wekanteam/wekan:v${VERSION} \
-t wekanteam/wekan:latest \
-t quay.io/wekan/wekan:v${VERSION} \
-t quay.io/wekan/wekan:latest \
-t ghcr.io/wekan/wekan:v${VERSION} \
-t ghcr.io/wekan/wekan:latest \
--push \
@@ -3960,8 +3963,7 @@ jobs:
# the image deliberately dropped.
want="${WANT}"
rc=0
for image in "wekanteam/wekan:v${VERSION}" "quay.io/wekan/wekan:v${VERSION}" \
"ghcr.io/wekan/wekan:v${VERSION}"; do
for image in "wekanteam/wekan:v${VERSION}" "ghcr.io/wekan/wekan:v${VERSION}"; do
# The format MUST carry the CPU variant. buildx builds linux/arm/v7,
# but the registry records that as architecture "arm" with variant
# "v7" in a SEPARATE field - so an OS/Architecture-only format prints
@@ -3990,6 +3992,45 @@ jobs:
done
exit $rc
- name: Copy published manifest to Quay
run: |
set -uo pipefail
# imagetools copies the existing multi-platform manifest without
# rebuilding every architecture. A Quay-wide read-only outage is
# temporary and affects every user; keep the completed publications
# on Docker Hub and GHCR. Any other refusal remains a real failure.
if output="$(docker buildx imagetools create \
-t "quay.io/wekan/wekan:v${VERSION}" \
-t "quay.io/wekan/wekan:latest" \
"ghcr.io/wekan/wekan:v${VERSION}" 2>&1)"; then
printf '%s\n' "$output"
echo "QUAY_PUBLISHED=true" >> "$GITHUB_ENV"
else
printf '%s\n' "$output"
if printf '%s' "$output" | grep -qi 'System is currently read-only.*write operations are currently suspended'; then
echo "::warning::Quay is in read-only mode; Docker Hub and GHCR were published and verified. Re-run this Docker job when Quay resumes writes to copy the same release manifest."
echo "QUAY_PUBLISHED=false" >> "$GITHUB_ENV"
else
echo "::error::Could not copy the published manifest to Quay; this is not the registry's read-only outage."
exit 1
fi
fi
- name: Verify Quay manifest platforms
if: env.QUAY_PUBLISHED == 'true'
run: |
set -euo pipefail
image="quay.io/wekan/wekan:v${VERSION}"
got="$(docker buildx imagetools inspect "$image" --format '{{range .Manifest.Manifests}}{{.Platform.OS}}/{{.Platform.Architecture}}{{if .Platform.Variant}}/{{.Platform.Variant}}{{end}} {{end}}')"
got="$(printf '%s' "$got" | sed 's#/v8 # #g')"
for plat in $WANT; do
case " $got " in
*" $plat "*) ;;
*) echo "::error::$image has no $plat in its manifest (it has:$got)."; exit 1 ;;
esac
done
echo "OK: $image carries:$got"
# PUSHED IS NOT THE SAME AS PULLABLE BY ANYONE.
#
# The check above asks the registries with the release's own credentials, so
@@ -4055,10 +4096,12 @@ jobs:
}
# The variant names are commented out with the -t lines they went with;
# nothing pushes them, so nothing checks them.
for image in "wekanteam/wekan:v${VERSION}" "quay.io/wekan/wekan:v${VERSION}" \
"ghcr.io/wekan/wekan:v${VERSION}"; do
for image in "wekanteam/wekan:v${VERSION}" "ghcr.io/wekan/wekan:v${VERSION}"; do
anon_check "$image"
done
if [ "${QUAY_PUBLISHED:-false}" = true ]; then
anon_check "quay.io/wekan/wekan:v${VERSION}"
fi
exit $rc
# Always, as the last step: the run summary then answers "what worked and what
+2631 -12
View File
File diff suppressed because it is too large. Load diff
+1 -1
View File
@@ -20,7 +20,7 @@ LABEL org.opencontainers.image.source="https://github.com/wekan/wekan"
# TARGETARCH and TARGETVARIANT are automatically provided by Docker Buildx
ARG TARGETARCH
ARG TARGETVARIANT
ARG VERSION=11.80
ARG VERSION=11.85
ARG DEBIAN_FRONTEND=noninteractive
ENV BUILD_DEPS="apt-utils gnupg wget bzip2 g++ curl libarchive-tools build-essential git ca-certificates python3 unzip"
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v11.80.0"
appVersion: "v11.85.0"
files:
userUploads:
- README.md
@@ -7,6 +7,7 @@ import { Meteor } from 'meteor/meteor';
import { Session } from 'meteor/session';
import { Accounts } from 'meteor/accounts-base';
import { TAPi18n } from '/imports/i18n';
import { cardDateFormat } from '/client/lib/exportLocale';
// ONE url builder for every chart export, every view. There used to be five
// copies of this (gantt.js, frappeGantt.js, dhtmlxGantt.js, timeView.js,
@@ -18,12 +19,11 @@ export function chartExportUrl(chartKey, format) {
const boardId = Session.get('currentBoard');
if (!boardId || !chartKey) return '';
const path = format === 'PDF' ? 'exportPDF' : 'exportExcel';
const user = Meteor.user();
const params = new URLSearchParams({
authToken: Accounts._storedLoginToken() || '',
lang: TAPi18n.getLanguage ? TAPi18n.getLanguage() : 'en',
tz: Intl.DateTimeFormat().resolvedOptions().timeZone || '',
dateFormat: (user && user.profile && user.profile.dateFormat) || 'YYYY-MM-DD',
dateFormat: cardDateFormat(),
});
return `/api/boards/${boardId}/charts/${chartKey}/${path}?${params.toString()}`;
}
+246 -242
View File
@@ -324,194 +324,197 @@ template(name="cardFieldSectionLabels")
+cardButtons(_id=_id boardId=boardId)
template(name="cardFieldSectionDates")
.card-details-group.card-details-group-date-format
hr.card-details-section-rule
.card-details-group-body
if currentBoard.hasAnyAllowsDate
.card-details-item.card-details-item-date-format
+cardSectionHeader(section="date-format" icon="fa-calendar" label="date-format" noRule=true)
if isSectionOpen "date-format"
.card-details-item-content
select.js-date-format-selector
option(value="YYYY-MM-DD" selected="{{#if isDateFormat 'YYYY-MM-DD'}}selected{{/if}}") {{_ 'date-format-yyyy-mm-dd'}}
option(value="DD-MM-YYYY" selected="{{#if isDateFormat 'DD-MM-YYYY'}}selected{{/if}}") {{_ 'date-format-dd-mm-yyyy'}}
option(value="MM-DD-YYYY" selected="{{#if isDateFormat 'MM-DD-YYYY'}}selected{{/if}}") {{_ 'date-format-mm-dd-yyyy'}}
if currentBoard.hasAnyAllowsDate
.card-details-group.card-details-group-date-format
hr.card-details-section-rule
.card-details-group-body
if currentBoard.hasAnyAllowsDate
.card-details-item.card-details-item-date-format
+cardSectionHeader(section="date-format" icon="fa-calendar" label=dateSectionLabel noRule=true)
if isSectionOpen "date-format"
unless isDateFormatForced
.card-details-item-content
select.js-date-format-selector
option(value="YYYY-MM-DD" selected="{{#if isDateFormat 'YYYY-MM-DD'}}selected{{/if}}") {{_ 'date-format-yyyy-mm-dd'}}
option(value="DD-MM-YYYY" selected="{{#if isDateFormat 'DD-MM-YYYY'}}selected{{/if}}") {{_ 'date-format-dd-mm-yyyy'}}
option(value="MM-DD-YYYY" selected="{{#if isDateFormat 'MM-DD-YYYY'}}selected{{/if}}") {{_ 'date-format-mm-dd-yyyy'}}
if isSectionOpen "date-format"
each field in orderedDatesFields
if $eq field "receivedDate"
if currentBoard.allowsReceivedDate
.card-details-item.card-details-item-received
h3.card-details-item-title
i.fa.fa-sign-out
| {{_ 'card-received'}}
if getReceived
+cardReceivedDate(card=this canModifyCard=canModifyCard)
else
if canModifyCard
unless currentUser.isWorker
a.card-label.add-label.js-received-date
i.fa.fa-plus
if isSectionOpen "date-format"
each field in orderedDatesFields
if $eq field "receivedDate"
if currentBoard.allowsReceivedDate
.card-details-item.card-details-item-received
h3.card-details-item-title
i.fa.fa-sign-out
| {{_ 'card-received'}}
if getReceived
+cardReceivedDate(card=this canModifyCard=canModifyCard)
else
if canModifyCard
unless currentUser.isWorker
a.card-label.add-label.js-received-date
i.fa.fa-plus
if $eq field "startDate"
if currentBoard.allowsStartDate
.card-details-item.card-details-item-start
h3.card-details-item-title
i.fa.fa-hourglass-start
| {{_ 'card-start'}}
if getStart
+cardStartDate(card=this canModifyCard=canModifyCard)
else
if canModifyCard
unless currentUser.isWorker
a.card-label.add-label.js-start-date
i.fa.fa-plus
if $eq field "startDate"
if currentBoard.allowsStartDate
.card-details-item.card-details-item-start
h3.card-details-item-title
i.fa.fa-hourglass-start
| {{_ 'card-start'}}
if getStart
+cardStartDate(card=this canModifyCard=canModifyCard)
else
if canModifyCard
unless currentUser.isWorker
a.card-label.add-label.js-start-date
i.fa.fa-plus
if $eq field "dueDate"
if currentBoard.allowsDueDate
.card-details-item.card-details-item-due
h3.card-details-item-title
i.fa.fa-clock-o
| {{_ 'card-due'}}
if getDue
+cardDueDate(card=this canModifyCard=canModifyCard)
else
if canModifyCard
unless currentUser.isWorker
a.card-label.add-label.js-due-date
i.fa.fa-plus
if dueDateChangeCount
.card-details-due-date-changes(title="{{_ 'due-date-changes'}}")
| {{_ 'due-date-changed-times' dueDateChangeCount}}
if $eq field "dueDate"
if currentBoard.allowsDueDate
.card-details-item.card-details-item-due
h3.card-details-item-title
i.fa.fa-clock-o
| {{_ 'card-due'}}
if getDue
+cardDueDate(card=this canModifyCard=canModifyCard)
else
if canModifyCard
unless currentUser.isWorker
a.card-label.add-label.js-due-date
i.fa.fa-plus
if dueDateChangeCount
.card-details-due-date-changes(title="{{_ 'due-date-changes'}}")
| {{_ 'due-date-changed-times' dueDateChangeCount}}
if $eq field "endDate"
if currentBoard.allowsEndDate
.card-details-item.card-details-item-end
h3.card-details-item-title
i.fa.fa-hourglass-end
| {{_ 'card-end'}}
if getEnd
+cardEndDate(card=this canModifyCard=canModifyCard)
else
if canModifyCard
unless currentUser.isWorker
a.card-label.add-label.js-end-date
i.fa.fa-plus
if $eq field "endDate"
if currentBoard.allowsEndDate
.card-details-item.card-details-item-end
h3.card-details-item-title
i.fa.fa-hourglass-end
| {{_ 'card-end'}}
if getEnd
+cardEndDate(card=this canModifyCard=canModifyCard)
else
if canModifyCard
unless currentUser.isWorker
a.card-label.add-label.js-end-date
i.fa.fa-plus
template(name="cardFieldSectionMembers")
.card-details-group.card-details-group-members
hr.card-details-section-rule
.card-details-group-body
if currentBoard.allowsMembers
.card-details-item.card-details-item-members
+cardSectionHeader(section="members" icon="fa-users" label="members" noRule=true)
if isSectionOpen "members"
each userId in getMembers
+userAvatar(userId=userId cardId=_id)
| {{! XXX Hack to hide syntaxic coloration /// }}
if canModifyCard
unless currentUser.isWorker
a.member.add-member.card-details-item-add-button.js-add-members(title="{{_ 'card-members-title'}}")
i.fa.fa-plus
if isSectionOpen "members"
each field in orderedMembersFields
if $eq field "assignee"
if currentBoard.allowsAssignee
.card-details-item.card-details-item-assignees
h3.card-details-item-title
i.fa.fa-user
| {{_ 'assignee'}}
each userId in getAssignees
+userAvatar(userId=userId cardId=_id assignee=true)
| {{! XXX Hack to hide syntaxic coloration /// }}
if canModifyCard
a.assignee.add-assignee.card-details-item-add-button.js-add-assignees(title="{{_ 'assignee'}}")
if currentBoard.hasAnyAllowsUser
.card-details-group.card-details-group-members
hr.card-details-section-rule
.card-details-group-body
if currentBoard.allowsMembers
.card-details-item.card-details-item-members
+cardSectionHeader(section="members" icon="fa-users" label="members" noRule=true)
if isSectionOpen "members"
each userId in getMembers
+userAvatar(userId=userId cardId=_id)
| {{! XXX Hack to hide syntaxic coloration /// }}
if canModifyCard
unless currentUser.isWorker
a.member.add-member.card-details-item-add-button.js-add-members(title="{{_ 'card-members-title'}}")
i.fa.fa-plus
if currentUser.isWorker
unless assigneeSelected
if isSectionOpen "members"
each field in orderedMembersFields
if $eq field "assignee"
if currentBoard.allowsAssignee
.card-details-item.card-details-item-assignees
h3.card-details-item-title
i.fa.fa-user
| {{_ 'assignee'}}
each userId in getAssignees
+userAvatar(userId=userId cardId=_id assignee=true)
| {{! XXX Hack to hide syntaxic coloration /// }}
if canModifyCard
a.assignee.add-assignee.card-details-item-add-button.js-add-assignees(title="{{_ 'assignee'}}")
i.fa.fa-plus
if currentUser.isWorker
unless assigneeSelected
a.assignee.add-assignee.card-details-item-add-button.js-add-assignees(title="{{_ 'assignee'}}")
i.fa.fa-plus
if $eq field "creator"
if currentBoard.allowsCreator
.card-details-item.card-details-item-creator
h3.card-details-item-title
i.fa.fa-user
| {{_ 'creator'}}
if $eq field "creator"
if currentBoard.allowsCreator
.card-details-item.card-details-item-creator
h3.card-details-item-title
i.fa.fa-user
| {{_ 'creator'}}
+userAvatar(userId=userId noRemove=true)
| {{! XXX Hack to hide syntaxic coloration /// }}
+userAvatar(userId=userId noRemove=true)
| {{! XXX Hack to hide syntaxic coloration /// }}
//.card-details-items
//if assigneeSelected
//.card-details-items
if $eq field "requestedBy"
if currentBoard.allowsRequestedBy
.card-details-item.card-details-item-name
h3.card-details-item-title
i.fa.fa-shopping-cart
| {{_ 'requested-by'}}
if canModifyCard
unless currentUser.isWorker
+inlinedForm(classNames="js-card-details-requester")
+editCardRequesterForm
else
each userId in getRequesters
+userAvatar(userId=userId cardId=_id noRemove=true)
if getRequestedBy
+viewer
= getRequestedBy
.card-details-person-controls
a.member.add-member.card-details-item-add-button.js-select-requester(title="{{_ 'requested-by'}}")
i.fa.fa-plus
a.js-open-inlined-form(
title="{{#if getRequestedBy}}{{_ 'edit'}}{{else}}{{_ 'add'}}{{/if}}"
aria-label="{{#if getRequestedBy}}{{_ 'edit'}}{{else}}{{_ 'add'}}{{/if}}")
if getRequestedBy
i.fa.fa-pencil-square-o(aria-hidden="true")
else
i.fa.fa-plus(aria-hidden="true")
else
each userId in getRequesters
+userAvatar(userId=userId noRemove=true)
if getRequestedBy
+viewer
= getRequestedBy
//.card-details-items
//if assigneeSelected
//.card-details-items
if $eq field "requestedBy"
if currentBoard.allowsRequestedBy
.card-details-item.card-details-item-name
h3.card-details-item-title
i.fa.fa-shopping-cart
| {{_ 'requested-by'}}
if canModifyCard
unless currentUser.isWorker
+inlinedForm(classNames="js-card-details-requester")
+editCardRequesterForm
else
each userId in getRequesters
+userAvatar(userId=userId cardId=_id noRemove=true)
if getRequestedBy
+viewer
= getRequestedBy
.card-details-person-controls
a.member.add-member.card-details-item-add-button.js-select-requester(title="{{_ 'requested-by'}}")
i.fa.fa-plus
a.js-open-inlined-form(
title="{{#if getRequestedBy}}{{_ 'edit'}}{{else}}{{_ 'add'}}{{/if}}"
aria-label="{{#if getRequestedBy}}{{_ 'edit'}}{{else}}{{_ 'add'}}{{/if}}")
if getRequestedBy
i.fa.fa-pencil-square-o(aria-hidden="true")
else
i.fa.fa-plus(aria-hidden="true")
else
each userId in getRequesters
+userAvatar(userId=userId noRemove=true)
if getRequestedBy
+viewer
= getRequestedBy
if $eq field "assignedBy"
if currentBoard.allowsAssignedBy
.card-details-item.card-details-item-name
h3.card-details-item-title
i.fa.fa-user-plus
| {{_ 'assigned-by'}}
if canModifyCard
unless currentUser.isWorker
+inlinedForm(classNames="js-card-details-assigner")
+editCardAssignerForm
else
each userId in getAssigners
+userAvatar(userId=userId cardId=_id noRemove=true)
if getAssignedBy
+viewer
= getAssignedBy
.card-details-person-controls
a.member.add-member.card-details-item-add-button.js-select-assigner(title="{{_ 'assigned-by'}}")
i.fa.fa-plus
a.js-open-inlined-form(
title="{{#if getAssignedBy}}{{_ 'edit'}}{{else}}{{_ 'add'}}{{/if}}"
aria-label="{{#if getAssignedBy}}{{_ 'edit'}}{{else}}{{_ 'add'}}{{/if}}")
if getAssignedBy
i.fa.fa-pencil-square-o(aria-hidden="true")
else
i.fa.fa-plus(aria-hidden="true")
else
each userId in getAssigners
+userAvatar(userId=userId noRemove=true)
if getAssignedBy
+viewer
= getAssignedBy
if $eq field "assignedBy"
if currentBoard.allowsAssignedBy
.card-details-item.card-details-item-name
h3.card-details-item-title
i.fa.fa-user-plus
| {{_ 'assigned-by'}}
if canModifyCard
unless currentUser.isWorker
+inlinedForm(classNames="js-card-details-assigner")
+editCardAssignerForm
else
each userId in getAssigners
+userAvatar(userId=userId cardId=_id noRemove=true)
if getAssignedBy
+viewer
= getAssignedBy
.card-details-person-controls
a.member.add-member.card-details-item-add-button.js-select-assigner(title="{{_ 'assigned-by'}}")
i.fa.fa-plus
a.js-open-inlined-form(
title="{{#if getAssignedBy}}{{_ 'edit'}}{{else}}{{_ 'add'}}{{/if}}"
aria-label="{{#if getAssignedBy}}{{_ 'edit'}}{{else}}{{_ 'add'}}{{/if}}")
if getAssignedBy
i.fa.fa-pencil-square-o(aria-hidden="true")
else
i.fa.fa-plus(aria-hidden="true")
else
each userId in getAssigners
+userAvatar(userId=userId noRemove=true)
if getAssignedBy
+viewer
= getAssignedBy
template(name="cardFieldSectionDependencies")
//- #6688: Board Settings / Card can hide the Dependencies section.
@@ -548,79 +551,80 @@ template(name="cardFieldSectionDependencies")
i.fa.fa-plus
| {{_ 'add-dependency'}}
template(name="cardFieldSectionSort")
.card-details-group.card-details-group-sort
hr.card-details-section-rule
.card-details-group-body
if currentBoard.allowsCardSortingByNumber
.card-details-item.card-details-sort-order
+cardSectionHeader(section="sort" icon="fa-sort-numeric-asc" label="sort" noRule=true)
if isSectionOpen "sort"
if canModifyCard
+inlinedForm(classNames="js-card-details-sort")
+editCardSortOrderForm
else
a.js-open-inlined-form
+viewer
= sort
if isSectionOpen "sort"
each field in orderedSortFields
if $eq field "showLists"
if currentBoard.allowsShowLists
.card-details-item.card-details-show-lists
h3.card-details-item-title
i.fa.fa-list
| {{_ 'list'}}
if canModifyCard
details.card-details-list-picker
summary
each currentSwimlaneListsSorted
if isCurrentListId _id
+viewer
= title
div.card-details-list-options(role="listbox" aria-label="{{_ 'list'}}")
each currentSwimlaneListsSorted
div.js-select-card-details-list-option(role="option" tabindex="0" data-list-id="{{_id}}" aria-selected="{{#if isCurrentListId _id}}true{{else}}false{{/if}}")
+viewer
= title
if hasVisibleSortFields
.card-details-group.card-details-group-sort
hr.card-details-section-rule
.card-details-group-body
if currentBoard.allowsCardSortingByNumber
.card-details-item.card-details-sort-order
+cardSectionHeader(section="sort" icon="fa-sort-numeric-asc" label="sort" noRule=true)
if isSectionOpen "sort"
if canModifyCard
+inlinedForm(classNames="js-card-details-sort")
+editCardSortOrderForm
else
each currentSwimlaneListsSorted
if isCurrentListId _id
+viewer
= title
a.js-open-inlined-form
+viewer
= sort
//.card-details-items
if $eq field "spentTime"
if currentBoard.allowsSpentTime
if getSpentTime
.card-details-item.card-details-item-spent
if getIsOvertime
h3.card-details-item-title
| {{_ 'overtime-hours'}}
if isSectionOpen "sort"
each field in orderedSortFields
if $eq field "showLists"
if currentBoard.allowsShowLists
.card-details-item.card-details-show-lists
h3.card-details-item-title
i.fa.fa-list
| {{_ 'list'}}
if canModifyCard
details.card-details-list-picker
summary
each currentSwimlaneListsSorted
if isCurrentListId _id
+viewer
= title
div.card-details-list-options(role="listbox" aria-label="{{_ 'list'}}")
each currentSwimlaneListsSorted
div.js-select-card-details-list-option(role="option" tabindex="0" data-list-id="{{_id}}" aria-selected="{{#if isCurrentListId _id}}true{{else}}false{{/if}}")
+viewer
= title
else
h3.card-details-item-title
| {{_ 'spent-time-hours'}}
+cardSpentTime
each currentSwimlaneListsSorted
if isCurrentListId _id
+viewer
= title
//- #6688: the two timers each have a Board Settings / Card toggle,
like Spent time above; before they rendered on every card.
if $eq field "flowtime"
if currentBoard.allowsFlowtime
.card-details-item.card-details-item-flow
h3.card-details-item-title
i.fa.fa-bolt
| {{_ 'flowtime'}}
+cardFlowtime
//.card-details-items
if $eq field "spentTime"
if currentBoard.allowsSpentTime
if getSpentTime
.card-details-item.card-details-item-spent
if getIsOvertime
h3.card-details-item-title
| {{_ 'overtime-hours'}}
else
h3.card-details-item-title
| {{_ 'spent-time-hours'}}
+cardSpentTime
if $eq field "pomodoro"
if currentBoard.allowsPomodoro
.card-details-item.card-details-item-pomodoro
h3.card-details-item-title
i.fa.fa-clock-o
| {{_ 'pomodoro'}}
+cardPomodoro
//- #6688: the two timers each have a Board Settings / Card toggle,
like Spent time above; before they rendered on every card.
if $eq field "flowtime"
if currentBoard.allowsFlowtime
.card-details-item.card-details-item-flow
h3.card-details-item-title
i.fa.fa-bolt
| {{_ 'flowtime'}}
+cardFlowtime
//.card-details-items
if $eq field "pomodoro"
if currentBoard.allowsPomodoro
.card-details-item.card-details-item-pomodoro
h3.card-details-item-title
i.fa.fa-clock-o
| {{_ 'pomodoro'}}
+cardPomodoro
//.card-details-items
template(name="cardFieldSectionCustomFields")
//- The heading is here for EVERY card the reader may write to, not only
@@ -1466,7 +1470,7 @@ template(name="setCardColorPopup")
label(for="cardColorWheel") {{_ 'custom-color'}}
input.js-card-color-wheel#cardColorWheel(type="color" value=currentColorHex title="{{_ 'custom-color'}}")
button.primary.confirm.js-submit {{_ 'save'}}
button.js-remove-color.negate.wide.right {{_ 'unset-color'}}
button.js-remove-color.negate.wide.right {{_ 'remove-btn'}}
template(name="cardDeletePopup")
p {{_ "card-delete-pop"}}
+17 -6
View File
@@ -1,3 +1,4 @@
import { dateDisplayPreferences, isDateFormatForced } from '/client/lib/dateDisplay';
import { ReactiveCache } from '/imports/reactiveCache';
import { TAPi18n } from '/imports/i18n';
import { ReactiveDict } from 'meteor/reactive-dict';
@@ -770,6 +771,17 @@ Template.registerHelper('isCurrentListId', function isCurrentListId(listId) {
Template.registerHelper('orderedVoteAndPokerFields', sectionHelper('voteAndPoker'));
}
Template.cardFieldSectionSort.helpers({
hasVisibleSortFields() {
const board = this.board();
return !!(board && (
board.allowsCardSortingByNumber || board.allowsShowLists ||
board.allowsFlowtime || board.allowsPomodoro ||
(board.allowsSpentTime && this.getSpentTime())
));
},
});
Template.cardDetails.helpers({
// #4448: the order the reorderable card-detail sections (Labels, Dates,
// Members, Dependencies, Sort, Custom Fields, Vote/Poker, Description)
@@ -1095,6 +1107,7 @@ Template.cardDetails.events({
}
},
'change .js-date-format-selector'(event) {
if (isDateFormatForced()) return;
const dateFormat = event.target.value;
if (Meteor.userId()) {
Meteor.call('changeDateFormat', dateFormat);
@@ -1524,13 +1537,11 @@ Template.cardDetails.events({
// function: isDateFormat" the instant that section rendered and broke
// opening the card popup entirely. Registered globally, like isSectionOpen
// just below, so every template can see it.
Template.registerHelper('isDateFormatForced', isDateFormatForced);
Template.registerHelper('dateSectionLabel', () => isDateFormatForced() ? 'date' : 'date-format');
Template.registerHelper('isDateFormat', function isDateFormat(format) {
const currentUser = ReactiveCache.getCurrentUser();
if (!currentUser) {
const stored = window.localStorage.getItem('dateFormat') || 'YYYY-MM-DD';
return format === stored;
}
return currentUser.getDateFormat() === format;
return dateDisplayPreferences().dateFormat === format;
});
Template.cardDetails.helpers({
+20 -7
View File
@@ -221,9 +221,11 @@ Template.checklists.events({
// #4017: apply/append a template card's checklists onto this already
// existing card, alongside whatever checklists it already has.
'click .js-copy-checklist-from-template': Popup.open('copyChecklistFromTemplate'),
'submit .js-add-checklist'(event, tpl) {
async 'submit .js-add-checklist'(event, tpl) {
event.preventDefault();
const textarea = tpl.find('textarea.js-add-checklist-item');
const form = event.currentTarget;
if (form.dataset.submitting === 'true') return;
const textarea = form.querySelector('textarea.js-add-checklist-item');
const title = textarea.value.trim();
let cardId = Template.currentData().cardId;
const card = ReactiveCache.getCard(cardId);
@@ -242,11 +244,22 @@ Template.checklists.events({
}
if (title) {
Checklists.insert({
cardId,
title,
sort: sortIndex,
});
form.dataset.submitting = 'true';
try {
// Keep the client insert path used by this form; wait for the server
// acknowledgement before accepting another submission.
await new Promise((resolve, reject) => {
Checklists.insert({ cardId, title, sort: sortIndex }, (error, id) => {
if (error) reject(error);
else resolve(id);
});
});
} catch (error) {
delete form.dataset.submitting;
alert(error.reason || error.message || TAPi18n.__('server-error'));
return;
}
textarea.value = '';
tpl.$('.js-close-inlined-form').click();
setTimeout(() => {
tpl.$('.add-checklist-item')
+3 -3
View File
@@ -384,7 +384,7 @@ template(name="setListWidthPopup")
unless isAutoWidth
label {{_ 'set-list-width-value'}}
p
input.list-width-value(type="number" value="{{ listWidthValue }}" min="270")
input.list-width-value(type="number" value="{{ listWidthValue }}" min="{{ listWidthMinimum }}" step="1")
input.list-width-apply(type="submit" value="{{_ 'apply'}}")
input.list-width-error
if canChangeAutoWidth
@@ -398,7 +398,7 @@ template(name="setListWidthPopup")
template(name="listWidthErrorPopup")
.list-width-invalid
p {{_ 'list-width-error-message'}} '>=270'
p {{_ 'list-width-error-message'}}
button.full.js-back-view(type="submit") {{_ 'cancel'}}
template(name="setListColorPopup")
@@ -413,7 +413,7 @@ template(name="setListColorPopup")
label(for="listColorWheel") {{_ 'custom-color'}}
input.js-list-color-wheel#listColorWheel(type="color" value=currentColorHex title="{{_ 'custom-color'}}")
button.primary.confirm.js-submit {{_ 'save'}}
button.js-remove-color.negate.wide.right {{_ 'unset-color'}}
button.js-remove-color.negate.wide.right {{_ 'remove-btn'}}
//- List sync settings (docs/Features/ImportExport/Sync.md). UI wiring only -
calls the EXISTING setListSyncSource/hasListSyncCredential/syncListNow
+6 -2
View File
@@ -23,6 +23,7 @@ import {
import {
DEFAULT_LIST_WIDTH,
MIN_LIST_WIDTH,
parseListWidthInput,
normalizeListWidth,
} from '/models/lib/listWidth';
// List sync (docs/Features/ImportExport/Sync.md): UI wiring only, calls the
@@ -1094,6 +1095,9 @@ function setAnonFixedListWidth(boardId, width) {
}
Template.setListWidthPopup.helpers({
listWidthMinimum() {
return MIN_LIST_WIDTH;
},
listWidthValue() {
const list = Template.currentData();
// #5729 In fixed width mode the input edits the single per-board value.
@@ -1188,9 +1192,9 @@ Template.setListWidthPopup.events({
'click .list-width-apply'(event, tpl) {
const list = Template.currentData();
const boardId = list.boardId;
const width = parseInt(tpl.$('.list-width-value').val(), 10);
const width = parseListWidthInput(tpl.$('.list-width-value').val());
if (!width || width < MIN_LIST_WIDTH) {
if (width === null) {
tpl.$('.list-width-error').click();
return;
}
+16 -8
View File
@@ -1,12 +1,26 @@
import { ReactiveCache } from '/imports/reactiveCache';
import { findWhere } from '/imports/lib/collectionHelpers';
import { TAPi18n } from '/imports/i18n';
import { Markdown } from 'meteor/wekan-markdown';
import Attachments from '/models/attachments';
import { Utils } from '/client/lib/utils';
import { memberMatchesTerm } from '/models/lib/memberAutocomplete';
import autosize from 'autosize';
var converter = require('@wekanteam/html-to-markdown');
function syncMarkdownExternalLinkPattern(setting) {
const pattern = {
prefix: (setting && setting.externalLinkPatternPrefix) || '',
urlTemplate: (setting && setting.externalLinkPatternUrl) || '',
};
const current = Markdown.externalLinkPattern.get();
// ReactiveVar compares objects by identity. Setting a new object on every
// viewer render would invalidate that viewer again indefinitely.
if (current?.prefix !== pattern.prefix || current?.urlTemplate !== pattern.urlTemplate) {
Markdown.externalLinkPattern.set(pattern);
}
}
const specialHandles = [
{userId: 'board_members', username: 'board_members'},
{userId: 'card_members', username: 'card_members'},
@@ -373,10 +387,7 @@ Blaze.Template.registerHelper(
// wekan/wekan#3069: same same-render-pass reasoning as alwaysShowCodeAsText
// above, for the external issue-tracker autolink pattern.
if (typeof Markdown !== 'undefined' && Markdown.externalLinkPattern) {
Markdown.externalLinkPattern.set({
prefix: (setting && setting.externalLinkPatternPrefix) || '',
urlTemplate: (setting && setting.externalLinkPatternUrl) || '',
});
syncMarkdownExternalLinkPattern(setting);
}
let content = Blaze.toHTML(view.templateContentBlock);
// Admin Panel / Features: when "render links as plain text" is enabled, every
@@ -534,10 +545,7 @@ Meteor.startup(() => {
Markdown.alwaysShowCodeAsText.set(!!(setting && setting.alwaysShowCodeAsText));
}
if (typeof Markdown !== 'undefined' && Markdown.externalLinkPattern) {
Markdown.externalLinkPattern.set({
prefix: (setting && setting.externalLinkPatternPrefix) || '',
urlTemplate: (setting && setting.externalLinkPatternUrl) || '',
});
syncMarkdownExternalLinkPattern(setting);
}
});
-4
View File
@@ -1541,10 +1541,6 @@ body.mobile-mode #header-quick-access .allBoards {
margin: 7px;
padding: 0;
}
#headerIsSettingDatabaseCallDone {
display: none;
}
/* ── Small screens: home ICON only, never the "All Boards" label ─────────────
This block is last in the file on purpose.
+14 -13
View File
@@ -52,19 +52,20 @@ template(name="header")
= headerTitleText
// Logo - visible; on mobile constrained by CSS
unless currentSetting.hideLogo
if currentSetting.customTopLeftCornerLogoImageUrl
if currentSetting.customTopLeftCornerLogoLinkUrl
a.header-logo(href="{{currentSetting.customTopLeftCornerLogoLinkUrl}}" alt="{{currentSetting.productName}}" title="{{currentSetting.productName}}")
img(src="{{currentSetting.customTopLeftCornerLogoImageUrl}}" alt="{{currentSetting.productName}}" height="{{#if currentSetting.customTopLeftCornerLogoHeight}}#{currentSetting.customTopLeftCornerLogoHeight}{{else}}27{{/if}}" width="auto" margin="0" padding="0")
unless currentSetting.customTopLeftCornerLogoLinkUrl
img.header-logo(src="{{currentSetting.customTopLeftCornerLogoImageUrl}}" height="{{#if currentSetting.customTopLeftCornerLogoHeight}}#{currentSetting.customTopLeftCornerLogoHeight}{{else}}27{{/if}}" width="auto" margin="0" padding="0" alt="{{currentSetting.productName}}" title="{{currentSetting.productName}}")
unless currentSetting.customTopLeftCornerLogoImageUrl
//- `header-logo` on all three branches - a custom logo that links, one
that does not, and the stock one - so the bar can space the logo the
same way whichever is drawn. docs/Features/Page/Header.md
div#headerIsSettingDatabaseCallDone.header-logo
img(src="{{pathFor '/logo-header.png'}}" alt="{{headerLogoAlt}}" title="{{headerLogoAlt}}")
if logoSettingsReady
unless currentSetting.hideLogo
if currentSetting.customTopLeftCornerLogoImageUrl
if currentSetting.customTopLeftCornerLogoLinkUrl
a.header-logo(href="{{currentSetting.customTopLeftCornerLogoLinkUrl}}" alt="{{currentSetting.productName}}" title="{{currentSetting.productName}}")
img(src="{{currentSetting.customTopLeftCornerLogoImageUrl}}" alt="{{currentSetting.productName}}" height="{{#if currentSetting.customTopLeftCornerLogoHeight}}#{currentSetting.customTopLeftCornerLogoHeight}{{else}}27{{/if}}" width="auto" margin="0" padding="0")
unless currentSetting.customTopLeftCornerLogoLinkUrl
img.header-logo(src="{{currentSetting.customTopLeftCornerLogoImageUrl}}" height="{{#if currentSetting.customTopLeftCornerLogoHeight}}#{currentSetting.customTopLeftCornerLogoHeight}{{else}}27{{/if}}" width="auto" margin="0" padding="0" alt="{{currentSetting.productName}}" title="{{currentSetting.productName}}")
unless currentSetting.customTopLeftCornerLogoImageUrl
//- `header-logo` on all three branches - a custom logo that links, one
that does not, and the stock one - so the bar can space the logo the
same way whichever is drawn. docs/Features/Page/Header.md
div.header-logo
img(src="{{pathFor '/logo-header.png'}}" alt="{{headerLogoAlt}}" title="{{headerLogoAlt}}")
// Mobile/desktop mode toggle (swapped with zoom)
// #6680 follow-up: .js-header-collapsible-icon marks every icon the new
+4 -22
View File
@@ -66,6 +66,7 @@ Template.header.onCreated(function () {
const templateInstance = this;
templateInstance.currentSetting = new ReactiveVar();
templateInstance.isLoading = new ReactiveVar(false);
templateInstance.subscribe('setting');
// Publish the page's path so the browser tab can carry it too. Here rather
// than in `Utils`, because this is the one place that already works it out
@@ -74,30 +75,11 @@ Template.header.onCreated(function () {
headerPathVar.set(headerFullPath());
});
Meteor.subscribe('setting', {
onReady() {
templateInstance.currentSetting.set(ReactiveCache.getCurrentSetting());
let currSetting = templateInstance.currentSetting.curValue;
if (
currSetting &&
currSetting !== undefined &&
currSetting.customLoginLogoImageUrl !== undefined &&
document.getElementById('headerIsSettingDatabaseCallDone') != null
)
document.getElementById(
'headerIsSettingDatabaseCallDone',
).style.display = 'none';
else if (
document.getElementById('headerIsSettingDatabaseCallDone') != null
)
document.getElementById(
'headerIsSettingDatabaseCallDone',
).style.display = 'block';
return this.stop();
},
});
});
Template.header.helpers({
logoSettingsReady() {
return Template.instance().subscriptionsReady();
},
// The page's title, beside the house icon. A board's own title wherever there
// is a board; otherwise the page's, by route name. Two helpers rather than
// one string, because a translated title has to go through {{_ }} and a board
+16 -15
View File
@@ -25,23 +25,24 @@ template(name="main")
template(name="userFormsLayout")
+recoveryMaintenance
section.auth-layout
if currentSetting.hideLogo
h1.at-form-landing-logo
br
br
unless currentSetting.hideLogo
h1.at-form-landing-logo
if currentSetting.customLoginLogoImageUrl
if currentSetting.customLoginLogoLinkUrl
a(href="{{currentSetting.customLoginLogoLinkUrl}}")
if logoSettingsReady
if currentSetting.hideLogo
h1.at-form-landing-logo
br
br
unless currentSetting.hideLogo
h1.at-form-landing-logo
if currentSetting.customLoginLogoImageUrl
if currentSetting.customLoginLogoLinkUrl
a(href="{{currentSetting.customLoginLogoLinkUrl}}")
img(src="{{currentSetting.customLoginLogoImageUrl}}" alt="{{currentSetting.productName}}" width="300" height="auto")
br
unless currentSetting.customLoginLogoLinkUrl
img(src="{{currentSetting.customLoginLogoImageUrl}}" alt="{{currentSetting.productName}}" width="300" height="auto")
br
else
img(src="{{pathFor '/wekan-logo.svg'}}" alt="" width="300" height="auto")
br
unless currentSetting.customLoginLogoLinkUrl
img(src="{{currentSetting.customLoginLogoImageUrl}}" alt="{{currentSetting.productName}}" width="300" height="auto")
br
else
img(src="{{pathFor '/wekan-logo.svg'}}" alt="" width="300" height="auto")
br
if currentSetting.textBelowCustomLoginLogo
hr
section.textBelowCustomLoginLogo
+8 -6
View File
@@ -29,6 +29,11 @@ Template.userFormsLayout.onCreated(function () {
const templateInstance = this;
templateInstance.currentSetting = new ReactiveVar();
templateInstance.isLoading = new ReactiveVar(false);
templateInstance.subscribe('setting', {
onReady() {
templateInstance.currentSetting.set(ReactiveCache.getCurrentSetting());
},
});
// The Meteor accounts-* OAuth providers the server reports enabled (keys
// only) and whether e-mailed one-time-code login is on; both are filled by
// the getAuthenticationsEnabled call in onRendered.
@@ -64,12 +69,6 @@ Template.userFormsLayout.onCreated(function () {
}
});
Meteor.subscribe('setting', {
onReady() {
templateInstance.currentSetting.set(ReactiveCache.getCurrentSetting());
return this.stop();
},
});
}
});
@@ -272,6 +271,9 @@ Template.userFormsLayout.onDestroyed(() => {
});
Template.userFormsLayout.helpers({
logoSettingsReady() {
return Template.instance().subscriptionsReady();
},
// One entry per enabled Meteor accounts-* provider: key, icon class and the
// translated provider name for {{_ 'sign-in-with' label}}. No credential
// ever reaches this list - the server sends keys only.
+1 -1
View File
@@ -22,7 +22,7 @@ template(name="myAttachments")
= list.title
each card in list.myAttachmentCards
.my-attachments-card-wrapper
a.my-attachments-card-title.js-my-attachment-card(href=card.originRelativeUrl)
a.my-attachments-card-title.js-my-attachment-card(href=card.originRelativeUrl data-card-id=card._id data-board-id=card.boardId)
i.fa.fa-external-link
= card.title
.attachment-gallery.my-attachments-gallery
+5 -4
View File
@@ -205,11 +205,12 @@ Template.myAttachments.events({
// would navigate away from this page and lose the reader's place in a
// list that spans many boards.
'click .js-my-attachment-card'(evt) {
if (evt.button !== 0 || evt.ctrlKey || evt.metaKey || evt.shiftKey || evt.altKey) return;
// `each card in ...` binds a lexical variable, not a Blaze data context.
// Read the identifiers from the link even when its child was clicked (#6702).
const { cardId, boardId } = evt.currentTarget.dataset;
if (!cardId || !boardId) return;
evt.preventDefault();
const card = Blaze.getData(evt.currentTarget);
if (!card || !card._id) return;
const cardId = card._id;
const boardId = card.boardId;
Meteor.subscribe('popupCardData', cardId, {
onReady() {
Session.set('popupCardId', cardId);
+1 -1
View File
@@ -41,7 +41,7 @@ template(name="myCards")
= list.title
each card in list.myCards
.my-cards-card-wrapper
a.minicard-wrapper.js-minicard(href=card.originRelativeUrl)
a.minicard-wrapper.js-minicard(href=card.originRelativeUrl data-card-id=card._id data-board-id=card.boardId)
+minicard(card)
if $eq myCardsView 'table'
.wrapper
+5 -4
View File
@@ -184,11 +184,12 @@ Template.myCards.events({
// tableView.js (Board Table view) already use: subscribe the popup-only
// publication, then open the shared `cardDetails` popup template.
'click .js-minicard'(evt) {
if (evt.button !== 0 || evt.ctrlKey || evt.metaKey || evt.shiftKey || evt.altKey) return;
// `each card in ...` binds a lexical variable, not a Blaze data context.
// Read the identifiers from the link even when its child was clicked (#6702).
const { cardId, boardId } = evt.currentTarget.dataset;
if (!cardId || !boardId) return;
evt.preventDefault();
const card = Blaze.getData(evt.currentTarget);
if (!card || !card._id) return;
const cardId = card._id;
const boardId = card.boardId;
Meteor.subscribe('popupCardData', cardId, {
onReady() {
Session.set('popupCardId', cardId);
@@ -19,19 +19,19 @@ template(name="notificationSettingsPopup")
| {{_ labelKey}}
.notification-settings-popup-options
if isAdminScope
a.flex.js-notify-option(data-service="{{service}}" data-value="true" class="{{#if onSelected}}is-checked{{/if}}")
.materialCheckBox
a.flex.js-notify-option(data-service="{{service}}" data-value="true")
.materialCheckBox(class="{{#if onSelected}}is-checked{{/if}}")
span {{_ 'yes'}}
a.flex.js-notify-option(data-service="{{service}}" data-value="false" class="{{#if offSelected}}is-checked{{/if}}")
.materialCheckBox
a.flex.js-notify-option(data-service="{{service}}" data-value="false")
.materialCheckBox(class="{{#if offSelected}}is-checked{{/if}}")
span {{_ 'no'}}
else
a.flex.js-notify-option(data-service="{{service}}" data-value="" class="{{#if inheritSelected}}is-checked{{/if}}")
.materialCheckBox
a.flex.js-notify-option(data-service="{{service}}" data-value="")
.materialCheckBox(class="{{#if inheritSelected}}is-checked{{/if}}")
span {{_ 'default'}}
a.flex.js-notify-option(data-service="{{service}}" data-value="true" class="{{#if onSelected}}is-checked{{/if}}")
.materialCheckBox
a.flex.js-notify-option(data-service="{{service}}" data-value="true")
.materialCheckBox(class="{{#if onSelected}}is-checked{{/if}}")
span {{_ 'yes'}}
a.flex.js-notify-option(data-service="{{service}}" data-value="false" class="{{#if offSelected}}is-checked{{/if}}")
.materialCheckBox
a.flex.js-notify-option(data-service="{{service}}" data-value="false")
.materialCheckBox(class="{{#if offSelected}}is-checked{{/if}}")
span {{_ 'no'}}
@@ -35,10 +35,10 @@ function currentValue(scope, service) {
Template.notificationSettingsPopup.helpers({
isAdminScope() {
return Template.currentData().scope === 'admin';
return Template.instance().data.scope === 'admin';
},
notifyServiceRows() {
const scope = Template.currentData().scope;
const scope = Template.instance().data.scope;
return Object.keys(NOTIFICATION_SERVICES).map(service => {
const value = currentValue(scope, service);
return {
@@ -60,7 +60,7 @@ Template.notificationSettingsPopup.events({
const service = target.dataset.service;
const rawValue = target.dataset.value;
const value = rawValue === 'true' ? true : rawValue === 'false' ? false : null;
const scope = Template.currentData().scope;
const scope = instance.data.scope;
if (scope === 'admin') {
// Inherit is not offered at admin scope - it IS the base default - so
@@ -360,6 +360,14 @@ template(name='tableVisibilityModeSettings')
a.flex.js-toggle-all-boards-hide
.materialCheckBox#hide-board-member-list(class="{{#if currentSetting.hideBoardMemberList}}is-checked{{/if}}")
span {{_ 'board-member-list'}}
li.tableVisibilityMode-form
a.flex.js-toggle-all-boards-hide
.materialCheckBox#hide-date-format(class="{{#if currentSetting.hideDateFormat}}is-checked{{/if}}")
span {{_ 'date-format-for-everyone'}}:
select.wekan-form-control#global-date-format(aria-label="{{_ 'date-format-for-everyone'}}")
option(value="YYYY-MM-DD" selected="{{#if isGlobalDateFormat 'YYYY-MM-DD'}}selected{{/if}}") {{_ 'date-format-yyyy-mm-dd'}}
option(value="DD-MM-YYYY" selected="{{#if isGlobalDateFormat 'DD-MM-YYYY'}}selected{{/if}}") {{_ 'date-format-dd-mm-yyyy'}}
option(value="MM-DD-YYYY" selected="{{#if isGlobalDateFormat 'MM-DD-YYYY'}}selected{{/if}}") {{_ 'date-format-mm-dd-yyyy'}}
li.tableVisibilityMode-form
.title {{_ 'wait-spinner'}}
+selectSpinnerName(spinnerName=currentSetting.spinnerName)
@@ -487,6 +495,7 @@ template(name='tableVisibilityModeSettings')
.title {{_ 'custom-login-logo-image-url'}}
.form-group
input.wekan-form-control#custom-login-logo-image-url(type="text", placeholder="" value="{{currentSetting.customLoginLogoImageUrl}}")
input.js-site-logo-upload(type="file" data-kind="login" accept="image/png,image/jpeg,image/gif,image/webp" aria-label="{{_ 'upload'}} {{_ 'custom-login-logo-image-url'}}")
li.tableVisibilityMode-form
.title {{_ 'custom-login-logo-link-url'}}
.form-group
@@ -499,6 +508,9 @@ template(name='tableVisibilityModeSettings')
.title {{_ 'custom-top-left-corner-logo-image-url'}}
.form-group
input.wekan-form-control#custom-top-left-corner-logo-image-url(type="text", placeholder="" value="{{currentSetting.customTopLeftCornerLogoImageUrl}}")
input.js-site-logo-upload(type="file" data-kind="header" accept="image/png,image/jpeg,image/gif,image/webp" aria-label="{{_ 'upload'}} {{_ 'custom-top-left-corner-logo-image-url'}}")
li.tableVisibilityMode-form
span.js-site-logo-upload-status(role="status" aria-live="polite")
li.tableVisibilityMode-form
.title {{_ 'custom-top-left-corner-logo-link-url'}}
.form-group
+34
View File
@@ -901,6 +901,9 @@ Template.setting.events({
});
Template.tableVisibilityModeSettings.helpers({
isGlobalDateFormat(format) {
return (ReactiveCache.getCurrentSetting()?.globalDateFormat || 'YYYY-MM-DD') === format;
},
// Multitenancy option D: every group of this pane except "Change color" writes
// the INSTANCE settings, so only the site admin is shown them.
isSiteAdmin() {
@@ -947,6 +950,33 @@ function saveVisibilitySettings($set) {
}
Template.tableVisibilityModeSettings.events({
async 'change input.js-site-logo-upload'(event, tpl) {
const input = event.currentTarget;
const file = input.files?.[0];
if (!file) return;
const status = tpl.find('.js-site-logo-upload-status');
const kind = input.dataset.kind;
input.value = '';
if (file.size > 2 * 1024 * 1024 || !['image/png', 'image/jpeg', 'image/gif', 'image/webp'].includes(file.type)) {
if (status) status.textContent = 'Upload a PNG, JPEG, GIF or WebP image smaller than 2 MB';
return;
}
if (status) status.textContent = TAPi18n.__('upload') + '…';
try {
const base64 = await new Promise((resolve, reject) => {
const reader = new FileReader();
reader.onerror = () => reject(reader.error);
reader.onload = () => resolve(String(reader.result).split(',')[1]);
reader.readAsDataURL(file);
});
const url = await Meteor.callAsync('uploadSiteLogo', kind, base64);
const field = tpl.find(kind === 'login' ? '#custom-login-logo-image-url' : '#custom-top-left-corner-logo-image-url');
if (field) field.value = url;
if (status) status.textContent = TAPi18n.__('save');
} catch (error) {
if (status) status.textContent = error.reason || error.message || 'Upload failed';
}
},
// ── All Boards ────────────────────────────────────────────────────────────
// Boards visibility, board activities, the two All Boards lists and the spinner.
//
@@ -982,11 +1012,15 @@ Template.tableVisibilityModeSettings.events({
['#hide-board-activities', 'hideBoardActivitiesOnAllBoards'],
['#hide-card-counter-list', 'hideCardCounterList'],
['#hide-board-member-list', 'hideBoardMemberList'],
['#hide-date-format', 'hideDateFormat'],
]) {
if ($(selector).length) {
$set[key] = $(selector).hasClass('is-checked');
}
}
if ($('#global-date-format').length) {
$set.globalDateFormat = visibilityText('#global-date-format');
}
if ($('#spinnerName').length) {
$set.spinnerName = visibilityText('#spinnerName');
}
+19
View File
@@ -765,4 +765,23 @@ body.sidebar-resizing-active {
.pop-over-list-subheading + .pop-over-list {
margin-top: 0;
}
/* #6699: this editor uses real, labelled checkboxes. Undo all three parts
of forms.css's material-checkbox hiding rule in this popup only. */
.wip-limit-groups input[type="checkbox"] {
display: inline-block;
visibility: visible;
position: static;
inset-inline-start: auto;
width: 16px;
height: 16px;
flex: 0 0 16px;
margin-inline-end: 6px;
appearance: auto;
cursor: pointer;
}
.wip-limit-groups label.flex {
align-items: center;
cursor: pointer;
}
+2 -2
View File
@@ -217,7 +217,7 @@ template(name="boardChangeBackgroundImagePopup")
Save it belongs beside.
.buttonsContainer.board-background-image-buttons
input.primary(type="submit" value="{{_ 'save'}}")
button.js-remove-background-image.negate.card-details-red(type="button") {{_ 'unset-color'}}
button.js-remove-background-image.negate.card-details-red(type="button") {{_ 'remove-background-image'}}
hr
//- ...and the same question answered from this machine instead of from a
URL, with what has been uploaded to this board under it - so an upload is
@@ -702,7 +702,7 @@ template(name="wipLimitGroupsPopup")
.wip-limit-group-name
input.js-wip-limit-group-name(type="text" value="{{name}}" placeholder="{{_ 'wip-limit-group-name-placeholder'}}")
.wip-limit-group-lists
each ../boardLists
each boardLists
label.flex
input.js-wip-limit-group-list-toggle(type="checkbox" data-list-id="{{_id}}" checked="{{isListInGroup _id ../listIds}}")
| {{title}}
+1 -1
View File
@@ -529,7 +529,7 @@ Template.boardMenuPopup.events({
'click .js-change-background-image': Popup.open('boardChangeBackgroundImage'),
'click .js-open-notification-settings': Popup.open('notificationSettings', {
titleKey: 'notifications',
scope: 'board',
dataContext: { scope: 'board' },
}),
'click .js-board-info-on-my-boards': Popup.open('boardInfoOnMyBoards'),
'click .js-change-language': Popup.open('changeLanguage'),
@@ -313,4 +313,4 @@ template(name="setSelectionColorPopup")
if(isSelected color)
i.fa.fa-check
button.primary.confirm.js-submit {{_ 'save'}}
button.js-remove-color.negate.wide.right {{_ 'unset-color'}}
button.js-remove-color.negate.wide.right {{_ 'remove-btn'}}
@@ -164,7 +164,7 @@ template(name="setSwimlaneColorPopup")
// Buttons aligned left too
.flush-left
button.primary.confirm.js-submit(style="margin-inline-start:0") {{_ 'save'}}
button.js-remove-color.negate.wide.right(style="margin-inline-start:8px") {{_ 'unset-color'}}
button.js-remove-color.negate.wide.right(style="margin-inline-start:8px") {{_ 'remove-btn'}}
template(name="setSwimlaneHeightPopup")
.flush-left.swimlane-height-popup
+2 -2
View File
@@ -329,7 +329,7 @@ Template.changeAvatarPopup.events({
event.preventDefault();
event.stopPropagation();
if (this && typeof this.link === 'function') {
const avatarUrl = this.link();
const avatarUrl = `/cdn/storage/avatars/${this._id}`;
changeAvatarSetAvatar(tpl, avatarUrl);
}
},
@@ -495,7 +495,7 @@ Template.adminChangeAvatarPopup.events({
event.preventDefault();
event.stopPropagation();
if (this && typeof this.link === 'function') {
const avatarUrl = this.link();
const avatarUrl = `/cdn/storage/avatars/${this._id}`;
adminChangeAvatarSetAvatar(tpl, avatarUrl);
}
},
+1 -1
View File
@@ -295,7 +295,7 @@ template(name="changeFontPopup")
label {{_ 'text-color'}}
.color-wheel-wrap
input.js-ui-text-color(type="color" value=textColorHex title="{{_ 'text-color'}}")
a.js-reset-text-color(class="{{#unless hasTextColor}}disabled{{/unless}}") {{_ 'unset-color'}}
a.js-reset-text-color(class="{{#unless hasTextColor}}disabled{{/unless}}") {{_ 'remove-btn'}}
template(name="changeSettingsPopup")
ul.pop-over-list
+1 -1
View File
@@ -93,7 +93,7 @@ Template.memberMenuPopup.events({
'click .js-change-color': Popup.open('changeColor'),
'click .js-open-notification-settings': Popup.open('notificationSettings', {
titleKey: 'notifications',
scope: 'member',
dataContext: { scope: 'member' },
}),
'click .js-change-font': Popup.open('changeFont'),
'click .js-change-avatar': Popup.open('changeAvatar'),
+10 -4
View File
@@ -1,3 +1,4 @@
const { resolveDateFormat } = require('/models/lib/dateFormatPolicy');
import { ReactiveCache } from '/imports/reactiveCache';
import { formatDateByUserPreference } from '/imports/lib/dateUtils';
import { formatJalaliDate, gregorianToJalali } from '/imports/lib/jalaliDate';
@@ -5,21 +6,26 @@ import { TAPi18n } from '/imports/i18n';
const { CALENDAR_SYSTEMS, formatNativeCalendarDate, nativeCalendarParts } = require('/imports/lib/calendarSystems');
const { calendarMonthRange, shiftedDay } = require('/imports/lib/calendarMonth');
export function isDateFormatForced() {
return !!ReactiveCache.getCurrentSetting()?.hideDateFormat;
}
export function dateDisplayPreferences() {
const setting = ReactiveCache.getCurrentSetting();
const user = ReactiveCache.getCurrentUser();
if (user) {
return {
calendarSystem: user.getCalendarSystem ? user.getCalendarSystem() : 'gregorian',
dateFormat: user.getDateFormat ? user.getDateFormat() : 'YYYY-MM-DD',
dateFormat: resolveDateFormat(user.getDateFormat ? user.getDateFormat() : null, setting),
};
}
try {
return {
calendarSystem: window.localStorage.getItem('calendarSystem') || 'gregorian',
dateFormat: window.localStorage.getItem('dateFormat') || 'YYYY-MM-DD',
dateFormat: resolveDateFormat(window.localStorage.getItem('dateFormat'), setting),
};
} catch (error) {
return { calendarSystem: 'gregorian', dateFormat: 'YYYY-MM-DD' };
return { calendarSystem: 'gregorian', dateFormat: resolveDateFormat(null, setting) };
}
}
@@ -46,7 +52,7 @@ export function formatDateForDisplay(date, includeTime = true, gregorianFormatte
);
if (system) return text || '';
}
return gregorianFormatter
return gregorianFormatter && !isDateFormatForced()
? gregorianFormatter(value)
: formatDateByUserPreference(value, dateFormat, includeTime);
}
+5 -3
View File
@@ -1,3 +1,4 @@
const { resolveDateFormat } = require('/models/lib/dateFormatPolicy');
import { ReactiveCache } from '/imports/reactiveCache';
import { TAPi18n } from '/imports/i18n';
@@ -44,12 +45,13 @@ export function browserTimezone() {
// back to, which the server cannot see at all. An export of a card should print
// its dates the way the card prints them.
export function cardDateFormat() {
const setting = ReactiveCache.getCurrentSetting();
try {
const currentUser = ReactiveCache.getCurrentUser();
if (currentUser) return currentUser.getDateFormat();
return window.localStorage.getItem('dateFormat') || 'YYYY-MM-DD';
if (currentUser) return resolveDateFormat(currentUser.getDateFormat(), setting);
return resolveDateFormat(window.localStorage.getItem('dateFormat'), setting);
} catch (error) {
return 'YYYY-MM-DD';
return resolveDateFormat(null, setting);
}
}
+2 -1
View File
@@ -1,3 +1,4 @@
import { resolveDateFormat } from '/models/lib/dateFormatPolicy';
import { Blaze } from 'meteor/blaze';
import { Tracker } from 'meteor/tracker';
import { ReactiveCache } from '/imports/reactiveCache';
@@ -410,7 +411,7 @@ class AdvancedFilter {
user && typeof user.getDateFormat === 'function'
? user.getDateFormat()
: 'YYYY-MM-DD';
dayFirst = /^D/.test(dateFormat);
dayFirst = /^D/.test(resolveDateFormat(dateFormat, ReactiveCache.getCurrentSetting()));
} catch (error) {
dayFirst = false;
}
+4
View File
@@ -83,6 +83,10 @@ Template.inlinedForm.events({
// in Member Settings submits on plain Enter (Shift+Enter for a newline).
const submitOnEnter = !!ReactiveCache.getCurrentUser()?.hasSubmitOnEnter?.();
if (isSubmitKey(evt, { submitOnEnter })) {
// #6700: the enclosing checklist has its own Enter handler. A handled
// submit key must not bubble to it and create a second document.
evt.preventDefault();
evt.stopPropagation();
tpl.find('button[type=submit]').click();
}
},
+1 -1
View File
@@ -116,7 +116,7 @@ window.Popup = new (class {
title: self._getTitle(popupName, openOptions.titleKey),
depth: self._stack.length,
offset: self._getOffset(openerElement, popupName),
dataContext: (this && this.currentData && this.currentData()) || (options && options.dataContextIfCurrentDataIsUndefined) || this,
dataContext: openOptions.dataContext || (this && this.currentData && this.currentData()) || (options && options.dataContextIfCurrentDataIsUndefined) || this,
});
const $contentWrapper = $('.content-wrapper')
@@ -19,6 +19,12 @@ Each row is ticked when the thing is **hidden**.
setting, read once by the feed, so turning it off restores each board's own value.
- **Card counter list** — hide the per-list card counts on All Boards.
- **Board member list** — hide the member avatars on All Boards.
- **Date Format for everyone** — check this and choose `YYYY-MM-DD`,
`DD-MM-YYYY`, or `MM-DD-YYYY`, then save. Cards use that format for members
and anonymous viewers, overriding personal date-format preferences. Opened
cards show **Date** instead of **Date Format** and hide the format dropdown.
Unchecking restores personal formats; stored dates and calendar choices
are unchanged.
- **Wait Spinner** — which spinner is shown while something loads. See
[Wait Spinners](../../Troubleshooting/Wait-Spinners.md).
+3 -4
View File
@@ -6,11 +6,11 @@
4. Paste multiple lines of text
5. Click Save
<img src="https://wekan.fi/multiline/multiline1.png" width="60%" alt="Multiple lines to Checklist" />
![](multiline/multiline1.png)
## Card ☰ Menu / Copy Checklist Template to Many Cards
<img src="https://wekan.fi/multiline/multiline2.png" width="60%" alt="Checklist Template to Many Cards 1" />
![](multiline/multiline2.png)
## Edit titles and descriptions of Many Cards
```
@@ -18,6 +18,5 @@
{"title":"Second card title","description":"Second card description"},
{"title":"Last card title","description":"Last card description"} ]
```
<img src="https://wekan.fi/multiline/multiline3.png" width="60%" alt="Checklist Template to Many Cards 2" />
![](multiline/multiline3.png)
@@ -25,3 +25,69 @@ technical color glossary. Romanian dictionary entries are not Aromanian
attestation. Preserve the existing value until that evidence establishes
the correct repair or retention. No acceptance, replacement, or browser
verification is claimed by this research; the Aromanian finding remains pending.
## Second dictionary inspected — 2026-09-15
Cunia's Dictsiunar a Limbãljei Armãneascã (2010), obtained from the native
Vivliuteca library, adds an independent dictionary source to the earlier
English–Aromanian review:
https://vivliuteca.org/wp-content/uploads/2025/06/dictsiunararmanescu_dec2008.pdf
Library catalogue: https://vivliuteca.org/carti/
The complete PDF has 1,134 pages. Text extraction finished successfully.
No match was found for magenta, maghenta, magjent, fucsin, fuxin or fuchsin.
Actual extracted PDF page 608 was inspected: entries run from magear to
magh, maghir, magnet variants and magurlãchi, with no magenta entry in that
alphabetical sequence. This narrows dictionary evidence; extraction and
spelling searches cannot prove absence of all possible native color names.
No visual scan inspection or native-speaker approval is claimed.
The native Dixi site identifies searchable dictionaries by Cunia and a
newer Mariana Bara dictionary (2024): https://www.dixionline.net/
Its landing page alone does not attest a magenta translation. Next source
is the newer dictionary's actual color entries, rather than Romanian-only
search results or treating missing dictionary entries as an invalid loan.
The local magenta value is retained pending attestation, not classified as
reviewed-correct. No translation or ledger change: original pending 177,
Aromanian 1, restored 4. Broader reviews remain open. No remote writes.
## Newer Bara dictionary queried — 2026-09-15
The actual Dixi search form was submitted as a read-only dictionary query,
selecting DictTiCathiDzuua (Mariana Bara 2024), Di iutsido (definitions and
other-language glosses) and 25 entries per page. Queries for magenta and
fucsin returned zero result articles. A positive-control hrom query returned
hromã with English colour, Romanian culoare and French couleur, explicitly
attributed to Bara 2024. Thus this review inspected a working dictionary
search, rather than assuming the landing page was a lexical result.
Source and form: https://www.dixionline.net/index.php
This establishes only the absence of entries returned for those two query
strings in that selected source. It does not exclude alternative spellings
or descriptions, and does not prove the magenta loanword wrong. No full
color inventory or native-speaker approval is claimed. Do not replace
magenta with the attested generic word colour, pink or purple.
No locale/ledger/count change: original pending 177, Aromanian 1, restored
4. The newer dictionary search closes the previous unexecuted source check,
while actual magenta attestation remains open. Broader review continues.
No remote writes.
## Descriptive magenta repair — 2026-09-15
Source commit `f18a925c2` replaces the English-valued `magenta` with
`arosh-vinjit`, a transparent red-violet description. The locale already uses
`arosh` for red and `vinjit` for purple. The Aromanian Wiktionary entries
independently attest `rosh`/`arosh` as red and `vinit`/`vinjit` as a
violet-blue color; the 2023 field study identifies the same color domain.
Magenta is a reddish-purple color, so the compound distinguishes it from both
component labels without claiming an unattested dedicated loanword.
No source directly attests the exact compound, so it remains low confidence
pending native review. Four focused suites pass for the exact composition,
negative English placeholder and all 234 locale inventories. Ledger 20,086;
the original audit has zero pending rows and zero restored rows after the
separate Basque review. No browser test or remote write ran.
File diff suppressed because it is too large. Load diff
+400 -34
View File
@@ -1,13 +1,13 @@
# Translation audit progress
Audit date: **2026-09-12**. Last updated: **2026-09-15**.
Audit date: **2026-09-12**. Last updated: **2026-09-16**.
| Status | Flagged keys |
| --- | ---: |
| Corrected | 15,717 |
| Restored pre-pull; awaiting validation | 4 |
| Reviewed; retained unchanged | 4,174 |
| Pending review or repair | 186 |
| Corrected | 15,880 |
| Restored pre-pull; awaiting validation | 0 |
| Reviewed; retained unchanged | 4,201 |
| Pending review or repair | 0 |
| Total tracked | 20,081 |
Summary consolidated **2026-09-14**, local commit `75b0a015b`. Locale counts
@@ -16,60 +16,426 @@ Updater fix **2026-09-14**, `9c7a845a3`: `audit-progress.mjs --update-summary`
refreshes both tables together, including added/resolved locales, and rejects
inconsistent totals. Dated fix notes and uncertain classifications survive.
Latest translation fix: **2026-09-15**, `3a090333c` — Tamazight multi-
selection and label shortcut text replace Arabic/French. Keep add/remove
versus selection-add behavior and both 1-9 ranges. Four focused suites pass.
Ledger 19,821; original pending 187 (Tamazight 92), restored 4 unchanged.
Complete selection compound and contextual grammar remain low confidence;
broader reviews remain open.
Latest translation fix: **2026-09-15**, `1cf93f7e52` — replace two
Arabic-seeded Tamazight card and list URL labels with native link,
card and list terms. The focused source, negative, ledger and
234-locale checks pass. Ledger: **22,302**; zgh has **102**
Arabic-script values awaiting semantic classification. Complete
phrases still need fluent review. The original flagged queue remains
at zero pending; this broader review is unfinished.
Earlier translation fix: **2026-09-15**, `18a11d121` — replace six
Arabic/French Tamazight My Boards, My Cards, To boards, Close Board
and board/card removal labels with existing native components. My Cards
exactly reuses the local shortcut phrase; board/card member removal
reuses the native Remove Member verb and from-board/card constructions.
Focused UI-source, negative, token, exact-ledger and 234-locale checks
pass. Ledger: **22,300**; zgh has **104** Arabic-script values still
awaiting classification. Full compound grammar needs fluent review.
Earlier translation fix: **2026-09-15**, `ff5a286b5` — replace the mixed
French/Arabic Tamazight Check Version button and failure message.
The verb `ⵙⵙⵉⴷⴻⴷ` is glossed as “check” in a Tamazight verb list;
the version noun is independently attested in MediaWiki, and the
number/could-not terms reuse local phrases. Focused UI-key, exact-ledger,
token and 234-locale checks pass. The full failure clause is **low
confidence** pending native grammar review. Ledger: **22,294**; zgh has
**109** Arabic-script values awaiting classification.
Earlier translation fix: **2026-09-15**, `413b4ef40` — replace five
Tamazight Admin Panel version labels with the native `ⵜⵓⵏⵖⵉⵍⵜ`
version noun attested in MediaWiki's Standard Moroccan Tamazight locale.
The Meteor, MongoDB, FerretDB and Node proper names remain exact;
MongoDB's compatible qualifier is preserved. Focused production-source,
token, exact-ledger and 234-locale checks pass. Ledger: **22,292**; zgh
has **111** Arabic-script values awaiting classification. Complete noun
compounds and the adjacent Check Version/error messages remain open.
Earlier translation fix: **2026-09-15**, `63da3d3c9` — replace six
Arabic-seeded Tamazight labels with native import-board, invite-people,
unknown-name, type, size and restore terms already present in the locale.
Production UI wiring, English meanings, exact correction records, source
tokens and 234-locale completeness pass. Ledger: **22,287**; zgh has **113**
Arabic-script values still awaiting classification. Native phrase review
remains open.
Earlier translation fix: **2026-09-15**, `e11a2654c` — align five
Arabic Tamazight popup and copy-link labels with native terms
already used by Member Settings, Move Card, Leave Board,
Remove Member and card/text link-copy actions. The focused
source-wiring, positive/negative, exact-ledger and 234-locale
checks pass. Ledger: **22,281**. The zgh file has **119**
Arabic-script values awaiting classification. Complete native
wording remains under review.
Earlier translation fix: **2026-09-15**, `2b22dd0be` — replace
three Arabic Tamazight common UI nouns. Comments and Link reuse
the locale's existing card/comment and search-link terms. Email
Addresses uses the [IRCAM media glossary's](https://biblio.ircam.ma/pmb/uploads/publications/133.pdf)
attested `ansa` → `ansiwn` address plural alongside the local
email noun. The focused positive/negative test, exact-token ledger
and 234-locale checks pass. Ledger: **22,276**. The zgh file has
**124** Arabic-script values still awaiting classification;
full native phrase review remains open.
Earlier translation fix: **2026-09-15**, `79e5a93b4` — replace 13
Arabic Tamazight common popup titles with local native board,
card, label, language, settings, notification and profile terms.
The full phrases remain low confidence pending fluent review.
Focused positive/negative, ledger and 234-locale checks pass.
Ledger: **22,273**. The zgh file has **127** Arabic-script
values awaiting classification. The original flagged table is
unchanged because these titles were outside that queue.
Earlier translation fix: **2026-09-15**, `f0ceb8d72` — separate the
shared `unset-color` status from six UI removal buttons. Every
locale already has generic `remove-btn` and specific
`remove-background-image` action keys, so the buttons use those;
zgh's Arabic “Unset” status becomes native local not-set prose.
The source/negative, Jade, ledger, 234-locale and focused Chromium
UI checks pass (1 browser test). Ledger: **22,260**. The zgh
file has **140** Arabic-script values awaiting classification.
Earlier translation fix: **2026-09-15**, `87c049571` — replace eight
Arabic Tamazight board/visibility/watch and color popup labels.
Rename-board and three choose-color titles exactly reuse local
native labels; visibility/watch/set-color use native components.
Their full command grammar remains low confidence. Focused
positive/negative, ledger and 234-locale checks pass.
Ledger: **22,259**. The zgh file has **141** Arabic-script
values awaiting semantic classification. The shared `unset-color`
key still spans action buttons and status text and needs a
separate context-aware repair.
Earlier translation fix: **2026-09-15**, `79d58098f` — replace nine
Arabic Tamazight board-background color/image controls and popup
titles. Local native change-color, upload-background image,
add/remove and board-backdrop terms are reused; `URL` stays
technical. The previous board title said “screen background”;
the new title says board background. Full image/backdrop compound
grammar remains low confidence. Focused positive/negative,
ledger and 234-locale checks pass. Ledger: **22,251**.
The zgh file has **149** Arabic-script values awaiting
semantic classification.
Earlier translation fix: **2026-09-15**, `ada7e3533` — replace nine
Arabic/French Tamazight activity and show/notify messages. The
production UI uses `activity-sent` for a restored card and
`activity-excluded` for board-member removal, so those messages
now use the locale's native restore/remove verbs. Exact `%s`
tokens remain. Full clause grammar and the activity-notification
compound need fluent review. Focused production-source,
positive/negative, ledger and 234-locale checks pass.
Ledger: **22,242**. The zgh file has **158** Arabic-script
values awaiting semantic classification.
Earlier translation fix: **2026-09-15**, `f10daf2ae` — replace four
Arabic/French Tamazight active, inactive and admin status labels.
The replacements reuse native active-person, inactive-member and
status terms; isolated adjectives and full compound grammar remain
low confidence. Focused positive/negative, ledger and 234-locale
checks pass. Ledger: **22,233**. The zgh file has **166**
Arabic-script values awaiting semantic classification.
Earlier translation fix: **2026-09-15**, `65c667419` — replace three
French/Arabic Tamazight filter and sort control labels with local
native hide, list-without-cards, filter and sort terms. Complete
sentence grammar and masculine status agreement remain low
confidence. Focused positive/negative, ledger and 234-locale
checks pass. Ledger: **22,229**. The zgh file has **168**
Arabic-script values awaiting semantic classification.
Earlier translation fix: **2026-09-15**, `bea96680e` — replace two
mixed French/Arabic and Arabic Tamazight creator labels in the
filter and minicard settings with native local creator, filter and
minicard terms. Complete phrase grammar remains low confidence.
Focused positive/negative, ledger and 234-locale checks pass.
Ledger: **22,226**. The zgh file has **169** Arabic-script values
awaiting semantic classification.
Earlier translation fix: **2026-09-15**, `32c2d9575` — repair 15
Tamazight search operators and predicates. Ten reviewed one-word
search codes remain portable; native short status and description
terms replace French/Arabic seeds. Exact zgh fill exceptions protect
the codes while ordinary English prose still appears as missing.
Status nuances need fluent review. Focused, fill-negative, ledger and
234-locale checks pass. Ledger: **22,224**. The zgh file has **171**
Arabic-script values awaiting semantic classification. Two existing
native multiword operator names remain unparseable by the current
search grammar; they need a compatible parser/UI solution.
Earlier translation fix: **2026-09-15**, `c365e2cf6` — repair 13
Tamazight search-operator values seeded in Arabic or French. Native
full names reuse local terms; short syntax aliases use portable
`b`, `s`, `l` and `m` without collisions. The swimlane/path term
still needs fluent UI review. Focused parser-source, related-search,
ledger and 234-locale checks pass. Ledger: **22,209**. The zgh file
has **173** Arabic-script values awaiting semantic classification.
Earlier translation fix: **2026-09-15**, `d1c4a7290` — replace six
Arabic/French Tamazight board, page, list and swimlane labels with
locally established native terms. Exact `%s` placeholders survive.
Complete sentence grammar and the path/swimlane metaphor remain low
confidence pending native review. Focused, ledger and 234-locale
checks pass. Ledger: **22,196** at that commit. The zgh file then
contained **178** Arabic-script values needing classification, including
possible intentional abbreviations and symbols.
Earlier translation fix: **2026-09-15**, `e114ffde8` — replace French
Tamazight sky and Arabic gold/silver labels with native terms. IRCAM
directly glosses sky and gold; a Moroccan Berber dictionary attests
silver. Gold/silver metal nouns as CSS-color labels and silver's
standard spelling remain low confidence. Focused, ledger and 234-locale
checks pass. Ledger: **22,190**.
Earlier translation fix: **2026-09-15**, `06678678d` — replace French
Tamazight pink with IRCAM's exact color word and Arabic dark-green with
native green/dark components. The combined shade phrase remains low
confidence pending fluent review. Focused, ledger and 234-locale
checks pass. Ledger: **22,187**.
Earlier translation fix: **2026-09-15**, `ce5092966` — replace French
Tamazight `email-address` with a native address-and-email phrase
attested in MediaWiki's zgh software translation. Focused, ledger and
234-locale checks pass. The separate Arabic `email-addresses` value
remains in the wrong-language review queue. Ledger: **22,185**.
Earlier translation fix: **2026-09-15**, `6f14c9a8c` — replace the
Tigrinya blue word in Tigre's copied slate-blue label with the
corpus-glossed Tigre term. The technical slate loan and full compound
remain low confidence pending fluent review. Independently attested
red and black Tigre color labels are retained despite their matching
Tigrinya values. Focused, ledger and 234-locale checks pass.
Ledger: **22,184**; exact Tigre/Tigrinya overlap: **226**,
including **22** previously attested shared forms and **204** unclassified values.
Earlier translation fix: **2026-09-15**, `de0cc0ce4` — replace Tigre's
dark-green label copied from Tigrinya with a compound based on corpus
terms for dark and green. Focused and ledger checks pass. The complete
color compound remains low confidence pending fluent Tigre review.
Ledger: **22,183** records at that commit; exact Tigre/Tigrinya overlap:
**227**, with **205** full values then unclassified.
Earlier translation fix: **2026-09-15**, `ae76ba79d` — replace the
Tigrinya-copied noun in Tigre's DDP transport label with a
corpus-glossed Tigre term while preserving the technical identifier.
Focused, runtime, ledger and 234-locale checks pass. Ledger:
**22,182** records at that commit; exact Tigre/Tigrinya overlap: **228**, with
**206** full values then unclassified. Complete phrase grammar
remains low confidence pending native review.
Earlier translation fix: **2026-09-15**, `31a238d91` — repair the
last two obsolete list-width errors in Cherokee and Wolaytta,
plus Wolaytta's English width label. The focused, Cherokee runtime,
ledger, 234-locale and full old-threshold scan pass. Correction
ledger: **22,181**; stale list-width values: **0**. Cherokee's
mathematical whole-number use and Wolaytta's precise technical width
and count terms remain low confidence pending native review. This
closes the old-threshold queue, **not** the broader wrong-language
and seeded-value audit.
Earlier translation fix: **2026-09-15**, `21319c523` — replace the
corrupt Xitsonga list-width label and error with native width,
list and whole-number terms plus the inclusive 200-pixel rule.
Focused, runtime, ledger and 234-locale checks pass. The singular
whole-number form and full clause remain low confidence for native
review. Correction ledger: **22,178**; stale list-width values: **2**.
Earlier translation fix: **2026-09-15**, `83c8d0c2b` — repair
Aymara and Quechua list-width labels and obsolete errors. Native
list, width and whole-number terms replace Spanish/English seeds;
the inclusive 200-pixel minimum matches the popup's rule. Focused,
runtime, ledger and 234-locale completeness checks pass. Quechua
dialect fit and both complete clauses remain low confidence for
native review. Correction ledger: **22,176**; stale list-width
values: **3**.
Earlier translation fix: **2026-09-15**, `c18780d5b` — correct
Hawaiian, Klingon and Inuktitut list-width errors using inclusive
200-pixel bounds. The Hawaiian value replaces corrupt pseudo-language
seeds with attested width and whole-number words. Focused, runtime,
ledger and 234-locale completeness checks pass; complete clauses
remain low confidence pending native grammar review. Correction
ledger: **22,172**; stale list-width values: **5**.
Earlier translation fix: **2026-09-15**, `bb2d2dfeb` — correct the
obsolete list-width minimum in Nahuatl, Volapük and Tamazight,
retaining their local list, width and number words. The focused,
Nahuatl progress, runtime, ledger and 234-locale checks pass.
All three full clauses remain low confidence pending native grammar
review. Correction ledger: **22,169**; stale list-width values: **8**.
Earlier translation fix: **2026-09-15**, `beddec7cb` — repair Serbian
list-width controls as one consistent “листа” setting, plus the
obsolete error messages in Venetian, Veps, Twi and Tongan. The four
regional complete clauses remain low confidence pending native
grammar review. Focused UI-string, Serbian runtime, ledger and
234-locale completeness checks pass. Seventeen exact values added
to the ledger: **22,166** records; stale list-width values: **11**.
Earlier translation fix: **2026-09-15**, `3eaeac9e7` — repair ten
Moroccan Arabic, Tatar, Upper Sorbian, Kashubian, Silesian, Pulaar,
Wolof, Greenlandic, Luganda and Bislama list-width values. Tatar,
Upper Sorbian, Luganda and Bislama source sentences used Turkish,
Czech or English requirement prose. All ten complete clauses remain
low confidence pending native grammar review; wider wrong-language
seeding remains open. Focused, runtime, Greenlandic progress, ledger
and 234-locale completeness checks pass. One earlier Silesian ledger
row was consolidated: **22,149** records; stale list-width values:
**16**.
Earlier translation fix: **2026-09-15**, `92ea2a0f0` — repair ten
Acehnese, Bambara, Ewe, Venda, Turkmen, Waray, Nyanja, Sakha,
Chuvash and Urdu list-width messages. Urdu's English transliteration
is replaced by Urdu prose. Seven complete clauses remain low
confidence pending native grammar review. The focused suite, Venda
runtime lookup, older Ewe/Chuvash suites, ledger and 234-locale
completeness checks pass. Correction ledger: **22,140**; stale
list-width values: **26**.
Earlier translation fix: **2026-09-15**, `9c1388a49` — repair ten
Buryat, Fijian, Konkani, Guarani, Maithili, Tok Pisin, Kirundi,
Tagalog, Shona and Igbo list-width messages. Three values contained
English-seeded requirement prose; replacements use native width and
whole-number wording. Eight complete clauses remain low confidence
pending native grammar review. Focused, runtime, ledger and 234-locale
completeness checks pass. Correction ledger: **22,130**; stale
list-width values: **36**.
Earlier translation fix: **2026-09-15**, `3bf6a4c82` — repair nine
Northern Ndebele, Swati, Tswana, Kinyarwanda, Xhosa, Southern Sotho,
Samoan, Yoruba and Māori list-width messages. Native whole-number and
minimum wording replaces the old rule. Kinyarwanda, Xhosa, Yoruba and
Māori complete clauses remain low confidence pending native grammar
review. Three older progress suites now check the actual rule. Focused,
runtime, ledger and 234-locale completeness checks pass. Correction
ledger: **22,120**; stale list-width values: **46**.
Earlier translation fix: **2026-09-15**, `74e6deabe` — repair 12 Bashkir,
Hausa, Kurdish, Malagasy, Northern Sotho, Oromo, Somali, Swahili,
Yiddish and Zulu list-width values using native whole-number and
inclusive 200-pixel terms. Central Kurdish and Yiddish complete clauses
remain low confidence pending native grammar review. Four older
progress suites now verify the actual rule. Focused, runtime, ledger
and 234-locale completeness checks pass. Correction ledger: **22,111**;
stale list-width values: **55**.
Earlier translation fix: **2026-09-15**, `8cc659ac9` — repair 24 Asian
and Asian-script list-width values with native integer, pixel and
inclusive 200 terms. Seven older progress suites now verify the
current rule. Tibetan, Dzongkha, Bhojpuri, Kashmiri, Odia, Sinhala,
Tigrinya and Pashto full clauses remain low confidence pending native
grammar review. Focused, language, ledger and inventory checks pass.
Correction ledger at that commit: **22,099**; stale list-width values: **67**.
Earlier translation fix: **2026-09-15**, `0fe4ecb48` — repair 20 Romance,
Celtic and related list-width messages. Aragonese and Cornish now use
the unambiguous `≥ 200` boundary; other locales use their native
lower-bound terms. Ten complete clauses are low confidence pending
native grammar review. The earlier Aragonese correction row was
consolidated, so the ledger grows by 19 to **22,075** records.
The stale list-width queue falls to **91**. Focused, runtime, ledger,
language and inventory checks pass.
Earlier translation fix: **2026-09-15**, `6d94f4edb` — repair 28 further
list-width values across Nordic, Baltic, Slavic, Caucasus and other
locales, including an English-seeded Maltese sentence. Maltese,
North Sami, Georgian and Latvian full clauses remain low confidence
pending native grammar review; their numeric and integer meanings are
verified. Related Kazakh, Kyrgyz, Tajik and Latvian regression gates
now check the current rule and ledger state. Remaining stale values:
**111**; correction ledger: **22,056**.
Earlier translation fix: **2026-09-15**, `0b0349d34` — repair six Simplified
Mandarin, three Traditional Chinese, one Wu and one Cantonese
list-width messages. The Wu and Cantonese values replace Mandarin-seeded
sentences with dialect words, but their complete clauses remain low
confidence pending native review. The inclusive 200-pixel and integer
rule, exact values, ledger records and runtime Traditional Chinese lookup
pass. Remaining stale list-width values: **139**.
Earlier translation fix: **2026-09-15**, `212a46c07` — repair 33 Azerbaijani,
Catalan, Uzbek Latin, Greek, Welsh, Romanian, Slovenian, Vietnamese,
Afrikaans, Frisian, Galician, Hindi, Malay, Bosnian/Croatian and Khmer
list-width values. The Khmer `km-KH` alias follows tracked `km_KH`.
The same source commit aligns a stale Galician archive-help test with
the English source and current All Boards UI. Focused, related-language,
ledger and inventory checks pass. Remaining list-width queue: **150**.
Earlier translation fix: **2026-09-15**, `d6e6c558d` — repair 22 Arabic,
Hebrew, Russian, Ukrainian, Japanese, Korean, Polish, Czech and Dutch
list-width values. Russian `ru-RU` resolves to the tracked `ru_RU` file,
so it needs no second ledger row. Focused, runtime, ledger and inventory
checks pass. Previous 23-variant Romance/Germanic repair `e6895b3de` and
Persian-digit repair `196bc49df` remain in detailed evidence.
Earlier translation fix: **2026-09-15**, `e6895b3de` — repair 23 German,
Spanish, French, Italian and Portuguese list-width variants with native
whole-number and inclusive-200-pixel wording. Focused and related-language
suites pass. Persian-digit repairs `196bc49df` and source/popup correction
`68d679c6c` remain recorded in detailed evidence.
The tracked Tigre calendar queue being empty does not certify the locale. Of
2,613 non-English Tigre values, 226 are byte-for-byte identical to Tigrinya;
22 complete forms are corpus-attested shared terms and 204 full values remain
unclassified, including 18 of at least 20 characters and 2 of at least 35.
Four newly matching File phrases have a corpus-attested noun, but their full
clauses still need review. This is an
explicit broader wrong-language review item and must be resolved before the
full audit closes.
The [correction ledger](../../../releases/translations/audited-corrections.json)
records contain **19,822** exact before/after values, including unflagged
records contain **22,302** exact before/after values, including unflagged
repairs. [Detailed evidence](Audit-Evidence.md) preserves categorized findings,
source references, dated commit history and low-confidence limits.
Corrected counts classify changed values; they do not certify full fluency.
Latest terminology review: **2026-09-15** —
[Wolaytta dictionary verification](Tigre-Wolaytta-Calendar-Review.md)
finds 207 empty target cells on the advertised B page, confirmed in actual
HTML. Its English headings cannot justify native Buddhist terminology.
The label remains open; no locale values or counts changed.
Latest unchanged-value review: **2026-09-15**, `a69ed2325` — retain the
Tigre Accounts and Errors plurals after exact corpus sentences independently
attest both forms. The prior terminology review is **2026-09-15**, `2ecd74637` — retain the final four
restored Basque named-subject fragments after checking actual rule-builder and
saved-description composition. The selected name precedes the noun phrase and
the following action supplies the temporal clause. All 20,081 original rows
are now classified: 15,880 corrected and 4,201 retained, with zero restored or
pending.
Recent repairs also cover Quechua calendar/day labels, Tamazight intervals,
migration wording and computer-server terminology. Latest unchanged review:
`946e1a29b` retains generic Basque member/attachment subjects. Named Basque
DOM and saved-description repairs are `1e4411183` and `0c51a3261`; four
restored values still await full native clause validation.
DOM and saved-description repairs are `1e4411183` and `0c51a3261`.
| Pending locale | Findings |
| --- | ---: |
| zgh — Standard Moroccan Tamazight | 91 |
| iu — Inuktitut | 38 |
| nah — Nahuatl | 17 |
| tig — Tigre | 17 |
| wal — Wolaytta | 10 |
| ve-PP — Veps | 9 |
| dz — Dzongkha | 2 |
| ee — Ewe | 1 |
| rup — Aromanian | 1 |
Remaining review includes all restored, unflagged and prior low-confidence
values, not just this pending table. Structural checks preserve exact English
Remaining review includes unflagged and prior low-confidence values beyond
this now-empty pending table. Structural checks preserve exact English
placeholders, JSON examples and key order; they do not establish language
quality. Correct-language human translations remain preferred. No external
translation service is used, and no remote push was performed.
The unflagged source-semantic list-width queue is **closed**: a full
scan of all 234 locale error values finds **zero** old 270 thresholds.
The actual shared minimum is 200. Detailed evidence records every
repair wave and canonical-file alias; this queue was outside the
20,081 original flagged rows. Native review of low-confidence full
clauses and broader wrong-language seeds remains open.
- [Tamazight](Tamazight-Review.md): wrong-language prose, 98 records with
invalidated Tuareg provenance, adapted grammar and software terminology.
Email Addresses now uses IRCAM-attested `ansiwn` but its complete
software compound remains open to native review.
Arabic-script values have fallen from 181 to 102 across these batches;
this count
includes possible intentional symbols and is a review queue, not a
count of proven wrong-language strings.
Active migration stage IDs bypass translations; removed migrations must
stay removed (source review `94c8857fd`).
- [Inuktitut](Inuktitut-Calendar-Review.md), [Nahuatl](Nahuatl-Review.md),
[Tigre/Wolaytta](Tigre-Wolaytta-Calendar-Review.md),
[Quechua](Quechua-Review.md) and [Aromanian](Aromanian-Review.md): calendar
qualifiers, complete compounds, native terminology and magenta attestation.
- [Basque](Basque-Review.md): named subjects, full phrases and browser spec
88 (Chromium passed; full native clauses open). [Veps](Veps-Review.md):
remaining Finnish prose;
qualifiers, complete compounds and native terminology.
- [Basque](Basque-Review.md): broader full phrases and browser spec 88
(Chromium passed). [Veps](Veps-Review.md): Finnish-seeded review complete;
literal filter examples must be preserved.
- [Uzbek Arabic](Uzbek-Arabic-Review.md): indexed cancellation evidence needs
full-source and native orthographic verification (`b433730e3`).
@@ -70,6 +70,21 @@ the same key, so any replacement must also compose with both noun contexts.
No value is changed or accepted in this review. Runtime and browser checks
remain separate requirements.
## Final restored named-subject fragments — 2026-09-15
Review commit `2ecd74637` retains `Etiketa hau`, `Kide hau`,
`Kontrol-zerrenda hau` and `Kontrol-zerrendako elementu hau`. Production
templates deliberately place the selected name before these fragments for
Basque, while the following action supplies the temporal `-enean` clause.
Production-method tests verify the same order in saved descriptions. The
restored Basque values are therefore preferable to the pulled Spanish values.
Six focused suites pass for exact composition, negative Spanish/English text,
all 4,201 unchanged acceptances, all 20,086 corrections and all 234 locale
inventories. The four restored rows are now reviewed; original restored and
pending counts are both zero. This review does not claim general native style
or live browser execution. No remote write ran.
## 2026-09-14 — S3 technical loan retained (5bf97e219)
[Native ZIUR Basque technical specification](https://www.contratacion.euskadi.eus/webkpe00-kpeperfi/es/contenidos/anuncio_contratacion/expjaso33672/es_doc/adjuntos/pliego_bases_tecnicas2.pdf)
@@ -27,3 +27,98 @@ transliteration; browser not run. Native grammar discusses Bhutanese
weekday reckoning separately: this label repair does not alter date math
or claim that traditional weekday rules equal ISO 8601. Original pending
stays 255, Dzongkha 2; correction ledger grows to 18,763.
## Tabular epoch distinction — source review 2026-09-15
Current CLDR common/bcp47/calendar.xml directly specifies both
islamic-civil and islamic-tbla as tabular, with the same intercalary years
2,5,7,10,13,16,18,21,24,26,29. The distinction is civil versus astronomical
epoch, not tabular versus non-tabular or a different leap-year cycle.
Source: https://raw.githubusercontent.com/unicode-org/cldr/main/common/bcp47/calendar.xml
CLDR's design explanation identifies civil with Friday 622-07-16 Julian,
and astronomical/tabular with Thursday 622-07-15 Julian. Astronomical epoch
must not become current moon-sighting calculation: both remain tabular.
Those are Julian dates, not Gregorian dates. The current XML also marks
islamicc deprecated, preferred islamic-civil; do not add a separate locale
choice for the legacy alias as part of translation repairs.
Source: https://cldr.unicode.org/development/development-process/design-proposals/islamic-calendar-types
Current Dzongkha values Islamic civil and Islamic tabular both remain
pending: neither is a full native name, and the second omits its epoch.
Next action is to verify Dzongkha arithmetic/tabular and starting-epoch
terminology, then distinguish both names using the shared Hijri calendar
base without substituting ordinary civil status or sky observation for
these algorithm definitions. Earlier sighting-label and ISO repairs do
not resolve the two epoch labels or their grammar. No translation or
counts changed. Pending 159 original findings; Dzongkha 2. No live UI
test ran and no remote writes were made.
## Legible tabular term — visual source review 2026-09-15
The cached publisher DCT.pdf is a real 226-page PDF. A fresh pypdf
extraction reproduced the mixed-script glyph corruption, so it was not
used as final Dzongkha spelling. Local rendering of PDF page 196 (printed
192) was inspected visually at `.tools/tmp/dz-tabular-page196.png`.
The Tabular row clearly gives `རེའུ་མིག་ཅན།`, resolving the corrupted
u glyph in the extracted `རེའఆ་མིག་ཅན` candidate.
Source: https://www.cle.org.pk/research/rep/DCT.pdf
This is visual confirmation of a native computing tabular term, not merely
an indexed snippet. It does not establish the full calendar compound or
civil/astronomical epoch terminology. Next action is to apply this legible
component after checking the epoch/starting-date phrases; both variants
must retain it and their distinct epoch qualifier.
PyMuPDF was installed only in the existing temporary PDF-review venv to
render this source; no application dependency or package manifest changed.
No translations or counts changed. Pending 159 original findings;
Dzongkha 2. No live calendar UI test ran and no remote writes were made.
## Epoch versus start wording — visual review 2026-09-15
Rendered DCT.pdf page 69 (printed 65) was inspected visually at
.tools/tmp/dz-epoch-page69.png. Epoch is `གལ་ཅན་དུས་ཚོད།`, an
important time, resolving extracted vowel corruption but not establishing
a calendar reference date. Do not promote the generic entry to a precise
astronomical/civil epoch compound without context.
Rendered page 190 (printed 186), .tools/tmp/dz-starting-page190.png,
visually gives Start `འགོ་བཙུགས་ནི།`, Start-up
`འགོ་བཙུགས།`, and Starting `འགོ་བཙུགས་དོ།`. These are legible
native computing start forms, but the progressive starting form is not
itself a noun phrase for starting date. Neither should be copied as a
complete calendar epoch label. The source was rendered from the cached
publisher PDF, not inferred from mixed-script extracted text.
Source: https://www.cle.org.pk/research/rep/DCT.pdf
Next action: verify a start/reference-date construction with the date noun,
then distinguish the two Julian epochs using civil/astronomical terms or
a precise native paraphrase. Shared tabular spelling is now visually
verified; the full label remains unproven. No translation or counts changed.
Pending 159 original findings; Dzongkha 2. No live calendar UI test ran
and no remote writes were made.
## Tabular Hijri epoch labels — repair 2026-09-15
Source commit `1a174e357` replaces both English seeds. Visually verified
རེའུ་མིག་ཅན gives tabular; existing start འགོ་བཙུགས and date
ཚེས form the starting-date paraphrase. Civil epoch is explicitly Julian
622-07-16; astronomical epoch is Julian 622-07-15, as CLDR explains.
Both labels share tabular wording; neither implies moon-sighting math.
Hijri and Julian are borrowed proper names, consistent with the existing
Hijri base. Derived starting-date compound and full grammar remain low
confidence; exact components do not certify a full native calendar label.
Sources: https://www.cle.org.pk/research/rep/DCT.pdf
https://cldr.unicode.org/development/development-process/design-proposals/islamic-calendar-types
Four focused suites pass for distinct epoch dates, rejection of Gregorian
basis/wrong variant date, exact ledger and translation invariants. No live
calendar UI test ran. Ledger 19,861; original corrected 15,746, pending
157, Dzongkha 2 to 0, restored 4 unchanged. Empty original queue does not
complete Dzongkha native grammar or earlier low-confidence reviews.
Broader review remains open; no remote writes were made.
+18
View File
@@ -27,3 +27,21 @@ examples do not establish that technical meaning. Next research must seek
native computational-table and reference-date terminology, then compose
and review the full label. Preserve correct existing translations and all
placeholders. No locale value or classification was changed by this review.
## Tabular astronomical label repaired — 2026-09-15
Source commit `52836b241` replaces incomplete English `Islamic tabular` with
`Hijri kalenda (akɔ́nta dzi, astronomi ƒe gɔmedzedze)`. The University of
Cologne's Basic Ewe reference directly attests `akɔ́nta` as calculation and
native Ewe texts independently attest `gɔmedzedze` as beginning. This describes
the calculated tabular method without misusing the noun for furniture and
retains an astronomical starting point distinct from the civil epoch and the
moon-sighting Saudi variant.
No checked native source supplies a settled astronomy term, so `astronomi` is
a transparent technical loan and the assembled phrase remains LOW CONFIDENCE
pending native contextual review. Four focused files pass: 19,991 exact
correction records, distinct calendar variants, registry binding, newer-value
preservation and all 234 locale token/key inventories. No live calendar picker
ran. The tracked Ewe queue is complete: overall pending 117, no Ewe row,
restored four unchanged. Broader uncertain review continues.
@@ -48,3 +48,40 @@ checks pass, with all 18,687 corrections, 4,171 retained reviews and 234-locale
completeness. Two original findings are corrected; 38 Inuktitut findings and
283 original findings overall remain pending. Nine restored findings remain.
Earlier paragraphs describe the state before these two repairs.
## Qaliujaaqpait Roman orthography retained — 2026-09-15
Source commit `a0eeee9d63` reviews and retains all 23 findings whose only
detector reason was Latin script. The
[Government of Northwest Territories Inuktitut guidance](https://www.ece.gov.nt.ca/en/inuktitut)
states that Inuktitut is traditionally written in both Qaniujaaqpait
syllabics and Qaliujaaqpait Roman orthography. The Nunavut-based
[Pirurvik resources](https://www.pirurvikmedia.ca/online-resources)
likewise provide conversion in both directions and describe both writing
systems. Latin characters alone therefore do not establish a wrong-language
or wrong-script translation.
The exact existing values are recorded as unchanged acceptances; no automatic
transliteration or semantic rewrite is applied. Four focused files pass for
all 4,197 retained reviews, 20,035 corrections, placeholders, key order and
all 234 locale inventories. Original pending falls from 73 to 50, with 15
Inuktitut calendar labels remaining; restored four unchanged. Semantic
fluency and live browser behavior remain in the broader review. No remote
write occurred.
## Remaining calendar labels repaired — 2026-09-15
Source commit `b5acfdaec3` repairs all 15 remaining Inuktitut findings. Every
label uses the official Nunavut-attested `ᐅᓪᓗᖅᓯᐅᑎ` calendar noun. The heading
uses existing local `ᐱᓕᕆᔾᔪᓯᖓ` method, `ᐅᓪᓗᖅ` date and `ᑕᑯᑎᑕᐅᔪᖅ`
displayed vocabulary. Calendar identifiers remain recognizable. Existing
syllabic table, beginning, national, space/science, month and seen vocabulary
distinguishes calculated civil and astronomical starting points from Saudi
moon sighting.
**Low confidence:** complete technical compounds and proper-name adaptation
remain under fluent review. Four focused files pass for exact labels, all
20,050 correction records, distinct runtime calendar choices, newer-value
preservation and all 234 locale token/key inventories. No live selector ran.
Original pending is 35 with no Inuktitut row; restored four unchanged. No
external translation service or remote write.
@@ -29,3 +29,25 @@ with this locale's dialect and spelling, translate the missing distinctions,
and document any provisional compounds. Then verify placeholder inventories,
calendar-option wiring and browser rendering. Existing English/Azerbaijani
values remain repairs to do; reference uncertainty is not a reason to omit them.
## Modern calendar labels repaired — 2026-09-15
Source commit `56ce505d0` replaces all 17 Azerbaijani, English and incomplete
calendar labels with a coordinated `tonalli tlapohualiztli` modern
date-reckoning family. UNAM's terminology evidence shows that `tonalpohualli`,
`xiuhtlapohualli` and related names identify particular historical counts, so
the generic software selector deliberately does not reuse them.
The repaired family retains Jalali/Persia, Buddhist, Chinese, Coptic,
Dangi/Korea, Ethiopic/Amete Alem, Hebrew, Indian national, Hijri, Umm al-Qura,
Japanese and Minguo/Republic of China identities. The Hijri labels separately
retain calculated civil and astronomical starting points and Saudi moon
sighting. Entity names, modern technical vocabulary and the assembled generic
compound remain LOW CONFIDENCE pending native contextual review.
Four focused files pass: 20,008 exact correction records, all 17 exact labels,
negative historical/foreign names, every runtime calendar ID, distinct Hijri
variants, newer-value preservation and all 234 locale token/key inventories.
No live calendar picker ran. The tracked Nahuatl queue is complete: overall
pending 100, no Nahuatl row, restored four unchanged. Broader uncertain review
continues.
File diff suppressed because it is too large. Load diff
@@ -180,3 +180,712 @@ a populated dictionary entry, rather than copying another language's
spelling. No locale value or acceptance changed. Pending 196 (Wolaytta
10), restored 4 and ledger 19,792 unchanged. All broader uncertain reviews
remain open. No remote push.
## Wolaytta remaining calendar family repaired — 2026-09-15
Source commit `e97f8fb20` replaces the ten remaining English/incomplete labels,
completing the tracked Wolaytta calendar queue. Reuse the independently attested
`wodiyaa qoodaa` calendar noun from the earlier Gifaataa source. Preserve
Jalali/Persia, Buddhist, Chinese, Coptic, Hebrew, Indian national and Japanese
identities. The Hijri variants separately retain calculated civil and
star/astronomical starting points and Saudi moon sighting.
The proper-name adaptations, moon-seeing phrase and complete civil/astronomical
compounds remain LOW CONFIDENCE pending native contextual review. Four focused
files pass: 20,018 exact correction records, exact labels, every runtime
calendar ID, distinct epoch/sighting variants, English-seed rejection,
newer-value preservation and all 234 locale token/key inventories. No live
calendar selector ran. Overall pending is 90 with no Wolaytta row; restored four
unchanged. Broader uncertain and unflagged review continues; no remote push.
## Tigre tracked calendar family repaired — 2026-09-15
Source commit `88caf17515` replaces all 17 Azerbaijani, English and incomplete
calendar labels. The open
[BeitTigreAI English–Tigre phrasebook corpus](https://beittigre.github.io/tigre-multilingual-dictionaries/english/)
directly maps `አምዕል ለልተዐለብ እቱ ወድና አወርሕት` to “calendar”. It also
independently supplies the components used for date (`ተመር`), view (`ራኣው`),
calculation (`ሕሳብ`), astronomy (`ከዋክብ ዐስተር`), Persia (`ፋርስ`), China
(`ሲን`/`ቻይነ`), Korea (`ኮርየ`), India (`ህንድ`), Japan (`ጃፓን`), Saudi
Arabia (`ስዑድያ`) and Jewish/Islamic terminology. The Tigre-specific
[glibc locale](https://sources.debian.org/src/glibc/2.19-18%2Bdeb8u4/localedata/locales/tig_ER/)
independently confirms its distinct weekday and month data.
Every runtime calendar remains distinct, including calculated civil versus
astronomical starting points and Saudi moon sighting. **Low confidence:** the
full UI compounds, Coptic/Buddhist/Hijri proper-name spellings and punctuation
are assembled rather than directly attested complete labels. Four focused
files pass: exact labels, all 20,035 ledger records, every runtime calendar ID,
newer-value preservation and all 234 locale token/key inventories. No live
calendar selector ran. Original pending is 73 with no Tigre row; restored four
unchanged. No external translation service or remote push.
This repair also invalidates the earlier assumption that the rest of the Tigre
file can be accepted from script alone. Of its 2,592 non-English values, 917
are byte-for-byte identical to Tigrinya, including long clauses. Current basic
values such as `month` = `ወርሒ` and the weekdays match Tigrinya, while the
Tigre phrasebook and glibc locale use distinct forms such as `ወርሕ` and
`ኣረርባዓ`. These are broader unflagged wrong-language candidates and remain
open; completing the 17-row detector queue is not a claim of whole-file Tigre
fluency.
## Tigre basic date vocabulary repaired — 2026-09-15
Source commit `9ab9215c6` replaces 12 unflagged values copied byte-for-byte
from Tigrinya: the two Date labels, Day, both Month labels and seven weekdays.
The 58,298-entry BeitTigreAI English–Tigre corpus directly returns `ተመር`,
`ምዕል`, `ወርሕ` and the selected weekday forms; the Tigre glibc locale
independently corroborates weekday distinctions. Date and day remain distinct,
and the same month noun is used for the search predicate.
Four focused files pass for exact forms, negative Tigrinya equality, all
20,098 correction records and all 234 locale inventories. Exact non-English
Tigre–Tigrinya overlap falls from 917 to 905 values; all 143 long identical
clauses still require phrase-level review. Corpus alternatives may reflect
regional variation, so the selected forms remain open to fluent review. No
live calendar UI test or remote write ran.
## Tigre corpus-backed interface terms repaired — 2026-09-15
Source commit `0e9418960` replaces 35 additional unflagged values copied
byte-for-byte from Tigrinya. The BeitTigreAI English–Tigre corpus directly
returns the selected navigation, board-view, action, color, preview, field and
account vocabulary for the matching English source. Terminal punctuation that
belongs to corpus sentences rather than short UI labels is omitted.
Four focused files pass for exact selected forms, negative Tigrinya equality,
all 20,133 correction records and all 234 locale inventories. Exact
non-English Tigre–Tigrinya overlap falls from 905 to 870 values. Of those, 86
contain at least 20 characters and 18 contain at least 35 characters; these
still require phrase-level evidence. Short corpus glosses can be polysemous,
so the selected UI senses remain open to fluent review. No live UI test or
remote write ran.
## Shared Tigre and Tigrinya terms reviewed — 2026-09-15
Review commit `5b2c5942e` explicitly retains 13 byte-identical values for Who,
Clear, black, Email, List, Hour, Open, History, Page and Error. The
BeitTigreAI corpus contains each exact Ethiopic form under the corresponding
English gloss, so script equality alone is not a defect for these entries.
The focused test locks both the Tigre value and the intentional equality.
The measured overlap remains 870 because accepted values are unchanged, but
the unclassified set falls to 857. This acceptance is limited to exact
headword evidence and does not certify related phrases or the locale as a
whole. No live UI test or remote write ran.
## Tigre lexical interface terms repaired — 2026-09-15
Source commit `f27cb82ca6` replaces 91 further values copied byte-for-byte
from Tigrinya. The BeitTigreAI corpus returns each selected Tigre headword or
short phrase for the complete English source; the UI sense was selected where
the corpus offers several glosses, and sentence punctuation was omitted from
short labels where appropriate.
Focused checks preserve every selected value and reject its former Tigrinya
seed. All 20,754 correction records, exact source placeholders, key order and
all 234 locale inventories pass. Exact non-English Tigre–Tigrinya overlap
falls from 870 to 779 values. Thirteen are separately attested shared forms,
leaving 766 unclassified; 86 remaining matches contain at least 20 characters
and 18 contain at least 35. Short dictionary glosses can be polysemous, so
these selected UI senses remain open to fluent review. No live UI test or
remote write ran.
## Tigre address and name senses repaired — 2026-09-15
Source commit `62956f2819` replaces three additional Tigrinya-seeded values.
The BeitTigreAI corpus offers multiple results for Address and Name; the selected
forms match the already established email-address and UI-name senses. Focused
checks now cover 94 lexical values and all 20,757 correction records. Exact
Tigre–Tigrinya overlap falls from 779 to 776, leaving 763 unclassified after
the 13 attested shared forms. No remote write ran.
## Repeated Tigre interface families repaired — 2026-09-15
Source commit `2530126f27` replaces 32 repeated Tigrinya-seeded values for
status, color actions, templates, creation, weekly/monthly intervals, team,
week, weight and size. Each family reuses exact BeitTigreAI corpus headwords,
so the same concept no longer varies between related controls.
Focused checks preserve every selected value and reject every former seed. All
20,789 correction records and all 234 locale inventories pass. Exact overlap
falls from 776 to 744; after 13 attested shared forms, 731 remain unclassified.
Composed UI phrases remain open to fluent style review. No remote write ran.
## Tigre Azure menu paths repaired — 2026-09-15
Source commit `77e08a8f61` replaces the translated Account and Show fragments
in two long Azure menu paths with corpus-attested Tigre while preserving every
vendor token and separator. Focused checks cover the exact paths, all 20,791
corrections and 234 locale inventories. Exact overlap falls to 742; 729 remain
unclassified after 13 attested shared forms, including 84 values of at least
20 characters and 18 of at least 35. No remote write ran.
## Repeated Tigre interface nouns repaired — 2026-09-15
Source commit `f9b716fd61` replaces 19 repeated Tigrinya-seeded nouns for
text, title, source, support, public, boards, labels and avatars. Exact Tigre
corpus roots and regular plurals are reused across related controls. Focused
checks reject every former seed; all 20,810 correction records and 234 locale
inventories pass. Exact overlap falls to 723, leaving 710 unclassified after
13 attested shared forms. Derived plurals remain open to fluent review. No
remote write ran.
## Additional shared Tigre terms reviewed — 2026-09-15
Review commit `b2caad45b7` retains six further exact Tigre/Tigrinya matches.
The BeitTigreAI corpus directly supports the existing red/crimson, phase/grade,
Default/common and translation/interpretation senses in their specific UI
contexts. The focused test now distinguishes 19 proven shared values from the
remaining overlap. Raw overlap stays 723, while the unclassified set falls to
704. The acceptance does not extend to related phrases. No remote write ran.
## Conflicting Tigre interface senses repaired — 2026-09-15
Source commit `67632637c2` replaces Task, Sort, Person and Trigger values
whose attested corpus meanings conflict with their UI contexts. The new forms
use Tigre work, sorting, person and causation roots found in complete corpus
sentences. Focused checks reject each former seed; all 20,814 corrections and
234 locale inventories pass. Exact overlap falls to 719, with 19 shared forms
and 700 unclassified. The derived Trigger noun remains open to fluent review.
No remote write ran.
## Basic Tigre interface terms repaired — 2026-09-15
Source commit `62ff72c607` replaces 17 basic Tigrinya-seeded labels with
distinct forms attested in complete Tigre corpus sentences: sky, organization,
pink, days, path, year, role, table, white, reply, small, notes, hours, count,
tests and today. Focused checks reject every former seed; all 20,831 corrections
and 234 locale inventories pass. Exact overlap falls to 702, with 19 shared
forms and 683 unclassified. No remote write ran.
## Tigre operational terms repaired — 2026-09-15
Source commit `a268d6167a` replaces 22 operational labels using distinct
Tigre corpus forms for accept, limits, silver/yellow, invite, finish, upload,
voting, worker, control, cleanup, minutes, reports/requests, computer, security,
attempts, previous, problems, progress and schedule. Review `fa6cbd1666` retains
the exact Seconds form after direct corpus attestation. Focused checks reject
every former seed; all 20,853 corrections and 234 locale inventories pass. Raw
overlap falls to 680, with 20 shared forms and 660 unclassified. Regular plurals
remain open to fluent review. No remote write ran.
## Tigre interface compounds repaired — 2026-09-15
Source commit `6f25928145` replaces 27 time-unit and interface compounds by
reusing corpus-established Tigre card, board, task, name, text, color, size,
close, copy and sort roots. Parenthesized singular/plural unit syntax, technical
identifiers and punctuation stay exact. Focused checks reject every former
seed; all 20,880 corrections and 234 locale inventories pass. Raw overlap falls
to 653, with 20 shared forms and 633 unclassified. Compound word order and
derived plurals remain open to fluent review. No remote write ran.
## Tigre member terminology corrected — 2026-09-15
Source commit `2bb4b88cb5` corrects an earlier lexical choice: the corpus form
`መሕበር` names an association, while an explicit BeitTigreAI plural template
gives `አባል`/`አባላት` for Member/Members. Five earlier repaired values are
corrected in place and two remaining plural controls are repaired. Focused
checks cover all seven values and reject the association sense; all 20,882
correction records and 234 locale inventories pass. Raw overlap falls to 651,
with 20 shared forms and 631 unclassified. No remote write ran.
## Tigre administrative and location controls repaired — 2026-09-15
Source commit `9f5f2d1db` replaces 14 Tigrinya-seeded controls. Direct
BeitTigreAI entries supply `ሓክም` for administrator, `መዳይር` for
administrators, `መነዘመት` for organization, `አካን` for location and
`ዐይነት` for the noun type. Complete corpus phrases supply the imperative
`ኣክድ` in both Confirm password and Verify your identity, and object-verb
Add examples supply `ወስክ`. Organization Admins and Add location are composed
from those attested parts and retain that stated limitation pending fluent
review. Focused exact and negative checks cover all 14 controls; all 20,896
correction records and 234 locale inventories pass. Raw overlap falls to 637,
with 20 attested shared forms and 617 unclassified. No remote write ran.
## Tigre export controls repaired — 2026-09-15
Source commit `6d8f830a7` replaces seven Tigrinya-seeded generic, list and board
Export controls. The BeitTigreAI corpus gives the exact software-context phrase
Export pages as `አግጸት አግዕዞ`; the controls reuse its export action with the
independently reviewed Tigre list and board nouns. Focused exact and negative
checks cover all seven values; all 20,903 correction records and 234 locale
inventories pass. Raw overlap falls to 630, with 20 attested shared forms and
610 unclassified. The composed list/board phrases remain open to fluent word-
order review. No remote write ran.
## Tigre severity controls repaired — 2026-09-15
Source commit `e27abadf6` replaces the physical-weight noun in three Severity
controls. The corpus explicitly uses the old `ክብደት` for losing body weight,
while it supplies `ደረጀት` for degree/level and `ክብድት` for severely. The new
severity-level compound is therefore semantically distinct but its complete
grammar remains LOW CONFIDENCE pending fluent review. Focused checks reject
the former seed; all 20,906 correction records and 234 locale inventories
pass. Raw overlap falls to 627, with 20 attested shared forms and 607
unclassified. No remote write ran.
## Tigre status controls repaired — 2026-09-15
Source commit `b4586ba97` replaces eight Tigrinya-seeded Overall progress, CPU
usage, Card loading and Remaining time controls. The BeitTigreAI corpus directly
supplies overall, progress, usage, Loading results, time and remaining forms;
the established Tigre card noun is reused and CPU remains unchanged. Focused
exact and negative checks cover all values; all 20,914 correction records and
234 locale inventories pass. Raw overlap falls to 619, with 20 attested shared
forms and 599 unclassified. Complete compound order remains open to fluent
review. No remote write ran.
## Tigre visual and Rename controls repaired — 2026-09-15
Source commit `f1b12cc66` replaces eight Tigrinya-seeded Rename, Change
Background Image and Board backgrounds controls. Complete corpus sentences
attest the Tigre name noun and change command; separate exact entries supply
image and background. The established board noun is reused. Focused exact and
negative checks cover every value; all 20,922 correction records and 234 locale
inventories pass. Raw overlap falls to 611, with 20 attested shared forms and
591 unclassified. Background compound order and the derived plural remain open
to fluent review. No remote write ran.
## Tigre Font, Invite and permissions controls repaired — 2026-09-15
Source commit `e4ae5173f` replaces seven Tigrinya-seeded Font, Invite People and
Change permissions controls. The BeitTigreAI corpus supplies Tigre form/shape,
alphabet, people and permission nouns; complete sentences establish Invite and
Change commands. Focused exact and negative checks cover every value; all
20,929 correction records and 234 locale inventories pass. Raw overlap falls
to 604, with 20 attested shared forms and 584 unclassified. The descriptive
Font term and complete compound order remain open to fluent review. No remote
write ran.
## Tigre Speed and Storage controls repaired — 2026-09-15
Source commit `b8ebfc67e` replaces four Tigrinya-specific Speed and Storage
spellings. The BeitTigreAI corpus uses the `ሸፋገት` stem in a complete full-
speed sentence and `መክዘን` in a warehouse sentence. The
[native Tigre Wikidata welcome page](https://www.wikidata.org/wiki/Wikidata:Main_Page/Welcome/tig)
independently uses `መክዘን` in its data-storage description. Focused exact and
negative checks cover all four values; all 20,933 correction records and 234
locale inventories pass. Raw overlap falls to 600, with 20 attested shared
forms and 580 unclassified. No remote write ran.
## Ledger-grounded Tigre compounds repaired — 2026-09-15
Source commit `0651f745b` replaces 17 compact Tigrinya-seeded labels for public
boards, announcements, administrators, organizations, members, roles/status,
search, templates, source/status/delete board, new users, job description and
file path. Every content term was independently corpus-attested and reviewed
in an earlier correction; this batch reuses that ledger evidence instead of
inventing new vocabulary. Focused exact and negative checks cover all values;
all 20,950 correction records and 234 locale inventories pass. Raw overlap
falls to 583, with 20 attested shared forms and 563 unclassified. Complete
compound order remains open to fluent review. No remote write ran.
## Additional Tigre member compounds repaired — 2026-09-15
Source commit `284fcff14` replaces seven Tigrinya-seeded board-member, filter,
selection and rule controls with the explicit corpus `አባል`/`አባላት` pair. It
reuses independently reviewed Tigre Board, List, Add, Select, Filter and
negative-copula forms. Focused exact and negative checks cover every value and
reject the Tigrinya Member spelling; all 20,957 correction records and 234
locale inventories pass. Raw overlap falls to 576, with 20 attested shared
forms and 556 unclassified. Complete phrase order remains open to fluent
review. No remote write ran.
## Tigre date controls repaired — 2026-09-15
Source commit `a03aa027c` replaces nine Tigrinya-seeded or semantically
conflated date controls. The BeitTigreAI corpus gives separate exact Tigre
entries for Due (`ሐዞት`) and Deadline (`አምዐል መዋዕድ`), so Due Date no longer
reuses End. Independent entries also attest date, start, end, voting, received
and change components used by the seven popup titles. Focused exact and
negative checks cover every value; all 20,965 correction records and 234
locale inventories pass. Raw non-English overlap falls to 571, with 20
attested shared forms and 551 unclassified. Complete phrase order remains open
to fluent review. No remote write ran.
## Tigre selection controls repaired — 2026-09-15
Source commit `a6dd320fd` replaces six Tigrinya-seeded board-selection,
show/hide and select-all controls. The BeitTigreAI corpus directly attests
Select all rows, Select a file, Hide and Show forms; established Tigre Board,
Card, List and Page terms complete the UI labels. Focused exact and negative
checks cover every value; all 20,971 correction records and 234 locale
inventories pass. Raw non-English overlap falls to 565, with 20 attested shared
forms and 545 unclassified. Complete phrase order remains open to fluent
review. No remote write ran.
## Reviewed Tigre terms reused — 2026-09-15
Source commit `22615501d` replaces the final four Tigrinya-seeded values whose
complete former wording maps to one unique Tigre replacement already proven in
the correction ledger. The affected labels are List name, Create an Account,
Not Active and Logout. Focused exact and negative checks cover every value; all
20,975 correction records and 234 locale inventories pass. Raw non-English
overlap falls to 561, with 20 attested shared forms and 541 unclassified. No
remote write ran.
## Tigre Import controls repaired — 2026-09-15
Source commit `b8bbd8fa3` replaces eleven Tigrinya-seeded general, board, list,
card and rule Import controls. The BeitTigreAI corpus explicitly gives
`አምጸአ` for “to import”; independently reviewed Tigre Board, Card and List
terms complete the labels while Trello, Excel and CSV/TSV stay literal.
Focused exact and negative checks cover every value; all 20,986 correction
records and 234 locale inventories pass. Raw non-English overlap falls to 550,
with 20 attested shared forms and 530 unclassified. Destination compound order
remains open to fluent review. No remote write ran.
## Tigre Name controls repaired — 2026-09-15
Source commit `002f8bc7b` replaces the Tigrinya Name noun in four compound
labels. The BeitTigreAI corpus gives exact `ስሜት` and uses it in a complete Full
Name sentence; separately reviewed Tigre Location and Version terms complete
the compounds while Webhook remains literal. Focused exact and negative checks
cover every value; all 20,990 correction records and 234 locale inventories
pass. Raw non-English overlap falls to 546, with 20 attested shared forms and
526 unclassified. No remote write ran.
## Compact Tigre terminology repaired — 2026-09-15
Source commit `fc6139745` replaces Tigrinya-seeded components in 31 compact
configuration labels. Every replacement reuses independently attested Tigre
terminology already established in the correction ledger, covering names,
dates, sizes, addresses, status, support, security, cards, boards and system
data. CPU, OS, IP, IPv4, IPv6, TLS and byte remain literal identifiers. Focused
exact and negative checks cover every value; all 21,021 correction records and
234 locale inventories pass. Raw non-English overlap falls to 515, with 20
attested shared forms and 495 unclassified. Unchanged phrase components remain
open to fluent review. No remote write ran.
## Multi-component Tigre labels repaired — 2026-09-15
Source commit `f64f9c98d` replaces Tigrinya-seeded components in 31 labels
for users, names, boards, cards, dates, labels, files, invitations and related
controls. Each replacement reuses independently corpus-attested Tigre terms
already established in the correction ledger. Trello, JSON and ISO 8601 stay
literal. Focused exact and negative checks cover every value; all 21,052
correction records and 234 locale inventories pass. Raw non-English overlap
falls to 484, with 20 attested shared forms and 464 unclassified. Unchanged
surrounding grammar remains open to fluent review. No remote write ran.
## Shared Tigre account and error plurals reviewed — 2026-09-15
Review commit `a69ed2325` retains Accounts (`ሕሳባት`) and Errors
(`ጌጋታት`) as valid Tigre forms shared byte-for-byte with Tigrinya. Exact
corpus sentences independently attest both plural senses. The focused test now
locks the intentional equality. Raw overlap remains 484, with 22 attested
shared forms and 462 unclassified. No remote write ran.
## Tigre Card and File terms repaired — 2026-09-15
Source commit `8560f3d7c` replaces singular Tigrinya Card components in 16
labels and File components in five compact labels with established Tigre
`ወረቀት ካርድ`, `ፈይል` and `ስርዓም`. Literal product and extension names
remain intact. Focused exact and negative checks cover every value; all 21,073
correction records and 234 locale inventories pass. Raw non-English overlap
falls to 463, with 22 attested shared forms and 441 unclassified. Surrounding
grammar remains open to fluent review. No remote write ran.
## Tigre File terms in longer clauses repaired — 2026-09-15
Source commit `71a15613c` replaces the remaining eight Tigrinya File
spellings inside longer clauses with established Tigre `ፈይል`. Format, API,
service and product identifiers stay literal. Exact and negative tests cover
every value; all 21,081 correction records and 234 locale inventories pass.
Raw overlap falls to 455, with 22 attested shared forms and 433 unclassified.
Complete clause grammar remains open to fluent review. No remote write ran.
## Tigre Board terms repaired — 2026-09-15
Source commit `1196bebaa` replaces 31 Tigrinya Board singular, plural and
possessive components with established Tigre `ምዱድ` and `ምዱዳት` forms.
Exact and negative tests cover every value and preserve two excluded cases for
semantic rewriting. All 21,112 correction records and 234 locale inventories
pass. Raw overlap falls to 424, with 22 attested shared forms and 402
unclassified. Surrounding grammar remains open to fluent review. No remote
write ran.
## Repeated Tigre interface components repaired — 2026-09-15
Source commit `8b6c21ff9` replaces 32 Tigrinya-seeded Change, Show, Import,
All, Size, Path and User/Users components with established Tigre forms. Import
and Enter meanings remain distinct. Exact and negative tests cover every
value; all 21,144 correction records and 234 locale inventories pass. Raw
overlap falls to 392, with 22 attested shared forms and 370 unclassified.
Surrounding grammar remains open to fluent review. No remote write ran.
## Tigre Label, Organization and Team nouns repaired — 2026-09-15
Source commit `242c1f27b` replaces 13 Tigrinya-seeded nouns in semantically
matched Label, Organization and singular Team controls. Exact and negative
tests preserve the excluded icon, checkbox, token-prefix and plural senses.
All 21,157 correction records and 234 locale inventories pass. Raw overlap
falls to 379, with 22 attested shared forms and 357 unclassified. Surrounding
grammar remains open to fluent review. No remote write ran.
## Tigre Date and Time terms repaired — 2026-09-15
Source commit `0896117b5` replaces seven absent-from-corpus Tigrinya Time
spellings with attested Tigre `ወቅት`. Three controls retain attested Date and
Hour nouns but use Tigre prepositions. Exact and negative tests cover all ten
values; all 21,167 correction records and 234 locale inventories pass. Raw
overlap falls to 369, with 22 attested shared forms and 347 unclassified.
Surrounding grammar remains open to fluent review. No remote write ran.
## Tigre outcome and account terms repaired — 2026-09-15
Source commit `c91e56a50` replaces nine Tigrinya-seeded Failed,
Succeeded/Successful, Registration and Private forms with sense-matched Tigre
corpus forms. Exact and negative tests cover all values; all 21,176 correction
records and 234 locale inventories pass. Raw overlap falls to 360, with 22
attested shared forms and 338 unclassified. Surrounding grammar remains open
to fluent review. No remote write ran.
## Remaining Tigre Card terms repaired — 2026-09-15
Source commit `c73362aae` replaces all 17 remaining Tigrinya Card singular,
plural and possessive components with established Tigre forms. Exact and
negative tests preserve surrounding long-clause text, tokens, numbers and
punctuation. All 21,193 correction records and 234 locale inventories pass.
Raw overlap falls to 343, with 22 attested shared forms and 321 unclassified.
Complete clause grammar remains open to fluent review. No remote write ran.
## Tigre Account, Storage and Templates terms repaired — 2026-09-15
Source commit `8296c12a5` replaces eight exact Tigrinya Account components,
five Storage components and four Templates components with established Tigre
`ሕሳብ`, `መክዘን` and `ሞደላት` forms. The Azure account-name phrase
also reuses the reviewed Tigre Name compound. Exact and negative tests cover
all values; all 21,210 correction records and 234 locale inventories pass.
Raw overlap falls to 326, with 22 attested shared forms and 304 unclassified.
Thirty-three raw matches contain at least 20 characters and seven contain at
least 35. Complete clause grammar remains open to fluent review. No remote
write ran.
## Embedded Tigre Account, Storage and Description terms repaired — 2026-09-15
Source commit `eb1add1f2` replaces known Tigrinya components in 60
context-matched, otherwise nonidentical Tigre values. Account inflections now
derive from `ሕሳብ`, Storage and Repository use `መክዘን`, and
Description/Profile contexts use `ዋስፎ`. Two Web Manifest values remain
excluded because Manifest is a different sense. Six sequential changes are
consolidated into the existing record for each key, leaving 21,264 verified
final corrections. The focused test checks 121 applicable contexts; all 234
locale inventories pass. Raw overlap falls to 323, with 22 attested shared
forms and 301 unclassified. Thirty-three raw matches contain at least 20
characters and seven contain at least 35. No remote write ran.
## Tigre Edit and Template terms repaired — 2026-09-15
Source commit `e50072bc3` replaces 18 Tigrinya-seeded Edit components with
exact corpus `አስነ` and 13 singular Template components with exact corpus
`ሞደል`. The context filter preserves unrelated “for example” phrases and
the already established Tigre Templates plural. Two sequential changes are
consolidated into the existing record for each key, leaving 21,293 verified
final corrections. Focused tests cover 18 Edit and 21 singular or plural
Template contexts; all 234 locale inventories pass. Raw overlap falls to 319,
with 22 attested shared forms and 297 unclassified. Thirty-two raw matches
contain at least 20 characters and seven contain at least 35. No remote write
ran.
## Second Tigre ledger-reuse pass — 2026-09-15
Source commit `45a568aea` repairs 44 exact Tigrinya copies by reusing
independently corpus-attested Tigre components already established in the
correction ledger. The guarded map restricts each replacement to its matching
English UI sense; ambiguous senses and unverified plural morphology remain
excluded. One sequential change is consolidated into its existing key record,
leaving 21,337 verified final corrections. Focused exact and negative checks
and all 234 locale inventories pass. Raw overlap falls to 275, with 22
attested shared forms and 253 unclassified. Twenty-eight raw matches contain
at least 20 characters and six contain at least 35. No remote write ran.
## Third Tigre context-reuse pass — 2026-09-15
Source commit `088b01587` repairs 12 exact Tigrinya copies in Files,
Address, Visibility, Format, First and Usage contexts with Tigre terms already
established by reviewed corrections. The regular plural Address form remains
low confidence pending fluent review. Focused exact and negative checks
preserve `.zip`, `%{value}` and product literals; all 21,349 final
correction records and 234 locale inventories pass. Raw overlap falls to 263,
with 22 attested shared forms and 241 unclassified. Twenty-five raw matches
contain at least 20 characters and six contain at least 35. No remote write
ran.
## Fourth Tigre short-control pass — 2026-09-15
Source commit `40a20207b` repairs 16 exact Tigrinya short controls using
established Tigre At, Remove, Sign In, All, Delete, Failed and Count terms.
The regular Organization and Team plurals remain low confidence pending
fluent review. Focused exact and negative checks preserve all three `%s`
tokens; all 21,365 correction records and 234 locale inventories pass. Raw
overlap falls to 247, with 22 attested shared forms and 225 unclassified.
Twenty-five raw matches contain at least 20 characters and six contain at
least 35. No remote write ran.
## Full-locale Tigre Board and Card components repaired — 2026-09-15
Source commit `83546ed24` replaces remaining embedded Tigrinya Board and
Card nouns in 407 otherwise nonidentical Tigre values. English source-sense
filters cover 316 Board and 300 Card contexts; negative guards preserve
Clipboard wording and prevent duplicate Tigre Card prefixes. Existing
sequential repairs are consolidated by key, leaving 21,757 verified final
corrections. Placeholder and HTML inventories and all 234 locale inventories
pass. Raw exact-overlap metrics remain 247 total, 22 attested shared and 225
unclassified because prior batches had already repaired exact Board/Card
copies. Twenty-five raw matches contain at least 20 characters and six contain
at least 35. No remote write ran.
### 2026-09-15 — Full-locale Tigre established noun families
Source commit `08e7092c3` repairs 193 values containing Tigrinya File, User,
Name, Label, Organization, Team, Path, Status, Size, Color or Count components.
English source-sense guards cover 385 applicable contexts while preserving
unrelated Icon and Clipboard meanings. Sequential changes are consolidated by
key, leaving 21,888 verified final correction records. Derived File, Name,
Organization and Team plurals remain low confidence pending fluent review.
The focused context guard, locale-wide placeholder and HTML checks, and all
234 locale inventories pass. Raw exact overlap falls to 244 total, with 22
attested shared forms and 222 unclassified; 25 raw matches contain at least 20
characters and 6 contain at least 35. No remote write occurred.
### 2026-09-15 — Missed Tigre Organizations control
Source commit `0ef3ca6dd` replaces the remaining exact Tigrinya Organizations
plural with the provisional regular plural of corpus-attested Tigre
`መነዘመት`. The full-locale Organization guard now rejects this third old
form. All 21,889 corrections and 234 locale inventories pass. Raw exact
overlap falls to 243, with 22 attested shared forms and 221 unclassified; 25
raw matches contain at least 20 characters and 6 contain at least 35. The
plural remains low confidence pending fluent review. No remote write occurred.
### 2026-09-15 — Corpus-supported Tigre exact controls
Source commit `0eac733cd` repairs four values still exactly equal to
Tigrinya. Corpus website sentences use `መውቅዕ`, and a Special page
sentence uses `ፍንቱይ`. Corpus headwords attest Button `ሰድፈት`
and Collection `አከቦት`; their regular plural UI forms are derived and
remain low confidence pending fluent review. Matching English source-sense
and exact-result guards pass. All 21,893 correction records and 234 locale
inventories pass. Raw exact overlap falls to 239, with 22 attested shared
forms and 217 unclassified; 25 raw matches contain at least 20 characters
and 6 contain at least 35. No remote write occurred.
### 2026-09-15 — Tigre Endpoint meaning repair
Source commit `6b78c88cb` repairs three API/S3 contexts where the Tigrinya
seed rendered technical Endpoint as a temporal end. Existing S3 fields
already keep `Endpoint`, so the replacement uses that local technical term.
The API report phrase and S3 help text remain mixed-language and require
full-clause fluent review; this fix only resolves the demonstrable noun-sense
error. One sequential correction is consolidated by key, leaving 21,895
verified final correction records. Source-sense and negative tests pass with
all 234 locale inventories. Raw exact overlap falls to 238, with 22 attested
shared forms and 216 unclassified; 25 raw matches contain at least 20
characters and 6 contain at least 35. No remote write occurred.
### 2026-09-15 — Tigre Star and Break corpus review
Source commit `009d7f832` replaces Tigrinya-seeded Star spelling in 19
Star/Starred/Unstar controls with corpus-attested Tigre `ኮከብ`. The
rating count uses the corpus-attested irregular plural `ከዋክብ`, retaining
`%s`. Pomodoro Break uses `ዕርፍቲ`, attested in a Tigre short-break
sentence. English source-sense guards cover all 20 Star noun contexts and
preserve Starred Pages' separate adjectival wording. The commit refreshes
ledger-confirmed exact-value expectations left stale by earlier Board,
Card, Name, Label, Size, File and Account repairs; all 45 Tigre suites
now pass. Sequential corrections are consolidated by key, leaving 21,905
final verified records. All 234 locale inventories pass. Raw exact overlap
falls to 229, with 22 attested shared and 207 unclassified; 21 matches
contain at least 20 characters and 6 at least 35. No remote write occurred.
### 2026-09-15 — Corpus-attested Tigre plural follow-up
Source commit `5d53aa990` replaces 18 provisional File plural occurrences
with `ፋይላት`, attested in Tigre file-management commands; three
provisional Names plurals with `አስማይ`, attested in independent names
sentences; and seven Organizations plurals with `መነዘማት`, attested in
a social-organizations sentence. Singular File `ፈይል` remains separately
attested. Eight File values return to their original value, so their
no-op correction records are removed, leaving 21,897 final records. The
unflagged source batch corrects prior low-confidence morphology rather than
changing the 20,081 original audit-row classifications. The focused
source-sense guard, all 46 Tigre suites, placeholder and JSON checks, and
234 locale inventories pass. Raw exact overlap rises from 229 to 233 as
four File phrases now match Tigrinya again; the corpus supports the shared
noun, but their complete clauses remain unclassified. Thus 22 complete
forms are attested shared and 211 full values remain unclassified, including
23 raw matches at least 20 characters and 6 at least 35. Team, Button and
Collection plurals remain low confidence. No remote write occurred.
### 2026-09-15 — Tigre S3 settings fill
`970d9e664` replaces 21 English placeholders in the S3 settings family,
using existing local Tigre storage, connection, port, address, file and size
vocabulary. Technical service names, `Endpoint`, `URL`, `SSL`, hostnames and
the bare `S3` protocol label remain literal. Complete compound grammar is
low confidence pending native review. Focused and ledger checks pass; all
234 locale inventories pass. Ledger 21,919. Non-English Tigre values 2,613;
raw exact Tigre/Tigrinya overlap stays 233 (22 attested shared, 211
unclassified). No live UI test or remote write occurred.
### 2026-09-15 — Tigre authentication error clause
`36c2148ec` replaces the exact Tigrinya copy in `twoFactorCode-invalid`.
The BeitTigreAI phrasebook attests the chosen wrong, please and try-again
forms; authentication-code syntax remains a composed low-confidence phrase.
The focused source, seed, ledger and runtime check passes. Ledger 21,920;
exact non-English overlap 232 (22 attested shared, 210 unclassified), with
22 matches at least 20 characters and 5 at least 35. No live UI test or
remote write occurred.
### 2026-09-15 — Tigre PDF preview warning
`78f2c9bf7` replaces the exact Tigrinya copy in
`preview-pdf-not-supported`. Tigre phrasebook entries support device,
preview, unavailable, instead, download and try terms. Complete sentence
grammar and the device suffix remain composed low-confidence wording.
The attachment Jade key, source/fallback meaning, seed, ledger and runtime
test pass. Ledger 21,921; exact non-English overlap 231 (22 attested shared,
209 unclassified), with 21 matches at least 20 characters and 4 at least
35. No live UI test or remote write occurred.
### 2026-09-15 — Tigre Trello key and S3 plural follow-up
`6909fb85e` replaces seven Trello API key nouns with the corpus-attested
`መፍቲሕ`. The required prompt also uses attested please, both and enter
forms; its complete order remains a draft for native review. The prior S3
bucket-help File plural is corrected to corpus-attested `ፋይላት`, and its
ledger row is consolidated. All 50 Tigre suites pass, including the plural
guard that found the earlier S3 defect. Ledger 21,924; exact non-English
overlap 230 (22 attested shared, 208 unclassified), with 20 matches at
least 20 characters and 3 at least 35. No live UI test or remote write.
### 2026-09-15 — Tigre list-width rule and source correction
`68d679c6c` replaces the exact Tigrinya-copied validation clause with a
Tigre draft using corpus-supported width, whole and number terms. Its
`≥ 200` notation matches the shared minimum and whole-number popup parser;
full syntax remains low confidence. The source/UI discrepancy affects 233
other locale messages and is tracked in the short audit. All 50 Tigre suites
pass. Ledger 21,936; exact non-English overlap 229 (22 attested shared,
207 unclassified), with 19 matches at least 20 characters and 2 at least
35. No live UI test or remote write occurred.
@@ -18,3 +18,12 @@ alif negative and accidental-Latin replacement checks are added. The member
2FA cancel action retains its cancellation meaning. Browser verification
has not run. This is a repair of one restored original finding, not a claim
that all Arabic-script Uzbek translations have been audited successfully.
Reviewed **2026-09-15**, source commit `196bc49df`: the list-width error
now uses the file's existing `کمیده` (at least), `پۇتون سان` (whole
number), `پیکسل` and Persian-digit `۲۰۰` terms. A published
[Uzbek Arabic-script article](https://8am.media/uz/arrests-of-soldiers-and-journalists-taliban-widened-the-crackdown/)
independently uses `کمیده` with a numeric lower bound. The complete
validation sentence remains low confidence pending native review. Exact
value, stale-threshold negative, source-sense, ledger and runtime checks
pass. No live UI test or remote write occurred.
+874
View File
@@ -401,3 +401,877 @@ summary verb would blur that distinction. The next repair therefore needs
a numerical-total noun or a complete explicitly numerical formulation.
No translation or acceptance changed. Pending 204, including nine Veps
findings; broader prior drafts and native grammar remain open.
## Keyboard-shortcut repair scope — 2026-09-15
Live queue still has nine Veps findings, including both keyboard toggle
messages and shortcut-show-shortcuts. An additional unflagged Finnish value,
keyboard-shortcuts = Pikanäppäimet, appears in sidebar.jade:16-18 and
main/keyboardShortcuts.jade:4. Review all four together; fixing only the
flagged action leaves the actual popup title in Finnish. The action is
bound to literal ? in client/lib/keyboard.js:384-385; do not translate or
replace that key binding. Sidebar.js:364-369 distinguishes opening the
shortcuts route from toggling the user's keyboard-shortcut setting.
The two tooltip messages describe the current state followed by the
opposite click action. Keep enabled/disable and disabled/enable pairs
correct, rather than translating both as the same action.
Primary native software source read 2026-09-15:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
provides Ozuta for show and peitä for hide. Its checked key names matching
keyboard/shortcut/accesskey supply no dedicated keyboard-shortcut phrase.
The cached Russian–Veps dictionary text search for клавиатур, клавиш and
комбинац also produced no entry. These limited searches do not prove the
term is absent from Veps or from the dictionary's rendered pages. Seek
native keyboard/key-combination terminology and complete object grammar
before writing the four coordinated drafts. General list vocabulary alone
does not resolve what this specific list contains. No locale edit, ledger
or original queue classification change; all nine and broader review remain
open. This extends the repair scope to the unflagged Finnish popup title.
## Dictionary search correction — 2026-09-15
The earlier normal-Cyrillic search is not valid negative lexical evidence:
russian-veps-pages.jsonl stores the PDF's Russian text as corrupted legacy
font characters, for example the Russian keyboard/key prefix would appear
as Œºà⣠rather than клави. Inspect page 3 for the corrupted title and page
419 for corrupted Russian headwords next to readable Veps forms. A normal
Cyrillic substring search therefore cannot establish missing entries.
The previous no-entry statement is superseded by this encoding diagnosis.
Searching legacy glyph strings located a button entry on PDF page 189
(ŒíîïŒà) with fastening-related kingitim/plikkutim vocabulary. Those
snippets do not attest a computer keyboard key: render and read the entire
entry before using any sense. A physical tack/fastener is not automatically
a keyboard button. Search snippets containing money sum also locate page
260, but they do not provide an arithmetic resulting-total noun. These
are page locators, not accepted translations or trustworthy automatic
Cyrillic decoding. Next action is visual dictionary lookup, supplemented
by primary native software/corpus evidence for computing terminology.
No locale edit or queue acceptance change; nine Veps findings and the
unflagged Finnish keyboard-shortcuts title remain open. Audit verification
passed; overall original pending remains 127, restored 4 unchanged.
## Visual button-entry verification — 2026-09-15
Directly inspected rendered Russian–Veps dictionary PDF page 189,
button-189.png, rather than relying on corrupted extracted headwords.
The complete кнопка entry gives (1) для прикалывания, kingitim
(-men, -nt, -mid), with pinning a schedule to a board; (2) застёжка,
plikkutim (-men, -nt, -mid), with fastening a coat. Neither sense is a
keyboard key or computer button. Exclude both as evidence for the four
keyboard-shortcut repairs. The neighbouring ключ entry is a door-opening
key, avadim, so its metaphor must not be treated as an attested keyboard
key either. This settles those candidate senses; it does not prove that
Veps lacks keyboard terminology. The rendered alphabetical page goes from
preceding kl- words into key-related entries without an independent
клавиатура headword on this page. Continue with native computing corpus
lookup or an explicitly documented direct paraphrase, preserving current
state/opposite click action and the literal ? key binding.
No locale edits or classification changes. Overall tracked pending 127,
including nine Veps findings and additional unflagged title review.
2026-09-15 — `f10fe2fa5`: automatic-linked-url-schemes Finnish replaced
with a direct Veps draft. Native primary software source:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
http-invalid-scheme gives URL scheme wording; querypage-updates-periodical
provides avtomatižesti; filehist-help uses paina for clicking a date/time;
watchlistedit-raw-explain gives one item per line (rives). Existing
custom-fields supplies Kävutajan märitud (user-defined). Preserve user-defined
URL schemes, automatic clickability and one scheme per line. Complete
assembled relative/object grammar and the derived singular shem remain
low confidence. These component attestations do not certify the complete
instruction. The dictionary search diagnosis and shortcut terminology
remain open; the corpus website returned an error this lookup, not proof
of absent vocabulary. Source settingBody.jade:419-421 displays this label
beside the automaticLinkedUrlSchemes textarea; settingBody.js:1011 binds
the saved setting. Four focused test files pass (16 checks), including
negative Finnish and exact instruction, full token inventories and key
order. No live settings UI test ran. Ledger 19,900; corrected 15,777,
pending 126 (Veps 8), restored 4 unchanged. Unflagged shortcut title and
all prior low-confidence wording stay within the full review scope.
2026-09-15 — `29bf7aa22`: unflagged rules = Säännöt replaced with
Sändod. Primary native MediaWiki policy-url is Project:Sändod, read today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Existing r-rule = Sänd supplies consistent singular. Four focused files
pass (17 checks), including exact native plural, negative Finnish and
placeholder/key-order checks. No live rules UI test ran. Ledger 19,901;
original tracked pending stays 126 (Veps 8), restored 4 unchanged.
Additional live unflagged wrong-language findings require direct repairs:
r-toggle-rule-enabled = Shumisani kana litshani mulayo hoyu;
r-rule-disabled = A i shumiswi;
twoFactorAuth-enable = Vulani u Ṱhogomela nga Zwibveledzwa Zwivhili;
list-sync-enabled = U vhambadzanya ho vulwa.
These Tshivenda values are not protected Veps human translations. Also
review twoFactorAuth-enabled, which contains the same foreign wording.
Do not infer completion from the eight-row Veps original queue. The rule
button rulesList.jade:37 uses r-toggle-rule-enabled, so its tooltip must
retain both enabling and disabling rather than become a rules heading.
Scrollbar native terminology was not established by the checked MediaWiki
key-name search; the original Finnish scrollbar label remains open.
2026-09-15 — `3658f1755`: r-rule-disabled and r-toggle-rule-enabled
Tshivenda replaced with direct Veps drafts. Preserve existing r-rule-enabled
= Päl. Native primary MediaWiki source read today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
specialmute-label-mute-email uses Kel'dä for disabling/muting mail;
authmanager-autocreate-exception uses kel'düd for a disabled automatic
account. Existing custom-head-tags-enabled supplies Pane päle (turn on).
The toggle combines both actions with libo (or), nece sänd (this rule)
and sidä (it). Full assembled imperative/object grammar and suitability
of the prohibition-based disable verb for rule activation remain low
confidence; these are drafts, not claimed human translations. Source
rulesList.jade:37-43 has separate enabled/disabled labels on a toggle
button with the dual-action tooltip, so do not replace the tooltip with
a one-way action or a bare rules noun. Four focused files pass (18 checks),
including both replacements, negative Tshivenda, distinct states, retained
existing enabled value and full placeholder inventories/key order.
No live rules UI test ran. Ledger 19,903; original pending 126 (Veps 8),
restored 4 unchanged. Previous finding list's two rule keys are now repaired;
the twoFactorAuth-enable/enabled and list-sync-enabled wrong-language
values still need repairs. Original eight-row queue does not cover these
additional findings or full prior low-confidence wording.
2026-09-15 — `93a48d724`: five unflagged list synchronization values
repaired: list-sync-menu, list-sync-now, list-sync-last-error,
list-sync-project-key-placeholder and list-sync-credential-placeholder.
Reuse existing org/team synchronization imperative Sinhronirui, Peitsana
and Viga. Native primary MediaWiki source read today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
provides nügüd' (now), jäl'gmäine in latest-visit wording, and libo (or).
Preserve exact PROJECT, owner/repo and API token examples, changing only
the connective and password prose. Sync now remains distinct from Sync.
Full assembled terminology and grammar remain under review; these are
direct drafts, not asserted human translations. Source listHeader.jade
renders the labels/placeholder inputs and listHeader.js handles the popup;
no behavior or credentials were changed. Four focused files pass (19
checks), including exact replacements, negative Tshivenda, distinct actions
and complete placeholder/key-order inventories. No live sync UI test ran.
Ledger 19,908; original queue stays 126 (Veps 8), restored 4 unchanged.
The remaining synchronization block includes wrong-language description,
source, credentials, enabled state, last-sync state, never, pending,
success/failure and stop messages. Repair the whole block, including exact
%s in list-sync-now-error and the 15-minute/immediate-check distinction
in list-sync-description. Do not treat these five changes as completion of
the synchronization popup. Previously noted list-sync-enabled remains open.
2026-09-15 — `c379de7d7`: six unflagged synchronization values repaired:
list-sync-enabled, list-sync-last-synced, list-sync-now-pending,
list-sync-now-success, list-sync-now-error and list-sync-clear. Preserve
exact %s once in the error message, ellipsis for pending, success distinct
from failure, and stop distinct from initiating a sync. Existing Sinhronirui
is the base for the direct derived noun Sinhronirund; full derivation and
case morphology (including genitive Sinhronirundan and stop object) remain
low confidence and require native review. Native MediaWiki actioncomplete
supplies Tegend om loptud, createacct-loginerror supplies hüvin, and
updatedmarker supplies latest wording. Primary software source read today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Existing stop Seižuta and enabled Päl are reused. Component evidence does
not independently attest the full synchronization clauses. Source popup
listHeader.jade displays the enabled checkbox and last-sync state and
listHeader.js handles sync controls. No implementation behavior changed.
Four focused files pass (20 checks), including distinct results, negative
Tshivenda, exact replacement and full placeholders/key order. No live sync
UI test ran. Ledger 19,914; original pending stays 126 (Veps 8), restored
4 unchanged. Previously noted list-sync-enabled is now repaired, but its
full native grammar remains open. Remaining block: description, source
labels, project-key label, credential labels/statuses, optional username
and never. Keep 15-minute background checks distinct from immediate Sync
now, and preserve all literal examples. Broader mixed-language and prior
low-confidence review remains in scope.
2026-09-15 — `0ca3422a4`: list-sync-source-type = Tsimo replaced with
Lähte. Primary native MediaWiki version-libraries-source and tags-source-header
both directly give Lähte for source; read 2026-09-15:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Do not translate the source selector as not synced or failed synchronization.
Four focused files pass (21 checks), including exact noun, negative old
value, distinct source/state and full token/key-order inventories. No live
popup UI test ran. Ledger 19,915; original pending remains 126 (Veps 8),
restored 4 unchanged. Credential source gives Lehtpolen tedod for account
credentials, but that full account phrase is not automatically suitable
for an external tracker's API token/password setting. Additional unflagged
optional = valinnainen is Finnish and needs a coordinated repair with
list-sync-username-placeholder. Keep optionality explicit; removing its
qualifier would alter the field's meaning. Not-synced and never clauses,
credential statuses and full synchronization instructions remain open.
2026-09-15 — `5d0583ef5`: optional = valinnainen and
list-sync-username-placeholder wrong-language values replaced with direct
Veps not-required paraphrases. Keep the qualification explicit: Kävutajan
nimi alone would lose optionality. Existing username supplies Kävutajan
nimi. Native primary MediaWiki htmlform-required says Nece znamoičend om
tarbhaine; native negative construction ei ole gives the assembled not-required
paraphrase. Read 2026-09-15:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Full contextual negative-adjective grammar remains low confidence; the
complete optional-username phrase is not independently attested by this
component evidence. Four focused files pass (22 checks), including exact
values, negative Finnish/Tshivenda, retained username and explicit optional
qualification, plus all placeholder/key-order inventories. No live field
UI test ran. Ledger 19,917; original pending remains 126 (Veps 8), restored
4 unchanged. These two additional wrong-language findings are repaired,
but broad wording validation stays open. Never and not-synced must remain
distinct from failed sync; no unsupported translation for those was added.
The checked MediaWiki key-name search did not provide never; this limited
search does not establish that native wording is absent. Credentials and
15-minute/immediate-check instructions still require complete repairs.
2026-09-15 — `c117936ed`: list-sync-credential and its set/unset status
messages replaced with direct Veps API-token/password paraphrases. The
existing input placeholder states API token / password; preserve those
actual credential options rather than assert that an account password is
required. Existing Peitsana supplies password. Native primary MediaWiki
source read today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
supplies märitud/set-defined wording, völ/yet and ei ole/is not. The full
assembled status grammar and explicit credential paraphrase remain low
confidence; these components do not certify the complete sentences. Set
and not-set-yet states remain distinct. Neither message asserts verified
credentials, successful authentication or a completed synchronization.
Four focused files pass (23 checks), including exact replacements,
negative Tshivenda, distinct states, not-yet qualification and complete
placeholder/key-order inventories. No live credential UI test ran.
Ledger 19,920; original pending 126 (Veps 8), restored 4 unchanged.
Remaining sync block includes description, not-synced, project-key label
and never. The description must preserve external tracker, background
15-minute checks and immediate Sync now. Other wrong-language 2FA values
and prior low-confidence complete grammar remain within the audit scope.
2026-09-15 — `81c17c196`: list-sync-last-synced-never wrong-language
value replaced with Nikonz. Primary ELDIA Veps case-specific report, printed
page 89/PDF page 97 (zero-based P96 in web extraction), directly pairs
standalone nikonz with Never in a native interview response. Read today:
https://phaidra.univie.ac.at/detail/o:315545.pdf
This supplies the actual adverb and standalone response, not a generated
form. Preserve never-synced as distinct from a failed synchronization.
Four focused files pass (24 checks), including exact adverb, negative
Tshivenda and full placeholder/key-order inventories. No live sync UI test
ran. Ledger 19,921; original pending 126 (Veps 8), restored 4 unchanged.
Never candidate lookup is resolved for this label. Remaining block includes
not-synced, project-key label and the complete 15-minute background versus
immediate-check description. Native MediaWiki nstab-project and existing
gcs-project-id support Projektan, but door-key avadim does not independently
attest a software project key. Do not mechanically replace key with ID
without reviewing the accepted tracker identifier. Full native grammar
and other additional wrong-language values remain within the audit scope.
2026-09-15 — `b30fa05a9`: list-sync-source-none replaces Tshivenda with
Sinhronirund ei ole päl. The empty source option in listHeader.jade selects
no synchronization source, rather than reporting a failed or never-run job.
This inactive-state paraphrase uses existing Veps enabled vocabulary päl
and native MediaWiki ei ole negation, rechecked today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
The synchronization noun was previously derived from local Sinhronirui;
its derivation and complete sentence grammar remain low confidence. This
is a direct draft, not an independently attested complete native phrase.
Four focused files pass (25 checks), including negative wrong-language,
distinct enabled/error/never states and the empty-option template binding.
No live UI test ran. Ledger 19,922; original pending 126, restored 4.
Project-key terminology, full background/immediate synchronization
instructions and broader prior low-confidence review remain open.
2026-09-15 — `25e6eefba`: list-sync-description wrong-language Tshivenda
replaced with a direct Veps draft. Preserve all source clauses: list updated
from an external tracker, background job, every 15 minutes, and immediate
manual checking using the actual Sync now label. server/listSync.js schedules
`every 15 minutes`. Native MediaWiki updatewatchlist uses Udišta and
watchlistedit-normal-check-all uses Tarkišta; read again today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Existing local lugetiž/minutad support list/minute vocabulary. Complete
sentence is not independently attested. External-tracker inflection,
background computing loan Fonan rad, interval construction and the
without-waiting immediate-action paraphrase remain LOW CONFIDENCE.
Four focused files pass (26 checks): wrong-language rejection, interval,
manual-label agreement, code scheduling and complete token/key inventories.
No live sync UI test ran. Ledger 19,923; original pending 126/restored 4.
Project-key label still requires appropriate multi-tracker terminology;
full prior low-confidence and unflagged review remain within scope.
2026-09-15 — `29f93a888`: list-sync-project-key wrong-language Tshivenda
replaced with Projektan kod / ID / owner/repo. Read the actual fetchers:
Jira interpolates projectKey in JQL; GitHub/Gitea use owner/repo paths;
GitLab accepts a project ID or encoded path. Thus an ID-only label would
omit valid inputs. Keep code and the two literal alternatives explicit.
Native MediaWiki nstab-project attests Projektan, and confirmemail_invalid_format
attests kod for a validation code, independently of program-source code.
Source read again today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
This is a project-code paraphrase, not an attested native software-key term.
Full multi-tracker terminology remains LOW CONFIDENCE. Door-key avadim
is not used as software-key evidence. Preserve PROJECT/owner/repo examples.
Four focused files pass (27 checks), including wrong-language rejection,
identifier alternatives and actual fetcher use, plus full token inventories.
No live synchronization UI ran. Ledger 19,924; pending 126/restored 4.
The previously identified wrong-language sync block now has Veps drafts;
this does not resolve their complete grammar or the wider flagged/unflagged
review, including two-factor controls and keyboard-shortcut wording.
2026-09-15 — `7deff5697`: four unflagged Tshivenda values repaired:
twoFactorAuthPopup-title, twoFactorAuth-enabled, twoFactorAuth-disable,
and twoFactorAuth-enable. Direct Veps drafts retain two factors, opposite
actions, and enabled status specifically for the user's account. Local
org/team-sync-members-from-auth uses autentifikacijan; create-account uses
akkaunt. Native MediaWiki mute-email uses Kel'dä and existing rule-toggle
uses Pane ... päle. Source rechecked today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Kahen faktoran autentifikacii is a derived computing compound, not a fully
attested native phrase. Compound, loan form and account-case grammar remain
LOW CONFIDENCE. Four focused files pass (28 checks), including opposite
actions, account qualifier, wrong-language rejection and template binding;
full token inventories/key order pass. No live authentication UI ran.
Ledger 19,928; original pending 126/restored 4 unchanged. Remaining
wrong-language two-factor explanation, QR/six-digit instructions, manual
entry and confirm-and-enable require repair. Broader review stays open.
2026-09-15 — `f9d9c454d`: seven unflagged Tshivenda setup/login values
repaired: twoFactorAuth-explanation, scan-instructions, manual-entry,
confirm, and twoFactorCode-prompt, submit, invalid. Preserve added account
protection, enabled-state condition, code from authenticator at each login,
QR scan with Google Authenticator/Authy examples, subsequent six-digit
confirmation, manual-entry alternative, confirm-and-enable and error retry.
Existing local account/login wording and native MediaWiki kirjuta käzil,
vahvištoita, kod, kaikuččen kerdan, and programmas support basic vocabulary.
Primary source rechecked today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Complete computing instructions are direct drafts, not attested whole
native sentences. Ližakaičuz, scanner loan, six-digit compound, case forms
and full grammar remain LOW CONFIDENCE and require further review.
Four focused files pass (29 checks), including wrong-language rejection,
all setup/login qualifiers, trailing manual-entry space and token inventories.
No live authentication UI ran. Ledger 19,935; pending 126/restored 4.
Previously found wrong-language two-factor block now has Veps drafts;
that is not proof of complete native fluency. Broader review remains open.
2026-09-15 — `e722a6c17`: overlooked listSyncPopup-title Tshivenda
replaced with Lugetižen sinhronirund (derived noun/case LOW CONFIDENCE).
Project label improved to Projektan avadim / ID / owner/repo. IMPORTANT
new primary evidence corrects the previous incomplete lexical review:
MediaWiki pageinfo-default-sort = Sanumata sortiruin avadim, and
duplicate-defaultsort uses avadim for a sort key. Thus avadim has actual
software-key usage independent of the visually reviewed door-key entry.
Source read and searched today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
The door-key dictionary alone still does not prove computing usage, but
this native software translation supplies the missing analogy. Project-key
compound is not independently attested; full terminology stays low confidence.
Retain accepted ID/owner/repo alternatives and original ledger before value.
Four focused files pass (30 checks), including title wrong-language rejection,
identifier alternatives and full token/key-order checks. No live sync UI ran.
Ledger 19,936; pending 126/restored 4. Wider native review remains open.
2026-09-15 — `4b2009229`: replace Tshivenda sort-by-votes with Sortirui
äniden mödhe, Finnish voting with Änestamine, and Tshivenda event-detail
with Ližatedod. Existing card voting keys attest änestamine; poker-result-votes
has Äned. Native MediaWiki sort-descending/sort-ascending use Sortirui ...
mödhe and block-details uses Saudatusen ližatedod for details information.
Primary native source read today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
The vote genitive and full sorting-context terminology remain low confidence;
details uses an attested additional-information paraphrase. Do not conflate
vote sorting with casting votes or event detail with severity.
Four focused files pass (31 checks), including negative foreign-language
checks, distinct sorting/detail meanings and all token/key-order inventories.
No live voting/event UI ran. Ledger 19,939; pending 126/restored 4 unchanged.
Inspection additionally finds wrong-language backup-scope-instance/description,
problem-summary/progress prose, CPU-current, severity, sum/date-range fields
and chart-forecast messages. Native voting supporters/opponents and for/against
labels also need vocabulary review; existing Finnish text is not protected
as Veps. These are within the full unflagged scope, not excluded by queue count.
2026-09-15 — `f5d72bae8`: five unflagged Tshivenda values replaced:
repair-broken-cards, repairing, repair-broken-cards-done,
repair-broken-cards-done-unfixable and restore-list-swimlanes-done.
Direct Veps drafts use existing Kohenda repair, Endišta restore, kart/list
and board vocabulary. Native MediaWiki supports ei sa negative possibility
and avtomatižesti automatic wording; source rechecked today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Read problemsSummary.js: fixed/unfixable and restored/remaining are distinct
result counters. Missing-board cards cannot be placed automatically; lists
whose original swimlane is unknown/missing cannot be restored. Preserve
__fixed__, __unfixable__, __restored__, __remaining__ exactly, not just digits.
Full count agreement, passive forms, cases and broken-card terminology
remain LOW CONFIDENCE; existing local vocabulary is not full phrase proof.
Four focused files pass (32 checks), including exact token inventories,
unresolved/automatic-limit clauses and actual result bindings. No live
repair UI ran. Ledger 19,944; pending 126/restored 4 unchanged. Remaining
problem summary/progress, backup/forecast and full earlier uncertain wording
remain within the full repair scope.
2026-09-15 — `201f8d0a4`: three wrong-language chart-forecast messages
replaced with direct Veps drafts. Read boardCharts.js forecast helper:
remaining zero selects completed branch, absent projectedDate selects
no-velocity branch, otherwise remaining/averagePerBucket/projectedDate
populate the conditional forecast. Preserve __remaining__, __average__,
__date__ exactly, weekly unit, recent-time qualifier and conditional outcome.
Existing local lopmatoi/loptud, Nedal, Päivmär and Arvosteldud wording
supply base vocabulary. Native MediaWiki jäl'gmäine/latest and completion
vocabulary were rechecked today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Complete projection clauses, recent-time paraphrase, deadline case and
count agreement remain LOW CONFIDENCE. No fully attested sentence claim.
Four focused files pass (33 checks), including negative wrong-language,
three distinct outcomes, actual forecast bindings and all token inventories.
No live chart UI ran. Ledger 19,947; pending 126/restored 4 unchanged.
Remaining backup, problems, CPU/severity, number/date-range wording and
broader prior uncertain review remain within the full repair scope.
2026-09-15 — `e8826e71a`: loading, problems-in-progress-help and
problems-none-in-progress wrong-language values replaced with Veps drafts.
Read problemsSummary.jade: statusOverview.anyInProgress chooses active
message and fa-spinner items; else chooses no-running-work message.
Preserve possible slow logins, login-required message or loading indicator,
and duration until work finishes and CPU falls. Existing migracii/kohenda,
system-login and ladind vocabulary supply bases; native MediaWiki varasta,
libo, nügüd' and completion words rechecked today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Loading-indicator paraphrase and CPU load loan, migration/repair inflections
and complete warning grammar remain LOW CONFIDENCE. The prose mentions
translated conceptual error messages; exact runtime-message agreement
requires further review. Four focused files pass (34 checks), including
foreign-language rejection, temporary condition and active/inactive contrast,
plus full token/key inventories. No live status/login UI ran.
Ledger 19,950; pending 126/restored 4 unchanged. Summary acknowledgment,
backup scope, CPU labels and wider earlier uncertain review stay in scope.
2026-09-15 — `9e0680331`: cpu-usage-current, cpu-usage and
cpu-load-average wrong-language values replaced with Veps drafts.
Reuse memory-usage Kävutand and OS_Loadavg keskmäine radmär. Native
MediaWiki poolcounter-usage-error attests Kävutamižen and nügüd' current
wording independently; source rechecked today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Read adminProblems.jade: current percent, core count and loadAverage are
separate displays. CPU usage must not be equated with average system load.
Full acronym case and computing load compound remain LOW CONFIDENCE;
existing local terminology is consistency evidence, not native fluency proof.
Four focused files pass (35 checks), including foreign-language rejection,
current qualifier and load/usage distinction plus all token/key inventories.
No live CPU UI ran. Ledger 19,953; pending 126/restored 4 unchanged.
CPU-cores/suffix still need native computing-core evidence. Do not use
MediaWiki Südäinviga/internal-error to claim processor-core attestation.
Backup/progress acknowledgment and wider prior uncertain review remain open.
2026-09-15 — `bc8988c9d`: five unflagged Tshivenda values replaced:
problems, new-problems, no-new-problems, acknowledge, problems-summary-help.
Read problemsSummary.js checked-stream collection and acknowledgeEventLog
call, and Jade checkbox/button bindings. Preserve selecting reviewed areas
then resetting their new-problem count; acknowledgment is not a repair.
Native MediaWiki sessionfailure/upload-misc-error-text attests problem;
local confirm supplies Vahvištoita. Native paina, znamoiče and lugumär
support click/mark/count vocabulary; source read today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Problem plural/cases, reviewed-area clause, zero-reset construction and
confirm-based acknowledgment paraphrase remain LOW CONFIDENCE. No whole
native phrase attestation claim. Four focused files pass (36 checks):
foreign-language rejection, button-label agreement, count-reset meaning,
checked-stream code and complete token/key-order inventories.
No live acknowledgment UI ran. Ledger 19,958; pending 126/restored 4.
Backup scope, CPU-core/severity, number/date-range and broader prior
uncertain wording remain within the full local translation repair scope.
2026-09-15 — `cfed82e70`: backup-scope, backup-scope-instance and
backup-scope-description wrong-language values replaced with Veps drafts.
Read attachments Jade scope options/helper and server/methods/backup.js
organization context/comments. Preserve whole instance or one organization,
all its board content including attachments, excluded shared user accounts
and instance settings, and restores restricted to owned boards.
Existing local Varmkopii, organizacii, tartutadud failad, akkaunt, valičused
and Endišta supply bases. Native MediaWiki libo/vaiše and system vocabulary
were rechecked today:
https://raw.githubusercontent.com/wikimedia/mediawiki/master/languages/i18n/vep.json
Kaik WeKan-sistem paraphrases the whole application instance, not a physical
machine backup. Scope-boundaries noun, whole-instance paraphrase, ownership
construction and complete grammar remain LOW CONFIDENCE. No full native
sentence attestation claim. Four focused files pass (37 checks), including
foreign-language rejection, attachment/shared-data clauses and restore
restriction plus complete token/key inventories. No live backup UI ran.
Ledger 19,961; original pending 126/restored 4 unchanged. CPU-core/severity,
number/date-range and full prior uncertain review remain in scope.
2026-09-15 — event-severity terminology review (no locale changes).
Read adminProblems.js column: r.severity is distinct from category/action/
detail. models/eventLog.js schema documents info|low|medium|high|critical.
Severity must not become generic importance, seriousness of demeanor,
or physical weight. Cached lexicon candidates were checked by individual
sense: tärged important; selʹged sober (serious); jüged heavy; kova harsh,
severe. Opened current Wiktionary Veps section, not Finnish homonym:
https://en.wiktionary.org/wiki/kova#Veps
It includes harsh/severe and references Zajceva/Mullonen 2007 entries
жёсткий, жестокий, ожесточённый, сильный, суровый, твёрдый, чёрствый.
Its adjective is real evidence; it does not attest a noun for event
severity. Do not invent Kovuz or import Finnish vakavuus without native
noun/context evidence. Next lexical action: inspect the referenced native
dictionary severe/harsh entries and derived nouns or corpus severity use.
This review rules out earlier tempting importance/sober substitutions
and narrows the search to the appropriate severe sense. event-severity
Tshivenda remains unrepaired and explicitly in scope. Audit ledger and
original queue counts unchanged: 19,961 records, pending 126/restored 4.
No live UI or translation validation test is claimed for this research.
2026-09-15 — rendered primary dictionary follow-up for event severity.
Cached russian-veps-pages.jsonl search located kovuz’ on page 442.
Rendered PDF page index 441 and visually inspected the actual page:
.tools/tmp/veps-native-source/hardness-442.png (local evidence cache).
The entry твёрдость reads kovuz’ (-den, -t), with soil hardness ma kovuz’
and firmness of judgments mel’pidoiden kovuz’. Thus the noun is attested,
including its terminal apostrophe and oblique stem. Correct the earlier
research uncertainty: noun existence is resolved, not an invented Kovuz.
Primary Zajceva/Mullonen 2007 Russian–Veps dictionary linked from:
https://en.wiktionary.org/wiki/kova#Veps
The actual scanned entry is hardness/firmness, not security-event severity.
Its figurative example establishes nonphysical firmness, still not a
severity-level label for info/low/medium/high/critical. Do not broaden
this evidence into a claim that the technical label is validated.
Next action is to compare level/degree constructions or native event-risk
terminology; spelling uncertainty alone no longer blocks that comparison.
No locale edit; event-severity remains wrong-language and within scope.
Ledger 19,961, original pending 126/restored 4 unchanged. Full translation
review remains active. Audit-progress consistency check passes; no live UI.
2026-09-15 — rendered level/degree evidence for Veps event-severity.
Searched cached primary dictionary extraction with its legacy Cyrillic
encoding, then rendered and visually read actual printed page 475,
PDF index 474: .tools/tmp/veps-native-source/level-475.png.
уровень sense 1 (ступень развития) gives korktuz’ (-den, -t, -zid),
with rahvahan hüvinvoindan korktuz’ (population well-being level).
Sense 2 gives pind (-an, -oid) for water/sea level. Thus abstract level
has independent native noun evidence; do not substitute the physical
surface-level noun pind. This changes the next candidate assessment:
compare a severity-level construction using korktuz’ with the attested
kovuz’ stem kovuden, rather than inventing a generic Finnish taso.
A Kovuden korktuz’ candidate is not yet independently attested technical
usage and must not be described as a confirmed event-severity term.
Broad web degree searches mostly returned English definitions or Estonian
linguistics, not native Veps vocabulary, and are excluded as evidence.
Primary dictionary source linked by:
https://en.wiktionary.org/wiki/kova#Veps
Event schema info|low|medium|high|critical remains the actual semantic
requirement. No locale edit or count change: ledger 19,961, original
pending 126/restored 4. Severity remains wrong-language and in scope.
Audit consistency check passes; no live UI ran.
2026-09-15 — `91d0cbf5e`: event-severity Tshivenda replaced with
Kovuden korktuz’ as a direct Veps severity-level draft. Rendered primary
dictionary page 442 supplies kovuz’ (-den), hardness/firmness including
judgments; page 475 supplies abstract korktuz’ level distinct from pind
water level. Native adjective kova has harsh/severe sense. These support
morphological bases, not independently attested computing usage:
https://en.wiktionary.org/wiki/kova#Veps
The harshness/firmness-to-event-severity analogy and whole compound remain
LOW CONFIDENCE and require further lexical/context review. Do not certify
this as native standard terminology or equate it with risk/importance.
Actual adminProblems severity column and eventLog levels remain unchanged.
Four focused files pass (38 checks): foreign-text rejection, distinct
severity/category/detail labels, code binding and all token/key inventories.
These checks do not validate technical fluency. No live event UI ran.
Ledger 19,962; original pending 126/restored 4 unchanged. CPU-core terms,
number/date-range and full broader uncertain review remain in scope.
2026-09-15 — `046830b35`: date-range-of-fields Tshivenda replaced with
Veps draft preserving dates, custom fields and list-top marking. Read
listHeader.js earliest/latest formatting; this is not numeric summation.
Rendered and visually read primary dictionary page 367 (PDF index 366):
промежуток keskust (-an, -id), time interval aigan keskust, two-year
interval kaks’vozne keskust. Evidence cache interval-367.png. The noun
is directly attested; full date/custom-field compound and list-top cases
remain LOW CONFIDENCE, not a validated native whole phrase.
Primary dictionary linked from https://en.wiktionary.org/wiki/kova#Veps
Native MediaWiki and existing Päivmär/custom-fields provide other bases.
Four focused files pass (39 checks), including date-field/top-selection
qualifiers, wrong-language rejection and complete token/key inventories.
No live date-range UI ran. Ledger 19,963; pending 126/restored 4 unchanged.
Numeric-sum terminology and full prior uncertain review remain open.
2026-09-15 — `7c17acd34`: sum-of-number-fields Tshivenda replaced with
Veps draft. Read listHeader.js numberFieldsSumTooltip/numberFieldStats:
this is the ∑ total for number-type custom fields flagged for list top,
not the date earliest/latest range. Rendered and visually read primary
Zajceva/Mullonen dictionary page 419, PDF index 418:
сложение ližaduz’ (-sen, -st, -sid); сложение чисел luguiden ližaduz.
Evidence cache: .tools/tmp/veps-native-source/addition-419.png.
Thus the core arithmetic phrase is directly attested, resolving the earlier
sum-noun gap. Kävutajan märitud lugu-pöudod and list-top clause reuse local
vocabulary; their compound/case grammar remains LOW CONFIDENCE and is not
covered by the dictionary phrase. Primary dictionary source is referenced
from https://en.wiktionary.org/wiki/kova#Veps
Four focused files pass (40 checks), including wrong-language rejection,
sum/date-range distinction, actual helper binding and all token inventories.
No live tooltip UI ran. Ledger 19,964; pending 126/restored 4 unchanged.
CPU-core terminology and full broader prior uncertain review remain open.
2026-09-15 — `21e43e8b5`: repaired the Veps card-number search group.
`card-number`, `operator-number` and its complete search-help sentence had
Zulu values. The replacement uses existing Veps UI `Kart`, the native numeric
label `Lugu`, and the already established sorting construction `nomeran
mödhe` for a card identifier. The help now reads that cards have the stated
card number. The literal `<number>` tokens, Markdown emphasis and
`__operator_number__` placeholder remain byte-for-byte equal to English.
The whole relative clause is a direct draft and remains LOW CONFIDENCE; the
component evidence does not certify its complete grammar. A bounded foreign-
language scan found 117 values with distinctive Tshivenda markers and 25 with
distinctive Finnish vocabulary. These overlap earlier repairs and include
false-positive risk, but prove that the original pending table is not a full
inventory of unflagged Veps damage; every candidate still requires individual
semantic review. Four focused files pass (40 checks): 19,967 correction
records, newer-value preservation, search substitution, wrong-language
rejection and all 234 locale token/key inventories. No live search UI ran.
Original pending remains 126 and restored remains 4; broader candidate and
prior low-confidence review remains active.
2026-09-15 — `052937ff0`: repaired the Veps Problems-page headings.
The h1 `summary` was Tshivenda and the h2 `problems-status-title` was Finnish.
The current native Veps MediaWiki catalogue directly supplies `Lühüd
südäimišt:` for its Summary form label; WeKan uses the same words without the
source-specific colon for its h1 page heading. The existing WeKan Veps
`status` value is exactly `Olo`, so the Problems status subsection now reuses
it rather than introducing another synonym. Template inspection confirms both
keys are headings in `client/components/settings/problemsSummary.jade`.
Four focused files pass (40 checks): 19,969 correction records, exact values,
negative wrong-language checks, newer-value preservation and all 234 locale
token/key inventories. No live Problems page ran. Original pending remains
126 and restored remains 4; broader candidate and prior low-confidence review
remains active.
2026-09-15 — `8a66f4c74`: repaired four Finnish voting-side values in
Veps. Visually inspected the Zajceva/Mullonen dictionary scans cached as
`.tools/tmp/veps-native-source/voting-100.png`, `voting-331.png` and
`voting-370.png`. Printed page 100 directly attests `änestamine` and
`änestada`; page 331 attests `tugeta` and `tugi`; page 370 directly attests
`vastustai (-jan, -jid)` for opponent, `vastustada` for oppose, and the
oppositional adverb/construction. Additional rendered/extracted entries attest
`polestada` for defending oneself, a position, freedom or ecology. The voting
buttons now use directly attested infinitives `Polestada` and `Vastustada`.
Popup headings use the corresponding participant plurals `Polestajad` and
`Vastustajad`; their derivation, especially Proponents → `Polestajad`, remains
LOW CONFIDENCE and needs native contextual review. Four focused files pass
(40 checks): 19,973 correction records, distinct positive/negative sides,
wrong-language rejection, newer-value preservation and all 234 locale token/key
inventories. No live voting UI ran. Original pending remains 126 and restored
remains 4; broader candidate and prior low-confidence review remains active.
2026-09-15 — `8480bee00`: repaired the Veps card-loading group. The
`cards-loading-auto` and `board-status-loading-mode` labels were Tshivenda;
`cards-loading-all` still called the all-cards path the default after automatic
per-board selection became the default; `cards-loading-description` documented
the old manual all/lazy choice and omitted `CARDS_LOADING_LAZY_THRESHOLD`; and
`cards-loading-lazy-note` contained the Russian hybrid `mnog-valind` for
multi-selection. `models/lib/cardsLoading.js` confirms that auto is the default,
boards strictly above the size threshold use the visible window and smaller
boards load every card. `server/models/settings.js` confirms there is no admin
choice and operators can override with the two environment variables. Problems
and Board Status template/logic inspection confirms where the repaired labels
render.
The replacements reuse existing Veps terminology from this locale: `Kartoiden
ladind`, `avtomatine`/`avtomatižešti`, `režim`, `ülimär`, `mušt`, `sädada`,
`pakita`, and `äi valičuz`. The performance description expresses bandwidth as
transferring less data over the network instead of inventing an unsupported
literal noun. Exact `CARDS_LOADING (all/lazy/auto)` and
`CARDS_LOADING_LAZY_THRESHOLD` literals are preserved. Four focused files pass
(40 checks): 19,978 correction records, wrong-language/stale-fragment rejection,
behavior distinctions, source-template bindings, newer-value preservation and
all 234 locale token/key inventories. No live Problems or Board Status UI ran.
The complete assembled technical description remains LOW CONFIDENCE and needs
native contextual review. Original pending remains 126 and restored remains 4;
the broader candidate and prior low-confidence review remains active.
2026-09-15 — `09b62ffa4`: repaired the complete five-key Finnish
accessibility family, including three unflagged values. Source inspection shows
`accessibility` labels the sidebar, page title and Admin navigation;
`accessibility-page-enabled` is the Admin toggle; title/content name separate
editable fields and provide public-page fallbacks; and the not-added-yet text is
the disabled public empty state. Fixing only the two original findings would
have left the same page internally inconsistent.
The checked native MediaWiki catalogue provides no dedicated accessibility
noun. The replacement therefore uses the transparent descriptive family
`Jogahižen pästand` (“access for everyone”). Its components and each surrounding
role reuse existing Veps values: `jogahine`/`jogahižen`, `Pästand`, `lehtpol'`,
`om päl`, `pälkirjutez`, `südäimuz`, `tedod`, `ei ole völ`, and `ližatud`.
This evidence establishes the components and UI distinctions, not an attested
complete accessibility term. The family remains LOW CONFIDENCE pending native
contextual review.
Four focused files pass (40 checks): 19,983 correction records, five distinct
roles, Finnish-fragment rejection, settings/public-page bindings,
newer-translation preservation and all 234 locale token/key inventories. No
live Admin or public accessibility page ran. Two tracked findings are now
corrected: overall pending 124, Veps 6, restored 4. The unflagged scan and all
prior low-confidence wording remain in scope.
2026-09-15 — `1b35cd8b4`: repaired tracked `showSum-field-on-list`, replacing
the Finnish sentence with `Ozuta pöudoiden luguiden ližaduz lugetižen ülähäl`.
The custom-field form renders this checkbox only for currency and number fields,
and listHeader computes the numeric total; date fields use a separately named
range. This source boundary makes the primary dictionary's `luguiden ližaduz`
(numerical addition, rendered page 419) suitable here without asserting an
unattested standalone result noun. Reuse the same arithmetic phrase from the
already repaired `sum-of-number-fields`, plus existing show, fields and list-top
wording. Full compound/case grammar remains LOW CONFIDENCE.
Four focused files pass (40 checks): 19,984 correction records, negative Finnish
terms, arithmetic/date-range distinction, both currency/number form bindings,
the list total binding, newer-value preservation and all 234 locale token/key
inventories. No live custom-field popup ran. One tracked finding is resolved:
overall pending 123, Veps 5, restored 4. Broader Veps and prior low-confidence
review remains active.
2026-09-15 — `b82d5761e`: repaired tracked `enable-vertical-scrollbars`,
replacing Finnish with `Pane päle vertikaližed skrolindan čurad`. Source review
shows the user-profile toggle adds or removes `no-scrollbars` on board, list,
card-detail and sidebar containers; the label therefore retains scrollbar
visibility rather than claiming that scrolling itself is enabled. The rendered
primary dictionary page 60 directly attests `vertikaline`; existing Veps values
supply `Pane päle`, `skrolind` and the UI-bar noun `čura`. Those components do
not attest the complete compound, which remains LOW CONFIDENCE.
Four focused files pass (40 checks): 19,985 correction records, Finnish-term
rejection, vertical/scrollbar wording, visible toggle binding, all four affected
template scopes, newer-value preservation and all 234 locale token/key
inventories. No live board/sidebar toggle ran. One tracked finding is resolved:
overall pending 122, Veps 4, restored 4. Broader Veps and prior low-confidence
review remains active.
2026-09-15 — `4d74f7080`: repaired the coordinated keyboard-shortcut family,
including tracked `keyboard-shortcuts-enabled`, `keyboard-shortcuts-disabled`
and `shortcut-show-shortcuts`, plus the unflagged Finnish page title
`keyboard-shortcuts`. Source inspection verifies that the first pair are
opposite profile-setting actions, the title opens and names the shortcuts
popup, and `shortcut-show-shortcuts` is bound to the literal `?` key.
No dedicated native shortcut term was established in the checked Veps sources;
dictionary button/key entries describe physical objects and are unsuitable.
Use the transparent technical label `Klaviaturan käskud`, reusing the locale's
existing `käskud` command vocabulary, and preserve established enabled,
disabled, click, show and list wording. The international loan and assembled
cases remain LOW CONFIDENCE pending native contextual review.
Four focused files pass (40 checks): 19,989 correction records, exact opposite
states/actions, route and popup bindings, literal `?` binding, Finnish-fragment
rejection, newer-value preservation and all 234 locale token/key inventories.
No live keyboard-shortcuts UI ran. Three tracked findings are resolved: overall
pending 119, Veps 1, restored four unchanged. The remaining tracked Veps item
is the syntax-bearing advanced-filter description; broader unflagged and prior
low-confidence review remains active.
2026-09-15 — `7bc3b73b0`: repaired the last tracked Veps finding,
`advanced-filter-description`, replacing the Finnish prose with a Veps draft.
The paragraph is executable documentation: preserve exactly all eight operator,
field/value, quoted-space, escaped-apostrophe, Boolean-grouping and regex
fragments, plus the source's three standalone backslashes. Source parser review
confirms spaces delimit tokens outside quotes, apostrophes quote literal strings,
backslash escapes the next character, slash delimits regex outside a quoted
string, operators evaluate in sequence and parentheses change grouping.
Reuse existing `Levenzoittud puhtastim`, custom-field, name, value, space,
symbol, write, search, ordering and left/right vocabulary from this locale.
Complete phrasing for quoting, escaping, conditions, grouping and regex remains
LOW CONFIDENCE pending native contextual review.
Six focused files pass (42 checks): the real parser/date-selector suite passes
14/14; all executable examples and escape inventories match English; Finnish
prose is rejected; 19,990 correction records and all 234 locale inventories
verify. No live filter UI ran. The original tracked Veps queue is complete:
overall pending 118, no Veps row, restored four unchanged. Broader unflagged and
all prior low-confidence Veps wording remain in scope.
2026-09-15 — `e17bb2b5e`: repaired 31 additional unflagged Finnish-seeded
interface values through exact English-source matching against the native
MediaWiki Veps catalogue. The batch covers actions, visibility, defaults,
password, file metadata, login, preview, import, message/description, paging,
history, confirmation, rename, collapse, details, user and view labels. Five
unchanged Name/No forms are separately locked because the same native
catalogue attests the byte-identical Veps forms.
Five focused files pass: exact selected values, Finnish-seed rejection, all
20,164 correction records, newer-value preservation and all 234 locale
inventories. Raw Finnish overlap falls from 540 to 509 values; subtracting the
five explicitly attested shared forms leaves 504 unclassified. Exact catalogue
matching does not establish translations for longer product-specific phrases,
which remain in scope. No live UI test or remote write ran.
2026-09-15 — `c67a91a41`: repaired 29 further Finnish-seeded terms through
exact English-gloss matching with the English Wiktionary Veps lexical dataset.
This supplies colors, weekdays and common interface nouns without deriving
them from Finnish. Existing activity prose independently confirms `laud` for
board. Queue joins the explicit shared set because both languages and the
Veps dictionary use `jono`.
Five focused files pass for 60 exact repairs, six shared forms, all 20,193
correction records and all 234 locale inventories. Raw Finnish overlap falls
from 509 to 480, leaving 474 unclassified after the six attested shared forms.
Longer and inflected product phrases remain under review. No live UI test or
remote write ran.
2026-09-15 — `a222bad2d`: repaired 128 coordinated board-interface values.
Native text already in this locale consistently supplies `Ližada`, `Vajehta`,
`Heitä`, `Tege`, `Kopirui`, `Sirdä`, `Valiče`, `Ozuta`, `laud`, `kart`,
`lugetiž`, `ujundšoid`, `ühtnik`, `znam`, `tartutadud fail`, `valičused` and
`arhiv`. These forms replace Finnish across related board/card/list/swimlane,
member/label, settings/archive, create/edit/delete/copy/move/select families.
Six focused files pass for all 128 exact values, action/object distinctions,
Finnish-seed rejection, all 20,321 correction records and all 234 locale
inventories. Raw Finnish overlap falls from 480 to 352, leaving 346
unclassified after six attested shared forms. Complete composed labels remain
open to fluent style review. No live UI test or remote write ran.
2026-09-15 — `4caef872b`: repaired 165 account, email, profile, color, status,
rules, settings and related interface values. The batch reuses checked native
lexical entries and established Veps vocabulary for users, invitations,
authentication, dates, fields, filters, rules and display actions. Literal
`CAS`, `SAML`, `Node`, `Meteor`, `MongoDB`, `Oplog`, `PDF`, `Excel`, `CSV/TSV`,
`iCal`, URLs and every source placeholder remain unchanged.
Seven focused files pass for exact family values, Finnish-seed rejection,
placeholder preservation, all 20,486 correction records and all 234 locale
inventories. Raw Finnish overlap falls from 352 to 187, leaving 181
unclassified after six attested shared forms. Full assembled grammar stays
open to fluent review. No live UI test or remote write ran.
2026-09-15 — `a4ec295ff`: completed the Finnish-seeded review. The final 177
search, report, status, storage and migration values now use Veps drafts built
from the checked lexical sources and vocabulary already established in this
locale. Placeholder inventories, HTML tags, parser examples, product names,
IDs and storage-provider names remain exact.
Ten raw matches remain and are all explicitly reviewed: `Nimi`, `Ei`, `Jono`,
`Minä` and `Repo` are independently native Veps forms; rule/display duplicates
reuse those forms; and `r-of`/`of` are intentional slash separators rather
than Finnish prose. The focused test compares the complete residual overlap to
this closed set, so no Finnish match is unclassified. Eight focused files pass
for all 20,663 corrections and all 234 locale inventories. Full draft style
remains open to fluent improvement. No live UI test or remote write ran.
@@ -10,7 +10,7 @@ This is without container (without Docker or Snap).
Right click and download files 1-4:
1. [wekan-11.80-win64.zip](https://github.com/wekan/wekan/releases/download/v11.80/wekan-11.80-win64.zip) or newest available at https://github.com/wekan/wekan/releases/
1. [wekan-11.85-win64.zip](https://github.com/wekan/wekan/releases/download/v11.85/wekan-11.85-win64.zip) or newest available at https://github.com/wekan/wekan/releases/
2. [node.exe](https://nodejs.org/dist/latest-v24.x/win-x64/node.exe)
@@ -22,7 +22,7 @@ Right click and download files 1-4:
6. Double click `mongodb-windows-x86_64-7.0.34-signed.msi` . In installer, uncheck downloading MongoDB compass.
7. Unzip `wekan-11.80-win64.zip` , inside it is directory `bundle`, to it copy other files:
7. Unzip `wekan-11.85-win64.zip` , inside it is directory `bundle`, to it copy other files:
```
bundle (directory)
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Peugot leubar",
"set-list-width": "Peugot leubar",
"set-list-width-value": "Leubar senarai (piksel)",
"list-width-error-message": "Leubar senarai musti angka bulat nyang leubeh rayeuk nibak 270",
"list-width-error-message": "Leubar senarai musti angka bulat nyang sikureueng 200 piksel",
"list-width-shared-note": "Leubar nyoe geubagi ngon mandum ureueng bak papan nyoe.",
"list-width-personal-note": "Leubar nyoe cuma keu droeneueh.",
"personal-list-width": "Leubar senarai pribadi",
@@ -597,6 +597,7 @@
"custom-fields": "Ruangan Khas",
"date": "Tanggal",
"date-format": "Format Tarikh",
"date-format-for-everyone": "Bentuk tanggai keu mandum ureuëng",
"date-format-yyyy-mm-dd": "TTTT-BB-HH",
"date-format-dd-mm-yyyy": "HH-BB-TTTT",
"date-format-mm-dd-yyyy": "BB-HH-TTTT",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Stel wydte",
"set-list-width": "Stel wydte",
"set-list-width-value": "Lyswydte (pixels)",
"list-width-error-message": "Lyswydte moet 'n heelgetal groter as 270 wees",
"list-width-error-message": "Lyswydte moet 'n heelgetal van ten minste 200 pixels wees.",
"list-width-shared-note": "Hierdie wydte word met almal op hierdie bord gedeel.",
"list-width-personal-note": "Hierdie wydte is net vir jou.",
"personal-list-width": "Persoonlike lyswydtes",
@@ -597,6 +597,7 @@
"custom-fields": "Pasgemaakte velde",
"date": "Datum",
"date-format": "Datum formaat",
"date-format-for-everyone": "Datumformaat vir almal",
"date-format-yyyy-mm-dd": "JJJJ-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-JJJJ",
"date-format-mm-dd-yyyy": "MM-DD-JJJJ",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Stel wydte",
"set-list-width": "Stel wydte",
"set-list-width-value": "Lyswydte (pixels)",
"list-width-error-message": "Lyswydte moet 'n heelgetal groter as 270 wees",
"list-width-error-message": "Lyswydte moet 'n heelgetal van ten minste 200 pixels wees.",
"list-width-shared-note": "Hierdie wydte word met almal op hierdie bord gedeel.",
"list-width-personal-note": "Hierdie wydte is net vir jou.",
"personal-list-width": "Persoonlike lyswydtes",
@@ -597,6 +597,7 @@
"custom-fields": "Pasgemaakte velde",
"date": "Datum",
"date-format": "Datum formaat",
"date-format-for-everyone": "Datumformaat vir almal",
"date-format-yyyy-mm-dd": "JJJJ-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-JJJJ",
"date-format-mm-dd-yyyy": "MM-DD-JJJJ",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Nsɛm a ɛfa dwumadi yi ho",
"set-list-width": "Sesa ade yi",
"set-list-width-value": "Nhyehyɛe width (pixels)",
"list-width-error-message": "Nhyehyɛe width must be an integer greater than 270",
"list-width-error-message": "Nhyehyɛe tɛtrɛtɛ ɛsɛ sɛ ɛyɛ nɔma a ɛyɛ mu, anyɛ yie koraa no 200 piksel",
"list-width-shared-note": "Eyi width is shared ne everyone wɔ eyi bɔɔd.",
"list-width-personal-note": "Eyi width is nko ara fanaa wo.",
"personal-list-width": "Personal nhyehyɛe widths",
@@ -597,6 +597,7 @@
"custom-fields": "Wo ankasa mmeae",
"date": "Da",
"date-format": "Da Fanaamat",
"date-format-for-everyone": "Da nkyerɛw nhyehyɛe ma obiara",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "ስፋት አዘጋጅ",
"set-list-width": "የዝርዝር ስፋት አዘጋጅ",
"set-list-width-value": "የዝርዝር ስፋት (ፒክስል)",
"list-width-error-message": "የዝርዝሩ ስፋት ከ270 የሚበልጥ ሙሉ ቁጥር መሆን አለበት",
"list-width-error-message": "የዝርዝሩ ስፋት ቢያንስ 200 ፒክስል የሆነ ሙሉ ቁጥር መሆን አለበት።",
"list-width-shared-note": "ይህ ስፋት በዚህ ሰሌዳ ላይ ለሁሉም ይጋራል።",
"list-width-personal-note": "ይህ ስፋት ለእርስዎ ብቻ ነው።",
"personal-list-width": "የግል ዝርዝር ስፋቶች",
@@ -597,6 +597,7 @@
"custom-fields": "ብጁ መስኮች",
"date": "ቀን",
"date-format": "የቀን ቅርጸት",
"date-format-for-everyone": "ለሁሉም የቀን ቅርጸት",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Establecer ancho",
"set-list-width": "Establecer ancho",
"set-list-width-value": "Amplaria d’a lista (pixels)",
"list-width-error-message": "L’amplaria d’a lista ha de estar un entero mayor que 270",
"list-width-error-message": "L’amplaria d’a lista ha d’estar un entero ≥ 200 pixels.",
"list-width-shared-note": "Iste ancho se comparte con totz os miembros de iste tablero.",
"list-width-personal-note": "Iste ancho es solo ta ti.",
"personal-list-width": "Amplarias de lista personals",
@@ -597,6 +597,7 @@
"custom-fields": "Campos personalizaus",
"date": "Calendata",
"date-format": "Formato de calendata",
"date-format-for-everyone": "Formato de calendata ta toz",
"date-format-yyyy-mm-dd": "AAAA-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-AAAA",
"date-format-mm-dd-yyyy": "MM-DD-AAAA",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "تعيين العرض",
"set-list-width": "تعيين العرض",
"set-list-width-value": "عرض القائمة (بالبكسل)",
"list-width-error-message": "يجب أن يكون عرض القائمة عدداً صحيحاً أكبر من 270",
"list-width-error-message": "يجب أن يكون عرض القائمة عدداً صحيحاً لا يقل عن 200 بكسل.",
"list-width-shared-note": "يتم مشاركة هذا العرض مع الجميع في هذه اللوحة.",
"list-width-personal-note": "هذا العرض خاص بك فقط.",
"personal-list-width": "عروض القوائم الشخصية",
@@ -597,6 +597,7 @@
"custom-fields": "فیلدهای شخصی",
"date": "تاريخ",
"date-format": "تنسيق التاريخ",
"date-format-for-everyone": "تنسيق التاريخ للجميع",
"date-format-yyyy-mm-dd": "YYYY-MM-DD (سنة-شهر-يوم)",
"date-format-dd-mm-yyyy": "DD-MM-YYYY (يوم-شهر-سنة)",
"date-format-mm-dd-yyyy": "MM-DD-YYYY (شهر-يوم-سنة)",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "تعيين العرض",
"set-list-width": "تعيين العرض",
"set-list-width-value": "عرض القائمة (بالبكسل)",
"list-width-error-message": "يجب أن يكون عرض القائمة عدداً صحيحاً أكبر من 270",
"list-width-error-message": "يجب أن يكون عرض القائمة عدداً صحيحاً لا يقل عن 200 بكسل.",
"list-width-shared-note": "يتم مشاركة هذا العرض مع الجميع في هذه اللوحة.",
"list-width-personal-note": "هذا العرض خاص بك فقط.",
"personal-list-width": "عروض القوائم الشخصية",
@@ -597,6 +597,7 @@
"custom-fields": "فیلدهای شخصی",
"date": "تاريخ",
"date-format": "تنسيق التاريخ",
"date-format-for-everyone": "تنسيق التاريخ للجميع",
"date-format-yyyy-mm-dd": "YYYY-MM-DD (سنة-شهر-يوم)",
"date-format-dd-mm-yyyy": "DD-MM-YYYY (يوم-شهر-سنة)",
"date-format-mm-dd-yyyy": "MM-DD-YYYY (شهر-يوم-سنة)",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "تعيين العرض",
"set-list-width": "تعيين العرض",
"set-list-width-value": "عرض القائمة (بالبكسل)",
"list-width-error-message": "يجب أن يكون عرض القائمة عدداً صحيحاً أكبر من 270",
"list-width-error-message": "يجب أن يكون عرض القائمة عدداً صحيحاً لا يقل عن 200 بكسل.",
"list-width-shared-note": "يتم مشاركة هذا العرض مع الجميع في هذه اللوحة.",
"list-width-personal-note": "هذا العرض خاص بك فقط.",
"personal-list-width": "عروض القوائم الشخصية",
@@ -597,6 +597,7 @@
"custom-fields": "فیلدهای شخصی",
"date": "تاريخ",
"date-format": "تنسيق التاريخ",
"date-format-for-everyone": "تنسيق التاريخ للجميع",
"date-format-yyyy-mm-dd": "YYYY-MM-DD (سنة-شهر-يوم)",
"date-format-dd-mm-yyyy": "DD-MM-YYYY (يوم-شهر-سنة)",
"date-format-mm-dd-yyyy": "MM-DD-YYYY (شهر-يوم-سنة)",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "تعيين العرض",
"set-list-width": "تعيين العرض",
"set-list-width-value": "عرض القائمة (بالبكسل)",
"list-width-error-message": "يجب أن يكون عرض القائمة عدداً صحيحاً أكبر من 270",
"list-width-error-message": "خاص عرض الليستة يكون عدد صحيح، 200 بكسل على الأقل",
"list-width-shared-note": "يتم مشاركة هذا العرض مع الجميع في هذه اللوحة.",
"list-width-personal-note": "هذا العرض خاص بك فقط.",
"personal-list-width": "عروض القوائم الشخصية",
@@ -597,6 +597,7 @@
"custom-fields": "فیلدهای شخصی",
"date": "تاريخ",
"date-format": "تنسيق التاريخ",
"date-format-for-everyone": "شكل التاريخ للجميع",
"date-format-yyyy-mm-dd": "YYYY-MM-DD (سنة-شهر-يوم)",
"date-format-dd-mm-yyyy": "DD-MM-YYYY (يوم-شهر-سنة)",
"date-format-mm-dd-yyyy": "MM-DD-YYYY (شهر-يوم-سنة)",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "প্ৰস্থ স্থিৰ কৰক",
"set-list-width": "প্ৰস্থ স্থিৰ কৰক",
"set-list-width-value": "তালিকাৰ প্ৰস্থ (পিক্সেল)",
"list-width-error-message": "তালিকাৰ প্ৰস্থ 270 তকৈ ডাঙৰ পূৰ্ণসংখ্যা হ'ব লাগিব",
"list-width-error-message": "তালিকাৰ প্ৰস্থ অন্ততঃ 200 পিক্সেলৰ পূৰ্ণসংখ্যা হ'ব লাগিব।",
"list-width-shared-note": "এই প্ৰস্থ এই ব'ৰ্ডৰ সকলোৰে সৈতে ভাগ কৰা হয়।",
"list-width-personal-note": "এই প্ৰস্থ কেৱল আপোনাৰ বাবে।",
"personal-list-width": "ব্যক্তিগত তালিকা প্ৰস্থ",
@@ -597,6 +597,7 @@
"custom-fields": "নিজা ক্ষেত্ৰসমূহ",
"date": "তাৰিখ",
"date-format": "তাৰিখৰ বিন্যাস",
"date-format-for-everyone": "সকলোৰে বাবে তাৰিখৰ বিন্যাস",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Afitar anchor",
"set-list-width": "Afitar anchor",
"set-list-width-value": "Anchor de la lista (píxeles)",
"list-width-error-message": "L'anchor de la lista tien de ser un enteru mayor que 270",
"list-width-error-message": "L'anchor de la lista tien de ser un enteru de polo menos 200 píxeles.",
"list-width-shared-note": "Esti anchor compártese con toos nesti tablero.",
"list-width-personal-note": "Esti anchor ye namás pa ti.",
"personal-list-width": "Anchores personales de les listas",
@@ -597,6 +597,7 @@
"custom-fields": "Campos personalizados",
"date": "Fecha",
"date-format": "Formato de fecha",
"date-format-for-everyone": "Formatu de fecha pa tol mundu",
"date-format-yyyy-mm-dd": "YYYY-MM-DD (añu-mes-día)",
"date-format-dd-mm-yyyy": "DD-MM-YYYY (día-mes-añu)",
"date-format-mm-dd-yyyy": "MM-DD-YYYY (mes-día-añu)",
+3 -2
View File
@@ -134,8 +134,8 @@
"addListPopup-title": "Sutinaka yapaña",
"setListWidthPopup-title": "Set ancho",
"set-list-width": "Set ancho",
"set-list-width-value": "lista ancho (pixels)",
"list-width-error-message": "lista ancho must be an integer greater than 270",
"set-list-width-value": "Suti siqina irwaqapa (pixels)",
"list-width-error-message": "Suti siqina irwaqapa: pachpa jakhu ≥ 200 pixels wakisiwa",
"list-width-shared-note": "aka ancho awa shared mpi everyone patana aka pirqa.",
"list-width-personal-note": "aka ancho awa akiwa for you.",
"personal-list-width": "Personal lista widths",
@@ -597,6 +597,7 @@
"custom-fields": "Sapa yänaka",
"date": "Uru",
"date-format": "uru Format",
"date-format-for-everyone": "Taqinitaki uru uñacht’ayaña",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Eni təyin et",
"set-list-width": "Eni təyin et",
"set-list-width-value": "Siyahı eni (piksel)",
"list-width-error-message": "Siyahı eni 270-dən böyük tam ədəd olmalıdır",
"list-width-error-message": "Siyahı eni ən azı 200 piksel olan tam ədəd olmalıdır.",
"list-width-shared-note": "Bu en bu lövhədəki hər kəslə paylaşılır.",
"list-width-personal-note": "Bu en yalnız sizin üçündür.",
"personal-list-width": "Şəxsi siyahı enləri",
@@ -597,6 +597,7 @@
"custom-fields": "Fərdi Sahələr",
"date": "Tarix",
"date-format": "Tarix Format",
"date-format-for-everyone": "Hamı üçün tarix formatı",
"date-format-yyyy-mm-dd": "YYYY-AA-GG",
"date-format-dd-mm-yyyy": "GG-AA-İYYY",
"date-format-mm-dd-yyyy": "AA-GG-İYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Eni təyin et",
"set-list-width": "Eni təyin et",
"set-list-width-value": "Siyahı eni (piksel)",
"list-width-error-message": "Siyahı eni 270-dən böyük tam ədəd olmalıdır",
"list-width-error-message": "Siyahı eni ən azı 200 piksel olan tam ədəd olmalıdır.",
"list-width-shared-note": "Bu en bu lövhədəki hər kəslə paylaşılır.",
"list-width-personal-note": "Bu en yalnız sizin üçündür.",
"personal-list-width": "Şəxsi siyahı enləri",
@@ -597,6 +597,7 @@
"custom-fields": "Fərdi Sahələr",
"date": "Tarix",
"date-format": "Tarix Format",
"date-format-for-everyone": "Hamı üçün tarix formatı",
"date-format-yyyy-mm-dd": "YYYY-AA-GG",
"date-format-dd-mm-yyyy": "GG-AA-İYYY",
"date-format-mm-dd-yyyy": "AA-GG-İYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Eni təyin et",
"set-list-width": "Eni təyin et",
"set-list-width-value": "Siyahı eni (piksel)",
"list-width-error-message": "Siyahı eni 270-dən böyük tam ədəd olmalıdır",
"list-width-error-message": "Siyahı eni ən azı 200 piksel olan tam ədəd olmalıdır.",
"list-width-shared-note": "Bu en bu lövhədəki hər kəslə paylaşılır.",
"list-width-personal-note": "Bu en yalnız sizin üçündür.",
"personal-list-width": "Şəxsi siyahı enləri",
@@ -597,6 +597,7 @@
"custom-fields": "Fərdi Sahələr",
"date": "Tarix",
"date-format": "Tarix Format",
"date-format-for-everyone": "Hamı üçün tarix formatı",
"date-format-yyyy-mm-dd": "YYYY-AA-GG",
"date-format-dd-mm-yyyy": "GG-AA-İYYY",
"date-format-mm-dd-yyyy": "AA-GG-İYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Киңлекте билдәләргә",
"set-list-width": "Киңлекте билдәләргә",
"set-list-width-value": "Исемлек киңлеге (пикселдәр)",
"list-width-error-message": "Исемлек киңлеге 270-тән ҙурыраҡ бөтөн һан булырға тейеш",
"list-width-error-message": "Исемлек киңлеге кәм тигәндә 200 пиксел булған бөтөн һан булырға тейеш",
"list-width-shared-note": "Был киңлек ошо таҡталағы бөтәһе менән уртаҡ.",
"list-width-personal-note": "Был киңлек тик һеҙҙең өсөн.",
"personal-list-width": "Шәхси исемлек киңлектәре",
@@ -597,6 +597,7 @@
"custom-fields": "Махсус ҡырҙар",
"date": "Дата",
"date-format": "Дата форматы",
"date-format-for-everyone": "Бөтәһе өсөн дата форматы",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Задаць шырыню",
"set-list-width": "Задаць шырыню",
"set-list-width-value": "Шырыня спіса (пікселі)",
"list-width-error-message": "Шырыня спіса павінна быць цэлым лікам больш за 270",
"list-width-error-message": "Шырыня спіса павінна быць цэлым лікам не менш за 200 пікселяў.",
"list-width-shared-note": "Гэтая шырыня агульная для ўсіх на гэтай дошцы.",
"list-width-personal-note": "Гэтая шырыня толькі для вас.",
"personal-list-width": "Асабістая шырыня спісаў",
@@ -597,6 +597,7 @@
"custom-fields": "Карыстальніцкія палі",
"date": "Дата",
"date-format": "Фармат даты",
"date-format-for-everyone": "Фармат даты для ўсіх",
"date-format-yyyy-mm-dd": "ГГГГ-ММ-ДД",
"date-format-dd-mm-yyyy": "ДД-ММ-ГГГГ",
"date-format-mm-dd-yyyy": "ММ-ДД-ГГГГ",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Задай ширина",
"set-list-width": "Задай ширина",
"set-list-width-value": "Ширина на списъка (пиксели)",
"list-width-error-message": "Ширината на списъка трябва да е цяло число, по-голямо от 270",
"list-width-error-message": "Ширината на списъка трябва да е цяло число от поне 200 пиксела.",
"list-width-shared-note": "Тази ширина е споделена с всички на това табло.",
"list-width-personal-note": "Тази ширина е само за вас.",
"personal-list-width": "Лични ширини на списъците",
@@ -597,6 +597,7 @@
"custom-fields": "Собствени полета",
"date": "Дата",
"date-format": "Запис",
"date-format-for-everyone": "Формат на датата за всички",
"date-format-yyyy-mm-dd": "година-месец-дан",
"date-format-dd-mm-yyyy": "дан-месец-година",
"date-format-mm-dd-yyyy": "месец-дан-година",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "चौड़ाई तय करीं",
"set-list-width": "चौड़ाई तय करीं",
"set-list-width-value": "सूची के चौड़ाई (पिक्सेल)",
"list-width-error-message": "सूची के चौड़ाई 270 से बड़ पूर्णांक होखे के चाहीं",
"list-width-error-message": "सूची के चौड़ाई कम से कम 200 पिक्सेल के पूर्णांक होखे के चाहीं।",
"list-width-shared-note": "ई चौड़ाई एह बोर्ड पर सभका साथ साझा बा।",
"list-width-personal-note": "ई चौड़ाई खाली रउआ खातिर बा।",
"personal-list-width": "निजी सूची चौड़ाई",
@@ -597,6 +597,7 @@
"custom-fields": "अपना क्षेत्र",
"date": "तारीख",
"date-format": "तारीख के रूप",
"date-format-for-everyone": "सब खातिर तारीख के रूप",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Tok blong sistem: Set width",
"set-list-width": "Tok blong sistem: Set width",
"set-list-width-value": "Lis width (pixels)",
"list-width-error-message": "Lis width must stap wan integer greater than 270",
"list-width-error-message": "Waed blong lis i mas wan ful namba ≥ 200 piksel",
"list-width-shared-note": "Dispela width i shared wetem everyone long dispela bod.",
"list-width-personal-note": "Dispela width i nomo blong you.",
"personal-list-width": "Personal lis widths",
@@ -597,6 +597,7 @@
"custom-fields": "Ol fil blong yu",
"date": "Det",
"date-format": "Deit Format",
"date-format-for-everyone": "Fasin blong soem deit blong evriwan",
"date-format-yyyy-mm-dd": "Tok blong sistem: YYYY-MM-DD",
"date-format-dd-mm-yyyy": "Tok blong sistem: DD-MM-YYYY",
"date-format-mm-dd-yyyy": "Tok blong sistem: MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Bonya sɛmɛntiya",
"set-list-width": "Bonya sɛmɛntiya",
"set-list-width-value": "Lisiti bonya (pikɛsɛli)",
"list-width-error-message": "Lisiti bonya ka kan ka kɛ hakɛtilennen ye min ka bon 270 ye",
"list-width-error-message": "Lisiti bonya ka kan ka kɛ hakɛtilennen ye min ka kɛ hali 200 pikɛsɛli ye",
"list-width-shared-note": "Bonya in bɛ tila tabali in mɔgɔ bɛɛ ni.",
"list-width-personal-note": "Bonya in ye i yɛrɛ dɔrɔn ta ye.",
"personal-list-width": "Mɔgɔ yɛrɛ lisiti bonyaw",
@@ -597,6 +597,7 @@
"custom-fields": "I yɛrɛ ka fɔrɔw",
"date": "Don",
"date-format": "Don cogoya",
"date-format-for-everyone": "Don sɛbɛn cogo bɛɛ ye",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "প্রস্থ নির্ধারণ করুন",
"set-list-width": "প্রস্থ নির্ধারণ করুন",
"set-list-width-value": "তালিকার প্রস্থ (পিক্সেল)",
"list-width-error-message": "তালিকার প্রস্থ 270-এর চেয়ে বড় পূর্ণসংখ্যা হতে হবে",
"list-width-error-message": "তালিকার প্রস্থ অন্তত 200 পিক্সেলের পূর্ণসংখ্যা হতে হবে।",
"list-width-shared-note": "এই প্রস্থটি বোর্ডের সবার সঙ্গে ভাগ করা হয়।",
"list-width-personal-note": "এই প্রস্থটি শুধু আপনার জন্য।",
"personal-list-width": "ব্যক্তিগত তালিকার প্রস্থ",
@@ -597,6 +597,7 @@
"custom-fields": "কাস্টম ক্ষেত্র",
"date": "তারিখ",
"date-format": "তারিখের বিন্যাস",
"date-format-for-everyone": "সবার জন্য তারিখের বিন্যাস",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "ཞེང་ཚད་སྒྲིག",
"set-list-width": "ཞེང་ཚད་སྒྲིག",
"set-list-width-value": "ཐོ་གཞུང་གི་ཞེང་ཚད་ (pixels)",
"list-width-error-message": "ཐོ་གཞུང་གི་ཞེང་ཚད་ 270 ལས་ཆེ་བའི་ཧྲིལ་གྲངས་ཡིན་དགོས།",
"list-width-error-message": "ཐོ་གཞུང་གི་ཞེང་ཚད་ ཉུང་མཐར་ 200 pixels ཀྱི་ཧྲིལ་གྲངས་ཡིན་དགོས།",
"list-width-shared-note": "ཞེང་ཚད་འདི་ལས་སྒྲོམ་འདིའི་མི་ཚང་མར་མཉམ་སྤྱོད་བྱེད།",
"list-width-personal-note": "ཞེང་ཚད་འདི་ཁྱེད་ཁོ་ནར་ཡིན།",
"personal-list-width": "སྒེར་གྱི་ཐོ་གཞུང་ཞེང་ཚད།",
@@ -597,6 +597,7 @@
"custom-fields": "རང་སྒྲིག་ས་ཁོངས།",
"date": "ཚེས་གྲངས།",
"date-format": "ཚེས་གྲངས་རྣམ་གཞག",
"date-format-for-everyone": "ཚང་མའི་ཚེས་གྲངས་རྣམ་གཞག",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Termeniñ al ledander",
"set-list-width": "Termeniñ al ledander",
"set-list-width-value": "Ledander ar roll (piksel)",
"list-width-error-message": "Ledander ar roll a rank bezañ un niver anterin brasoc'h eget 270",
"list-width-error-message": "Ledander ar roll a rank bezañ un niver anterin, 200 piksel da nebeutañ.",
"list-width-shared-note": "Rannet eo al ledander-mañ gant an holl dud war an daolenn-mañ.",
"list-width-personal-note": "Evidoc'h hepken emañ al ledander-mañ.",
"personal-list-width": "Ledander personel ar rolloù",
@@ -597,6 +597,7 @@
"custom-fields": "Maeziennoù personelaet",
"date": "Deiziad",
"date-format": "Stumm an deiziad",
"date-format-for-everyone": "Stumm an deiziad evit an holl",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Postavi širinu",
"set-list-width": "Postavi širinu",
"set-list-width-value": "Širina liste (pikseli)",
"list-width-error-message": "Širina liste mora biti cijeli broj veći od 270",
"list-width-error-message": "Širina liste mora biti cijeli broj od najmanje 200 piksela.",
"list-width-shared-note": "Ova širina dijeli se sa svima na ovoj ploči.",
"list-width-personal-note": "Ova širina vrijedi samo za vas.",
"personal-list-width": "Osobne širine listi",
@@ -597,6 +597,7 @@
"custom-fields": "Prilagođena polja",
"date": "Datum",
"date-format": "Запис",
"date-format-for-everyone": "Format datuma za sve",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Үргэниие тохируулха",
"set-list-width": "Үргэниие тохируулха",
"set-list-width-value": "Жагсаалтын үргэн (пиксель)",
"list-width-error-message": "Жагсаалтын үргэн 270-һаа ехэ бүхэли тоо байха ёһотой",
"list-width-error-message": "Жагсаалтын үргэн 200 пиксельһээ бага бэшэ бүхэли тоо байха ёһотой",
"list-width-shared-note": "Энэ үргэн тус самбар дээрэхи бүхы хүнүүдтэ адли байна.",
"list-width-personal-note": "Энэ үргэн гансал танда хабаатай.",
"personal-list-width": "Жагсаалтын хубиин үргэнүүд",
@@ -597,6 +597,7 @@
"custom-fields": "Тусхай талмайнууд",
"date": "Үдэр",
"date-format": "Үдэрэй хэлбэри",
"date-format-for-everyone": "Бултанда үдэрэй хэлбэри",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Estableix l'amplada",
"set-list-width": "Estableix l'amplada",
"set-list-width-value": "Amplada de la llista (píxels)",
"list-width-error-message": "L'amplada de la llista ha de ser un enter més gran que 270",
"list-width-error-message": "L'amplada de la llista ha de ser un nombre enter d'almenys 200 píxels.",
"list-width-shared-note": "Aquesta amplada es comparteix amb tothom en aquest tauler.",
"list-width-personal-note": "Aquesta amplada és només per a vós.",
"personal-list-width": "Amplades de llista personals",
@@ -597,6 +597,7 @@
"custom-fields": "Camps Personalitzats",
"date": "Dades",
"date-format": "Format de data",
"date-format-for-everyone": "Format de data per a tothom",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Estableix l'amplada",
"set-list-width": "Estableix l'amplada",
"set-list-width-value": "Amplada de la llista (píxels)",
"list-width-error-message": "L'amplada de la llista ha de ser un enter més gran que 270",
"list-width-error-message": "L'amplada de la llista ha de ser un nombre enter d'almenys 200 píxels.",
"list-width-shared-note": "Aquesta amplada es comparteix amb tothom en aquest tauler.",
"list-width-personal-note": "Aquesta amplada és només per a vós.",
"personal-list-width": "Amplades de llista personals",
@@ -597,6 +597,7 @@
"custom-fields": "Camps Personalitzats",
"date": "Dades",
"date-format": "Format de data",
"date-format-for-everyone": "Format de data per a tothom",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Estableix l'amplada",
"set-list-width": "Estableix l'amplada",
"set-list-width-value": "Amplada de la llista (píxels)",
"list-width-error-message": "L'amplada de la llista ha de ser un enter més gran que 270",
"list-width-error-message": "L'amplada de la llista ha de ser un nombre enter d'almenys 200 píxels.",
"list-width-shared-note": "Aquesta amplada es comparteix amb tothom en aquest tauler.",
"list-width-personal-note": "Aquesta amplada és només per a vós.",
"personal-list-width": "Amplades de llista personals",
@@ -597,6 +597,7 @@
"custom-fields": "Camps Personalitzats",
"date": "Dades",
"date-format": "Format de data",
"date-format-for-everyone": "Format de data per a tothom",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "ᎾᏯᏍᏗ ᎦᏟᏌᏅ",
"set-list-width": "ᎾᏯᏍᏗ ᎦᏟᏌᏅ",
"set-list-width-value": "ᏗᎪᏪᎵ ᎾᏯᏍᏗ (ᏗᏑᏰᏍᏗ ᏗᎦᏟᏌᏅ)",
"list-width-error-message": "ᏗᎪᏪᎵ ᎾᏯᏍᏗ 270 ᎤᏟ ᎢᎦᎢ ᎤᏙᎯᏳ ᎠᏎᎸ ᎨᏎᏍᏗ",
"list-width-error-message": "ᏗᎪᏪᎵ ᎾᏯᏍᏗ: ᎢᎦᎢ ᎬᏩᏃᏍᏓ ≥ 200 pixels ᎨᏎᏍᏗ",
"list-width-shared-note": "ᎯᎠ ᎾᏯᏍᏗ ᏂᎦᏛ ᎯᎠ ᎦᏍᎩᎸ ᎠᏂᏯᎢ ᏓᏂᏙᎾᎥ.",
"list-width-personal-note": "ᎯᎠ ᎾᏯᏍᏗ ᏂᎯᏉ ᏣᏤᎵ.",
"personal-list-width": "ᎤᏩᏒ ᏗᎪᏪᎵ ᏗᎾᏯᏍᏗ",
@@ -597,6 +597,7 @@
"custom-fields": "ᎪᎱᏍᏗ ᏗᎦᏙᎬ",
"date": "ᎢᎦ",
"date-format": "ᎢᎦ ᎢᏯᏍᏗ",
"date-format-for-everyone": "ᏂᎦᏛ ᎢᎦ ᎢᏯᏍᏗ",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "پانی دابنێ",
"set-list-width": "پانی دابنێ",
"set-list-width-value": "پانی لیست (پیکسڵ)",
"list-width-error-message": "پانی لیست دەبێت ژمارەیەکی تەواو و گەورەتر لە 270 بێت",
"list-width-error-message": "پانی لیست دەبێت ژمارەیەکی تەواوی لانی کەم 200 پیکسڵ بێت",
"list-width-shared-note": "ئەم پانییە لەگەڵ هەموو کەسێک لەم تەختەیە هاوبەشە.",
"list-width-personal-note": "ئەم پانییە تەنها بۆ تۆیە.",
"personal-list-width": "پانی تایبەتی لیستەکان",
@@ -597,6 +597,7 @@
"custom-fields": "خانە تایبەتەکان",
"date": "بەروار",
"date-format": "شێوازی بەروار",
"date-format-for-everyone": "شێوازی بەروار بۆ هەمووان",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "设置宽度",
"set-list-width": "设置宽度",
"set-list-width-value": "列表宽度(像素)",
"list-width-error-message": "列表宽度必须为大于 270 的整数",
"list-width-error-message": "列表宽度必须是至少 200 像素的整数。",
"list-width-shared-note": "此宽度对本看板上的所有人共享。",
"list-width-personal-note": "此宽度仅对你生效。",
"personal-list-width": "个人列表宽度",
@@ -597,6 +597,7 @@
"custom-fields": "自定义字段",
"date": "日期",
"date-format": "日期格式",
"date-format-for-everyone": "所有人的日期格式",
"date-format-yyyy-mm-dd": "年-月-日",
"date-format-dd-mm-yyyy": "日-月-年",
"date-format-mm-dd-yyyy": "月-日-年",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Imposta larghezza",
"set-list-width": "Imposta larghezza",
"set-list-width-value": "Larghezza lista (pixel)",
"list-width-error-message": "La larghezza di a lista deve essere un numero intero maggiore di 270",
"list-width-error-message": "A larghezza di a lista deve esse un numeru interu d'almenu 200 pixel.",
"list-width-shared-note": "Questa larghezza è condivisa cù tutti gli utilizatori di questa tavula.",
"list-width-personal-note": "Questa larghezza è solu per te.",
"personal-list-width": "Larghezze personali di e liste",
@@ -597,6 +597,7 @@
"custom-fields": "Campi persunalizati",
"date": "Data",
"date-format": "Formato data",
"date-format-for-everyone": "Formatu di data per tutti",
"date-format-yyyy-mm-dd": "AAAA-MM-GG",
"date-format-dd-mm-yyyy": "GG-MM-AAAA",
"date-format-mm-dd-yyyy": "MM-GG-AAAA",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Nastavit šířku",
"set-list-width": "Nastavit šířku",
"set-list-width-value": "Šířka seznamu (pixely)",
"list-width-error-message": "Šířka seznamu musí být celé číslo větší než 270",
"list-width-error-message": "Šířka seznamu musí být celé číslo alespoň 200 pixelů.",
"list-width-shared-note": "Tato šířka je sdílená se všemi na tomto tablu.",
"list-width-personal-note": "Tato šířka je pouze pro vás.",
"personal-list-width": "Osobní šířky seznamů",
@@ -597,6 +597,7 @@
"custom-fields": "Vlastní pole",
"date": "Datum",
"date-format": "Formát data",
"date-format-for-everyone": "Formát data pro všechny",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Nastavit šířku",
"set-list-width": "Nastavit šířku",
"set-list-width-value": "Šířka seznamu (pixely)",
"list-width-error-message": "Šířka seznamu musí být celé číslo větší než 270",
"list-width-error-message": "Šířka seznamu musí být celé číslo alespoň 200 pixelů.",
"list-width-shared-note": "Tato šířka je sdílená se všemi na tomto tablu.",
"list-width-personal-note": "Tato šířka je pouze pro vás.",
"personal-list-width": "Osobní šířky seznamů",
@@ -597,6 +597,7 @@
"custom-fields": "Vlastní pole",
"date": "Datum",
"date-format": "Formát data",
"date-format-for-everyone": "Formát data pro všechny",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Ustaw szerokość — pò kaszëbskù",
"set-list-width": "Ustaw szerokość — pò kaszëbskù",
"set-list-width-value": "Szerokość lëstë (piksele)",
"list-width-error-message": "Szerokość lëstë musi być liczbą całkowitą większą niż 270",
"list-width-error-message": "Szërokòsc lëstë mùszi bëc cëłkòwitą lëczbą ≥ 200 pikselów",
"list-width-shared-note": "Ta szerokość jest wspòlna dla wszëtczich na tej tôblëcë.",
"list-width-personal-note": "Ta szerokość jest tylko dla Ciebie. — pò kaszëbskù",
"personal-list-width": "Osobiste szerokości lëstòw",
@@ -597,6 +597,7 @@
"custom-fields": "Włôsné pòla",
"date": "Datum",
"date-format": "Format daty — pò kaszëbskù",
"date-format-for-everyone": "Fòrmat datë dlô wszëtczich",
"date-format-yyyy-mm-dd": "YYYY-MM-DD — pò kaszëbskù",
"date-format-dd-mm-yyyy": "DD-MM-YYYY — pò kaszëbskù",
"date-format-mm-dd-yyyy": "MM-DD-YYYY — pò kaszëbskù",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Сарлӑк лартас",
"set-list-width": "Сарлӑк лартас",
"set-list-width-value": "Список сарлӑкӗ (пиксельсем)",
"list-width-error-message": "Список сарлӑкӗ 270рен пысӑк пӗтӗм хисеп пулмалла",
"list-width-error-message": "Список сарлӑкӗ пӗтӗм хисеп ≥ 200 пиксель пулмалла",
"list-width-shared-note": "Ҫак сарлӑк ҫак хӑмари пуриншӗн те пӗр.",
"list-width-personal-note": "Ҫак сарлӑк сирӗншӗн кӑна.",
"personal-list-width": "Списокӑн харпӑрлӑ сарлӑкӗсем",
@@ -597,6 +597,7 @@
"custom-fields": "Уйрӑм хирсем",
"date": "Кун",
"date-format": "Кун форматӗ",
"date-format-for-everyone": "Пурин валли кун форматӗ",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Gosod lled",
"set-list-width": "Gosod lled",
"set-list-width-value": "Lled y rhestr (picseli)",
"list-width-error-message": "Rhaid i led y rhestr fod yn gyfanrif sy'n fwy na 270",
"list-width-error-message": "Rhaid i led y rhestr fod yn gyfanrif o leiaf 200 picseli.",
"list-width-shared-note": "Rhennir y lled hwn â phawb ar y bwrdd hwn.",
"list-width-personal-note": "Mae'r lled hwn ar eich cyfer chi yn unig.",
"personal-list-width": "Lledau rhestr personol",
@@ -597,6 +597,7 @@
"custom-fields": "Maes Custom",
"date": "Dyddiad",
"date-format": "Fformat Dyddiad",
"date-format-for-everyone": "Fformat dyddiad i bawb",
"date-format-yyyy-mm-dd": "BBBB-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-BBBB",
"date-format-mm-dd-yyyy": "MM-DD-BBBB",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Gosod lled",
"set-list-width": "Gosod lled",
"set-list-width-value": "Lled y rhestr (picseli)",
"list-width-error-message": "Rhaid i led y rhestr fod yn gyfanrif sy'n fwy na 270",
"list-width-error-message": "Rhaid i led y rhestr fod yn gyfanrif o leiaf 200 picseli.",
"list-width-shared-note": "Rhennir y lled hwn â phawb ar y bwrdd hwn.",
"list-width-personal-note": "Mae'r lled hwn ar eich cyfer chi yn unig.",
"personal-list-width": "Lledau rhestr personol",
@@ -597,6 +597,7 @@
"custom-fields": "Maes Custom",
"date": "Dyddiad",
"date-format": "Fformat Dyddiad",
"date-format-for-everyone": "Fformat dyddiad i bawb",
"date-format-yyyy-mm-dd": "BBBB-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-BBBB",
"date-format-mm-dd-yyyy": "MM-DD-BBBB",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Angiv bredde",
"set-list-width": "Angiv bredde",
"set-list-width-value": "Listebredde (pixels)",
"list-width-error-message": "Listebredden skal være et heltal større end 270",
"list-width-error-message": "Listebredden skal være et heltal på mindst 200 pixels.",
"list-width-shared-note": "Denne bredde deles med alle på denne tavle.",
"list-width-personal-note": "Denne bredde er kun for dig.",
"personal-list-width": "Personlige listebredder",
@@ -597,6 +597,7 @@
"custom-fields": "Brugerdefinerede felter",
"date": "Dato",
"date-format": "Datoformat",
"date-format-for-everyone": "Datoformat for alle",
"date-format-yyyy-mm-dd": "ÅÅÅÅ-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-ÅÅÅÅ",
"date-format-mm-dd-yyyy": "MM-DD-ÅÅÅÅ",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Setze Breite",
"set-list-width": "Setze Breite",
"set-list-width-value": "Breite der Liste (Pixel)",
"list-width-error-message": "Breite der Liste muss eine ganze Zahl größer als 270 sein",
"list-width-error-message": "Die Breite der Liste muss eine ganze Zahl von mindestens 200 Pixeln sein.",
"list-width-shared-note": "Diese Breite wird mit allen auf dem Board geteilt.",
"list-width-personal-note": "Diese Breite gilt nur für dich.",
"personal-list-width": "Presönliche Listenbreite",
@@ -597,6 +597,7 @@
"custom-fields": "Benutzerdefinierte Felder",
"date": "Datum",
"date-format": "Datumsformat",
"date-format-for-everyone": "Datumsformat für alle",
"date-format-yyyy-mm-dd": "JJJJ-MM-TT",
"date-format-dd-mm-yyyy": "TT-MM-JJJJ",
"date-format-mm-dd-yyyy": "MM-TT-JJJJ",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Setze Breite",
"set-list-width": "Setze Breite",
"set-list-width-value": "Breite der Liste (Pixel)",
"list-width-error-message": "Breite der Liste muss eine ganze Zahl größer als 270 sein",
"list-width-error-message": "Die Breite der Liste muss eine ganze Zahl von mindestens 200 Pixeln sein.",
"list-width-shared-note": "Diese Breite wird mit allen auf dem Board geteilt.",
"list-width-personal-note": "Diese Breite gilt nur für dich.",
"personal-list-width": "Presönliche Listenbreite",
@@ -597,6 +597,7 @@
"custom-fields": "Benutzerdefinierte Felder",
"date": "Datum",
"date-format": "Datumsformat",
"date-format-for-everyone": "Datumsformat für alle",
"date-format-yyyy-mm-dd": "JJJJ-MM-TT",
"date-format-dd-mm-yyyy": "TT-MM-JJJJ",
"date-format-mm-dd-yyyy": "MM-TT-JJJJ",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Setze Breite",
"set-list-width": "Setze Breite",
"set-list-width-value": "Breite der Liste (Pixel)",
"list-width-error-message": "Breite der Liste muss eine ganze Zahl größer als 270 sein",
"list-width-error-message": "Die Breite der Liste muss eine ganze Zahl von mindestens 200 Pixeln sein.",
"list-width-shared-note": "Diese Breite wird mit allen auf dem Board geteilt.",
"list-width-personal-note": "Diese Breite gilt nur für dich.",
"personal-list-width": "Presönliche Listenbreite",
@@ -597,6 +597,7 @@
"custom-fields": "Benutzerdefinierte Felder",
"date": "Datum",
"date-format": "Datumsformat",
"date-format-for-everyone": "Datumsformat für alle",
"date-format-yyyy-mm-dd": "JJJJ-MM-TT",
"date-format-dd-mm-yyyy": "TT-MM-JJJJ",
"date-format-mm-dd-yyyy": "MM-TT-JJJJ",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Setze Breite",
"set-list-width": "Setze Breite",
"set-list-width-value": "Breite der Liste (Pixel)",
"list-width-error-message": "Breite der Liste muss eine ganze Zahl größer als 270 sein",
"list-width-error-message": "Die Breite der Liste muss eine ganze Zahl von mindestens 200 Pixeln sein.",
"list-width-shared-note": "Diese Breite wird mit allen auf dem Board geteilt.",
"list-width-personal-note": "Diese Breite gilt nur für dich.",
"personal-list-width": "Presönliche Listenbreite",
@@ -597,6 +597,7 @@
"custom-fields": "Benutzerdefinierte Felder",
"date": "Datum",
"date-format": "Datumsformat",
"date-format-for-everyone": "Datumsformat für alle",
"date-format-yyyy-mm-dd": "JJJJ-MM-TT hh:mm",
"date-format-dd-mm-yyyy": "TT-MM-JJJJ",
"date-format-mm-dd-yyyy": "MM-TT-JJJJ",
+4 -3
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "རྒྱ་ཚད་བཟོ།",
"set-list-width": "རྒྱ་ཚད་བཟོ།",
"set-list-width-value": "ཐོ་ཡིག་གི་རྒྱ་ཚད་ (པིག་སེལ།)",
"list-width-error-message": "ཐོ་ཡིག་གི་རྒྱ་ཚད་འདི་ 270 ལས་མང་བའི་ཧྲིལ་གྲངས་འོང་དགོ།",
"list-width-error-message": "ཐོ་ཡིག་གི་རྒྱ་ཚད་འདི་ ཉུང་མཐར་ 200 པིག་སེལ་གྱི་ཧྲིལ་གྲངས་འོང་དགོ།",
"list-width-shared-note": "རྒྱ་ཚད་འདི་བྱང་གཞི་འདི་གུ་ག་ར་ལུ་རུབ་སྤྱོད་འབདཝ་ཨིན།",
"list-width-personal-note": "རྒྱ་ཚད་འདི་ཁྱོད་རང་ལུ་རྐྱངམ་ཅིག་ཨིན།",
"personal-list-width": "སྒེར་གྱི་ཐོ་ཡིག་རྒྱ་ཚད།",
@@ -308,9 +308,9 @@
"calendar-system-hebrew": "ཧེ་བྲུ་ཟླ་ཐོ",
"calendar-system-indian": "རྒྱལ་ཁབ་ཀྱི་ཟླ་ཐོ (རྒྱ་གར)",
"calendar-system-islamic": "Hijri ཟླ་ཐོ",
"calendar-system-islamic-civil": "Islamic civil",
"calendar-system-islamic-civil": "Hijri ཟླ་ཐོ (རེའུ་མིག་ཅན་, འགོ་བཙུགས་ཚེས་ Julian 622-07-16)",
"calendar-system-islamic-rgsa": "Hijri ཟླ་ཐོ (Saudi Arabia, ཟླཝ་མཐོང་ནི་)",
"calendar-system-islamic-tbla": "Islamic tabular",
"calendar-system-islamic-tbla": "Hijri ཟླ་ཐོ (རེའུ་མིག་ཅན་, འགོ་བཙུགས་ཚེས་ Julian 622-07-15)",
"calendar-system-islamic-umalqura": "Hijri ཟླ་ཐོ (Umm al-Qura)",
"calendar-system-iso8601": "གྲེག་གོ་རི་ཡཱན་ཟླ་ཐོ (ISO 8601 བདུན་ཕྲག)",
"calendar-system-japanese": "ཇ་པཱན་གྱི་ཟླ་ཐོ",
@@ -597,6 +597,7 @@
"custom-fields": "རང་སྒྲིག་ས་སྒོ།",
"date": "ཚེས།",
"date-format": "ཚེས་གྲངས་རྩ་སྒྲིག",
"date-format-for-everyone": "ག་ར་གི་དོན་ལུ་ཚེས་གྲངས་རྩ་སྒྲིག",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+3 -2
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Ðo kekeme",
"set-list-width": "Ðo kekeme",
"set-list-width-value": "Xexlẽdzesi ƒe kekeme (pixels)",
"list-width-error-message": "Xexlẽdzesi ƒe kekeme anye blibo si le 270 dzi",
"list-width-error-message": "Xexlẽdzesi ƒe kekeme anye blibo si le 200 pixels ya teti",
"list-width-shared-note": "Womana kekeme sia ame sia ame le kpekpeɖeŋu sia dzi.",
"list-width-personal-note": "Kekeme sia nye tɔwò ko.",
"personal-list-width": "Ŋutɔ ƒe xexlẽdzesiwo ƒe kekemewo",
@@ -310,7 +310,7 @@
"calendar-system-islamic": "Hijri kalenda",
"calendar-system-islamic-civil": "islam subɔlawo ƒe sivil kalenda",
"calendar-system-islamic-rgsa": "Hijri kalenda (Saudi Arabia nutome, ɣleti kpɔkpɔ)",
"calendar-system-islamic-tbla": "Islamic tabular",
"calendar-system-islamic-tbla": "Hijri kalenda (akɔ́nta dzi, astronomi ƒe gɔmedzedze)",
"calendar-system-islamic-umalqura": "Hijri kalenda (Umm al-Qura)",
"calendar-system-iso8601": "ISO 8601",
"calendar-system-japanese": "japantɔwo ƒe kalenda",
@@ -597,6 +597,7 @@
"custom-fields": "Wò ŋutɔ wò teƒewo",
"date": "Ŋkeke",
"date-format": "Ŋkeke ƒe nɔnɔme",
"date-format-for-everyone": "Ŋkeke ƒe nɔnɔme na ame sia ame",
"date-format-yyyy-mm-dd": "YYYY-MM-DD",
"date-format-dd-mm-yyyy": "DD-MM-YYYY",
"date-format-mm-dd-yyyy": "MM-DD-YYYY",
+2 -1
View File
@@ -135,7 +135,7 @@
"setListWidthPopup-title": "Ορισμός πλάτους",
"set-list-width": "Ορισμός πλάτους",
"set-list-width-value": "Πλάτος λίστας (pixels)",
"list-width-error-message": "Το πλάτος της λίστας πρέπει να είναι ακέραιος μεγαλύτερος από 270",
"list-width-error-message": "Το πλάτος της λίστας πρέπει να είναι ακέραιος αριθμός τουλάχιστον 200 pixels.",
"list-width-shared-note": "Αυτό το πλάτος είναι κοινό για όλους σε αυτόν τον πίνακα.",
"list-width-personal-note": "Αυτό το πλάτος είναι μόνο για εσάς.",
"personal-list-width": "Προσωπικά πλάτη λιστών",
@@ -597,6 +597,7 @@
"custom-fields": "Προσαρμοσμένα Πεδία",
"date": "Ημερομηνία",
"date-format": "Μορφή ημερομηνίας",
"date-format-for-everyone": "Μορφή ημερομηνίας για όλους",
"date-format-yyyy-mm-dd": "ΕΕΕΕ-ΜΜ-ΗΗ",
"date-format-dd-mm-yyyy": "ΗΗ-ΜΜ-ΕΕΕΕ",
"date-format-mm-dd-yyyy": "ΜΜ-ΗΗ-ΕΕΕΕ",
Loaded 100 of 534 files, more files were not shown because too many files have changed in this diff. Show more