sterile 1.0.16 → 1.0.22
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/.ruby-version +1 -1
- data/.yardopts +1 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +3 -3
- data/lib/sterile/data/smart_format_rules.rb +1 -1
- data/lib/sterile/smart_format.rb +3 -0
- data/lib/sterile/titlecase.rb +2 -13
- data/lib/sterile/version.rb +1 -1
- data/sterile.gemspec +2 -3
- metadata +10 -9
- data/.yaropts +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 69471b3cdff84cde4e92bca955edcc4b090be82abee6a890f6f452a1ec6b13c8
|
4
|
+
data.tar.gz: 421a5a328e53452a47dbcd4979dd63b3ef6c70e7f63001dd1191250f6b4f192d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1c9949930230ce8425fe65970f70e3e26e4afd4e0a4e56c0f31a1edd890397a6732f0faa34557330237177f4dca3305db1af50d5d93496e24fc9bad620b1e761
|
7
|
+
data.tar.gz: 04b3a2f2e08844b53abf9727630f3de56938499ccf337b562e4487026639efd5ebb5a33e867b52b4f6ef7ade02ed45728b0a0991f2b6d7f9701c91a14c44a9c8
|
data/.ruby-version
CHANGED
data/.yardopts
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--no-private lib/**/*.rb - README.markdown
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
sterile (1.0.
|
5
|
-
nokogiri
|
4
|
+
sterile (1.0.17)
|
5
|
+
nokogiri (>= 1.10.8)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: http://rubygems.org/
|
9
9
|
specs:
|
10
10
|
mini_portile2 (2.4.0)
|
11
|
-
nokogiri (1.
|
11
|
+
nokogiri (1.10.10)
|
12
12
|
mini_portile2 (~> 2.4.0)
|
13
13
|
|
14
14
|
PLATFORMS
|
@@ -26,7 +26,7 @@ module Sterile
|
|
26
26
|
["(c)", "©"],
|
27
27
|
["(r)", "®"],
|
28
28
|
["(R)", "®"],
|
29
|
-
[/\'(\d\d)(?!’|\')([\p{P}\p{Z}])/, "’\\1\\2"],
|
29
|
+
[/\'(\d\d)(?!’|\'|[^’\'\s]+[’\'][\p{P}\p{Z}])([\p{P}\p{Z}])/, "’\\1\\2"],
|
30
30
|
# [/<p>"/, "<p>\\1″"],
|
31
31
|
[/s\'([^a-zA-Z0-9])/, "s’\\1"],
|
32
32
|
[/"([:;])/, "”\\1"],
|
data/lib/sterile/smart_format.rb
CHANGED
@@ -9,6 +9,8 @@ module Sterile
|
|
9
9
|
# q{"He said, 'Away with you, Drake!'"}.smart_format # => “He said, ‘Away with you, Drake!’”
|
10
10
|
#
|
11
11
|
def smart_format(string)
|
12
|
+
string = string.to_s
|
13
|
+
string = string.dup if string.frozen?
|
12
14
|
smart_format_rules.each do |rule|
|
13
15
|
string.gsub! rule[0], rule[1]
|
14
16
|
end
|
@@ -19,6 +21,7 @@ module Sterile
|
|
19
21
|
# Like +smart_format+, but works with HTML/XML (somewhat).
|
20
22
|
#
|
21
23
|
def smart_format_tags(string)
|
24
|
+
string = string.gsub(/[\p{Z}\s]+(<\/[a-zA-Z]+>)(['"][a-zA-Z])/, "\\1 \\2") # Fixes quote after whitespace + tag "<em>Dan. </em>'And"
|
22
25
|
string.gsub_tags do |text|
|
23
26
|
text.smart_format
|
24
27
|
end.encode_entities.gsub(/(\<\/\w+\>)“/, "\\1”").gsub(/(\<\/\w+\>)‘/, "\\1’")
|
data/lib/sterile/titlecase.rb
CHANGED
@@ -106,18 +106,7 @@ module Sterile
|
|
106
106
|
end
|
107
107
|
alias_method :titleize, :titlecase
|
108
108
|
|
109
|
-
|
110
|
-
private
|
111
|
-
|
112
|
-
# Lazy load smart formatting rules
|
113
|
-
#
|
114
|
-
def smart_format_rules
|
115
|
-
@smart_format_rules ||= begin
|
116
|
-
require "sterile/data/smart_format_rules"
|
117
|
-
Data.smart_format_rules
|
118
|
-
end
|
119
|
-
end
|
120
|
-
|
121
109
|
end # class << self
|
122
110
|
|
123
|
-
end # module Sterile
|
111
|
+
end # module Sterile
|
112
|
+
|
data/lib/sterile/version.rb
CHANGED
data/sterile.gemspec
CHANGED
@@ -10,12 +10,11 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.authors = ["Patrick Hogan"]
|
11
11
|
s.email = ["pbhogan@gmail.com"]
|
12
12
|
s.homepage = "https://github.com/pbhogan/sterile"
|
13
|
+
s.licenses = ['MIT']
|
13
14
|
s.summary = %q{Sterilize your strings! Transliterate, generate slugs, smart format, strip tags, encode/decode entities and more.}
|
14
15
|
s.description = s.summary
|
15
16
|
|
16
|
-
s.
|
17
|
-
|
18
|
-
s.add_dependency("nokogiri", ">= 1.10.8")
|
17
|
+
s.add_dependency("nokogiri", ">= 1.11.0")
|
19
18
|
|
20
19
|
s.files = `git ls-files`.split("\n")
|
21
20
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sterile
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.22
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Patrick Hogan
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-05-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.
|
19
|
+
version: 1.11.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.
|
26
|
+
version: 1.11.0
|
27
27
|
description: Sterilize your strings! Transliterate, generate slugs, smart format,
|
28
28
|
strip tags, encode/decode entities and more.
|
29
29
|
email:
|
@@ -35,7 +35,7 @@ files:
|
|
35
35
|
- ".gitignore"
|
36
36
|
- ".ruby-gemset"
|
37
37
|
- ".ruby-version"
|
38
|
-
- ".
|
38
|
+
- ".yardopts"
|
39
39
|
- Gemfile
|
40
40
|
- Gemfile.lock
|
41
41
|
- README.markdown
|
@@ -57,9 +57,10 @@ files:
|
|
57
57
|
- sterile
|
58
58
|
- sterile.gemspec
|
59
59
|
homepage: https://github.com/pbhogan/sterile
|
60
|
-
licenses:
|
60
|
+
licenses:
|
61
|
+
- MIT
|
61
62
|
metadata: {}
|
62
|
-
post_install_message:
|
63
|
+
post_install_message:
|
63
64
|
rdoc_options: []
|
64
65
|
require_paths:
|
65
66
|
- lib
|
@@ -75,7 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
75
76
|
version: '0'
|
76
77
|
requirements: []
|
77
78
|
rubygems_version: 3.0.8
|
78
|
-
signing_key:
|
79
|
+
signing_key:
|
79
80
|
specification_version: 4
|
80
81
|
summary: Sterilize your strings! Transliterate, generate slugs, smart format, strip
|
81
82
|
tags, encode/decode entities and more.
|
data/.yaropts
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
--no-private lib/**/*.rb - README.markdown
|