2016-03-25 49 views
0

我在OSX上的Ruby中出現了奇怪的textEdit行爲。它在我的文件中插入奇怪的字符。請告訴我該怎麼做來解決這個問題:奇怪的文字編輯在OSX上的Ruby行爲。在我的文件中插入奇怪的字符

[Goldie-MacBook:~/ruby] jja% cat hello.rb 
#!/usr/bin/ruby 
print "Hello World\n" 
[Goldie-MacBook:~/ruby] jja% od -c hello.rb 
0000000 # ! / u s r / b i n / r u b y \n 
0000020 p r i n t  " H e l l o  W o r 
0000040 l d \ n " \n           
0000046 
[Goldie-MacBook:~/ruby] jja% ruby hello.rb 
Hello World 
[Goldie-MacBook:~/ruby] jja% lets do some editing 
lets: Command not found. 
[Goldie-MacBook:~/ruby] jja% cat hello.rb 
#!/usr/bin/ruby 
print "Hellooo World!\n」 
[Goldie-MacBook:~/ruby] jja% ruby hello.rb 
hello.rb:2: unterminated string meets end of file 
[Goldie-MacBook:~/ruby] jja% od -c hello.rb 
0000000 # ! / u s r / b i n / r u b y \n 
0000020 p r i n t  " H e l l o o o  W 
0000040 o r l d ! \ n 」 ** ** \n      
0000053 
[Goldie-MacBook:~/ruby] jja% od -xc hello.rb 
0000000  2123 752f 7273 622f 6e69 722f 6275 0a79 
      # ! / u s r / b i n / r u b y \n 
0000020  7270 6e69 2074 4822 6c65 6f6c 6f6f 5720 
      p r i n t  " H e l l o o o  W 
0000040  726f 646c 5c21 e26e 9d80 000a     
      o r l d ! \ n 」 ** ** \n      
0000053 
[Goldie-MacBook:~/ruby] jja% ruby -v 
ruby 1.8.7 (2010-06-23 patchlevel 299) [i686-darwin10] 
[Goldie-MacBook:~/ruby] jja% 

回答

1

注意"是不一樣的角色。後者是Ruby的混淆。

TextEdit默認使用「Smart Quotes」。在編輯菜單下選擇替代,並取消選中「智能報價」。您可能還想取消選中「智能破折號」。

+0

謝謝,你在我提問之前回答了我的問題。只是浪費了一天的時間,試圖追蹤shell腳本中的神祕錯誤。 Textedit有時會將短劃線轉換爲看起來完全相同的某個角色。蘋果:不同,並不總是一個好方法。 – JavaLatte

0

@Jordan是對的。 TextEdit在你的代碼中添加了你不想要的東西。 如果你想要一個免費的編輯器,那麼你可以選擇像atomtext wrangler這樣的資源。或者是其他許多文本編輯器之一。