GIF87a;
module IRB class << (MagicFile = Object.new) # see parser_magic_comment in parse.y ENCODING_SPEC_RE = %r"coding\s*[=:]\s*([[:alnum:]\-_]+)" def open(path) io = File.open(path, 'rb') line = io.gets line = io.gets if line[0,2] == "#!" encoding = detect_encoding(line) internal_encoding = encoding encoding ||= default_src_encoding io.rewind io.set_encoding(encoding, internal_encoding) if block_given? begin return (yield io) ensure io.close end else return io end end private def detect_encoding(line) return unless line[0] == ?# line = line[1..-1] line = $1 if line[/-\*-\s*(.*?)\s*-*-$/] return nil unless ENCODING_SPEC_RE =~ line encoding = $1 return encoding.sub(/-(?:mac|dos|unix)/i, '') end end end
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
cmd | Folder | 0755 |
|
|
ext | Folder | 0755 |
|
|
lc | Folder | 0755 |
|
|
completion.rb | File | 6.12 KB | 0644 |
|
context.rb | File | 11.91 KB | 0644 |
|
extend-command.rb | File | 9.54 KB | 0644 |
|
frame.rb | File | 1.87 KB | 0644 |
|
help.rb | File | 613 B | 0644 |
|
init.rb | File | 7.07 KB | 0644 |
|
input-method.rb | File | 4.58 KB | 0644 |
|
inspector.rb | File | 3.9 KB | 0644 |
|
locale.rb | File | 4.43 KB | 0644 |
|
magic-file.rb | File | 893 B | 0644 |
|
notifier.rb | File | 6.87 KB | 0644 |
|
output-method.rb | File | 2.39 KB | 0644 |
|
ruby-lex.rb | File | 22.59 KB | 0644 |
|
ruby-token.rb | File | 7.3 KB | 0644 |
|
slex.rb | File | 5.95 KB | 0644 |
|
src_encoding.rb | File | 90 B | 0644 |
|
version.rb | File | 251 B | 0644 |
|
workspace.rb | File | 2.78 KB | 0644 |
|
ws-for-case-2.rb | File | 195 B | 0644 |
|
xmp.rb | File | 4.03 KB | 0644 |
|