class YARD::Server::Commands::DisplayFileCommand

Displays a README or extra file.

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

Public Instance Methods

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