Application strings manager
An application strings manager is a software tool primarily designed to optimize the download and storage of strings files used and produced in software development.{{Cite book|date=11 June 2007|publisher=IEEE|language=en-US|isbn=978-1-4244-0909-9|issn=1530-2075|doi=10.1109/IPDPS.2007.370348|citeseerx=10.1.1.626.4375|s2cid=1983830 |chapter=Scalable, Distributed, Dynamic Resource Management for the ARMS Distributed Real-Time Embedded System |title=2007 IEEE International Parallel and Distributed Processing Symposium |last1=Rohloff |first1=Kurt |last2=Gabay |first2=Yarom |last3=Ye |first3=Jianming |last4=Schantz |first4=Richard |pages=1–7 }} It centralizes the management of all the product strings generated and used by an organization to overcome the complexity arising from the diversity of strings types, and their position in the overall content workflow.{{Cite conference |book-title=Distributed applications and interoperable systems: 6th IFIP WG 6.1 International Conference, DAIS 2006, Bologna, Italy, June 14-16, 2006; proceedings |date=2006 |publisher=Springer |editor=Eliassen, Frank |editor2=Montresor, Alberto |isbn=978-3-540-35126-9|location=Berlin|oclc=262693352}}{{Cite conference |book-title=Proceedings RTAS 2005: 11th IEEE Real Time and Embedded Technology and Applications Symposium |date=2005 |publisher=IEEE Computer Society Press |isbn=978-0-7695-2302-6|location=Los Alamitos, CA |oclc=58598204}}{{Cite book|last1=Kaplan|first1=Ronald M.|last2=Maxwell|first2=John T.|date=1988-08-22|title=An algorithm for functional uncertainty|publisher=Association for Computational Linguistics|pages=297–302|doi=10.3115/991635.991695|isbn=963-8431-56-3|s2cid=8844517 }}
Uses
Application strings manager is a kind of software repository for text files, strings, and their corresponding keys. It can be used to store strings files produced by an organization itself, such as product content strings and UI content strings, or for third-party content which must be treated differently for both technical and workflow reasons.{{Cite web|url=http://www.dre.vanderbilt.edu/~spaunov/files/QoS.pdf|title=Domain-Specific Modeling Languages for Configuring and Evaluating Enterprise DRE System Quality of Service|last1=Paunov|first1=Stoyan|last2=Hill|first2=James|website=Vanderbilt University|last3=Schmidt|first3=Douglas|last4=D. Baker|first4=Steven|last5=M. Slaby|first5=John}}{{Cite web|url=http://www.omg.org/news/meetings/workshops/RT_2004_Manual/08-2_Dasarathy_etal.pdf|title=Network QoS Assurance through Admission Control|last1=B. Coan|last2=B. Dasarathy|date=July 2004|website=Object Management Group|last3=S. Gadgil|last4=K. Parmeswaran|last5=I. Sebuktekin|last6=R. Vaidyanathan|last7=M. Conarty}}
= Uses in software development =
To manage the source files used in software development, organizations typically use revision control. The many source files used in software development are eventually built into the product strings (also known as "strings files") which constitute the components of a software product. Consequently, a software product may comprise hundreds and even thousands of individual product strings which must be managed in order to efficiently maintain a coherent and functional software product. This function of managing the product strings is done by an application strings manager. An application strings manager can be thought of as being to strings what revision control is to source files.{{Cite thesis |degree=Master |last=Paunov |first=Stoyan G. |date=May 2006 |title=Aiding the Deployment and Configuration of Component Middleware in Distributed, Real-Time and Embedded Systems |publisher=Vanderbilt University |s2cid=17176596 |hdl=1803/12188 |hdl-access=free}}
= Strings managers =
Some factors and features that may be offered by a strings manager include:
- Files manager to store files locally or on network storage
- Workflow
- High availability through having a redundant set of repository managers work against the same database or file storage
- User restrictions native to the strings manager or integrated with other organizational systems such as LDAP or Single Sign-On servers
= Examples of Strings managers =
- [https://github.com/scelis/twine Twine]
- [https://github.com/dk107dk/cdocs cdocs]
- [https://www.phrase.com Phrase]
String file formats
class="wikitable"
! File Type ! Extension ! Resources |
Android XML
|.xml |[https://developer.android.com/guide/topics/resources/string-resource.html Android Strings] |
CSV
|.csv |[http://www.ietf.org/rfc/rfc4180.txt CSV RFC] |
gettext
|Classic standard .po |
HTML
|.htm, .html |[https://www.w3.org/TR/html/ WC3 HTML] |
InDesign Markup
|.idml |[http://www.adobe.com/devnet/indesign/documentation.html#idml Adobe IDML] |
iOS Strings File
|.strings |[https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/LoadingResources/Strings/Strings.html iOS Strings] |
iOS Stringsdict
|.stringsdict |[https://developer.apple.com/library/ios/documentation/MacOSX/Conceptual/BPInternational/StringsdictFileFormat/StringsdictFileFormat.html iOS Formats] |
JSON i18n
|.json |[http://json.org/ Json.org] [https://web.archive.org/web/20180428183219/https://dev.qordoba.com/docs/json-i18n JSON i18n] |
Java Properties
|.properties |[http://docs.oracle.com/javase/tutorial/i18n/index.html Java i18n] |
Office Open XML
|.docx, .xlsx, .pptx |
Qt Linguist
|.ts |Qt Manual |
Text
|.txt |
XLIFF
|.xliff, .xlf, .xml |[http://docs.oasis-open.org/xliff/xliff-core/xliff-core.html Specification] |
XML
|.xml |[http://www.w3.org/standards/xml/ Standards] |
YAML
|.yml |[http://guides.rubyonrails.org/i18n.html i18n Guide] |
YAMLi18n
|,yml, yaml |[http://docs.ansible.com/ansible/YAMLSyntax.html YAMLi18n] |
Visual Studio
|.resx | |