class YARD::Server::Commands::DisplayFileCommand

Displays a README or extra file.

@todo Implement better support for detecting binary (image) filetypes

Attributes

index[RW]

Public Instance Methods

run() click to toggle source
# File lib/yard/server/commands/display_file_command.rb, line 11
def run
  filename = File.cleanpath(File.join(library.source_path, path))
  raise NotFoundError unless File.file?(filename)
  if filename =~ /\.(jpe?g|gif|png|bmp)$/i
    headers['Content-Type'] = StaticFileCommand::DefaultMimeTypes[$1.downcase] || 'text/html'
    render File.read_binary(filename)
  else
    file = CodeObjects::ExtraFileObject.new(filename)
    options.update :object => Registry.root,
                   :type => :layout,
                   :file => file,
                   :index => index ? true : false
    render
  end
end