From c6b7e134bebf949753a10074005e3b56cf9580d6 Mon Sep 17 00:00:00 2001 From: "yuuji.yaginuma" Date: Mon, 7 Apr 2025 07:36:23 +0900 Subject: [PATCH 1/4] Add Ruby 3.4 --- app/ruby_engine.rb | 13 +++++++++---- app/ruby_engine/cruby_wasi.rb | 6 +++--- app/try_ruby.rb | 2 +- spec/playground_spec.rb | 2 +- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/app/ruby_engine.rb b/app/ruby_engine.rb index 86c0871c..85757b3c 100644 --- a/app/ruby_engine.rb +++ b/app/ruby_engine.rb @@ -39,14 +39,19 @@ def loading(part = nil) # When you update the engines, ensure that they are tested correctly. # Update the engine list also in spec/playground_spec. ENGINES = [ - # https://www.jsdelivr.com/package/npm/@ruby/3.3-wasm-wasi?tab=files&path=dist&version=2.4.1 + # https://www.jsdelivr.com/package/npm/@ruby/3.4-wasm-wasi?tab=files&path=dist&version=2.7.2 CRubyWASI.new( - "https://cdn.jsdelivr.net/npm/@ruby/3.3-wasm-wasi@2.4.1/dist/ruby.wasm", + "https://cdn.jsdelivr.net/npm/@ruby/3.4-wasm-wasi@2.7.2/dist/ruby.wasm", + "3.4.1" + ), + # https://www.jsdelivr.com/package/npm/@ruby/3.3-wasm-wasi?tab=files&path=dist&version=2.7.2 + CRubyWASI.new( + "https://cdn.jsdelivr.net/npm/@ruby/3.3-wasm-wasi@2.7.2/dist/ruby.wasm", "3.3.0" ), - # https://www.jsdelivr.com/package/npm/@ruby/3.2-wasm-wasi?tab=files&path=dist&version=2.4.1 + # https://www.jsdelivr.com/package/npm/@ruby/3.2-wasm-wasi?tab=files&path=dist&version=2.7.2 CRubyWASI.new( - "https://cdn.jsdelivr.net/npm/@ruby/3.2-wasm-wasi@2.4.1/dist/ruby.wasm", + "https://cdn.jsdelivr.net/npm/@ruby/3.2-wasm-wasi@2.7.2/dist/ruby.wasm", "3.2.2" ), # Opal.new, diff --git a/app/ruby_engine/cruby_wasi.rb b/app/ruby_engine/cruby_wasi.rb index 99c7bb57..d3c7ec97 100644 --- a/app/ruby_engine/cruby_wasi.rb +++ b/app/ruby_engine/cruby_wasi.rb @@ -6,9 +6,9 @@ class RubyEngine class CRubyWASI < RubyEngine REQUIRED_SCRIPTS = [ { - # https://www.jsdelivr.com/package/npm/@ruby/wasm-wasi?version=2.4.1&tab=files&path=dist - src: "https://cdn.jsdelivr.net/npm/@ruby/wasm-wasi@2.4.1/dist/index.umd.js", - integrity: "sha256-300VwPu5WqY+8LDKdE4RQwDglgJSpMtLFLgyf508bv0=", + # https://www.jsdelivr.com/package/npm/@ruby/wasm-wasi?version=2.7.2&tab=files&path=dist + src: "https://cdn.jsdelivr.net/npm/@ruby/wasm-wasi@2.7.2/dist/index.umd.js", + integrity: "sha256-sxHtVJLn+brnck+saGLUKbu/JEP7pilIBgChJvVdjko=", crossorigin: "anonymous" }, { diff --git a/app/try_ruby.rb b/app/try_ruby.rb index 0a9fcbe3..ed1762a8 100644 --- a/app/try_ruby.rb +++ b/app/try_ruby.rb @@ -15,7 +15,7 @@ class TryRuby RUBY INITIAL_TRY_RESULT = 'Welcome ' * 3 - DEFAULT_RUBY_ENGINE = "cruby-3.3.0" + DEFAULT_RUBY_ENGINE = "cruby-3.4.1" def self.start instance diff --git a/spec/playground_spec.rb b/spec/playground_spec.rb index e154b813..24df0508 100644 --- a/spec/playground_spec.rb +++ b/spec/playground_spec.rb @@ -2,7 +2,7 @@ RSpec.describe "Playground", type: :feature, js: true do context "engine" do - engines = ["opal-ww-1.8.2", "cruby-3.2.2", "cruby-3.3.0"] + engines = ["opal-ww-1.8.2", "cruby-3.2.2", "cruby-3.3.0", "cruby-3.4.1"] engines.each do |engine| context engine do before :each do From 02e51b1a2ceaf5b3b9d70bb3fa00b6f69b2d1bda Mon Sep 17 00:00:00 2001 From: Yuji Yaginuma Date: Fri, 3 Oct 2025 16:57:34 +0900 Subject: [PATCH 2/4] Ignore warnings from `gem_prelude` With the latest `wasm-wasi`, the following warnings are shown on TryRuby. ``` `RubyGems' were not loaded. `error_highlight' was not loaded. `did_you_mean' was not loaded. `syntax_suggest' was not loaded. ``` This warnings come from `gem_prelude.rb`. https://github.com/ruby/ruby/blob/master/gem_prelude.rb I assume this this is because the current usage of `ruby.wasm` on TryRuby don't consider RubyGems and fails to load it. We should change the structure of how to use `ruby.wasm` for fixing this. But, this is just warnings and there are no other issues. And, it seems that this warnings would not be shown in Ruby 3.5 https://github.com/ruby/ruby/pull/13454/commits/4e303fd786bee1d92a41306d055f078a3c8c0cb8 https://github.com/ruby/ruby/pull/13454/commits/e9dadf133434b7282269b143ff2b20111707f4f1 So I fixed to just silence those warnings. --- app/try_ruby.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/app/try_ruby.rb b/app/try_ruby.rb index ed1762a8..5b04b7e8 100644 --- a/app/try_ruby.rb +++ b/app/try_ruby.rb @@ -17,6 +17,13 @@ class TryRuby DEFAULT_RUBY_ENGINE = "cruby-3.4.1" + GEM_PRELUDE_WARNINGS = [ + "`RubyGems' were not loaded.", + "`error_highlight' was not loaded.", + "`did_you_mean' was not loaded.", + "`syntax_suggest' was not loaded." + ].freeze + def self.start instance end @@ -455,6 +462,7 @@ def log_error(err) end def print_to_output(str, term = "\n") + return if warnings_from_gem_prelude?(str) @output_buffer << str.to_s + term @output.value = @output_buffer.join end @@ -462,6 +470,16 @@ def print_to_output(str, term = "\n") def output=(text) @output.value = text end + + # TODO: This would be needless if only supports Ruby >= 3.5. + def warnings_from_gem_prelude?(str) + return false if str.nil? || str.empty? + + trimmed_str = str.strip + GEM_PRELUDE_WARNINGS.include?(trimmed_str) + end + + private end $window.on("dom:load") { TryRuby.start } From 2036eab6bb72f27a4b6df42f29eb3c060ca84bf8 Mon Sep 17 00:00:00 2001 From: Yuji Yaginuma Date: Sun, 5 Oct 2025 11:42:02 +0900 Subject: [PATCH 3/4] Support Ruby 3.4 error message format --- translations/de/try_ruby_90.md | 14 +++++++------- translations/en/try_ruby_90.md | 6 +++--- translations/es/try_ruby_90.md | 6 +++--- translations/fr/try_ruby_90.md | 6 +++--- translations/ja/try_ruby_90.md | 4 ++-- translations/mk/try_ruby_90.md | 8 ++++---- translations/nl/try_ruby_90.md | 8 ++++---- translations/pt-br/try_ruby_90.md | 4 ++-- translations/ru/try_ruby_90.md | 6 +++--- translations/tr/try_ruby_90.md | 6 +++--- translations/ua/try_ruby_90.md | 4 ++-- translations/zh/try_ruby_90.md | 6 +++--- 12 files changed, 39 insertions(+), 39 deletions(-) diff --git a/translations/de/try_ruby_90.md b/translations/de/try_ruby_90.md index 50a4dbf0..7b20846e 100644 --- a/translations/de/try_ruby_90.md +++ b/translations/de/try_ruby_90.md @@ -1,16 +1,16 @@ --- lang: DE title: Hey, schon die Zusammenfassung #1 -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Nö, es ist nicht möglich, eine Nummer umzukehren. Klick auf 'Next' -error: +error: --- Sehen wir uns an, was Sie in der ersten Minute gelernt haben. ### Der Editor -Wenn du den Code in den Editor eingibst und auf Ausführen klickst, erhältst du +Wenn du den Code in den Editor eingibst und auf Ausführen klickst, erhältst du eine Antwort im Ausgabefenster. (Fast) jeder Code gibt eine Antwort. @@ -18,12 +18,12 @@ eine Antwort im Ausgabefenster. Nummern und Strings sind Rubys Mathe- und Textobjekte. ### Methoden -Du hast englischsprachige Methoden wie 'reverse' und 'length' verwendet. Und -symbolische Methoden wie die Multiplikationsmethode: \* +Du hast englischsprachige Methoden wie 'reverse' und 'length' verwendet. Und +symbolische Methoden wie die Multiplikationsmethode: \* __Methoden bedeuten Aktion!__ -Das ist die Essenz deines Lernens. Mit einfachen Dingen zu spielen und sie in -neue Dinge zu verwandeln. Fühlst du dich schon wohl? Ich verspreche dir, es ist +Das ist die Essenz deines Lernens. Mit einfachen Dingen zu spielen und sie in +neue Dinge zu verwandeln. Fühlst du dich schon wohl? Ich verspreche dir, es ist so. ## Okay, diff --git a/translations/en/try_ruby_90.md b/translations/en/try_ruby_90.md index 9d5ad758..7e33f8de 100644 --- a/translations/en/try_ruby_90.md +++ b/translations/en/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: EN title: Hey, Summary #1 Already -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Nope, it is not possible to reverse a number. Click 'next' -error: +error: --- Let's look at what you've learned in the first minute. @@ -18,7 +18,7 @@ Numbers and strings are Ruby's math and text objects. ### Methods You've used English-language methods like reverse and length. And symbolic methods like the -multiplication method: \* +multiplication method: \* __Methods mean action!__ This is the essence of your learning. Taking simple things, toying with them and turning them into diff --git a/translations/es/try_ruby_90.md b/translations/es/try_ruby_90.md index 2ebec777..400d9b25 100644 --- a/translations/es/try_ruby_90.md +++ b/translations/es/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: ES title: Ey, Sumario #1 Ya -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Nop, no es posible dar la vuelta a un número. Pulsa 'next' -error: +error: --- Echemos un vistazo a lo que has aprendido en el primer minuto. @@ -17,7 +17,7 @@ Escribir código en el editor y pulsar __run__ te da una respuesta en la ventana Los números y los strings (las cadenas de texto) son los objetos de Ruby para las mates y los textos. ### Métodos -Ya has usado métodos de lenguaje como dar la __vuelta__ (reverse) o __tamaño__ (length). Y también métodos simbólicos como la multiplicación: \* +Ya has usado métodos de lenguaje como dar la __vuelta__ (reverse) o __tamaño__ (length). Y también métodos simbólicos como la multiplicación: \* __Los Métodos significan acción!__ Esta es la esencia de tu aprendizaje. Coger cosas simples, jugar con ellas y convertirlas en cosas nuevas. ¿Te sientes cómodo? Seguro que sí. diff --git a/translations/fr/try_ruby_90.md b/translations/fr/try_ruby_90.md index 407db1f9..e9cecbd2 100644 --- a/translations/fr/try_ruby_90.md +++ b/translations/fr/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: FR title: Hé, Résumé #1 Déjà -answer: NoMethodError|undefined +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Nop, ce n'est pas possible d'inverser un nombre. Clique sur 'next'. -error: +error: --- Regardons ce que tu as appris dans la première minute. @@ -18,7 +18,7 @@ Les nombres et les chaînes de caractères sont des objets mathématiques et tex ### Méthodes Tu as utilisé des méthodes en anglais comme reverse (__inverse__) et length (__longueur__) . Et des méthodes symboliques comme la -méthode de multiplication : \* +méthode de multiplication : \* __Méthodes signifie action !__ C'est l'essence de ton apprentissage. Prendre des choses simples, jouer avec elles et les transformer en diff --git a/translations/ja/try_ruby_90.md b/translations/ja/try_ruby_90.md index 8dc52f8d..967248e6 100644 --- a/translations/ja/try_ruby_90.md +++ b/translations/ja/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: JA title: このくらいで要約(その1)にしましょう -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: いいえ、数を逆さまにはできません。'Next'を押してください -error: +error: --- ここまでの数分で学んだことを確認してみましょう。 diff --git a/translations/mk/try_ruby_90.md b/translations/mk/try_ruby_90.md index aad49cba..44224416 100644 --- a/translations/mk/try_ruby_90.md +++ b/translations/mk/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: MK title: Резиме на делот #1. Толку брзо?! -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Не, не е можно да го прикажеш бројот во обратен редослед. Кликни 'Next' -error: +error: --- Ајде да погледнеме што сѐ научи во овие неколку воведни минути. @@ -18,10 +18,10 @@ error: ### Методи Ти користеше методи чие име е блиско на Англискиот-јазик, и тоа: reverse и length. И симболички методи како што е -методот за множење: \* +методот за множење: \* __Методите значат извршување на некаква активност!__ -Ова е основата за твоето учење. Земање на едноставни работи, манипулирање со нив и нивна трансформација во +Ова е основата за твоето учење. Земање на едноставни работи, манипулирање со нив и нивна трансформација во нови работи. Се чувствуваш комфортно, нели? Ти ветувам дека си. ## Во ред, diff --git a/translations/nl/try_ruby_90.md b/translations/nl/try_ruby_90.md index 3993798d..13e1ba65 100644 --- a/translations/nl/try_ruby_90.md +++ b/translations/nl/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: NL title: Je hebt samenvatting 1 bereikt -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Nee, nummers kan je niet omdraaien. Klik 'next' -error: +error: --- Je bent net 1 minuut bezig en kijk eens wat je allemaal al weet. @@ -18,8 +18,8 @@ je wilt tonen. Numbers en strings zijn Ruby's reken en tekst objecten. ### Methodes -Je hebt Engelstalige methodes gebruikt als _reverse_ en _length_. -En symbolische methoden zoals vermenigvuldigen: \* +Je hebt Engelstalige methodes gebruikt als _reverse_ en _length_. +En symbolische methoden zoals vermenigvuldigen: \* __Methodes betekenen actie!__ diff --git a/translations/pt-br/try_ruby_90.md b/translations/pt-br/try_ruby_90.md index 102f85b8..b505b3f3 100644 --- a/translations/pt-br/try_ruby_90.md +++ b/translations/pt-br/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: PT-BR title: Ei, Sumário #1 Pronto -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Não, não é possível inverter um número. Clique em __next__ para continuar -error: +error: --- Vamos revisar o que nós aprendemos neste primeiro minuto. diff --git a/translations/ru/try_ruby_90.md b/translations/ru/try_ruby_90.md index 8238ef22..ca1e2ddb 100644 --- a/translations/ru/try_ruby_90.md +++ b/translations/ru/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: RU title: Подводим итоги #1 Уже -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Неа, нельзя использовать метод reverse с числом. Жми 'next' -error: +error: --- Давайте посмотрим, что Вы уже изучили. @@ -18,7 +18,7 @@ error: ### Методы Вы попробовали использовать методы из слов на английском языке reverse и length. А также символьный -метод умножения: \* +метод умножения: \* __Метод значит действие!__ В этом суть Вашего обучения. Берем базовые вещи, играем с ними и превращаем их в diff --git a/translations/tr/try_ruby_90.md b/translations/tr/try_ruby_90.md index bcc3e5cd..8468b0f0 100644 --- a/translations/tr/try_ruby_90.md +++ b/translations/tr/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: TR title: Hey, Özet #Şimdiden 1 Numara -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Yoo, bir numarayı ters çevirmek mümkün değil ki. 'next' butonuna bas -error: +error: --- Hadi ilk dakikanda öğrendiklerine bir göz atalım. @@ -16,7 +16,7 @@ Editöre yazmak ve run butonuna basmak sana çıktı ekranında bir sonuç verir ### Numaralar ve string'ler Numaraler ve string'ler Ruby'nin matematik ve metin objeleridir. -### Metodlar +### Metodlar İngilizce dilinde olan reverse ve length gibi metod isimleri kullandın. Ayrıca çarpma metodu gibi sembolik metodlar da kullandın: \* __Methodlar aksiyon anlamına gelir!__ diff --git a/translations/ua/try_ruby_90.md b/translations/ua/try_ruby_90.md index 805d9a27..7bea9d5f 100644 --- a/translations/ua/try_ruby_90.md +++ b/translations/ua/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: UA title: Підсумки #1 Вже -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: Ні, неможливо розгорнути число. Натисни 'next' -error: +error: --- Погляньмо, що ти вже вивчив за першу хвилину. diff --git a/translations/zh/try_ruby_90.md b/translations/zh/try_ruby_90.md index d8d1f47a..a9a41998 100644 --- a/translations/zh/try_ruby_90.md +++ b/translations/zh/try_ruby_90.md @@ -1,10 +1,10 @@ --- lang: ZH title: 总结(第一部分)就到此为止! -answer: NoMethodError|undefined|-e:in `eval' +answer: NoMethodError|undefined|-e:in `eval'|-e:in 'Kernel.eval' class: stretcher chapmark ok: 不不不,你不能逆置一个数字,点击‘Next’来继续 -error: +error: --- 让我们看看你在第一分钟内学到了什么。 @@ -17,7 +17,7 @@ error: 数字和字符串是Ruby的数学和文本对象。 ### 方法(Methods) -你已经使用了英文方法,如reverse和length。以及如乘法的符号方法。\* +你已经使用了英文方法,如reverse和length。以及如乘法的符号方法。\* __方法指的是执行的行为!__ 这是你学习的本质。把简单的东西,玩弄它们,并把它们组合 From 17ce4588dfbffb06b6207b43f23af1b39ed37f8e Mon Sep 17 00:00:00 2001 From: Yuji Yaginuma Date: Sun, 5 Oct 2025 14:30:42 +0900 Subject: [PATCH 4/4] Support Ruby 3.4 hash format --- translations/de/try_ruby_280.md | 2 +- translations/en/try_ruby_280.md | 2 +- translations/es/try_ruby_280.md | 2 +- translations/ja/try_ruby_280.md | 2 +- translations/mk/try_ruby_280.md | 2 +- translations/pt-br/try_ruby_280.md | 2 +- translations/ru/try_ruby_280.md | 2 +- translations/tr/try_ruby_280.md | 2 +- translations/ua/try_ruby_280.md | 2 +- translations/zh/try_ruby_280.md | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/translations/de/try_ruby_280.md b/translations/de/try_ruby_280.md index 806ec000..30e02e45 100644 --- a/translations/de/try_ruby_280.md +++ b/translations/de/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: EN title: Bist du hart? -answer: :mediocre +answer: :mediocre|mediocre: load: books = {"Gravitys Rainbow" => :splendid, "The deep end" => :abysmal, "Living colors" => :mediocre, "Bumblebees" => :mediocre} ok: Toll, wow! Du hast eine Übersicht über deine Bewertungen erstellt error: diff --git a/translations/en/try_ruby_280.md b/translations/en/try_ruby_280.md index df1f0032..58d8e7b7 100644 --- a/translations/en/try_ruby_280.md +++ b/translations/en/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: EN title: Are You Harsh? -answer: :mediocre +answer: :mediocre|mediocre: load: books = {"Gravitys Rainbow" => :splendid, "The deep end" => :abysmal, "Living colors" => :mediocre, "Bumblebees" => :mediocre} ok: Great, wow! You've made a scorecard of your ratings error: diff --git a/translations/es/try_ruby_280.md b/translations/es/try_ruby_280.md index a4ee097a..657e4d20 100644 --- a/translations/es/try_ruby_280.md +++ b/translations/es/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: ES title: ¿Eres severo? -answer: :mediocre +answer: :mediocre|mediocre: load: libros = {"El Arco Iris de Gravedad" => :esplendido, "El fin profundo" => :abismal, "Colores vivientes" => :mediocre, "Abejorros" => :mediocre} ok: ¡Genial! Has hecho un marcador de puntuaciones. error: diff --git a/translations/ja/try_ruby_280.md b/translations/ja/try_ruby_280.md index 4a6cb4b6..969cdc2b 100644 --- a/translations/ja/try_ruby_280.md +++ b/translations/ja/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: JA title: 辛辣な書評をつけてしまった? -answer: :mediocre +answer: :mediocre|mediocre: load: books = {"Gravitys Rainbow" => :splendid, "The deep end" => :abysmal, "Living colors" => :mediocre, "Bumblebees" => :mediocre} ok: やった!すごいです。評価のスコアカードを作成しました error: diff --git a/translations/mk/try_ruby_280.md b/translations/mk/try_ruby_280.md index 7906da4d..2674242a 100644 --- a/translations/mk/try_ruby_280.md +++ b/translations/mk/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: MK title: Дали си строг при оценувањето на книгите? -answer: :mediocre +answer: :mediocre|mediocre: load: books = {"Gravitys Rainbow" => :splendid, "The deep end" => :abysmal, "Living colors" => :mediocre, "Bumblebees" => :mediocre} ok: Одлично, браво! Ти само што направи карта со твои оцени. error: diff --git a/translations/pt-br/try_ruby_280.md b/translations/pt-br/try_ruby_280.md index 1578807e..fcfec00f 100644 --- a/translations/pt-br/try_ruby_280.md +++ b/translations/pt-br/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: PT-BR title: Você é Áspero (Harsh)? -answer: :mediocre +answer: :mediocre|mediocre: load: livros = {"O Arco-Íris da Gravidade" => :esplendido, "Até o Fim" => :lixo, "Cores Vivas" => :mediocre, "Bumblebees" => :mediocre} ok: Ótimo, wow! Você fez um scorecard das suas análises. error: diff --git a/translations/ru/try_ruby_280.md b/translations/ru/try_ruby_280.md index f188ed8f..c414ce63 100644 --- a/translations/ru/try_ruby_280.md +++ b/translations/ru/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: RU title: А ты суров? -answer: :mediocre +answer: :mediocre|mediocre: load: books = {"Война и мир" => :splendid, "Отцы и дети" => :abysmal, "Идиот" => :mediocre, "Евгений Онегин" => :amazing} ok: Отлично, круто! Вы создали таблицу своих оценок --- diff --git a/translations/tr/try_ruby_280.md b/translations/tr/try_ruby_280.md index 24d68bd8..1cbd3242 100644 --- a/translations/tr/try_ruby_280.md +++ b/translations/tr/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: TR title: Sert Misin? -answer: :mediocre +answer: :mediocre|mediocre: load: books = {"Gravitys Rainbow" => :splendid, "The deep end" => :abysmal, "Living colors" => :mediocre, "Bumblebees" => :mediocre} ok: Süper, vay! Değerlendirmelerinin bir puan kardını oluşturdun error: diff --git a/translations/ua/try_ruby_280.md b/translations/ua/try_ruby_280.md index 77dc4cec..b5f15898 100644 --- a/translations/ua/try_ruby_280.md +++ b/translations/ua/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: UA title: Ти суворий критик? -answer: :mediocre +answer: :mediocre|mediocre: load: books = {"Фарбований Лис" => :splendid, "Сутінки. Сага." => :abysmal, "Хоббіт" => :mediocre, "Голодні ігри" => :mediocre} ok: Ти створив свій власний рейтинг книжок error: diff --git a/translations/zh/try_ruby_280.md b/translations/zh/try_ruby_280.md index 47b39fec..d2b65459 100644 --- a/translations/zh/try_ruby_280.md +++ b/translations/zh/try_ruby_280.md @@ -1,7 +1,7 @@ --- lang: ZH title: 你标准很高? -answer: :mediocre +answer: :mediocre|mediocre: load: books = {"Gravitys Rainbow" => :splendid, "The deep end" => :abysmal, "Living colors" => :mediocre, "Bumblebees" => :mediocre} ok: 不错,你已经为你的书评做了一个评分卡了 error: