Ruby文件不会在Max OSX终端中运行。语法错误,输入意外结束,应为关键字\u end

Ruby文件不会在Max OSX终端中运行。语法错误,输入意外结束,应为关键字\u end,ruby,terminal,osx-mavericks,Ruby,Terminal,Osx Mavericks,使用: RVM 1.26.0 Ruby 2.1.4 OSX小牛队10.9.5 文本编辑 航空站 我正在编写学习编写Ruby代码的艰难之路教程。这是第一个节目 puts "Hello World!" puts "Hello Again" puts "I like typing this." puts "This is fun." puts "Yay! Printing." puts "I'd must rather you 'not'." puts 'I "said" do not touch t

使用:

RVM 1.26.0 Ruby 2.1.4 OSX小牛队10.9.5 文本编辑 航空站 我正在编写学习编写Ruby代码的艰难之路教程。这是第一个节目

puts "Hello World!"
puts "Hello Again"
puts "I like typing this."
puts "This is fun."
puts "Yay! Printing."
puts "I'd must rather you 'not'."
puts 'I "said" do not touch this.'
这就是终端出现的情况

ex1.rb:7: syntax error, unexpected end-of-input, expecting keyword_end
puts 'I "said" do not touch this."

我有一个nitious.io帐户,文件在上面运行得很好。我一直在寻找答案,但所有其他问题都涉及到更复杂的程序,其解决方案似乎不适用于像这样简单的问题。据我所知,终端应该只打印这些内容,而不会出现任何问题。非常感谢您的帮助

如果您完全复制粘贴的代码,您的问题是引号。它们必须是标准的,而不是你所拥有的”。当从博客复制粘贴时,这种情况经常发生,并自动转换为打开/关闭双引号。

TextEdit正在尝试转换你的引号。它将foo转换为“foo”,即\x201cfoo\x201d


它也不提供文本格式,只提供RTF和Word格式,因此不适合编程。

在TextEdit中使用首选项后,我找到了答案。在Preferences>New Document中,我取消选中了右下角显示智能引号和智能破折号的框。它现在可以工作了。但我非常感谢您的帮助并且对我的问题表现出兴趣!

尝试使用%Hello World,即使我在字符串分隔符方面遇到了类似的问题。现在转到升华文本

我自己键入它,而不是复制和粘贴。否则有什么意义,对吗?:D您提到的格式设置是通过堆栈溢出自动完成的,例如TextEdit现在默认为rich text文档,也许这就是你的问题?当我尝试在文本编辑中键入代码时,引号会自动更改为不正确的引号。感谢你付出了额外的努力!但是你可以在格式下拉菜单下选择生成纯文本。当它处于富文本模式时,你不能使用.rb扩展名保存。我还在TextWrangler和it st中重写了它ill不起作用。我觉得这可能是我的系统有问题。也就是说,我太新了,不知道编码可能会有什么问题,哈哈。问题出在你的系统上,因为代码在我的系统上运行得很好。你没有展示你是如何运行代码的,这可能是一个线索。另外,我建议不要使用TextEdit编辑代码。它可以做到我强烈推荐和/或。它们是开发的支柱,可以在多个操作系统上运行,包括Mac操作系统。Sublime更倾向于鼠标,但macvim也做得不错。我通过键入文件名ruby ex1.rb来运行代码。我关闭了它d TextWrangler并在那里重新编写。它成功了!但它仍然无法从用TextEdit编写的文件运行。我非常想知道为什么它在TextEdit中不起作用…只是因为我觉得它很有趣!你是对的!我禁用了智能引号,现在它可以工作了。不过,它确实提供了一种可配置的纯文本格式。它可以你不是最好的选择,但我喜欢学习如何使用最差的选项,这样我才能欣赏到我可以使用的更高级的选项。谢谢!你说得对,这两个选项都需要关闭,但我建议几乎所有的选项都关闭。从长远来看,它为帮助你所做的事情越少越好。文字处理TextEdit就是g编辑器,它与优秀的文本编辑编辑器(如vim、emacs、Sublime text等)几乎没有共同的特性。