italian-ruby 0.9.17 → 1.0.3
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/.gitignore +1 -0
- data/.ruby-version +1 -1
- data/Gemfile.lock +2 -9
- data/bin/italian-rspec +9 -18
- data/bin/italian-ruby +7 -7
- data/{vim → dev/vim}/ftdetect/ir.vim +0 -0
- data/{vim → dev/vim}/syntax/ir.vim +0 -0
- data/{vim → dev/vim}/vimrc +0 -0
- data/{vscode → dev/vscode}/italianruby.tmGrammar.json +0 -0
- data/italian-ruby.gemspec +7 -6
- data/lib/italian/ruby.rb +39 -14
- data/lib/italian/ruby/alias.rb +29 -0
- data/lib/italian/ruby/{core_ext → alias}/array.rb +11 -80
- data/lib/italian/ruby/{core_ext → alias}/class.rb +9 -2
- data/lib/italian/ruby/{core_ext → alias}/date.rb +4 -36
- data/lib/italian/ruby/{core_ext → alias}/enumerator.rb +4 -5
- data/lib/italian/ruby/alias/error.rb +19 -0
- data/lib/italian/ruby/{core_ext → alias}/false_class.rb +4 -3
- data/lib/italian/ruby/{core_ext → alias}/file.rb +6 -9
- data/lib/italian/ruby/{core_ext → alias}/float.rb +3 -4
- data/lib/italian/ruby/{core_ext → alias}/hash.rb +5 -39
- data/lib/italian/ruby/{core_ext → alias}/integer.rb +2 -26
- data/lib/italian/ruby/alias/io.rb +7 -0
- data/lib/italian/ruby/alias/kernel.rb +9 -0
- data/lib/italian/ruby/{core_ext → alias}/main.rb +5 -23
- data/lib/italian/ruby/alias/module.rb +9 -0
- data/lib/italian/ruby/{core_ext → alias}/nil_class.rb +3 -5
- data/lib/italian/ruby/alias/numeric.rb +3 -0
- data/lib/italian/ruby/alias/object.rb +39 -0
- data/lib/italian/ruby/alias/open_struct.rb +3 -0
- data/lib/italian/ruby/{core_ext → alias}/proc.rb +4 -5
- data/lib/italian/ruby/{core_ext → alias}/range.rb +2 -7
- data/lib/italian/ruby/{core_ext → alias}/rational.rb +3 -4
- data/lib/italian/ruby/alias/regexp.rb +13 -0
- data/lib/italian/ruby/{core_ext/gems → alias}/rspec.rb +7 -61
- data/lib/italian/ruby/alias/set.rb +39 -0
- data/lib/italian/ruby/alias/socket.rb +48 -0
- data/lib/italian/ruby/{core_ext → alias}/string.rb +5 -69
- data/lib/italian/ruby/{core_ext → alias}/symbol.rb +4 -5
- data/lib/italian/ruby/alias/time.rb +26 -0
- data/lib/italian/ruby/{core_ext → alias}/true_class.rb +4 -3
- data/lib/italian/ruby/errori.rb +84 -0
- data/lib/italian/ruby/metodi.rb +17 -0
- data/lib/italian/ruby/metodi/array.rb +105 -0
- data/lib/italian/ruby/metodi/date.rb +46 -0
- data/lib/italian/ruby/metodi/hash.rb +57 -0
- data/lib/italian/ruby/metodi/integer.rb +45 -0
- data/lib/italian/ruby/metodi/json.rb +17 -0
- data/lib/italian/ruby/metodi/kernel.rb +86 -0
- data/lib/italian/ruby/metodi/main.rb +31 -0
- data/lib/italian/ruby/metodi/module.rb +46 -0
- data/lib/italian/ruby/metodi/nil_class.rb +11 -0
- data/lib/italian/ruby/metodi/object.rb +64 -0
- data/lib/italian/ruby/{core_ext → metodi}/open_struct.rb +5 -7
- data/lib/italian/ruby/metodi/range.rb +11 -0
- data/lib/italian/ruby/metodi/rspec.rb +64 -0
- data/lib/italian/ruby/metodi/socket.rb +18 -0
- data/lib/italian/ruby/metodi/string.rb +168 -0
- data/lib/italian/ruby/metodi/time.rb +51 -0
- data/lib/italian/ruby/traduttore.rb +93 -122
- data/lib/italian/ruby/traduttore/linea.rb +144 -0
- data/lib/italian/ruby/traduttore/pezzo.rb +106 -0
- data/lib/italian/ruby/traduttore/stringa.rb +76 -0
- data/lib/italian/ruby/{version.rb → versione.rb} +1 -1
- metadata +60 -43
- data/Rakefile +0 -6
- data/lib/italian/ruby/core_ext.rb +0 -32
- data/lib/italian/ruby/core_ext/errors.rb +0 -12
- data/lib/italian/ruby/core_ext/gems/bson.rb +0 -26
- data/lib/italian/ruby/core_ext/gems/fabrication.rb +0 -12
- data/lib/italian/ruby/core_ext/gems/hanami.rb +0 -92
- data/lib/italian/ruby/core_ext/gems/rack_test.rb +0 -15
- data/lib/italian/ruby/core_ext/json.rb +0 -11
- data/lib/italian/ruby/core_ext/kernel.rb +0 -111
- data/lib/italian/ruby/core_ext/module.rb +0 -32
- data/lib/italian/ruby/core_ext/numeric.rb +0 -6
- data/lib/italian/ruby/core_ext/object.rb +0 -83
- data/lib/italian/ruby/core_ext/time.rb +0 -69
- data/lib/italian/ruby/errore.rb +0 -52
- data/lib/italian/ruby/utils/debug.rb +0 -134
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9ad4d3de4b1bea4fc957d1b2ff9f9817bb16680c0a7c2f6c0e5da21a96e35c98
|
4
|
+
data.tar.gz: d02978bda604b1e7ba0a6e307a423dc6a4e7923a6c90583d1021c2011422198e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 60f19363e70ec6c54fc9b4b1ef5f494c92e986e4db2f806a33dcd0d68affac0681d919ac562d548f0fc72b540a99b1564aeda454ff40cc5df29cbc0da12acaa4
|
7
|
+
data.tar.gz: e2e8846c4d1781b54265a56fc8bfb71ff6dcab7173366d78919de3b7d010c040576b3dcda5e1827272a694ecab8f662aa0250090a52acb87df02d2087b8272e1
|
data/.gitignore
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.7.
|
1
|
+
2.7.2
|
data/Gemfile.lock
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
italian-ruby (
|
5
|
-
ruby2ruby (~> 2.4)
|
4
|
+
italian-ruby (1.0.0)
|
6
5
|
|
7
6
|
GEM
|
8
7
|
remote: https://rubygems.org/
|
@@ -22,12 +21,6 @@ GEM
|
|
22
21
|
diff-lcs (>= 1.2.0, < 2.0)
|
23
22
|
rspec-support (~> 3.9.0)
|
24
23
|
rspec-support (3.9.2)
|
25
|
-
ruby2ruby (2.4.4)
|
26
|
-
ruby_parser (~> 3.1)
|
27
|
-
sexp_processor (~> 4.6)
|
28
|
-
ruby_parser (3.14.2)
|
29
|
-
sexp_processor (~> 4.9)
|
30
|
-
sexp_processor (4.14.1)
|
31
24
|
|
32
25
|
PLATFORMS
|
33
26
|
ruby
|
@@ -39,4 +32,4 @@ DEPENDENCIES
|
|
39
32
|
rspec (~> 3.9)
|
40
33
|
|
41
34
|
BUNDLED WITH
|
42
|
-
2.1.
|
35
|
+
2.1.4
|
data/bin/italian-rspec
CHANGED
@@ -4,28 +4,19 @@
|
|
4
4
|
require "rspec"
|
5
5
|
require "italian/ruby"
|
6
6
|
|
7
|
-
def translate_spec(spec_file)
|
8
|
-
translated_spec_file = ".italian-ruby/#{File.dirname spec_file}/#{File.basename(spec_file, ".ir")}.rb"
|
9
|
-
translated_spec_dir = File.dirname translated_spec_file
|
10
|
-
FileUtils.mkdir_p translated_spec_dir unless Dir.exists? translated_spec_dir
|
11
|
-
File.write translated_spec_file, Italian::Ruby::Traduttore.traduci(spec_file)
|
12
|
-
translated_spec_file
|
13
|
-
end
|
14
|
-
|
15
|
-
def destroy_spec(translated_spec_file)
|
16
|
-
File.delete translated_spec_file if File.exist? translated_spec_file
|
17
|
-
end
|
18
|
-
|
19
7
|
if ARGV[0].nil?
|
20
|
-
|
21
|
-
|
8
|
+
archivi_con_spec = Dir["spec/**/*_spec.ir"]
|
9
|
+
|
10
|
+
if archivi_con_spec.none?
|
22
11
|
"Nessun file *_spec.ir trovato."
|
23
12
|
return
|
24
13
|
end
|
25
14
|
else
|
26
|
-
|
15
|
+
archivi_con_spec = ARGV
|
16
|
+
end
|
17
|
+
|
18
|
+
archivi_tradotti = archivi_con_spec.map do |archivio|
|
19
|
+
Italian::Ruby::Traduttore.traduci archivio
|
27
20
|
end
|
28
21
|
|
29
|
-
|
30
|
-
RSpec::Core::Runner.run(translated_spec_files, STDIN, STDOUT)
|
31
|
-
# translated_spec_files.each { |file| destroy_spec file }
|
22
|
+
RSpec::Core::Runner.run archivi_tradotti, STDIN, STDOUT
|
data/bin/italian-ruby
CHANGED
@@ -4,15 +4,15 @@
|
|
4
4
|
require "italian/ruby"
|
5
5
|
|
6
6
|
if ARGV[0].nil?
|
7
|
-
puts <<~
|
7
|
+
puts <<~EOC
|
8
8
|
Esegue un file scritto in Italian Ruby. Sintassi:
|
9
9
|
italian-ruby file.ir
|
10
|
-
|
10
|
+
EOC
|
11
11
|
else
|
12
|
-
ARGV.each do |
|
13
|
-
next unless
|
12
|
+
ARGV.each do |percorso_archivio|
|
13
|
+
next unless percorso_archivio
|
14
14
|
|
15
|
-
|
16
|
-
|
15
|
+
archivio_tradotto = Italian::Ruby::Traduttore.traduci percorso_archivio
|
16
|
+
Italian::Ruby::Traduttore.esegui archivio_tradotto
|
17
17
|
end
|
18
|
-
end
|
18
|
+
end
|
File without changes
|
File without changes
|
data/{vim → dev/vim}/vimrc
RENAMED
File without changes
|
File without changes
|
data/italian-ruby.gemspec
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
require_relative
|
1
|
+
require_relative "lib/italian/ruby/versione"
|
2
2
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
4
|
spec.name = "italian-ruby"
|
5
|
-
spec.version = Italian::Ruby::
|
5
|
+
spec.version = Italian::Ruby::VERSIONE
|
6
6
|
spec.authors = ["Francesco Ballardin"]
|
7
7
|
spec.email = ["francesco.ballardin@gmail.com"]
|
8
8
|
spec.licenses = ["MIT"]
|
@@ -10,13 +10,14 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.summary = %q{Program in Ruby writing in Italian.}
|
11
11
|
spec.description = %q{Program in Ruby writing in Italian. Yay!}
|
12
12
|
spec.homepage = "https://github.com/Pluvie/italian-ruby"
|
13
|
-
|
13
|
+
|
14
|
+
spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
|
14
15
|
|
15
16
|
spec.metadata["allowed_push_host"] = "https://rubygems.org"
|
16
17
|
|
17
|
-
spec.metadata["homepage_uri"]
|
18
|
-
spec.metadata["source_code_uri"]
|
19
|
-
spec.metadata["changelog_uri"]
|
18
|
+
spec.metadata["homepage_uri"] = spec.homepage
|
19
|
+
spec.metadata["source_code_uri"] = "https://github.com/Pluvie/italian-ruby"
|
20
|
+
spec.metadata["changelog_uri"] = "https://github.com/Pluvie/italian-ruby/CHANGELOG.md"
|
20
21
|
|
21
22
|
# Specify which files should be added to the gem when it is released.
|
22
23
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
data/lib/italian/ruby.rb
CHANGED
@@ -1,23 +1,48 @@
|
|
1
|
-
|
2
|
-
# Ruby 2.7.0 -> Spegni warning finché non sarà tutto sistemato.
|
3
|
-
Warning[:experimental] = false
|
4
|
-
Warning[:deprecated] = false
|
5
|
-
#####
|
1
|
+
require "fileutils"
|
6
2
|
|
7
|
-
|
8
|
-
|
9
|
-
|
3
|
+
require_relative "ruby/metodi"
|
4
|
+
require_relative "ruby/alias"
|
5
|
+
|
6
|
+
require_relative "ruby/versione"
|
7
|
+
require_relative "ruby/traduttore"
|
10
8
|
|
11
9
|
module Italian
|
12
10
|
module Ruby
|
13
|
-
class << self
|
14
11
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
12
|
+
##
|
13
|
+
# Ottiene il percorso dove salvare tutti i file con estensione .ir
|
14
|
+
# nella relativa versione tradotta (che avrà estensione .rb).
|
15
|
+
def self.cartella_traduzioni
|
16
|
+
percorso = File.join cartella_casa, ".italian-ruby", "traduzioni"
|
17
|
+
FileUtils.mkdir_p percorso unless Dir.exists? percorso
|
18
|
+
percorso
|
19
|
+
end
|
20
20
|
|
21
|
+
##
|
22
|
+
# Ottiene il percorso della cartella casa dell'utente corrente.
|
23
|
+
def self.cartella_casa
|
24
|
+
File.expand_path "~"
|
21
25
|
end
|
26
|
+
|
27
|
+
##
|
28
|
+
# Restituisce il percorso tradotto di un archivio.
|
29
|
+
def self.percorso_archivio_tradotto(percorso_archivio)
|
30
|
+
File.join Italian::Ruby.cartella_traduzioni,
|
31
|
+
File.expand_path(percorso_archivio).gsub(/\.ir$/, ".rb")
|
32
|
+
end
|
33
|
+
|
34
|
+
##
|
35
|
+
# Restituisce il percorso non tradotto di un archivio.
|
36
|
+
def self.percorso_archivio_non_tradotto(percorso_archivio)
|
37
|
+
return percorso_archivio unless percorso_archivio.respond_to? :partition
|
38
|
+
percorso_archivio.partition(cartella_traduzioni).last.gsub(/\.rb$/, ".ir")
|
39
|
+
end
|
40
|
+
|
41
|
+
##
|
42
|
+
# Aggiunge il percorso indicato ai percorsi di caricamento in memoria.
|
43
|
+
def self.aggiungi_percorso_caricamento_in_memoria(percorso_cartella)
|
44
|
+
$: << percorso_cartella
|
45
|
+
end
|
46
|
+
|
22
47
|
end
|
23
48
|
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "alias/array"
|
4
|
+
require_relative "alias/class"
|
5
|
+
require_relative "alias/date"
|
6
|
+
require_relative "alias/enumerator"
|
7
|
+
require_relative "alias/error"
|
8
|
+
require_relative "alias/false_class"
|
9
|
+
require_relative "alias/file"
|
10
|
+
require_relative "alias/float"
|
11
|
+
require_relative "alias/hash"
|
12
|
+
require_relative "alias/integer"
|
13
|
+
require_relative "alias/io"
|
14
|
+
require_relative "alias/kernel"
|
15
|
+
require_relative "alias/main"
|
16
|
+
require_relative "alias/module"
|
17
|
+
require_relative "alias/nil_class"
|
18
|
+
require_relative "alias/numeric"
|
19
|
+
require_relative "alias/object"
|
20
|
+
require_relative "alias/open_struct"
|
21
|
+
require_relative "alias/proc"
|
22
|
+
require_relative "alias/range"
|
23
|
+
require_relative "alias/rational"
|
24
|
+
require_relative "alias/regexp"
|
25
|
+
require_relative "alias/set"
|
26
|
+
require_relative "alias/symbol"
|
27
|
+
require_relative "alias/string"
|
28
|
+
require_relative "alias/time"
|
29
|
+
require_relative "alias/true_class"
|
@@ -1,9 +1,8 @@
|
|
1
|
-
|
2
|
-
# Core Ext - Array
|
3
|
-
#
|
4
|
-
# Alias di metodi della classe Array.
|
1
|
+
# frozen_string_literal: true
|
5
2
|
|
6
3
|
class Array
|
4
|
+
|
5
|
+
alias :ispeziona :inspect
|
7
6
|
alias :per_ogni :each
|
8
7
|
alias :per_ognuno :each
|
9
8
|
alias :per_ognuna :each
|
@@ -75,82 +74,14 @@ class Array
|
|
75
74
|
alias :salta_i_primi :drop
|
76
75
|
alias :salta_le_prime :drop
|
77
76
|
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
def pizzica(method_name)
|
87
|
-
self.map do |element|
|
88
|
-
if element.respond_to? method_name
|
89
|
-
element.send method_name
|
90
|
-
elsif element.is_a? Hash
|
91
|
-
element[method_name]
|
92
|
-
else
|
93
|
-
raise ArgumentError, "Array elements do not respond to #{method_name}."
|
94
|
-
end
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
def simbolizza!
|
99
|
-
self.map! do |element|
|
100
|
-
if element.is_a? Hash
|
101
|
-
element.simbolizza!
|
102
|
-
else
|
103
|
-
element
|
104
|
-
end
|
105
|
-
end
|
106
|
-
self
|
107
|
-
end
|
108
|
-
|
109
|
-
def simbolizza
|
110
|
-
self.map do |element|
|
111
|
-
if element.is_a? Hash
|
112
|
-
element.simbolizza
|
113
|
-
else
|
114
|
-
element
|
115
|
-
end
|
116
|
-
end
|
117
|
-
end
|
118
|
-
|
119
|
-
def mappa_e_rimuovi_duplicati(&block)
|
120
|
-
self.map.with_index(&block).uniq
|
121
|
-
end
|
122
|
-
|
123
|
-
def mappa_e_compatta(&block)
|
124
|
-
self.map.with_index(&block).compact
|
125
|
-
end
|
126
|
-
|
127
|
-
def mappa_e_appiattisci(&block)
|
128
|
-
self.map.with_index(&block).flatten
|
129
|
-
end
|
130
|
-
|
131
|
-
def in_mappa(&block)
|
132
|
-
if block_given?
|
133
|
-
self.map(&block).to_h
|
134
|
-
else
|
135
|
-
self.to_h
|
136
|
-
end
|
137
|
-
end
|
138
|
-
|
139
|
-
def secondo
|
140
|
-
self[1]
|
141
|
-
end
|
142
|
-
alias :seconda :secondo
|
143
|
-
|
144
|
-
def tronca(n = 0)
|
145
|
-
self[0..(-1 - n)]
|
146
|
-
end
|
147
|
-
alias :salta_gli_ultimi :tronca
|
148
|
-
alias :salta_le_ultime :tronca
|
149
|
-
|
150
|
-
def salta_il_primo
|
151
|
-
self.drop 1
|
152
|
-
end
|
153
|
-
alias :salta_la_prima :salta_il_primo
|
77
|
+
alias :specificato? :esiste?
|
78
|
+
alias :specificata? :esiste?
|
79
|
+
alias :seconda :secondo
|
80
|
+
alias :salta_gli_ultimi :tronca
|
81
|
+
alias :salta_le_ultime :tronca
|
82
|
+
alias :salta_la_prima :salta_il_primo
|
83
|
+
alias :tranne_la_prima :salta_il_primo
|
84
|
+
alias :tranne_il_primo :salta_il_primo
|
154
85
|
end
|
155
86
|
|
156
87
|
Lista = Array
|
@@ -1,7 +1,13 @@
|
|
1
|
-
|
2
|
-
# CoreExt - Class
|
1
|
+
# frozen_string_literal: true
|
3
2
|
|
4
3
|
class Class
|
4
|
+
|
5
|
+
class << self
|
6
|
+
|
7
|
+
alias :definisci_metodo :define_method
|
8
|
+
|
9
|
+
end
|
10
|
+
|
5
11
|
alias :privati :private
|
6
12
|
alias :protetti :protected
|
7
13
|
alias :pubblici :public
|
@@ -11,4 +17,5 @@ class Class
|
|
11
17
|
alias :definisci_metodo :define_method
|
12
18
|
alias :apri_classe :class_eval
|
13
19
|
alias :moduli_inclusi :included_modules
|
20
|
+
|
14
21
|
end
|
@@ -1,22 +1,11 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require "date"
|
2
3
|
|
3
|
-
##
|
4
|
-
# Core Ext - Date
|
5
|
-
#
|
6
|
-
# Alias di metodi della classe Date.
|
7
|
-
|
8
4
|
class Date
|
5
|
+
|
9
6
|
class << self
|
10
7
|
alias :oggi :today
|
11
8
|
alias :converti :parse
|
12
|
-
|
13
|
-
def domani
|
14
|
-
oggi + 1
|
15
|
-
end
|
16
|
-
|
17
|
-
def ieri
|
18
|
-
oggi - 1
|
19
|
-
end
|
20
9
|
end
|
21
10
|
|
22
11
|
alias :anno_prossimo :next_year
|
@@ -30,32 +19,11 @@ class Date
|
|
30
19
|
alias :mese :month
|
31
20
|
alias :anno :year
|
32
21
|
alias :fra? :between?
|
33
|
-
alias :formatta :strftime
|
34
22
|
|
35
|
-
def due_anni_fa
|
36
|
-
self.prev_year.prev_year
|
37
|
-
end
|
38
23
|
alias :due_anni_precedenti :due_anni_fa
|
24
|
+
alias :formatta :formatta_locale
|
39
25
|
|
40
|
-
def formatta_locale(format)
|
41
|
-
if defined? I18n
|
42
|
-
I18n.l self, format: format
|
43
|
-
else
|
44
|
-
strftime format
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
alias :original_equality :==
|
49
|
-
def ==(other)
|
50
|
-
return (self == other.to_date) if other.is_a? Time
|
51
|
-
original_equality other
|
52
|
-
end
|
53
|
-
|
54
|
-
alias :original_compare :<=>
|
55
|
-
def <=>(other)
|
56
|
-
return (self <=> other.to_date) if other.is_a? Time
|
57
|
-
original_compare other
|
58
|
-
end
|
59
26
|
end
|
60
27
|
|
28
|
+
Object.send :remove_const, :Data
|
61
29
|
Data = Date
|