twine 0.3.1 → 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.
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
-
2
+ require 'CGI'
3
3
  require 'rexml/document'
4
4
 
5
5
  module Twine
@@ -67,6 +67,8 @@ module Twine
67
67
  value_match = value_regex.match(line)
68
68
  if value_match
69
69
  value = value_match[1]
70
+ value = CGI.unescapeHTML(value)
71
+ value.gsub!('\\\'', '\'')
70
72
  value.gsub!('\\"', '"')
71
73
  value = iosify_substitutions(value)
72
74
  else
@@ -76,7 +78,7 @@ module Twine
76
78
  set_tags_for_key(key, @options[:tags])
77
79
  end
78
80
  set_translation_for_key(key, lang, value)
79
- if comment and comment.length > 0
81
+ if comment and comment.length > 0 and !comment.start_with?("SECTION:")
80
82
  set_comment_for_key(key, comment)
81
83
  end
82
84
  comment = nil
@@ -107,7 +109,7 @@ module Twine
107
109
  f.puts ''
108
110
  if section.name && section.name.length > 0
109
111
  section_name = section.name.gsub('--', '—')
110
- f.puts "\t<!-- #{section_name} -->"
112
+ f.puts "\t<!-- SECTION: #{section_name} -->"
111
113
  end
112
114
  printed_section = true
113
115
  end
@@ -126,9 +128,8 @@ module Twine
126
128
  # 1) apostrophes and quotes must be escaped with a backslash
127
129
  value.gsub!('\'', '\\\\\'')
128
130
  value.gsub!('"', '\\\\"')
129
- # 2) ampersand and less-than must be in XML-escaped form
130
- value.gsub!('&', '&amp;')
131
- value.gsub!('<', '&lt;')
131
+ # 2) HTML escape the string
132
+ value = CGI.escapeHTML(value)
132
133
  # 3) fix substitutions (e.g. %s/%@)
133
134
  value = androidify_substitutions(value)
134
135
 
data/lib/twine/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Twine
2
- VERSION = '0.3.1'
2
+ VERSION = '0.3.2'
3
3
  end
@@ -3,7 +3,7 @@
3
3
  <!-- Generated by Twine <%= Twine::VERSION %> -->
4
4
  <!-- Language: fr -->
5
5
  <resources>
6
- <!-- My Strings -->
6
+ <!-- SECTION: My Strings -->
7
7
  <!-- This is a comment -->
8
8
  <string name="key1">key1-french</string>
9
9
  <string name="key2">key2-french</string>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-18 00:00:00.000000000 Z
12
+ date: 2012-09-13 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rubyzip