-2

私は TestFirst Teaching の Pig Latin 演習を完了している最中ですが、Ruby ファイルを作成して rake を実行しようとした後、次のエラーが発生しました。

austin-winslows-macbook-4:04_pig_latin HypnoBoy$ rake
(in /Users/HypnoBoy/Desktop/Code/learn_ruby)
/Library/Ruby/Site/1.8/rubygems/core_ext/kernel_require.rb:45:in `gem_original_require':     
/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin.rb:15: Invalid char `\342' in expression (SyntaxError)
/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin.rb:15: Invalid char `\200' in expression
/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin.rb:15: Invalid char `\246' in expression
/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin.rb:15: syntax error, unexpected tIDENTIFIER, expecting ']'
  word[i..-1] + cons.join()[0…i] + "ay"
                             ^
from /Library/Ruby/Site/1.8/rubygems/core_ext/kernel_require.rb:45:in `require'
from /Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin_spec.rb:20
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `load'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `load_spec_files'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `each'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `load_spec_files'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/command_line.rb:22:in `run'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/runner.rb:80:in `run'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/runner.rb:17:in `autorun'
from /usr/bin/rspec:23
rake aborted!
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -S rspec     /Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin_spec.rb -I/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin -I/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/solution -f documentation -r ./rspec_config failed

(See full trace by running task with --trace)

実行しているバージョンと関係があるのではないかと思いますが、よくわかりません。

Mac OSX 10.8.2
ルビー 1.8.7
Rspec 2.13.1
レーキ 10.0.4

ノート!以前の演習 (0-3) で rake を実行すると、問題なく動作しますが、その後は何も動作しません...

編集: rake のバージョンを更新しましたが、rake を実行しようとすると、まだ「rspec_config failed」エラーが発生しますが、これも発生します。ヘルプ!!!

/Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb:156:in `run_task'
/Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb:124:in `initialize'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/file_utils_ext.rb:58:in `verbose'
/Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb:122:in `send'
/Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb:122:in `initialize'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:246:in `call'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:246:in `execute'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:241:in `each'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:241:in `execute'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:184:in `invoke_with_call_chain'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:205:in `invoke_prerequisites'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:203:in `each'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:203:in `invoke_prerequisites'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:183:in `invoke_with_call_chain'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:170:in `invoke'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:143:in `invoke_task'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:101:in `top_level'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:101:in `each'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:101:in `top_level'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:110:in `run_with_threads'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:95:in `top_level'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:73:in `run'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:160:in `standard_exception_handling'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:70:in `run'
Tasks: TOP => default => spec
(See full trace by running task with --trace)

編集 #2: これは私の Pig Latin 演習のソース コードです。

def isvowel?(letter)
  vowels = ["a", "e", "i", "o", "u"]
  vowels.include?(letter)
end

def translate(word)
  i = 0
  cons = []

  while !isvowel?(word[i])
    cons << word[i]
    i+=1
  end

  word[i..-1] + cons.join()[0…i] + "ay"
end

def translates(string)
  if !string.include?(" ")
    translate(string)
  else
    new = string.split(" ").collect { |word| translate(word) }
  end

  new.join(" ")
end
4

1 に答える 1

1

cons.join()[0…i] + "ay" で窒息している - 私はあなたが奇妙な見た目をしていることに気づきました...それは標準ではありません...

コードのこの部分をコピーして貼り付けましたか? … (奇妙で望ましくない文字) と ... (適切なルビ演算子) の違いは、それを壊しているものです。他の文字を削除して、ドットを手で書き込んでください。

于 2013-04-28T19:58:20.903 に答える