srbovanje 0.1.0 → 0.2.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.
- data/README.md +28 -0
- data/Rakefile +6 -0
- data/lib/srbovanje.rb +3 -1
- data/lib/srbovanje/string_ext.rb +14 -17
- data/test/string_ext_test.rb +16 -14
- data/test/test_helper.rb +2 -0
- metadata +24 -13
- data/README.rdoc +0 -33
- data/VERSION.yml +0 -4
    
        data/README.md
    ADDED
    
    | @@ -0,0 +1,28 @@ | |
| 1 | 
            +
            srbovanje
         | 
| 2 | 
            +
            =========
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            Ruby gem za transliteraciju ćirilice na latinicu i tzv. ASCII latinicu
         | 
| 5 | 
            +
             | 
| 6 | 
            +
             | 
| 7 | 
            +
            ## Instaliranje
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                gem install srbovanje
         | 
| 10 | 
            +
             | 
| 11 | 
            +
             | 
| 12 | 
            +
            ## Korišćenje
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                >> "Ђурђевак".recode_sr_latin
         | 
| 15 | 
            +
                => "Đurđevak"
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                >> "Железница Србије".recode_sr_ascii_latin
         | 
| 18 | 
            +
                => "Zeleznica Srbije"
         | 
| 19 | 
            +
             | 
| 20 | 
            +
             | 
| 21 | 
            +
            ## Zašto "recode_sr_latin" kao naziv metode?
         | 
| 22 | 
            +
             | 
| 23 | 
            +
            Zbog http://man.he.net/man1/recode-sr-latin
         | 
| 24 | 
            +
             | 
| 25 | 
            +
             | 
| 26 | 
            +
            ## Autor
         | 
| 27 | 
            +
             | 
