Sha256: 8110cb2b6bdca5c4dcc7f8c20fd127ac88f17a6753bd2f7099b0f7b38e1fa0a7
Contents?: true
Size: 1.19 KB
Versions: 20
Compression:
Stored size: 1.19 KB
Contents
# frozen_string_literal: true module CloudCannonJekyll class Configuration def self.processed?(site) site.instance_variable_get(:@_cloudcannon_jekyll_processed) == true end def self.process(site) site.instance_variable_set :@_cloudcannon_jekyll_processed, true end def self.overridden_config(user_config) config = Jekyll::Utils.deep_merge_hashes(Jekyll::Configuration::DEFAULTS, user_config) config = config.add_default_collections if config.respond_to? :add_default_collections config = config.fix_common_issues if config.respond_to? :fix_common_issues config = config.add_default_excludes if config.respond_to? :add_default_excludes key = Jekyll::VERSION.start_with?("2") ? "gems" : "plugins" config[key] = Array(config[key]) config[key].push("cloudcannon-jekyll") unless config[key].include? "cloudcannon-jekyll" config end def self.set(site) return if processed? site if site.respond_to? :config= site.config = overridden_config(site.config) else # Jekyll pre 3.5 site.instance_variable_set :@config, overridden_config(site.config) end process(site) end end end
Version data entries
20 entries across 20 versions & 1 rubygems