33 lines
429 B
Ruby
33 lines
429 B
Ruby
module CodeRay
|
|
module Encoders
|
|
|
|
class Text < Encoder
|
|
|
|
include Streamable
|
|
register_for :text
|
|
|
|
FILE_EXTENSION = 'txt'
|
|
|
|
DEFAULT_OPTIONS = {
|
|
:separator => ''
|
|
}
|
|
|
|
protected
|
|
def setup options
|
|
@out = ''
|
|
@sep = options[:separator]
|
|
end
|
|
|
|
def token text, kind
|
|
@out << text + @sep if text.is_a? ::String
|
|
end
|
|
|
|
def finish options
|
|
@out.chomp @sep
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
end
|