The CSV format is not a well-defined standard.
There are several variations: field separators, quoting, escaping, encoding, etc.

So, Lingohub has defined a CSV standard suitable for localization based on RFC4180.

Format

  • encoding should be UTF­-8 (but you can export to other encodings)
  • the markup is based on the RFC4180 standard
  • comma , will be used as a column separator but can be set in the project's settings.
    Supported ,, ;, <tab>
  • all values can be quoted with double or single ­quotes
  • quotes can be escaped using double double­ quotes, eg.: “Hello, “”Lingohub”””
  • the line ending can be LFor CRLF
  • quoted values can span multiple lines
  • The first line is the header and defines the names of the columns
    • first column:
      • holds the segment key
        • possible column names: "Title", "Key", "Id", can be set in the project's settings
    • second column (optional):
      • holds the segment description
        • possible column names: "Description", "Comment", can be set in the project's settings
    • the purpose of the content of the next columns is defined by its column names and might hold:
      • the ISO639-1 code for the languages in the file, e.g.: en, pt-BR and hold the content for the segment of that language
      • ISO639-1 + [status], e.g.: en[status] and holds the status for the defined segment language content. Possible values: NEW, DRAFT, PRE_TRANSLATED, TRANSLATED, APPROVED
  • The placeholder syntax is: {placeholder_name}.
    If you need a different placeholder syntax, please contact support.

Example

Additional example files can be accessed here.

"Title","Description","en","pl","de"
"settings","General Settings","Settings","Ustawienia","Einstellungen"
"has_placeholders","This example shows the usage of placeholders","Hello {username}","Cześć {username}","Hallo {username}"
"quotes","Quotes in content","Hello ""LingoHub""","Cześć ""LingoHub""","Hallo ""LingoHub"""
"linebreaks","an example for linebreaks","Here is a
linebreak","Oto 
nowa linea","Hier ist ein
Zeilenumbruch"
"Key","Comment","en","pl","de", "en[status]", "pl[status]", "de[status]"
"settings","General Settings","Settings","Ustawienia","Einstellungen", "DRAFT", "TRANSLATED", "APPROVED"
"has_placeholders","This example shows the usage of placeholders","Hello {username}","Cześć {username}","Hallo {username}", "DRAFT", "TRANSLATED", "APPROVED"
"quotes","Quotes in content","Hello ""LingoHub""","Cześć ""LingoHub""","Hallo ""LingoHub""", "DRAFT", "TRANSLATED", "APPROVED"
"linebreaks","an example for linebreaks","Here is a
linebreak","Oto
nowa linea","Hier ist ein
Zeilenumbruch", "DRAFT", "TRANSLATED", "APPROVED"

References