Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuben Davila <rdavila84@gmail.com>2017-04-25 06:36:14 +0300
committerRuben Davila <rdavila84@gmail.com>2017-04-25 06:36:14 +0300
commit77d9e3f9b49821af3ec9b4fbac574c75b02d0351 (patch)
tree57181eda93c38061387b1bcac817659e73f6eedb /config/initializers/gettext_rails_i18n_patch.rb
parent4471d7b84fc783a08909473ef0243e6e07d2342a (diff)
Monkey patch gettext_i18n_rails so it can parse content in Mustache format
Diffstat (limited to 'config/initializers/gettext_rails_i18n_patch.rb')
-rw-r--r--config/initializers/gettext_rails_i18n_patch.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/config/initializers/gettext_rails_i18n_patch.rb b/config/initializers/gettext_rails_i18n_patch.rb
new file mode 100644
index 00000000000..c6b841aacd6
--- /dev/null
+++ b/config/initializers/gettext_rails_i18n_patch.rb
@@ -0,0 +1,19 @@
+require 'gettext_i18n_rails/haml_parser'
+
+module GettextI18nRails
+ class HamlParser
+ singleton_class.send(:alias_method, :old_convert_to_code, :convert_to_code)
+
+ # We need to convert text in Mustache format
+ # to a format that can be parsed by Gettext scripts.
+ # If we found a content like "{{ 'Stage' | translate }}"
+ # in a HAML file we convert it to "= _('Stage')", that way
+ # it can be processed by the "rake gettext:find" script.
+ def self.convert_to_code(text)
+ text.gsub!(/{{ (.*)( \| translate) }}/, "= _(\\1)")
+
+ old_convert_to_code(text)
+ end
+ end
+end
+