weblate/docs/formats/apple.rst
Copilot 940a4b0dc9
feat(checks): Add Objective-C format string check for iOS .strings/.stringsdict (#18839)
Adds support for Objective-C format string checks (%@ and %1$@).

- Added OBJC_PRINTF_MATCH regex pattern
- Added objc-format entry in FLAG_RULES
- Added ObjCFormatCheck class extending BasePrintfCheck
- Registered in CHECK_LIST
- Wired check_flags into StringsFormat and StringsdictFormat
- Added tests following CFormatCheckTest pattern
- Updated changelog and auto-generated documentation

Closes #18339

Co-authored-by: Michal Čihař <michal@weblate.org>
2026-04-09 14:10:57 +00:00

41 lines
2 KiB
ReStructuredText

.. _apple:
.. _strings:
Apple iOS strings
-----------------
.. index::
pair: Apple strings; file format
File format typically used for translating Apple :index:`iOS <pair: iOS;
translation>` applications, but also standardized by PWG 5100.13 and used on
NeXTSTEP/OpenSTEP.
Apple iOS strings are usually used as monolingual.
.. seealso::
* :ref:`stringsdict`
* `Apple "strings files" documentation <https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPInternational/MaintaingYourOwnStringsFiles/MaintaingYourOwnStringsFiles.html>`_
* `Message Catalog File Format in PWG 5100.13 <https://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf#page=66>`_
* :doc:`tt:formats/strings`
.. include:: /snippets/format-features/strings-features.rst
Weblate configuration
+++++++++++++++++++++
+-------------------------------------------------------------------------------+
| Typical Weblate :ref:`component` |
+================================+==============================================+
| File mask |``Resources/*.lproj/Localizable.strings`` |
+--------------------------------+----------------------------------------------+
| Monolingual base language file |``Resources/en.lproj/Localizable.strings`` or |
| |``Resources/Base.lproj/Localizable.strings`` |
+--------------------------------+----------------------------------------------+
| Template for new translations | `Empty` |
+--------------------------------+----------------------------------------------+
| File format | `iOS Strings` |
+--------------------------------+----------------------------------------------+
| File encoding | `UTF-8` |
+--------------------------------+----------------------------------------------+