katex2html 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
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