agnostic_slugs 0.0.2 → 0.0.3

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: a727c621171eafe0e9a81d34dc63c1e9f67b789f
4
- data.tar.gz: ec13fdb7d13c83cab6ee103bafe46cb5ab453ca7
3
+ metadata.gz: fa10cf987c7480af0bd58640ea23c4ec2d0bcafd
4
+ data.tar.gz: 37d67d2dc2f2ebad912e4dfe7cc773f9c5c3b569
5
5
  SHA512:
6
- metadata.gz: efffd84b8efa869d40b9c39b9943cadb849640f1ae87b5a6801a00901ce27686ead42abc558ffbbfa2dccc523bd0dde8b2fab48a20a6c95a70651c7ac46eb3f2
7
- data.tar.gz: a0c078d024f7766e67a4db03adcc853c988ce95571dd81857b3a3358ef72b638bec530e716a142aa69897dfea6e3c564bee339b2c40bb8587238064d00f9269e
6
+ metadata.gz: 574973a8d53a4a43c79a241de481073f67ac239c1e1e2db6f8e8e945e42df192ec11a3a34bfcb111576d984efe3548e5727a43e8948bd0257b5b27322fc7974e
7
+ data.tar.gz: e9d047f189d87ea4556f26dcbbfb76cc48f2723930ae6bc8c5c613066024916c5e0e48d68fdafd9581a68b1feaf3864856c5ef39c33bde9187c7c9226997c345
@@ -1,3 +1,7 @@
1
+ # 0.0.3
2
+
3
+ Handle Danish chars better
4
+
1
5
  # 0.0.2
2
6
 
3
7
  * Can handle leading and trailing dashes
@@ -19,9 +19,9 @@ module AgnosticSlugs
19
19
 
20
20
  def generate
21
21
  result = original
22
+ result = result.downcase
22
23
  result = replace_accents(result)
23
24
  result = result.gsub(/[\s_\-]+/, '-')
24
- result = result.downcase
25
25
  result = result.gsub(/[^a-z0-9\-]/, '')
26
26
 
27
27
  # Remove leading and trailing dash
@@ -35,43 +35,13 @@ module AgnosticSlugs
35
35
  end
36
36
 
37
37
  def replace_accents(string)
38
- # This was taken directly from https://github.com/ericboehs/to_slug
38
+ # This was originally taken from https://github.com/ericboehs/to_slug
39
39
  # Thanks, ericboehs :)
40
40
 
41
41
  # Define which accents map to which ascii characters
