qiita-markdown 0.37.0 → 0.38.0
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/CHANGELOG.md +3 -0
- data/lib/qiita/markdown.rb +1 -1
- data/lib/qiita/markdown/filters/syntax_highlight.rb +3 -10
- data/lib/qiita/markdown/version.rb +1 -1
- data/qiita-markdown.gemspec +1 -1
- data/spec/qiita/markdown/processor_spec.rb +20 -20
- metadata +6 -6
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: f0133d912562a9dcb693c507e7ec0caadb6ca0c509da6af2c57773d87a2af745
         | 
| 4 | 
            +
              data.tar.gz: 997e0e521830183eccc1f009634352379a7697a8a9e95edb9bae1a9d4f4f7c78
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 44318b683d2df089695d572a037ec393c495dd23a3d48f82be77287165eff54d3e7d1fb68143f4ad7004eca337df8ed83cfcdd921de6fe7133aaaddeaffe7248
         | 
| 7 | 
            +
              data.tar.gz: 883a123e2dad403e8da8d87457be977270ac7dad837e2502d873aa3208e024e2593d784ae0105923658243771d497232e6776a5011a4e354df995447d8fe7c49
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    
    
        data/lib/qiita/markdown.rb
    CHANGED
    
    
| @@ -4,6 +4,7 @@ module Qiita | |
| 4 4 | 
             
                  class SyntaxHighlight < HTML::Pipeline::Filter
         | 
| 5 5 | 
             
                    DEFAULT_LANGUAGE = "text"
         | 
| 6 6 | 
             
                    DEFAULT_TIMEOUT = Float::INFINITY
         | 
| 7 | 
            +
                    DEFAULT_OPTION = "html_legacy"
         | 
| 7 8 |  | 
| 8 9 | 
             
                    def call
         | 
| 9 10 | 
             
                      elapsed = 0
         | 
| @@ -79,11 +80,11 @@ module Qiita | |
| 79 80 | 
             
                      end
         | 
| 80 81 |  | 
| 81 82 | 
             
                      def highlight(language)
         | 
| 82 | 
            -
                         | 
| 83 | 
            +
                        Rouge.highlight(code, language, DEFAULT_OPTION)
         | 
| 83 84 | 
             
                      end
         | 
| 84 85 |  | 
| 85 86 | 
             
                      def highlighted_node
         | 
| 86 | 
            -
                        if specific_language &&  | 
| 87 | 
            +
                        if specific_language && Rouge::Lexer.find(specific_language)
         | 
| 87 88 | 
             
                          begin
         | 
| 88 89 | 
             
                            highlight(specific_language).presence or raise
         | 
| 89 90 | 
             
                          rescue
         | 
| @@ -102,14 +103,6 @@ module Qiita | |
| 102 103 | 
             
                        Nokogiri::HTML.fragment(%Q[<div class="code-frame" data-lang="#{language}"></div>])
         | 
| 103 104 | 
             
                      end
         | 
| 104 105 |  | 
| 105 | 
            -
                      def pygments_options
         | 
| 106 | 
            -
                        @pygments_options ||= begin
         | 
| 107 | 
            -
                          options = { encoding: "utf-8", stripnl: false }
         | 
| 108 | 
            -
                          options[:startinline] = true if has_inline_php?
         | 
| 109 | 
            -
                          options
         | 
| 110 | 
            -
                        end
         | 
| 111 | 
            -
                      end
         | 
| 112 | 
            -
             | 
| 113 106 | 
             
                      def specific_language
         | 
| 114 107 | 
             
                        @specific_language || @node["lang"]
         | 
| 115 108 | 
             
                      end
         | 
    
        data/qiita-markdown.gemspec
    CHANGED
    
    | @@ -22,7 +22,7 @@ Gem::Specification.new do |spec| | |
| 22 22 | 
             
              spec.add_dependency "github-linguist", "~> 4.0"
         | 
| 23 23 | 
             
              spec.add_dependency "html-pipeline", "~> 2.0"
         | 
| 24 24 | 
             
              spec.add_dependency "mem"
         | 
| 25 | 
            -
              spec.add_dependency " | 
| 25 | 
            +
              spec.add_dependency "rouge", "3.26.0"
         | 
| 26 26 | 
             
              spec.add_dependency "greenmat", "3.5.1.2"
         | 
| 27 27 | 
             
              spec.add_dependency "sanitize"
         | 
| 28 28 | 
             
              spec.add_dependency "addressable"
         | 
| @@ -149,8 +149,8 @@ describe Qiita::Markdown::Processor do | |
| 149 149 | 
             
                      should eq <<-HTML.strip_heredoc
         | 
| 150 150 | 
             
                        <div class="code-frame" data-lang="ruby">
         | 
| 151 151 | 
             
                        <div class="code-lang"><span class="bold">example.rb</span></div>
         | 
