From 6cbf7887eafaa8c7be1a17b9325e40711502bcf1 Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Mon, 3 Aug 2015 20:48:49 +0200 Subject: Monkeypatch multiple language plugin. It would generate incorrect URL's for blog posts. This should be fixed upstream sometime, but until we have the time we do it like this. --- blog/_plugins/jekyll_multiple_languages.rb | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'blog/_plugins') 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 -- cgit v1.2.3