| 28 | 
            +
            [Dejan Simić](http://github.com/dejan)
         | 
    
        data/Rakefile
    ADDED
    
    
    
        data/lib/srbovanje.rb
    CHANGED
    
    
    
        data/lib/srbovanje/string_ext.rb
    CHANGED
    
    | @@ -1,6 +1,7 @@ | |
| 1 | 
            -
             | 
| 1 | 
            +
            # -*- encoding: utf-8 -*-
         | 
| 2 2 |  | 
| 3 | 
            -
             | 
| 3 | 
            +
            String.class_eval do
         | 
| 4 | 
            +
              @@recode_sr_latin_map = {
         | 
| 4 5 | 
             
                'а' => 'a',
         | 
| 5 6 | 
             
                'А' => 'A',
         | 
| 6 7 | 
             
                'б' => 'b',
         | 
| @@ -62,8 +63,8 @@ class String | |
| 62 63 | 
             
                'ш' => 'š',
         | 
| 63 64 | 
             
                'Ш' => 'Š' }
         | 
| 64 65 |  | 
| 65 | 
            -
              @@ | 
| 66 | 
            -
                @@ | 
| 66 | 
            +
              @@recode_sr_ascii_latin_map = 
         | 
| 67 | 
            +
                @@recode_sr_latin_map.merge(
         | 
| 67 68 | 
             
                  'ћ' => 'c',
         | 
| 68 69 | 
             
                  'ć' => 'c',
         | 
| 69 70 | 
             
                  'ч' => 'c',
         | 
| @@ -87,24 +88,20 @@ class String | |
| 87 88 | 
             
                  'џ' => 'dz',
         | 
| 88 89 | 
             
                  'Џ' => 'DZ')
         | 
| 89 90 |  | 
| 90 | 
            -
              def  | 
| 91 | 
            -
                self.class.recode(self.dup, @@ | 
| 91 | 
            +
              def recode_sr_latin
         | 
| 92 | 
            +
                self.class.recode(self.dup, @@recode_sr_latin_map)
         | 
| 92 93 | 
             
              end
         | 
| 93 94 |  | 
| 94 | 
            -
              def  | 
| 95 | 
            -
                self.class.recode(self, @@ | 
| 95 | 
            +
              def recode_sr_latin!
         | 
| 96 | 
            +
                self.class.recode(self, @@recode_sr_latin_map)
         | 
| 96 97 | 
             
              end
         | 
| 97 98 |  | 
| 98 | 
            -
              def  | 
| 99 | 
            -
                self.class.recode(self.dup, @@ | 
| 99 | 
            +
              def recode_sr_ascii_latin
         | 
| 100 | 
            +
                self.class.recode(self.dup, @@recode_sr_ascii_latin_map)
         | 
| 100 101 | 
             
              end
         | 
| 101 102 |  | 
| 102 | 
            -
              def  | 
| 103 | 
            -
                self.class.recode(self, @@ | 
| 104 | 
            -
              end
         | 
| 105 | 
            -
             | 
| 106 | 
            -
              def self.abeceda
         | 
| 107 | 
            -
                @@abeceda ||= %w(A B C Č Ć D DŽ Đ E F G H I J K L LJ M N NJ O P R S Š T U V Z Ž)
         | 
| 103 | 
            +
              def recode_sr_ascii_latin!
         | 
| 104 | 
            +
                self.class.recode(self, @@recode_sr_ascii_latin_map)
         | 
| 108 105 | 
             
              end
         | 
| 109 106 |  | 
| 110 107 | 
             
              def self.abeceda
         | 
| @@ -112,7 +109,7 @@ class String | |
| 112 109 | 
             
              end
         | 
| 113 110 |  | 
| 114 111 | 
             
              def slugify(separator = '-', return_separator_if_empty = true)
         | 
| 115 | 
            -
                s = parameterize(self. | 
| 112 | 
            +
                s = parameterize(self.recode_sr_ascii_latin, separator)
         | 
| 116 113 | 
             
                s.empty? && return_separator_if_empty ? separator : s
         | 
| 117 114 | 
             
              end
         | 
| 118 115 |  | 
    
        data/test/string_ext_test.rb
    CHANGED
    
    | @@ -1,38 +1,40 @@ | |
| 1 | 
            +
            # -*- encoding: utf-8 -*-
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            require File.dirname(__FILE__) + '/test_helper'
         | 
| 2 4 |  | 
| 3 5 | 
             
            class TestStringExt < Test::Unit::TestCase
         | 
| 4 | 
            -
              def  | 
| 6 | 
            +
              def test_recode_sr_latin
         | 
| 5 7 | 
             
                # don't change argument
         | 
| 6 8 | 
             
                str = "ЊЕГОШ"
         | 
| 7 | 
            -
                assert_equal("NJEGOŠ", str. | 
| 9 | 
            +
                assert_equal("NJEGOŠ", str.recode_sr_latin)
         | 
| 8 10 | 
             
                assert_equal("ЊЕГОШ", str)
         | 
| 9 11 |  | 
| 10 12 | 
             
                # plain
         | 
| 11 | 
            -
                assert_equal("NJEGOŠ", "ЊЕГОШ". | 
| 12 | 
            -
                assert_equal("Šaban Šaulić", "Шабан Шаулић". | 
| 13 | 
            -
                assert_equal("elektrodistribucija", "електродистрибуција". | 
| 14 | 
            -
                assert_equal("Đurđevak", "Ђурђевак". | 
| 13 | 
            +
                assert_equal("NJEGOŠ", "ЊЕГОШ".recode_sr_latin)
         | 
| 14 | 
            +
                assert_equal("Šaban Šaulić", "Шабан Шаулић".recode_sr_latin)
         | 
| 15 | 
            +
                assert_equal("elektrodistribucija", "електродистрибуција".recode_sr_latin)
         | 
| 16 | 
            +
                assert_equal("Đurđevak", "Ђурђевак".recode_sr_latin)
         | 
| 15 17 |  | 
| 16 18 | 
             
                # non_convertive_characters
         | 
| 17 | 
            -
                assert_equal("Latinica", "Latinica". | 
| 18 | 
            -
                assert_equal('[]2#}(,.);2@$"', '[]2#}(,.);2@$"'. | 
| 19 | 
            +
                assert_equal("Latinica", "Latinica".recode_sr_latin)
         | 
| 20 | 
            +
                assert_equal('[]2#}(,.);2@$"', '[]2#}(,.);2@$"'.recode_sr_latin)
         | 
| 19 21 | 
             
              end
         | 
| 20 22 |  | 
| 21 | 
            -
              def  | 
| 23 | 
            +
              def test_recode_sr_latin!
         | 
| 22 24 | 
             
                str = "ноћ"
         | 
| 23 | 
            -
                assert_equal("noć", str. | 
| 25 | 
            +
                assert_equal("noć", str.recode_sr_latin!)
         | 
| 24 26 | 
             
                assert_equal("noć", str)
         | 
| 25 27 | 
             
              end
         | 
| 26 28 |  | 
| 27 | 
            -
              def  | 
| 29 | 
            +
              def test_recode_sr_ascii_latin
         | 
| 28 30 | 
             
                str = "Железница Србије"
         | 
| 29 | 
            -
                assert_equal("Zeleznica Srbije", str. | 
| 31 | 
            +
                assert_equal("Zeleznica Srbije", str.recode_sr_ascii_latin)
         | 
| 30 32 | 
             
                assert_equal("Железница Србије", str)
         | 
| 31 33 | 
             
              end
         | 
| 32 34 |  | 
| 33 | 
            -
              def  | 
| 35 | 
            +
              def test_recode_sr_ascii_latin!
         | 
| 34 36 | 
             
                str = "ноћ"
         | 
| 35 | 
            -
                assert_equal("noc", str. | 
| 37 | 
            +
                assert_equal("noc", str.recode_sr_ascii_latin!)
         | 
| 36 38 | 
             
                assert_equal("noc", str)
         | 
| 37 39 | 
             
              end
         | 
| 38 40 |  | 
    
        data/test/test_helper.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,13 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: srbovanje
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
               | 
| 4 | 
            +
              hash: 23
         | 
| 5 | 
            +
              prerelease: false
         | 
| 6 | 
            +
              segments: 
         | 
| 7 | 
            +
              - 0
         | 
| 8 | 
            +
              - 2
         | 
| 9 | 
            +
              - 0
         | 
| 10 | 
            +
              version: 0.2.0
         | 
| 5 11 | 
             
            platform: ruby
         | 
| 6 12 | 
             
            authors: 
         | 
| 7 13 | 
             
            - Dejan Simic
         | 
| @@ -9,11 +15,11 @@ autorequire: | |
| 9 15 | 
             
            bindir: bin
         | 
| 10 16 | 
             
            cert_chain: []
         | 
| 11 17 |  | 
| 12 | 
            -
            date:  | 
| 18 | 
            +
            date: 2011-01-05 00:00:00 +01:00
         | 
| 13 19 | 
             
            default_executable: 
         | 
| 14 20 | 
             
            dependencies: []
         | 
| 15 21 |  | 
| 16 | 
            -
            description: "Ruby gem za transliteraciju \xC4\x87irilice na latinicu i tzv. ASCII latinicu"
         | 
| 22 | 
            +
            description: "Ruby gem za transliteraciju \xC4\x87irilice na latinicu i tzv. ASCII latinicu."
         | 
| 17 23 | 
             
            email: desimic@gmail.com
         | 
| 18 24 | 
             
            executables: []
         | 
| 19 25 |  | 
| @@ -22,40 +28,45 @@ extensions: [] | |
| 22 28 | 
             
            extra_rdoc_files: []
         | 
| 23 29 |  | 
| 24 30 | 
             
            files: 
         | 
| 25 | 
            -
            -  | 
| 26 | 
            -
            - VERSION.yml
         | 
| 31 | 
            +
            - Rakefile
         | 
| 27 32 | 
             
            - lib/srbovanje/string_ext.rb
         | 
| 28 33 | 
             
            - lib/srbovanje.rb
         | 
| 29 34 | 
             
            - test/string_ext_test.rb
         | 
| 30 35 | 
             
            - test/test_helper.rb
         | 
| 36 | 
            +
            - README.md
         | 
| 31 37 | 
             
            has_rdoc: true
         | 
| 32 38 | 
             
            homepage: http://github.com/dejan/srbovanje
         | 
| 33 39 | 
             
            licenses: []
         | 
| 34 40 |  | 
| 35 41 | 
             
            post_install_message: 
         | 
| 36 | 
            -
            rdoc_options: 
         | 
| 37 | 
            -
             | 
| 38 | 
            -
            - --charset=UTF-8
         | 
| 42 | 
            +
            rdoc_options: []
         | 
| 43 | 
            +
             | 
| 39 44 | 
             
            require_paths: 
         | 
| 40 45 | 
             
            - lib
         | 
| 41 46 | 
             
            required_ruby_version: !ruby/object:Gem::Requirement 
         | 
| 47 | 
            +
              none: false
         | 
| 42 48 | 
             
              requirements: 
         | 
| 43 49 | 
             
              - - ">="
         | 
| 44 50 | 
             
                - !ruby/object:Gem::Version 
         | 
| 51 | 
            +
                  hash: 3
         | 
| 52 | 
            +
                  segments: 
         | 
| 53 | 
            +
                  - 0
         | 
| 45 54 | 
             
                  version: "0"
         | 
| 46 | 
            -
              version: 
         | 
| 47 55 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement 
         | 
| 56 | 
            +
              none: false
         | 
| 48 57 | 
             
              requirements: 
         | 
| 49 58 | 
             
              - - ">="
         | 
| 50 59 | 
             
                - !ruby/object:Gem::Version 
         | 
| 60 | 
            +
                  hash: 3
         | 
| 61 | 
            +
                  segments: 
         | 
| 62 | 
            +
                  - 0
         | 
| 51 63 | 
             
                  version: "0"
         | 
| 52 | 
            -
              version: 
         | 
| 53 64 | 
             
            requirements: []
         | 
| 54 65 |  | 
| 55 66 | 
             
            rubyforge_project: 
         | 
| 56 | 
            -
            rubygems_version: 1.3. | 
| 67 | 
            +
            rubygems_version: 1.3.7
         | 
| 57 68 | 
             
            signing_key: 
         | 
| 58 | 
            -
            specification_version:  | 
| 59 | 
            -
            summary: "Ruby gem za transliteraciju \xC4\x87irilice na latinicu i tzv. ASCII latinicu"
         | 
| 69 | 
            +
            specification_version: 3
         | 
| 70 | 
            +
            summary: "Ruby gem za transliteraciju \xC4\x87irilice na latinicu i tzv. ASCII latinicu."
         | 
| 60 71 | 
             
            test_files: []
         | 
| 61 72 |  | 
    
        data/README.rdoc
    DELETED
    
    | @@ -1,33 +0,0 @@ | |
| 1 | 
            -
            = srbovanje
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            Esencijalni Ruby Gem za Ruby aplikaciju na srpskom. Pruža mogućnosti:
         | 
| 4 | 
            -
             | 
| 5 | 
            -
            * transliteracije ćirilice na latinicu (npr. "Ђурђевак" u "Đurđevak")
         | 
| 6 | 
            -
            * transliteracije ćirilice na ascii latinicu (npr. "Ђурђевак" u "Djurdjevak")
         | 
| 7 | 
            -
            * slugifikacije (parametrizaciju) stringa na srpskom (npr: "Železnica Srbije" u "zeleznica-srbije") 
         | 
| 8 | 
            -
            * ispisa relativnih vremena u rečima, pravopisno ispravno (npr. "3 sata"; Rails lokalizacija ne razlikuje različite oblike u zavisnosti od količine i ispisao bi pogrešno "3 sati")
         | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
            == Upotreba
         | 
| 12 | 
            -
             | 
| 13 | 
            -
            === Transliteracije ćirilice na latinicu
         | 
| 14 | 
            -
             | 
| 15 | 
            -
              >> "Ђурђевак".latin
         | 
| 16 | 
            -
              => "Đurđevak"
         | 
| 17 | 
            -
              
         | 
| 18 | 
            -
            === Transliteracije ćirilice na ascii latinicu
         | 
| 19 | 
            -
             | 
| 20 | 
            -
              >> "Ђурђевак".ascii_latin
         | 
| 21 | 
            -
              => "Djurdjevak"
         | 
| 22 | 
            -
             | 
| 23 | 
            -
            === slugifikacije (parametrizaciju) stringa na srpskom
         | 
| 24 | 
            -
             | 
| 25 | 
            -
              >> "Železnica Srbije".ascii_latin
         | 
| 26 | 
            -
              => "zeleznica-srbije"
         | 
| 27 | 
            -
             | 
| 28 | 
            -
            === ispisa relativnih vremena u rečima (npr. "3 sata")
         | 
| 29 | 
            -
             | 
| 30 | 
            -
             | 
| 31 | 
            -
            == Autor
         | 
| 32 | 
            -
             | 
| 33 | 
            -
            {Dejan Simić}[http://github.com/dejan]
         | 
    
        data/VERSION.yml
    DELETED