jekyll-scholar 6.3.1 → 6.3.2
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/features/bibtex.feature +32 -0
- data/features/layout.feature +64 -0
- data/lib/jekyll/scholar/utilities.rb +19 -5
- data/lib/jekyll/scholar/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: aea0dbf09c4b9675d2341466637d0d869ca493ae944bd4a151d62d080debada1
         | 
| 4 | 
            +
              data.tar.gz: a060e41c331f683ac52f7eaff50d42e3c50f9715e415f6326cc6fc6c1efddf6f
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: b529c1db74c86b0fdc854725b3251463a06a18c5818cff4630ba17a5d34bf661f3a3c33bd23bcaee553cb5b9e4edbd5d9c4d602f67bd48ee4d811205c3690561
         | 
| 7 | 
            +
              data.tar.gz: 3bbef145e79ef2e5e18732ec345f94726ca97e55a040c57509dc51308f8fafdf24ab21c010570f52eeef7fbcf79248f042ed1910c6a2f81293abdee42bc44d91
         | 
    
        data/features/bibtex.feature
    CHANGED
    
    | @@ -557,3 +557,35 @@ Feature: BibTeX | |
| 557 557 | 
             
                And the "_site/scholar.html" file should exist
         | 
| 558 558 | 
             
                And I should see "Estudios de Asia y Africa</i>, n.º 22" in "_site/scholar.html"
         | 
| 559 559 | 
             
                And I should see "Estudios De Asia y Africa</i>, no. 22" in "_site/scholar.html"
         | 
| 560 | 
            +
             | 
| 561 | 
            +
              @latex
         | 
| 562 | 
            +
              Scenario: Simple Bibliography with LaTeX directives
         | 
| 563 | 
            +
                Given I have a "_bibliography" directory
         | 
| 564 | 
            +
                And I have a file "_bibliography/references.bib":
         | 
| 565 | 
            +
                  """
         | 
| 566 | 
            +
                  @book{rosso_image_2006,
         | 
| 567 | 
            +
                    address = {{Paris}},
         | 
| 568 | 
            +
                    series = {{Arch{\'e}ologie et histoire de l'art}},
         | 
| 569 | 
            +
                    title = {{L'image de l'empereur en Gaule romaine :  portraits et inscriptions}},
         | 
| 570 | 
            +
                    isbn = {978-2-7355-0583-8},
         | 
| 571 | 
            +
                    lccn = {Tolbiac - Rez de Jardin - Philosophie, histoire, sciences de l'homme - Magasin - 2006-174258},
         | 
| 572 | 
            +
                    shorttitle = {{L'image de l'empereur en Gaule romaine}},
         | 
| 573 | 
            +
                    language = {fre},
         | 
| 574 | 
            +
                    number = {20},
         | 
| 575 | 
            +
                    publisher = {{{\'E}d. du Comit{\'e} des travaux historiques et scientifiques}},
         | 
| 576 | 
            +
                    author = {Rosso, Emmanuelle},
         | 
| 577 | 
            +
                    year = {2006},
         | 
| 578 | 
            +
                    keywords = {Empereurs,Inscriptions latines,Sculpture de portraits romaine},
         | 
| 579 | 
            +
                    note = {ill., couv. ill. 27 cm. Ouvrage issu des m{\'e}moires de ma{\^i}trise et de DEA. Bibliogr. p. 561-582. Notes bibliogr.}
         | 
| 580 | 
            +
                  }
         | 
| 581 | 
            +
                  """
         | 
| 582 | 
            +
                And I have a page "test.md":
         | 
| 583 | 
            +
                  """
         | 
| 584 | 
            +
                  ---
         | 
| 585 | 
            +
                  ---
         | 
| 586 | 
            +
                  {% bibliography %}
         | 
| 587 | 
            +
                  """
         | 
| 588 | 
            +
                When I run jekyll
         | 
| 589 | 
            +
                Then the _site directory should exist
         | 
| 590 | 
            +
                And the "_site/test.html" file should exist
         | 
| 591 | 
            +
                And I should see "L’image de l’empereur en Gaule romaine" in "_site/test.html"
         | 
    
        data/features/layout.feature
    CHANGED
    
    | @@ -49,3 +49,67 @@ Feature: Bibliographies in Layouts | |
| 49 49 | 
             
                And I should see "<i>Smalltalk Best Practice Patterns</i>" in "_site/scholar.html"
         | 
| 50 50 |  | 
| 51 51 |  | 
| 52 | 
            +
              Scenario: I want to interpolate variables in my layout
         | 
| 53 | 
            +
                Given I have a "_bibliography" directory
         | 
| 54 | 
            +
                And I have a file "_bibliography/a.bib":
         | 
| 55 | 
            +
                  """
         | 
| 56 | 
            +
                  @book{ruby,
         | 
| 57 | 
            +
                    title     = {The Ruby Programming Language},
         | 
| 58 | 
            +
                    author    = {Flanagan, David and Matsumoto, Yukihiro},
         | 
| 59 | 
            +
                    year      = {2008},
         | 
| 60 | 
            +
                    publisher = {O'Reilly Media}
         | 
| 61 | 
            +
                  }
         | 
| 62 | 
            +
                  """
         | 
| 63 | 
            +
                And I have a file "_bibliography/b.bib":
         | 
| 64 | 
            +
                  """
         | 
| 65 | 
            +
                  @book{smalltalk,
         | 
| 66 | 
            +
                    title     = {Smalltalk Best Practice Patterns},
         | 
| 67 | 
            +
                    author    = {Kent Beck},
         | 
| 68 | 
            +
                    year      = {1996},
         | 
| 69 | 
            +
                    publisher = {Prentice Hall}
         | 
| 70 | 
            +
                  }
         | 
| 71 | 
            +
                  """
         | 
