diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/category_generator.rb | 6 | ||||
-rw-r--r-- | plugins/pygments_code.rb | 6 |
2 files changed, 9 insertions, 3 deletions
diff --git a/plugins/category_generator.rb b/plugins/category_generator.rb index d4840a8d..a49c4296 100644 --- a/plugins/category_generator.rb +++ b/plugins/category_generator.rb @@ -19,6 +19,8 @@ # - category_title_prefix: The string used before the category name in the page title (default is # 'Category: '). +require 'stringex' + module Jekyll # The CategoryIndex class creates a single category page for the specified category. @@ -106,7 +108,7 @@ module Jekyll if self.layouts.key? 'category_index' dir = self.config['category_dir'] || 'categories' self.categories.keys.each do |category| - self.write_category_index(File.join(dir, category.gsub(/_|\P{Word}/, '-').gsub(/-{2,}/, '-').downcase), category) + self.write_category_index(File.join(dir, category.to_url), category) end # Throw an exception if the layout couldn't be found. @@ -171,7 +173,7 @@ ERR # def category_link(category) dir = @context.registers[:site].config['category_dir'] - "<a class='category' href='/#{dir}/#{category.gsub(/_|\P{Word}/, '-').gsub(/-{2,}/, '-').downcase}/'>#{category}</a>" + "<a class='category' href='/#{dir}/#{category.to_url}/'>#{category}</a>" end # Outputs the post.date as formatted html, with hooks for CSS styling. diff --git a/plugins/pygments_code.rb b/plugins/pygments_code.rb index 1676a3e0..87d3cd6d 100644 --- a/plugins/pygments_code.rb +++ b/plugins/pygments_code.rb @@ -21,7 +21,11 @@ module HighlightCode if File.exist?(path) highlighted_code = File.read(path) else - highlighted_code = Pygments.highlight(code, :lexer => lang, :formatter => 'html', :options => {:encoding => 'utf-8'}) + begin + highlighted_code = Pygments.highlight(code, :lexer => lang, :formatter => 'html', :options => {:encoding => 'utf-8'}) + rescue MentosError + raise "Pygments can't parse unknown language: #{lang}." + end File.open(path, 'w') {|f| f.print(highlighted_code) } end else |