42
42
  accents = {
43
- # Uppercase
44
- 'A' => %w(À Á Â Ã Ā Ă Ȧ Ä Å Ǎ Ȁ Ȃ Ą Ǡ Ǟ Ǻ ),
45
- 'AE' => %w(Æ Ǽ Ǣ),
46
- 'B' => %w(Ḃ Ɓ Ḅ Ḇ Ƃ Ƅ),
47
- 'C' => %w(C Ć Ĉ Ċ Č Ƈ Ç Ḉ),
48
- 'D' => %w(D Ḋ Ɗ Ḍ Ḏ Ḑ Ḓ Ď Đ Ɖ Ƌ),
49
- 'E' => %w(È É Ê Ẽ Ē Ĕ Ė Ë Ẻ Ě Ȅ Ȇ Ẹ Ȩ Ę Ḙ Ḛ Ề Ế Ễ Ể Ḕ Ḗ Ệ Ḝ Ǝ Ɛ),
50
- 'F' => %w(Ḟ Ƒ),
51
- 'G' => %w(Ǵ Ĝ Ḡ Ğ Ġ Ǧ Ɠ Ģ Ǥ),
52
- 'H' => %w(Ĥ Ḣ Ḧ Ȟ Ƕ Ḥ Ḩ Ḫ Ħ),
53
- 'I' => %w(Ì Í Î Ĩ Ī Ĭ İ Ï Ỉ Ǐ Ị Į Ȉ Ȋ Ḭ Ɨ Ḯ),
54
- 'IJ' => %w(IJ),
55
- 'J' => %w(Ĵ),
56
- 'K' => %w(Ḱ Ǩ Ḵ Ƙ Ḳ Ķ),
57
- 'L' => %w(Ĺ Ḻ Ḷ Ļ Ḽ Ľ Ŀ Ł Ḹ),
58
- 'M' => %w(Ḿ Ṁ Ṃ Ɯ),
59
- 'N' => %w(Ǹ Ń Ñ Ṅ Ň Ŋ Ɲ Ṇ Ņ Ṋ Ṉ Ƞ),
60
- 'O' => %w(Ò Ó Ô Õ Ō Ŏ Ȯ Ö Ỏ Ő Ǒ Ȍ Ȏ Ơ Ǫ Ọ Ɵ Ø Ồ Ố Ỗ Ổ Ȱ Ȫ Ȭ Ṍ Ṏ Ṑ Ṓ Ờ Ớ Ỡ Ở Ợ Ǭ Ộ Ǿ Ɔ),
61
- 'OE' => %w(Œ),
62
- 'P' => %w(Ṕ Ṗ Ƥ),
63
- 'R' => %w(Ŕ Ṙ Ř Ȑ Ȓ Ṛ Ŗ Ṟ Ṝ Ʀ),
64
- 'S' => %w(Ś Ŝ Ṡ Š Ṣ Ș Ş Ṥ Ṧ Ṩ),
65
- 'T' => %w(Ṫ Ť Ƭ Ʈ Ṭ Ț Ţ Ṱ Ṯ Ŧ),
66
- 'U' => %w(Ù Ú Û Ũ Ū Ŭ Ü Ủ Ů Ű Ǔ Ȕ Ȗ Ư Ụ Ṳ Ų Ṷ Ṵ Ṹ Ṻ Ǜ Ǘ Ǖ Ǚ Ừ Ứ Ữ Ử Ự),
67
- 'V' => %w(Ṽ Ṿ Ʋ),
68
- 'W' => %w(Ẁ Ẃ Ŵ Ẇ Ẅ Ẉ),
69
- 'X' => %w(Ẋ Ẍ),
70
- 'Y' => %w(Ỳ Ý Ŷ Ỹ Ȳ Ẏ Ÿ Ỷ Ƴ Ỵ),
71
- 'Z' => %w(Ź Ẑ Ż Ž Ȥ Ẓ Ẕ Ƶ),
72
-
73
- # Lowercase
74
- 'a' => %w(à á â ã ā ă ȧ ä ả å ǎ ȁ ȃ ą ạ ḁ ẚ ầ ấ ẫ ẩ ằ ắ ẵ ẳ ǡ ǟ ǻ ậ ặ),
43
+ 'aa' => %w(å),
44
+ 'a' => %w(à á â ã ā ă ȧ ä ǎ ȁ ȃ ą ǡ ǟ ǻ ),
75
45
  'ae' => %w(æ ǽ ǣ),
76
46
  'b' => %w(ḃ ɓ ḅ ḇ ƀ ƃ ƅ),
77
47
  'c' => %w(ć ĉ ċ č ƈ ç ḉ),
@@ -87,8 +57,8 @@ module AgnosticSlugs
87
57
  'l' => %w(ĺ ḻ ḷ ļ ḽ ľ ŀ ł ƚ ḹ ȴ),
88
58
  'm' => %w(ḿ ṁ ṃ ɯ),
89
59
  'n' => %w(ǹ ń ñ ṅ ň ŋ ɲ ṇ ņ ṋ ṉ ʼn ȵ),
90
- 'o' => %w(ò ó ô õ ō ŏ ȯ ö ỏ ő ǒ ȍ ȏ ơ ǫ ọ ɵ ø ồ ố ỗ ổ ȱ ȫ ȭ ṍ ṏ ṑ ṓ ờ ớ ỡ ở ợ ǭ ộ ǿ ɔ),
91
- 'oe' => %w(œ),
60
+ 'o' => %w(ò ó ô õ ō ŏ ȯ ö ỏ ő ǒ ȍ ȏ ơ ǫ ọ ɵ ồ ố ỗ ổ ȱ ȫ ȭ ṍ ṏ ṑ ṓ ờ ớ ỡ ở ợ ǭ ộ ǿ ɔ),
61
+ 'oe' => %w(œ ø),
92
62
  'p' => %w(ṕ ṗ ƥ),
93
63
  'r' => %w(ŕ ṙ ř ȑ ȓ ṛ ŗ ṟ ṝ),
94
64
  's' => %w(ś ŝ ṡ š ṣ ș ş ṥ ṧ ṩ ß ſ ẛ),
@@ -1,3 +1,3 @@
1
1
  module AgnosticSlugs
2
- VERSION = '0.0.2'
2
+ VERSION = '0.0.3'
3
3
  end
@@ -13,7 +13,7 @@ module AgnosticSlugs
13
13
  end
14
14
 
15
15
  describe 'accented input' do
16
- let(:input) { 'Hellø Wårld' }
16
+ let(:input) { 'Hellő Wárld' }
17
17
  it { should eq('hello-warld') }
18
18
  end
19
19
 
@@ -32,6 +32,11 @@ module AgnosticSlugs
32
32
  let(:input) { ' Hello world ' }
33
33
  it { should eq('hello-world') }
34
34
  end
35
+
36
+ describe 'Danish chars' do
37
+ let(:input) { 'Rør på næse' }
38
+ it { should eq('roer-paa-naese') }
39
+ end
35
40
  end
36
41
 
37
42
  describe '#next' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: agnostic_slugs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lasse Skindstad Ebert