amber 0.3.11 → 0.3.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/lib/amber.rb +1 -0
- data/lib/amber/render/asset.rb +6 -4
- data/lib/amber/render/helpers/html_helper.rb +8 -2
- data/lib/amber/render/sass_helper.rb +11 -0
- data/lib/amber/render/view.rb +1 -1
- data/lib/amber/site.rb +4 -2
- data/lib/amber/version.rb +1 -1
- metadata +5 -5
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 7e82110afd292b70bbd258f06cf6d37bcbc0b106
         | 
| 4 | 
            +
              data.tar.gz: 45b0c8bace315775426dcc05fce64b13c511b2d3
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: e43abb63b953d965d14a6ff4c1cbbad67699a74cb6aa35a42d8ea579df477490bb0f5f7326c641da5bf9e04b9e7c0215337317c0f3cf03540ad95ae01bf02eaa
         | 
| 7 | 
            +
              data.tar.gz: a4dd8cfcff9ffea4d687abc2b5e16d0b0e66dff2ee62032f858125c9cf141b14ebd3e1d8a84fe3d719ba3e563cf86cbeb0d245aff1e59cab2776344a156595f9
         | 
    
        data/README.md
    CHANGED
    
    | @@ -19,6 +19,7 @@ features that make it unique: | |
| 19 19 | 
             
              different markup languages).
         | 
| 20 20 | 
             
            * Flexible: Ability to set custom page path aliases, render partials, rich
         | 
| 21 21 | 
             
              navigation, and so on.
         | 
| 22 | 
            +
            * Wiki Linking: Built in wiki-linking, with dead link detection and hierarchical paths.
         | 
| 22 23 |  | 
| 23 24 | 
             
            Amber allows ERB (ruby code) in all page markup types, making it unsuitable for
         | 
| 24 25 | 
             
            any website where you do not trust the source of the page text.
         | 
    
        data/lib/amber.rb
    CHANGED
    
    
    
        data/lib/amber/render/asset.rb
    CHANGED
    
    | @@ -26,10 +26,12 @@ module Amber | |
| 26 26 | 
             
                    src_ext = File.extname(src_file)
         | 
| 27 27 | 
             
                    renderer = RENDER_MAP[src_ext]
         | 
| 28 28 | 
             
                    if renderer
         | 
| 29 | 
            -
                       | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 32 | 
            -
                         | 
| 29 | 
            +
                      if File.basename(src_file) !~ /^_/  # skip partials
         | 
| 30 | 
            +
                        content = self.send(renderer[:method], *([src_file] + renderer[:args]))
         | 