| 72 | 
            +
                And I have a "_layouts" directory
         | 
| 73 | 
            +
                And I have a file "_layouts/page.html":
         | 
| 74 | 
            +
                  """
         | 
| 75 | 
            +
                  ---
         | 
| 76 | 
            +
                  ---
         | 
| 77 | 
            +
                  {{ page.title }}
         | 
| 78 | 
            +
                  <div>
         | 
| 79 | 
            +
                    {{ content }}
         | 
| 80 | 
            +
                  </div>
         | 
| 81 | 
            +
                  <div>
         | 
| 82 | 
            +
                    {% bibliography --file {{page.bibliography}} %}
         | 
| 83 | 
            +
                  </div>
         | 
| 84 | 
            +
                  """
         | 
| 85 | 
            +
                And I have a page "a.html":
         | 
| 86 | 
            +
                  """
         | 
| 87 | 
            +
                  ---
         | 
| 88 | 
            +
                  layout: page
         | 
| 89 | 
            +
                  title: Page A
         | 
| 90 | 
            +
                  bibliography: a
         | 
| 91 | 
            +
                  ---
         | 
| 92 | 
            +
                  A-A-A
         | 
| 93 | 
            +
                  """
         | 
| 94 | 
            +
                And I have a page "b.html":
         | 
| 95 | 
            +
                  """
         | 
| 96 | 
            +
                  ---
         | 
| 97 | 
            +
                  layout: page
         | 
| 98 | 
            +
                  title: Page B
         | 
| 99 | 
            +
                  bibliography: b
         | 
| 100 | 
            +
                  ---
         | 
| 101 | 
            +
                  B-B-B
         | 
| 102 | 
            +
                  """
         | 
| 103 | 
            +
                When I run jekyll
         | 
| 104 | 
            +
                Then the _site directory should exist
         | 
| 105 | 
            +
                And the "_site/a.html" file should exist
         | 
| 106 | 
            +
                And I should see "Page A" in "_site/a.html"
         | 
| 107 | 
            +
                And I should see "A-A-A" in "_site/a.html"
         | 
| 108 | 
            +
                And I should see "<i>The Ruby Programming Language</i>" in "_site/a.html"
         | 
| 109 | 
            +
                And I should not see "<i>Smalltalk Best Practice Patterns</i>" in "_site/a.html"
         | 
| 110 | 
            +
                And the "_site/b.html" file should exist
         | 
| 111 | 
            +
                And I should see "Page B" in "_site/b.html"
         | 
| 112 | 
            +
                And I should see "B-B-B" in "_site/b.html"
         | 
| 113 | 
            +
                And I should see "<i>Smalltalk Best Practice Patterns</i>" in "_site/b.html"
         | 
| 114 | 
            +
                And I should not see "<i>The Ruby Programming Language</i>" in "_site/b.html"
         | 
| 115 | 
            +
             | 
| @@ -166,7 +166,7 @@ module Jekyll | |
| 166 166 | 
             
                  end
         | 
| 167 167 |  | 
| 168 168 | 
             
                  def bibtex_paths
         | 
| 169 | 
            -
                     | 
| 169 | 
            +
                    bibtex_files.map { |file|
         | 
| 170 170 | 
             
                      interpolated_file = interpolate file
         | 
| 171 171 | 
             
                      extend_path interpolated_file
         | 
| 172 172 | 
             
                    }
         | 
| @@ -178,21 +178,35 @@ module Jekyll | |
| 178 178 | 
             
                  end
         | 
| 179 179 |  | 
| 180 180 | 
             
                  def bibliography
         | 
| 181 | 
            +
                    paths = bibtex_paths
         | 
| 182 | 
            +
             | 
| 183 | 
            +
                    # Clear @bibliography if sources change! See #282
         | 
| 184 | 
            +
                    unless @paths.nil? || @paths == paths
         | 
| 185 | 
            +
                      @bibliography = nil
         | 
| 186 | 
            +
                    end
         | 
| 187 | 
            +
             | 
| 181 188 | 
             
                    unless @bibliography
         | 
| 182 189 | 
             
                      @bibliography = BibTeX::Bibliography.parse(
         | 
| 183 | 
            -
                         | 
| 190 | 
            +
                        paths.reduce('') { |s, p| s << IO.read(p) },
         | 
| 184 191 | 
             
                        bibtex_options
         | 
| 185 192 | 
             
                      )
         | 
| 193 | 
            +
             | 
| 194 | 
            +
                      @paths = paths
         | 
| 195 | 
            +
             | 
| 186 196 | 
             
                      @bibliography.replace_strings if replace_strings?
         | 
| 187 197 | 
             
                      @bibliography.join if join_strings? && replace_strings?
         | 
| 188 | 
            -
                    end
         | 
| 189 198 |  | 
| 190 | 
            -
             | 
| 191 | 
            -
             | 
| 199 | 
            +
                      # Remove duplicate entries
         | 
| 200 | 
            +
                      @bibliography.uniq!(*match_fields) if remove_duplicates?
         | 
| 201 | 
            +
                    end
         | 
| 192 202 |  | 
| 193 203 | 
             
                    @bibliography
         | 
| 194 204 | 
             
                  end
         | 
| 195 205 |  | 
| 206 | 
            +
                  def bibliography_stale?
         | 
| 207 | 
            +
                  end
         | 
| 208 | 
            +
             | 
| 209 | 
            +
             | 
| 196 210 | 
             
                  def query
         | 
| 197 211 | 
             
                    interpolate @query
         | 
| 198 212 | 
             
                  end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: jekyll-scholar
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 6.3. | 
| 4 | 
            +
              version: 6.3.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Sylvester Keil
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2019-10- | 
| 11 | 
            +
            date: 2019-10-29 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: jekyll
         |