Files
simplex-chat/apps/ios/LOCALIZATION.md
T
JRoberts 1152b5d737 mobile: support images (#536)
* ios api

* ios wip

* android wip

* ios files folder

* ios get address on start

* android app files folder

* ios more backend

* android more backend

* translation

* ios image without text, remove preview

* android image without text, remove preview

* fix translation

* file name in previews and w/t text

* Revert "file name in previews and w/t text"

This reverts commit 0110570e55.

* ios filename in preview

* android filename in preview

* android wider images

* ios determine width on image for correct quote width

* ios images in previews wip

* ios square image in quote

* ios: update image layout

* android images in quotes

* android remove redundant modifier

* android clip to bounds

* android - image in right side of quote

* android refactor image view

* android - refactor, align quote text top

* android fix emoji view

* fix image layout

* full screen image view, fix quote layout

* android various size

* android fixed image width

* android meta on image

* ios: add drag gesture to hide full-screen image

* android: make image-only meta white

* refactor file.stored

* android: meta icon color

* android: open chat scrolled to last unread item

* copy/share image messages

* android: full screen image

* check file is loaded

* terminal: refactor view for messages with files

* android: change to onClick, only show stored file

* android: remove close sheet bar

* android: close image view on click

* translation

* android: pass showMenu to CIImageView to show menu on long click

* increase DropDown width

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2022-04-19 12:29:03 +04:00

1.7 KiB

Localization

Creating localization keys

There are three ways XCode generates localization keys from strings:

  1. Automatically, from the texts used in standard components Text, Label, Button, etc.

  2. All strings passed to view variables and function parameters declared as LocalizedStringKey type. Only string constants (possibly, with interpolation) or other variables of type LocalizedStringKey can be passed to these parameters. See, for example, ContentView.swift.

  3. All strings wrapped in NSLocalizedString. Please note that such strings do not support swift interpolation, instead formatted strings should be used:

String.localizedStringWithFormat(NSLocalizedString("You can now send messages to %@", comment: "notification body")

Adding strings to the existing localizations

  1. Choose Product -> Export Localizations... in the menu, choose ios folder as the destination and SimpleX Localizations as the folder name, confirm to overwrite it (make sure not to save to subfolder).
  2. Add target keys to the localizations that were added or changed.
  3. Choose Product -> Import Localizations... for any non-English folders - that would update Localizable files.

Localizable files values can be edited directly, the changes will be included in the next export. Following the process above though guarantees that all strings are localized.

Development

Make sure to enable the option Show non-localized strings in Product -> Scheme -> Edit scheme... menu - it will be showing all non-localized strings as all caps.

Read more about editing XLIFF and string files here: https://developer.apple.com/documentation/xcode/editing-xliff-and-strings-files