Repository: cordova-docs
Updated Branches:
  refs/heads/crowdin-cli [created] 9d2de7b6d


Adding Crowdin commands for upload/download process.


Project: http://git-wip-us.apache.org/repos/asf/cordova-docs/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-docs/commit/9d2de7b6
Tree: http://git-wip-us.apache.org/repos/asf/cordova-docs/tree/9d2de7b6
Diff: http://git-wip-us.apache.org/repos/asf/cordova-docs/diff/9d2de7b6

Branch: refs/heads/crowdin-cli
Commit: 9d2de7b6d6aa9621490f9d33a6db5024bd12bbf8
Parents: 1d91ea8
Author: Dmitry Blotsky <[email protected]>
Authored: Wed Dec 9 21:37:01 2015 -0800
Committer: Dmitry Blotsky <[email protected]>
Committed: Tue May 9 18:34:53 2017 -0400

----------------------------------------------------------------------
 .gitignore       |  1 +
 Gemfile          |  3 ++-
 Makefile         | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
 conf/crowdin.yml | 28 ++++++++++++++++++++++++++++
 4 files changed, 79 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/9d2de7b6/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index 01d58e9..72f0eec 100644
--- a/.gitignore
+++ b/.gitignore
@@ -18,3 +18,4 @@ www/docs/*/dev/reference
 
 node_modules
 Gemfile.lock
+crowdin-jail

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/9d2de7b6/Gemfile
----------------------------------------------------------------------
diff --git a/Gemfile b/Gemfile
index 55e56c2..8dd7478 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,4 +1,5 @@
 source 'https://rubygems.org'
 gem 'jekyll', '= 2.5.3'
 gem 'redcarpet', '= 3.3.2'
-gem 'rouge', '= 1.9.1'
\ No newline at end of file
+gem 'rouge', '= 1.9.1'
+gem 'crowdin-cli', '= 0.5.1'

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/9d2de7b6/Makefile
----------------------------------------------------------------------
diff --git a/Makefile b/Makefile
index ca7e388..c14c01d 100644
--- a/Makefile
+++ b/Makefile
@@ -77,6 +77,7 @@ PLUGINS_DEST_DIR = $(STATIC_DIR)/js
 
 # executables
 NODE       = node
+CROWDIN    = crowdin-cli
 GULP       = $(NODE_BIN_DIR)/gulp
 LESSC      = $(NODE_BIN_DIR)/lessc
 SASSC      = $(NODE_BIN_DIR)/node-sass
@@ -90,6 +91,7 @@ LESSC      := $(subst /,\,$(LESSC))
 SASSC      := $(subst /,\,$(SASSC))
 BROWSERIFY := $(subst /,\,$(BROWSERIFY))
 UGLIFY     := $(subst /,\,$(UGLIFY))
+MAKE       := $(subst /,\,$(MAKE))
 endif
 
 # existing files
@@ -102,6 +104,13 @@ REDIRECTS_FILE      = $(DATA_DIR)/redirects.yml
 PLUGINS_SRC         = $(PLUGINS_SRC_DIR)/app.js
 VERSION_FILE        = VERSION
 FETCH_SCRIPT        = $(BIN_DIR)/fetch_docs.js
+CROWDIN_CONFIG      = $(CONFIG_DIR)/crowdin.yml
+
+ifdef WINDOWS
+CROWDIN_IDENTITY_FILE = %HOME%/.crowdin.yml
+else
+CROWDIN_IDENTITY_FILE = $$HOME/.crowdin.yml
+endif
 
 # NOTE:
 #      the .scss files are separate because they combine into MAIN_STYLE_FILE,
@@ -285,8 +294,47 @@ $(CSS_DEST_DIR)/%.css: $(CSS_SRC_DIR)/%.css
        echo --->> $@
        $(call printfile,$<) >> $@
 
+# crowdin
+CROWDIN_SRC      = www/docs/en/dev
+CROWDIN_JAIL     = crowdin-jail
+CROWDIN_COPY_DIR = $(CROWDIN_JAIL)/cordova-docs/docs/en
+CROWDIN_COPY     = $(CROWDIN_COPY_DIR)/dev
+
+$(CROWDIN_JAIL) $(CROWDIN_COPY_DIR):
+ifdef WINDOWS
+       -$(MKDIRP) $(subst /,\,$@)
+else
+       $(MKDIRP) $@
+endif
+
+$(CROWDIN_COPY): $(CROWDIN_SRC) $(CROWDIN_COPY_DIR) $(FETCHED_FILES)
+       cp -R $(CROWDIN_SRC) $(CROWDIN_COPY_DIR)
+
+cw_project: CW_COMMAND = list project
+cw_translations: CW_COMMAND = list translations
+cw_sources: CW_COMMAND = list sources
+cw_upload: CW_COMMAND = upload sources --auto-update
+cw_download: CW_COMMAND = download en
+cw_project cw_translations cw_sources cw_upload cw_download: crowdin
+
+crowdin: $(CROWDIN_JAIL) $(CROWDIN_COPY)
+       (cd $(CROWDIN_JAIL) && $(CROWDIN) --identity=$(CROWDIN_IDENTITY_FILE) 
--config=../$(CROWDIN_CONFIG) $(CW_COMMAND))
+
+on_disk.txt: $(CROWDIN_COPY)
+       $(MAKE) cw_sources | grep "^/cordova-docs" | sort > $@
+
+on_crowdin.txt: $(CROWDIN_COPY)
+       $(MAKE) cw_project | grep "^/cordova-docs" | sort > $@
+
+cw_diff: on_disk.txt on_crowdin.txt
+       comm -3 $^
+       $(RM) $^
+
 # maintenance
 clean:
+
+       $(RM) -r $(CROWDIN_JAIL)
+       $(RM) -r $(PROD_DIR) $(DEV_DIR)
        $(RM) $(VERSION_CONFIG)
        $(RM) $(DEFAULTS_CONFIG)
        $(RM) $(DOCS_PAGE_LIST)

http://git-wip-us.apache.org/repos/asf/cordova-docs/blob/9d2de7b6/conf/crowdin.yml
----------------------------------------------------------------------
diff --git a/conf/crowdin.yml b/conf/crowdin.yml
new file mode 100644
index 0000000..251cac0
--- /dev/null
+++ b/conf/crowdin.yml
@@ -0,0 +1,28 @@
+# Reference:
+#       https://github.com/crowdin/crowdin-cli/blob/master/README.md
+
+# environment variables for the three values below
+project_identifier_env: CROWDIN_PROJECT_ID
+api_key_env:            CROWDIN_API_KEY
+base_path_env:          CROWDIN_BASE_PATH
+
+# the ID of the project; found on the API settings page
+project_identifier: cordova
+
+# key required for using this tool; found on the API settings page
+# WARNING:
+#         DO NOT PUT A VALUE HERE; put it into $HOME/.crowdin.yml
+#         or into the environment variable defined above
+api_key:
+
+# Crowdin by default truncates the common prefix of all source paths
+# and this flag tells it to keep it instead of truncating it
+preserve_hierarchy: true
+
+# prefix for source paths
+base_path: .
+
+# patterns for file translation
+files:
+    -   source: '/**/*.md'
+        translation: '/cordova-docs/docs/%locale%/dev/**/%original_file_name%'


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to