bfsog
August 13, 2009, 4:39pm
#1
This is probably something stupid simple I’m overlooking… but… here it
goes.
I’m trying to set the default character encoding at the command line
like this:
ruby19 -E ASCII-8BIT:ASCII-8BIT scratch.rb
my scratch.rb file has the following line:
p ENCODING
The output is always this:
#Encoding:US-ASCII
I want it to be this:
#Encoding:US-ASCII-8BIT
What am I doing wrong?
Thanks,
Andy
bfsog
August 13, 2009, 4:49pm
#2
On Thu, Aug 13, 2009 at 10:39 AM, Andrew
Barringer[email protected] wrote:
ruby19 -E ASCII-8BIT:ASCII-8BIT scratch.rb
The output is always this:
#Encoding:US-ASCII
Hi, this is because -E sets the internal/external encodings. If you
want to set the source encoding, you need to do this with a magic
comment.
If you want ASCII-8BIT, the first line of your source file would look
like this:
encoding: ASCII-8BIT.
For more on encodings in Ruby 1.9, you should definitely JEG2’s blog
series:
http://blog.grayproductions.net/categories/character_encodings
You can also read the m17n chapter of my book:
http://rubybestpractices.com
-greg