| 31 | 
            +
                        new_dst_file = dst_file.sub(/#{Regexp.escape(src_ext)}$/, renderer[:new_suffix])
         | 
| 32 | 
            +
                        File.open(new_dst_file,'w') do |w|
         | 
| 33 | 
            +
                          w.write(content)
         | 
| 34 | 
            +
                        end
         | 
| 33 35 | 
             
                      end
         | 
| 34 36 | 
             
                    elsif File.basename(src_file) == '.htaccess'
         | 
| 35 37 | 
             
                      # existing htaccess file must be copied, not linked, since
         | 
| @@ -16,6 +16,12 @@ module Amber | |
| 16 16 | 
             
                    end
         | 
| 17 17 | 
             
                  end
         | 
| 18 18 |  | 
| 19 | 
            +
                  #
         | 
| 20 | 
            +
                  # link_to like rails
         | 
| 21 | 
            +
                  def link_to(label, url, options=nil)
         | 
| 22 | 
            +
                    link({label => url}, options)
         | 
| 23 | 
            +
                  end
         | 
| 24 | 
            +
             | 
| 19 25 | 
             
                  #
         | 
| 20 26 | 
             
                  # three forms:
         | 
| 21 27 | 
             
                  #
         | 
| @@ -30,15 +36,15 @@ module Amber | |
| 30 36 | 
             
                  #
         | 
| 31 37 | 
             
                  def link(name, options=nil)
         | 
| 32 38 | 
             
                    options = nil if options && !options.is_a?(Hash)
         | 
| 39 | 
            +
                    klass = nil
         | 
| 33 40 | 
             
                    if name.is_a? Hash
         | 
| 34 41 | 
             
                      klass = name.delete(:class)
         | 
| 35 42 | 
             
                      label, name = name.to_a.first
         | 
| 36 43 | 
             
                      if label.is_a? Symbol
         | 
| 37 44 | 
             
                        label = I18n.t label
         | 
| 38 45 | 
             
                      end
         | 
| 39 | 
            -
                    else
         | 
| 40 | 
            -
                      klass = options[:class] if options
         | 
| 41 46 | 
             
                    end
         | 
| 47 | 
            +
                    klass ||= options[:class] if options
         | 
| 42 48 | 
             
                    if name =~ /^#/ || name =~ /^http/ || name =~ /\./
         | 
| 43 49 | 
             
                      path = name
         | 
| 44 50 | 
             
                      label ||= name
         | 
    
        data/lib/amber/render/view.rb
    CHANGED
    
    | @@ -116,7 +116,7 @@ module Amber | |
| 116 116 | 
             
                        return path_with_locale if File.exist?(path_with_locale)
         | 
| 117 117 | 
             
                      end
         | 
| 118 118 | 
             
                    end
         | 
| 119 | 
            -
                    Amber.logger.error("No such path `#{ | 
| 119 | 
            +
                    Amber.logger.error("No such path `#{search_path}` from `#{page.content_file(locale)}`.")
         | 
| 120 120 | 
             
                    return nil
         | 
| 121 121 | 
             
                  end
         | 
| 122 122 |  | 
    
        data/lib/amber/site.rb
    CHANGED
    
    | @@ -94,6 +94,8 @@ module Amber | |
| 94 94 | 
             
                    else
         | 
| 95 95 | 
             
                      nil
         | 
| 96 96 | 
             
                    end
         | 
| 97 | 
            +
                  elsif @pages_by_path[filter]
         | 
| 98 | 
            +
                    @pages_by_path[filter]
         | 
| 97 99 | 
             
                  else
         | 
| 98 100 | 
             
                    @pages_by_name[filter]
         | 
| 99 101 | 
             
                  end
         | 
| @@ -160,7 +162,7 @@ module Amber | |
| 160 162 | 
             
                  base_page.config = config
         | 
| 161 163 |  | 
| 162 164 | 
             
                  # load menu and locals
         | 
| 163 | 
            -
                  I18n.load_path += Dir[File.join(config.locales_dir, ' | 
| 165 | 
            +
                  I18n.load_path += Dir[File.join(config.locales_dir, '/**/*.{rb,yml,yaml}')] if config.locales_dir
         | 
| 164 166 |  | 
| 165 167 | 
             
                  # add the full directory tree
         | 
| 166 168 | 
             
                  base_page.scan_directory_tree do |page, asset_dir|
         | 
| @@ -179,7 +181,7 @@ module Amber | |
| 179 181 | 
             
                # registers a page with the site, indexing the page path in our various hashes
         | 
| 180 182 | 
             
                #
         | 
| 181 183 | 
             
                def add_page(page)
         | 
| 182 | 
            -
                  @pages_by_name[page.name]  | 
| 184 | 
            +
                  @pages_by_name[page.name] ||= page
         | 
| 183 185 | 
             
                  @pages_by_path[page.path.join('/')] = page
         | 
| 184 186 | 
             
                  add_aliases(I18n.default_locale, page, @pages_by_path)
         | 
| 185 187 | 
             
                  page.locales.each do |locale|
         | 
    
        data/lib/amber/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: amber
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.3. | 
| 4 | 
            +
              version: 0.3.12
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Elijah Sparrow
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2017-05-04 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: i18n
         | 
| @@ -152,6 +152,7 @@ files: | |
| 152 152 | 
             
            - lib/amber/render/helpers/language_helper.rb
         | 
| 153 153 | 
             
            - lib/amber/render/helpers/navigation_helper.rb
         | 
| 154 154 | 
             
            - lib/amber/render/layout.rb
         | 
| 155 | 
            +
            - lib/amber/render/sass_helper.rb
         | 
| 155 156 | 
             
            - lib/amber/render/table_of_contents.rb
         | 
| 156 157 | 
             
            - lib/amber/render/template.rb
         | 
| 157 158 | 
             
            - lib/amber/render/view.rb
         | 
| @@ -271,7 +272,7 @@ files: | |
| 271 272 | 
             
            - locales/rails-i18n/zh-YUE.yml
         | 
| 272 273 | 
             
            homepage: https://github.com/leapcode/amber
         | 
| 273 274 | 
             
            licenses:
         | 
| 274 | 
            -
            - AGPL
         | 
| 275 | 
            +
            - AGPL-1.0
         | 
| 275 276 | 
             
            metadata: {}
         | 
| 276 277 | 
             
            post_install_message: 
         | 
| 277 278 | 
             
            rdoc_options: []
         | 
| @@ -289,9 +290,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 289 290 | 
             
                  version: '0'
         | 
| 290 291 | 
             
            requirements: []
         | 
| 291 292 | 
             
            rubyforge_project: 
         | 
| 292 | 
            -
            rubygems_version: 2. | 
| 293 | 
            +
            rubygems_version: 2.5.2
         | 
| 293 294 | 
             
            signing_key: 
         | 
| 294 295 | 
             
            specification_version: 4
         | 
| 295 296 | 
             
            summary: Static website generator
         | 
| 296 297 | 
             
            test_files: []
         | 
| 297 | 
            -
            has_rdoc: 
         |