xliffle 0.2.0 → 0.3.2

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
- SHA1:
3
- metadata.gz: a10922f1476b5d6224d857bed177457db7d61465
4
- data.tar.gz: 41f1128edc67dd1095417b9fcd0c8daaae723cde
2
+ SHA256:
3
+ metadata.gz: 936144a3590c2ecc46e063ce185d3babde7ad168d574d9ce4af284a667bd3a97
4
+ data.tar.gz: 6df22f4c2c352452a6ddbd43991231c8688e26581bd1979aadb1949bdc6a3ddd
5
5
  SHA512:
6
- metadata.gz: 8b66b326026a92c60cc776dc54ce8aa07637ade1d3e3505e4d18b0b5973dffcdd4fb50cd907d9ab6dff494acfa25a76fa45124db9d8c63a306312e953c9a3455
7
- data.tar.gz: d4786b954fa344f837bbecb53a7911eda8040552f4023e70fa4ff283f0add686cf38343daec59161cfb795cee1c9b64b5833cb45e42af2fb0f1b77610e4ceb91
6
+ metadata.gz: 8f6fa46615495b718d81ec1f51e237b6e812c9d9140c5161173243e07c4aa3953b1467e9f064a6108a0e783a0affa5ceb9f36717654a9decdbe4ed0b6ffd43dd
7
+ data.tar.gz: 6cf80d7260b4befba237a53233e2ba7ff2857760aa88c6659c22c2671999743d591123ca86770726f1c281dba09b15d55b157550163892fb38b611b7edf6097e
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  begin
2
4
  require 'bundler/setup'
3
5
  rescue LoadError
@@ -14,9 +16,6 @@ RDoc::Task.new(:rdoc) do |rdoc|
14
16
  rdoc.rdoc_files.include('lib/**/*.rb')
15
17
  end
16
18
 
17
-
18
-
19
-
20
19
  Bundler::GemHelper.install_tasks
21
20
 
22
21
  require 'rake/testtask'
@@ -28,5 +27,4 @@ Rake::TestTask.new(:test) do |t|
28
27
  t.verbose = false
29
28
  end
30
29
 
31
-
32
30
  task default: :test
data/lib/xliffle.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'xliffle/creator'
2
4
  require 'xliffle/file'
3
5
  require 'xliffle/string'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'builder'
2
4
  require 'tempfile'
3
5
 
@@ -10,7 +12,7 @@ module Xliffle
10
12
  end
11
13
 
12
14
  def file(original, source_locale, target_locale)
13
- file = Xliffle::File.new(file_id, original, source_locale, target_locale)
15
+ file = Xliffle::File.new(original, source_locale, target_locale)
14
16
  @files << file
15
17
  file
16
18
  end
@@ -25,7 +27,7 @@ module Xliffle
25
27
 
26
28
  def to_file
27
29
  handle = Tempfile.new('foo.xlf')
28
- handle.write self.to_xliff
30
+ handle.write to_xliff
29
31
  handle.close
30
32
  handle
31
33
  end
@@ -37,9 +39,9 @@ module Xliffle
37
39
  end
38
40
 
39
41
  def xml(&block)
40
- xml = Builder::XmlMarkup.new( :indent => 2 )
41
- xml.instruct! :xml, :encoding => "UTF-8"
42
- xml.xliff({version: '1.2', xmlns: 'urn:oasis:names:tc:xliff:document:1.2'}, &block)
42
+ xml = Builder::XmlMarkup.new(indent: 2)
43
+ xml.instruct! :xml, encoding: 'UTF-8'
44
+ xml.xliff({ version: '1.2', xmlns: 'urn:oasis:names:tc:xliff:document:1.2' }, &block)
43
45
  end
44
46
  end
45
47
  end
data/lib/xliffle/file.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Xliffle
2
4
  class File
3
5
  attr_reader :original, :strings, :source_locale, :target_locale
@@ -9,16 +11,17 @@ module Xliffle
9
11
  @target_locale = target_locale
10
12
  end
11
13
 
12
- def string(id, source, target, options={})
14
+ def string(id, source, target, options = {})
13
15
  string = Xliffle::String.new(id, source, target, options)
14
16
  @strings << string
15
17
  string
16
18
  end
17
19
 
18
20
  def to_xliff(xliff)
19
- xliff.file(original: @original, datatype: 'plaintext', 'source-language' => @source_locale, 'target-language' => @target_locale,) do |file|
21
+ xliff.file(original: @original, datatype: 'plaintext', 'source-language' => @source_locale,
22
+ 'target-language' => @target_locale) do |file|
20
23
  file.body do |body|
21
- self.strings.each do |string|
24
+ strings.each do |string|
22
25
  string.to_xliff(body)
23
26
  end
24
27
  end
data/lib/xliffle/note.rb CHANGED
@@ -1,8 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Xliffle
2
4
  class Note
3
5
  attr_reader :note, :priority
4
6
 
5
- def initialize(note, options={})
7
+ def initialize(note, options = {})
6
8
  @note = note
7
9
  @priority = options[:priority] || 2
8
10
  end
@@ -1,25 +1,28 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Xliffle
2
4
  class String