| 152 | 
            -
                        <div class="highlight"><pre>< | 
| 153 | 
            -
                        </pre></div>
         | 
| 152 | 
            +
                        <div class="highlight"><pre class="codehilite"><code><span class="mi">1</span>
         | 
| 153 | 
            +
                        </code></pre></div>
         | 
| 154 154 | 
             
                        </div>
         | 
| 155 155 | 
             
                      HTML
         | 
| 156 156 | 
             
                    end
         | 
| @@ -169,8 +169,8 @@ describe Qiita::Markdown::Processor do | |
| 169 169 | 
             
                      should eq <<-HTML.strip_heredoc
         | 
| 170 170 | 
             
                        <div class="code-frame" data-lang="php">
         | 
| 171 171 | 
             
                        <div class="code-lang"><span class="bold">example.php</span></div>
         | 
| 172 | 
            -
                        <div class="highlight"><pre>< | 
| 173 | 
            -
                        </pre></div>
         | 
| 172 | 
            +
                        <div class="highlight"><pre class="codehilite"><code><span class="mi">1</span>
         | 
| 173 | 
            +
                        </code></pre></div>
         | 
| 174 174 | 
             
                        </div>
         | 
| 175 175 | 
             
                      HTML
         | 
| 176 176 | 
             
                    end
         | 
| @@ -187,8 +187,8 @@ describe Qiita::Markdown::Processor do | |
| 187 187 |  | 
| 188 188 | 
             
                    it "returns code-frame and highlighted pre element" do
         | 
| 189 189 | 
             
                      should eq <<-HTML.strip_heredoc
         | 
| 190 | 
            -
                        <div class="code-frame" data-lang="ruby"><div class="highlight"><pre>< | 
| 191 | 
            -
                        </pre></div></div>
         | 
| 190 | 
            +
                        <div class="code-frame" data-lang="ruby"><div class="highlight"><pre class="codehilite"><code><span class="mi">1</span>
         | 
| 191 | 
            +
                        </code></pre></div></div>
         | 
| 192 192 | 
             
                      HTML
         | 
| 193 193 | 
             
                    end
         | 
| 194 194 | 
             
                  end
         | 
| @@ -226,10 +226,10 @@ describe Qiita::Markdown::Processor do | |
| 226 226 |  | 
| 227 227 | 
             
                    it "does not strip the newlines" do
         | 
| 228 228 | 
             
                      should eq <<-HTML.strip_heredoc
         | 
| 229 | 
            -
                        <div class="code-frame" data-lang="text"><div class="highlight"><pre>< | 
| 229 | 
            +
                        <div class="code-frame" data-lang="text"><div class="highlight"><pre class="codehilite"><code>
         | 
| 230 230 | 
             
                        foo
         | 
| 231 231 |  | 
| 232 | 
            -
                        </pre></div></div>
         | 
| 232 | 
            +
                        </code></pre></div></div>
         | 
| 233 233 | 
             
                       HTML
         | 
| 234 234 | 
             
                    end
         | 
| 235 235 | 
             
                  end
         | 
| @@ -311,8 +311,8 @@ describe Qiita::Markdown::Processor do | |
| 311 311 | 
             
                      should include(<<-HTML.strip_heredoc.rstrip)
         | 
| 312 312 | 
             
                        <div class="code-frame" data-lang="ruby">
         | 
| 313 313 | 
             
                        <div class="code-lang"><span class="bold">@alice</span></div>
         | 
| 314 | 
            -
                        <div class="highlight"><pre>< | 
| 315 | 
            -
                        </pre></div>
         | 
| 314 | 
            +
                        <div class="highlight"><pre class="codehilite"><code><span class="mi">1</span>
         | 
| 315 | 
            +
                        </code></pre></div>
         | 
| 316 316 | 
             
                        </div>
         | 
| 317 317 | 
             
                      HTML
         | 
| 318 318 | 
             
                    end
         | 
| @@ -659,9 +659,9 @@ describe Qiita::Markdown::Processor do | |
| 659 659 |  | 
| 660 660 | 
             
                    it "does not replace checkbox" do
         | 
| 661 661 | 
             
                      should eq <<-HTML.strip_heredoc
         | 
| 662 | 
            -
                        <div class="code-frame" data-lang="text"><div class="highlight"><pre>< | 
| 662 | 
            +
                        <div class="code-frame" data-lang="text"><div class="highlight"><pre class="codehilite"><code>- [ ] a
         | 
| 663 663 | 
             
                        - [x] b
         | 
| 664 | 
            -
                        </pre></div></div>
         | 
| 664 | 
            +
                        </code></pre></div></div>
         | 
| 665 665 | 
             
                      HTML
         | 
| 666 666 | 
             
                    end
         | 
| 667 667 | 
             
                  end
         | 
