Merge pull request 'Add Rakefile to who workflow explicitely' (#38) from workflow into main

Reviewed-on: plume/joinplu.me#38
main
KitaitiMakoto 3 years ago
commit e78da67f14

@ -4,3 +4,4 @@ gem 'middleman', '~> 4.2'
gem 'middleman-autoprefixer', '~> 2.7'
gem 'tzinfo-data', platforms: [:mswin, :mingw, :jruby]
gem 'wdm', '~> 0.1', platforms: [:mswin, :mingw]
gem 'rake'

@ -23,7 +23,7 @@ GEM
fast_blank (1.0.0)
fastimage (2.2.0)
ffi (1.13.1)
haml (5.2.0)
haml (5.2.1)
temple (>= 0.8.0)
tilt
hamster (3.0.0)
@ -81,6 +81,7 @@ GEM
parallel (1.20.1)
public_suffix (4.0.6)
rack (2.2.3)
rake (13.0.1)
rb-fsevent (0.10.4)
rb-inotify (0.10.1)
ffi (~> 1.0)
@ -103,6 +104,7 @@ PLATFORMS
DEPENDENCIES
middleman (~> 4.2)
middleman-autoprefixer (~> 2.7)
rake
tzinfo-data
wdm (~> 0.1)

@ -0,0 +1,36 @@
require "pathname"
BUILD_DIR = "build"
TRANS_DIR = "trans"
desc "Build site"
multitask :build_site => [:build_base, "crowdin:download"] do
Pathname.glob("#{TRANS_DIR}/**/*.html.*").select(&:file?).each do |path|
content = path.read
content.sub! /<script type="text\/javascript" src="\/\/cdn.crowdin.com\/jipt\/jipt.js"><\/script>/, ""
dest = Pathname(path.to_path.sub(TRANS_DIR, BUILD_DIR))
$stderr.puts "copy #{path} -> #{dest}"
dest.write content
end
end
task :build_base do
sh "middleman", "build"
end
desc "Build site for translation"
task :build_trans do
sh "middleman", BUILD_DIR, "--build-dir", TRANS_DIR
end
namespace :crowdin do
desc "Download translations"
task :download do
sh "crowdin", "download"
end
desc "Upload translation sources"
task :upload do
sh "crowdin", "upload"
end
end

@ -0,0 +1,136 @@
#
# Your Crowdin credentials
#
"project_id" : "357303"
"api_token_env": "CROWDIN_PERSONAL_TOKEN"
"base_path" : "."
"base_url" : "https://api.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" : "/trans/**/*.html",
#
# Where translations will be placed
# e.g. "/resources/%two_letters_code%/%original_file_name%"
#
"translation" : "/trans/**/%original_file_name%.%two_letters_code%",
#
# 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
#
#
# Often software projects have custom names for the directories where translations are placed. crowdin-cli allows you to map your own languages to be understandable by Crowdin.
#
#"languages_mapping" : {
# "two_letters_code" : {
# "crowdin_language_code" : "local_name"
# }
#},
#
# 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" : "",
}
]
Loading…
Cancel
Save