我正在学习编程,从Ruby开始。在使用TextEdit时,我能够运行数字代码,但是puts "text"的任何变体都会返回错误消息main:Object的未定义局部变量或方法“text”(NameError)。我用了另一个文本编辑器,它工作得很好。谁能帮我弄清楚哪里出了问题?谢谢你,谢谢我现在使用Sublime Text而不是TextEdit。
puts "text"
gywdnpxw1#
这些错误的一个常见来源是使用编辑器将“普通”引号字符"'替换为印刷引号。你的原始代码
"
'
字符串可能因此被您的编辑器替换为
puts “text”
型但是Ruby总是需要带有字符串字面量的“纯”引号字符。当使用其他字符时,Ruby假设您要调用一个名为“text”的方法,并相应地失败,因为您没有定义这样的方法。最后,通常使用一个适合代码编辑的编辑器(如Sublime、VisualStudio Code、Textmate、Nova或其他),而不是适合文本编辑的编辑器(如TextEdit、Pages、Word等),以避免此类问题。
“text”
qij5mzcb2#
Mac上的TextEdit默认为“Rich Text”,其中嵌入了有关字体选择和大小,粗体/斜体,下划线,字距调整和间距等的信息。您可以使用它来编辑代码,但要做到这一点,您需要转到Format菜单并选择Make Plain Text。这将删除所有嵌入的格式化字节。虽然这样做是可行的,但体验不会像使用程序员的文本编辑器那样愉快,文本编辑器有助于缩进,语法着色,并且(通常)提供编译或运行代码的工具。MacOS附带了vi/vim和皮科,它们都可以从命令行工作。虽然vi功能强大,但它有一个非常陡峭的学习曲线。皮科是极简的,但在窗口底部显示可用的命令。很多其他的好选择都可以很容易地下载。有些是免费的,有些需要付费。你和编辑的关系很大程度上取决于你的个人品味,你会在你选择的任何环境中花很多时间,所以我建议你尝试几个,看看什么适合你个人--有点像挑选鞋子。
Format
Make Plain Text
2条答案
按热度按时间gywdnpxw1#
这些错误的一个常见来源是使用编辑器将“普通”引号字符
"
'
替换为印刷引号。你的原始代码字符串
可能因此被您的编辑器替换为
型
但是Ruby总是需要带有字符串字面量的“纯”引号字符。当使用其他字符时,Ruby假设您要调用一个名为
“text”
的方法,并相应地失败,因为您没有定义这样的方法。最后,通常使用一个适合代码编辑的编辑器(如Sublime、VisualStudio Code、Textmate、Nova或其他),而不是适合文本编辑的编辑器(如TextEdit、Pages、Word等),以避免此类问题。
qij5mzcb2#
Mac上的TextEdit默认为“Rich Text”,其中嵌入了有关字体选择和大小,粗体/斜体,下划线,字距调整和间距等的信息。您可以使用它来编辑代码,但要做到这一点,您需要转到
Format
菜单并选择Make Plain Text
。这将删除所有嵌入的格式化字节。虽然这样做是可行的,但体验不会像使用程序员的文本编辑器那样愉快,文本编辑器有助于缩进,语法着色,并且(通常)提供编译或运行代码的工具。MacOS附带了vi/vim和皮科,它们都可以从命令行工作。虽然vi功能强大,但它有一个非常陡峭的学习曲线。皮科是极简的,但在窗口底部显示可用的命令。很多其他的好选择都可以很容易地下载。有些是免费的,有些需要付费。你和编辑的关系很大程度上取决于你的个人品味,你会在你选择的任何环境中花很多时间,所以我建议你尝试几个,看看什么适合你个人--有点像挑选鞋子。