# # Your Crowdin credentials # "project_id" : "2" "api_token" : "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiJ3UUVxdmhVM3ZMT2EyWGljbVV5VCIsImp0aSI6ImQzNjVhZWU2MjEyM2Y5YTMwMDRkMjQwZTc5NWU0MzRlZTM2MGI3NGU2OGE1ZjVlN2NmMDBjNThmZTk3Y2E4MjA2Y2I1NTAxZGQ1ZmJjNjU5IiwiaWF0IjoxNjIxNjY3MzA5LCJuYmYiOjE2MjE2NjczMDksImV4cCI6MTYyNDI1OTMwOSwic3ViIjoiMiIsImRvbWFpbiI6InJldm9sdGNoYXQiLCJzY29wZXMiOlsicHJvamVjdCJdLCJhc3NvY2lhdGlvbnMiOlsiKiJdLCJzZXNzaW9uIjowfQ.YXDDndr9Yn92W2bHvXaX9mPfEVs00iLN9UUq4NGRrgEEiz60aXfZV_GNdGQOyc3CKdjT9Y2fPhDfgvTYT8MA5x2I21hkgJNPveQxvkkZfywtw0LJHubT7UrlzgFszqvv0hKnTMWABCPXy1xhug5f9N7SPATUAOAfO88H2IfL5pBW3b4vBw2ZdvTi94_uCdeQgGLxKeFkZSvKfPs4vnkWyCOUE-D73I6NoE9ihX2dZVr_d8f3Z20COQuinhzzxDW80N4jKSvp77ZE4e3GQlIdOTVsxayrr3SVpiP9Xb5uRn8TjTK0N3b7hI21nyfYWeKyqdHJGYt3GtwUl9G_VAX_peu9PFIurkPG5kjHbRvkbVOkXyLXfzj8-Od-7VO9wV2Q0pbYNSV6qz15Z8AB9oVnw-H6EI3f2479Or193Zm8GPVGfedYLUFAEEON9zLZOU30gqwHdpHAAtuXtqlFAxH-a2eSyakWiPjPVNYmjXw9BTV356x2AR0usPdqfnve28KBVHBbqoNB512Ktifw9gAjVtwzx-aihUNrc_VZhU1hpQjZsMyVVoQFJcIwhEkSDm5OYV3JZTXCF8uVmdzlGQZ7vfK05-XnmZ2kDTJBC3DRjNPb13Umkxdp7HrkxQ6N3HkSySUL7exoxCOVvuk_9q9qFGxNWy4GNxxEaOun2sdnAn8" "base_path" : "." "base_url" : "https://revoltchat.crowdin.com" # # Choose file structure in Crowdin # e.g. true or false # "preserve_hierarchy": true # # Files configuration # files: [ { # # Source files filter # e.g. "/resources/en/*.json" # "source" : "en.json", # # Where translations will be placed # e.g. "/resources/%two_letters_code%/%original_file_name%" # "translation" : "*.json", # # Files or directories for ignore # e.g. ["/**/?.txt", "/**/[0-9].txt", "/**/*\?*.txt"] # #"ignore" : [], # # The dest allows you to specify a file name in Crowdin # e.g. "/messages.json" # #"dest" : "", # # File type # e.g. "json" # #"type" : "", # # The parameter "update_option" is optional. If it is not set, after the files update the translations for changed strings will be removed. Use to fix typos and for minor changes in the source strings # e.g. "update_as_unapproved" or "update_without_changes" # #"update_option" : "", # # Start block (for XML only) # # # Defines whether to translate tags attributes. # e.g. 0 or 1 (Default is 1) # # "translate_attributes" : 1, # # Defines whether to translate texts placed inside the tags. # e.g. 0 or 1 (Default is 1) # # "translate_content" : 1, # # This is an array of strings, where each item is the XPaths to DOM element that should be imported # e.g. ["/content/text", "/content/text[@value]"] # # "translatable_elements" : [], # # Defines whether to split long texts into smaller text segments # e.g. 0 or 1 (Default is 1) # # "content_segmentation" : 1, # # End block (for XML only) # # # Start .properties block # # # Defines whether single quote should be escaped by another single quote or backslash in exported translations # e.g. 0 or 1 or 2 or 3 (Default is 3) # 0 - do not escape single quote; # 1 - escape single quote by another single quote; # 2 - escape single quote by backslash; # 3 - escape single quote by another single quote only in strings containing variables ( {0} ). # # "escape_quotes" : 3, # # Defines whether any special characters (=, :, ! and #) should be escaped by backslash in exported translations. # e.g. 0 or 1 (Default is 0) # 0 - do not escape special characters # 1 - escape special characters by a backslash # # "escape_special_characters": 0 # # # End .properties block # # # Does the first line contain header? # e.g. true or false # #"first_line_contains_header" : true, # # for spreadsheets # e.g. "identifier,source_phrase,context,uk,ru,fr" # # "scheme" : "", } ]