3
- attr_reader :id, :source, :target, :notes, :resource_name
5
+ attr_reader :id, :source, :target, :notes
4
6
 
5
- def initialize(id, source_string, target_string, options={})
7
+ def initialize(id, source_string, target_string, options = {})
6
8
  @id = id
7
9
  @source_string = source_string
8
10
  @target_string = target_string
9
- @resource_name = options[:resource_name]
11
+ @options = options
10
12
  @notes = []
11
13
  end
12
14
 
13
- def note(note, priority=2)
14
- note = Xliffle::Note.new(note, priority)
15
+ def note(note, priority = 2)
16
+ note = Xliffle::Note.new(note, priority: priority)
15
17
  @notes << note
16
18
  note
17
19
  end
18
20
 
19
21
  def to_xliff(xliff)
20
22
  xliff.tag!('trans-unit', attributes) do |tag|
21
- tag.source(@source_string)
22
- tag.target(@target_string)
23
+ add_source_segment(tag)
24
+ add_target_segment(tag)
25
+
23
26
  @notes.each do |note|
24
27
  note.to_xliff(tag)
25
28
  end
@@ -30,9 +33,33 @@ module Xliffle
30
33
 
31
34
  def attributes
32
35
  attributes = { id: @id }
33
- attributes[:resname] = @resource_name if @resource_name
36
+ attributes[:resname] = @options[:resource_name] if @options[:resource_name]
34
37
 
35
38
  attributes
36
39
  end
40
+
41
+ def add_source_segment(tag)
42
+ return tag.source unless @source_string
43
+
44
+ tag.source do |xml|
45
+ segment(xml, @source_string)
46
+ end
47
+ end
48
+
49
+ def add_target_segment(tag)
50
+ return tag.target unless @target_string
51
+
52
+ tag.target do |xml|
53
+ segment(xml, @target_string)
54
+ end
55
+ end
56
+
57
+ def segment(tag, value)
58
+ if @options[:use_cdata] && value
59
+ tag.cdata!(value)
60
+ else
61
+ tag.text!(value)
62
+ end
63
+ end
37
64
  end
38
65
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Xliffle
2
- VERSION = "0.2.0"
4
+ VERSION = '0.3.2'
3
5
  end
data/test/test_helper.rb CHANGED
@@ -1,15 +1,17 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Configure Rails Environment
2
- ENV["RAILS_ENV"] = "test"
4
+ ENV['RAILS_ENV'] = 'test'
3
5
 
4
- require File.expand_path("../dummy/config/environment.rb", __FILE__)
5
- require "rails/test_help"
6
+ require File.expand_path('dummy/config/environment.rb', __dir__)
7
+ require 'rails/test_help'
6
8
 
7
9
  Rails.backtrace_cleaner.remove_silencers!
8
10
 
9
11
  # Load support files
10
- Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
12
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].sort.each { |f| require f }
11
13
 
12
14
  # Load fixtures from the engine
13
15
  if ActiveSupport::TestCase.method_defined?(:fixture_path=)
14
- ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures", __FILE__)
16
+ ActiveSupport::TestCase.fixture_path = File.expand_path('fixtures', __dir__)
15
17
  end
data/test/xliffle_test.rb CHANGED
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'test_helper'
2
4
 
3
5
  class XliffleTest < ActiveSupport::TestCase
4
- test "truth" do
6
+ test 'truth' do
5
7
  assert_kind_of Module, Xliffle
6
8
  end
7
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xliffle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefan Rohde
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-26 00:00:00.000000000 Z
11
+ date: 2021-05-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: builder
@@ -25,47 +25,75 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.2'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rspec
28
+ name: oga
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '3'
33
+ version: '3.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '3'
40
+ version: '3.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: pry
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.9'
47
+ version: '0.14'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0.9'
54
+ version: '0.14'
55
55
  - !ruby/object:Gem::Dependency
56
- name: oga
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.10'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.10'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rubocop
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: '0.2'
75
+ version: '1.15'
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - "~>"
67
81
  - !ruby/object:Gem::Version
68
- version: '0.2'
82
+ version: '1.15'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop-rspec
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.3'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.3'
69
97
  description: A gem to build XLIFF files from translated strings.
70
98
  email:
71
99
  - info@rohdenetz.de
@@ -95,18 +123,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
95
123
  requirements:
96
124
  - - ">="
97
125
  - !ruby/object:Gem::Version
98
- version: '0'
126
+ version: '2.7'
127
+ - - "<"
128
+ - !ruby/object:Gem::Version
129
+ version: '4'
99
130
  required_rubygems_version: !ruby/object:Gem::Requirement
100
131
  requirements:
101
132
  - - ">="
102
133
  - !ruby/object:Gem::Version
103
134
  version: '0'
104
135
  requirements: []
105
- rubyforge_project:
106
- rubygems_version: 2.2.2
136
+ rubygems_version: 3.1.6
107
137
  signing_key:
108
138
  specification_version: 4
109
139
  summary: Gem to create XLIFF files
110
140
  test_files:
111
- - test/test_helper.rb
112
141
  - test/xliffle_test.rb
142
+ - test/test_helper.rb