Sha256: c20a81ca96d055551e1afd00b4e3a48dd5d496ec70744a7a7b4352dddec4297c
Contents?: true
Size: 1.87 KB
Versions: 2
Compression:
Stored size: 1.87 KB
Contents
require 'rubygems' require 'remarkably/engines/html' require 'coderay' require 'ramaze' # where is the source RAMAZE_SRC = File.expand_path(Ramaze::BASEDIR/'../_darcs/current') unless defined? RAMAZE_SRC # delete cached filetree when source changes module Ramaze::SourceReloadHooks module_function def after_safe_load file Ramaze::Cache.actions.clear end end class MainController < Ramaze::Controller include Remarkably::Common helper :partial, :inform, :cache, :aspect engine :None def index *args redirect "/#/#{args.join('/')}" if args.size > 0 end def source *args file = args.join('/') return if file.empty? or file =~ /\.{2}/ file[0,0] = RAMAZE_SRC + '/' CodeRay.scan_file(file).html(:line_numbers => :table) if FileTest.file? file end before(:source){ %(<link href='/coderay.css' rel='stylesheet' type='text/css' />) unless request.xhr? } def filetree ul :class => 'filetree treeview' do Dir.chdir(RAMAZE_SRC) do Dir['{benchmarks,doc,examples,lib,spec}'].collect do |d| dir_listing d end end end.to_s end cache :filetree private def dir_listing dir li do span dir, :class => 'folder' Dir.chdir(dir) do ul :style => 'display: none;' do a '', :href => "##{File.expand_path('.').sub(RAMAZE_SRC,'')}" Dir['*'].sort.each do |d| if FileTest.directory? d dir_listing d else file = File.expand_path(d).sub(RAMAZE_SRC,'') li do span :class => 'file' do a d, :href => "##{file}" end end end end end if Dir['*'].any? end end end end Ramaze.start :adapter => :mongrel, :load_engines => :Haml, :boring => /(js|gif|css)$/, :port => 9950
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ramaze-0.3.0 | examples/sourceview/sourceview.rb |
ramaze-0.3.5 | examples/sourceview/sourceview.rb |