katex2html 0.1.3 → 0.1.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8a1503ca2fac793fe389fe59878d31c6bdb9de8c
4
- data.tar.gz: 5ec2425d08bc0643b4862806a46718d363bb3883
3
+ metadata.gz: 858137c04f8c6b3575ff3de8e605094319bf01c4
4
+ data.tar.gz: 64a851b72b0b4725c1007a8d13b39b90b53fe1d7
5
5
  SHA512:
6
- metadata.gz: 24a952397b6f5925d05473f3b97727e05394a7491eabe25ddd40dbf8977e5b0f05ab7d3a67ea0d3a986825a292ad30f844b8701e22a8af8d7a4048e6af332637
7
- data.tar.gz: 0491970d3b779d7303d4e2691aa50844f8df6b0f76b2e4ae7363a7d9de6abfd01f9b5869e3d06f2fd9c190d0bbaae5bf40379ea5019a7fe95d1680e389592e86
6
+ metadata.gz: 3cb9c666816cad8ed3ed054498ae1f6f175e38077f5faae197bb3a132427ed36cf7cd717a311000806c08d525b07acefb76cced26396a280dff2916bb8d6bf3f
7
+ data.tar.gz: 7486daf7feb0ff9c03434bb840aa2eafe2e979972aea42bd3d769df388c4a489b36a2b4f1620f0af15f7ff9971ca8da3b98aefe534c1ca3f01e3cf2d3ef94777
@@ -7,20 +7,30 @@ module Katex2HTML
7
7
  end
8
8
 
9
9
  def parse
10
- each_delimiter do |regex, pre, pos|
11
- @html = @html.gsub Regexp.new(regex, Regexp::MULTILINE) do |match|
12
- latex = match.gsub(pre, '').gsub(pos, '')
13
- @render.render(latex)
14
- end
10
+ each_delimiter do |*args|
11
+ @html = convert_latex_to_katex(*args)
12
+ @html = process_escapes(*args) if @options[:process_escapes]
13
+ @html
15
14
  end
16
15
  end
17
16
 
18
17
  private
19
18
 
19
+ def process_escapes(regex, pre, pos)
20
+ @html.gsub("\\#{pre}",pre).gsub("\\#{pos}",pos)
21
+ end
22
+
23
+ def convert_latex_to_katex(regex, pre, pos)
24
+ @html = @html.gsub Regexp.new(regex, Regexp::MULTILINE) do |match|
25
+ latex = match.gsub(pre, '').gsub(pos, '')
26
+ @render.render(latex)
27
+ end
28
+ end
29
+
20
30
  def each_delimiter
21
31
  parsed_html = ""
22
32
  @options[:delimiters].each do |rx|
23
- regex = "#{Regexp.escape(rx[0])}+(.*?)#{Regexp.escape(rx[1])}+"
33
+ regex = "([^\\\\]#{Regexp.escape(rx[0])}+)(.*?)([^\\\\]#{Regexp.escape(rx[1])}+)"
24
34
  parsed_html = yield(regex, rx[0], rx[1])
25
35
  end
26
36
  parsed_html
@@ -16,7 +16,7 @@ module Katex2HTML
16
16
  end
17
17
 
18
18
  def source
19
- @source ||= File.read(File.expand_path('../../../vendor/katex.min.js', __FILE__))
19
+ @source ||= File.read(File.join([Dir.pwd, 'vendor', 'katex.min.js']))
20
20
  end
21
21
  end
22
22
  end
@@ -1,3 +1,3 @@
1
1
  module Katex2HTML
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: katex2html
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - João Fraga
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-11-30 00:00:00.000000000 Z
11
+ date: 2015-12-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: execjs