| @@ -768,9 +768,9 @@ describe Qiita::Markdown::Processor do | |
| 768 768 |  | 
| 769 769 | 
             
                    it "generates only code blocks without footnotes" do
         | 
| 770 770 | 
             
                      should eq <<-HTML.strip_heredoc
         | 
| 771 | 
            -
                        <div class="code-frame" data-lang="text"><div class="highlight"><pre>< | 
| 771 | 
            +
                        <div class="code-frame" data-lang="text"><div class="highlight"><pre class="codehilite"><code>[^1]
         | 
| 772 772 | 
             
                        [^1]: test
         | 
| 773 | 
            -
                        </pre></div></div>
         | 
| 773 | 
            +
                        </code></pre></div></div>
         | 
| 774 774 | 
             
                      HTML
         | 
| 775 775 | 
             
                    end
         | 
| 776 776 | 
             
                  end
         | 
| @@ -1067,8 +1067,8 @@ describe Qiita::Markdown::Processor do | |
| 1067 1067 | 
             
                      expect(subject).to eq <<-HTML.strip_heredoc
         | 
| 1068 1068 | 
             
                        <p><details><summary>Folding sample</summary><div>
         | 
| 1069 1069 |  | 
| 1070 | 
            -
                        <div class="code-frame" data-lang="rb"><div class="highlight"><pre>< | 
| 1071 | 
            -
                        </pre></div></div>
         | 
| 1070 | 
            +
                        <div class="code-frame" data-lang="rb"><div class="highlight"><pre class="codehilite"><code><span class="nb">puts</span> <span class="s2">"Hello, World"</span>
         | 
| 1071 | 
            +
                        </code></pre></div></div>
         | 
| 1072 1072 |  | 
| 1073 1073 | 
             
                        <p></p>
         | 
| 1074 1074 | 
             
                        </div></details></p>
         | 
| @@ -1124,8 +1124,8 @@ describe Qiita::Markdown::Processor do | |
| 1124 1124 | 
             
                        should eq <<-HTML.strip_heredoc
         | 
| 1125 1125 | 
             
                          <div class="code-frame" data-lang="js">
         | 
| 1126 1126 | 
             
                          <div class="code-lang"><span class="bold">test<script>alert(1)</script></span></div>
         | 
| 1127 | 
            -
                          <div class="highlight"><pre>< | 
| 1128 | 
            -
                          </pre></div>
         | 
| 1127 | 
            +
                          <div class="highlight"><pre class="codehilite"><code><span class="mi">1</span>
         | 
| 1128 | 
            +
                          </code></pre></div>
         | 
| 1129 1129 | 
             
                          </div>
         | 
| 1130 1130 | 
             
                        HTML
         | 
| 1131 1131 | 
             
                      end
         | 
| @@ -1134,8 +1134,8 @@ describe Qiita::Markdown::Processor do | |
| 1134 1134 | 
             
                        should eq <<-HTML.strip_heredoc
         | 
| 1135 1135 | 
             
                          <div class="code-frame" data-lang="js">
         | 
| 1136 1136 | 
             
                          <div class="code-lang"><span class="bold">test</span></div>
         | 
| 1137 | 
            -
                          <div class="highlight"><pre>< | 
| 1138 | 
            -
                          </pre></div>
         | 
| 1137 | 
            +
                          <div class="highlight"><pre class="codehilite"><code><span class="mi">1</span>
         | 
| 1138 | 
            +
                          </code></pre></div>
         | 
| 1139 1139 | 
             
                          </div>
         | 
| 1140 1140 | 
             
                        HTML
         | 
| 1141 1141 | 
             
                      end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: qiita-markdown
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.38.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Ryo Nakamura
         | 
| @@ -67,19 +67,19 @@ dependencies: | |
| 67 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 68 | 
             
                    version: '0'
         | 
| 69 69 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 | 
            -
              name:  | 
| 70 | 
            +
              name: rouge
         | 
| 71 71 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 72 72 | 
             
                requirements:
         | 
| 73 | 
            -
                - -  | 
| 73 | 
            +
                - - '='
         | 
| 74 74 | 
             
                  - !ruby/object:Gem::Version
         | 
| 75 | 
            -
                    version:  | 
| 75 | 
            +
                    version: 3.26.0
         | 
| 76 76 | 
             
              type: :runtime
         | 
| 77 77 | 
             
              prerelease: false
         | 
| 78 78 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 79 79 | 
             
                requirements:
         | 
| 80 | 
            -
                - -  | 
| 80 | 
            +
                - - '='
         | 
| 81 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 82 | 
            -
                    version:  | 
| 82 | 
            +
                    version: 3.26.0
         | 
| 83 83 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 84 84 | 
             
              name: greenmat
         | 
| 85 85 | 
             
              requirement: !ruby/object:Gem::Requirement
         |