diff options
-rw-r--r-- | blog/_plugins/jekyll_multiple_languages.rb | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/blog/_plugins/jekyll_multiple_languages.rb b/blog/_plugins/jekyll_multiple_languages.rb index 145526c..4b1afe8 100644 --- a/blog/_plugins/jekyll_multiple_languages.rb +++ b/blog/_plugins/jekyll_multiple_languages.rb @@ -1 +1,22 @@ require 'jekyll/multiple/languages/plugin' + +# Monkey patch a few functions in Jekyll#Post to make this work... +# Should probably try to upstream this instead. +# +module Jekyll + class Post + alias url_orig url + def url + # Drop the _i18n prefix of the generated url + url_orig.gsub("_i18n/", '') + end + + alias destination_orig destination + def destination(dest) + # Drop extra lang prefix if it occurs multiple times. + # For all but the default language it is defined both in the + # dest directory and the post url. That's one too many. + destination_orig(dest).sub(/#{site.config['lang']}\/#{site.config['lang']}/, "#{site.config['lang']}") + end + end +end |