Pimki 1.0.092
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +158 -0
- data/README-PIMKI +87 -0
- data/app/controllers/wiki.rb +563 -0
- data/app/models/author.rb +4 -0
- data/app/models/chunks/category.rb +31 -0
- data/app/models/chunks/category_test.rb +21 -0
- data/app/models/chunks/chunk.rb +20 -0
- data/app/models/chunks/engines.rb +34 -0
- data/app/models/chunks/include.rb +29 -0
- data/app/models/chunks/literal.rb +19 -0
- data/app/models/chunks/match.rb +19 -0
- data/app/models/chunks/nowiki.rb +31 -0
- data/app/models/chunks/nowiki_test.rb +14 -0
- data/app/models/chunks/test.rb +18 -0
- data/app/models/chunks/todo.rb +22 -0
- data/app/models/chunks/uri.rb +97 -0
- data/app/models/chunks/uri_test.rb +92 -0
- data/app/models/chunks/wiki.rb +82 -0
- data/app/models/chunks/wiki_test.rb +36 -0
- data/app/models/page.rb +91 -0
- data/app/models/page_lock.rb +24 -0
- data/app/models/page_set.rb +73 -0
- data/app/models/page_test.rb +76 -0
- data/app/models/revision.rb +91 -0
- data/app/models/revision_test.rb +252 -0
- data/app/models/web.rb +277 -0
- data/app/models/web_test.rb +53 -0
- data/app/models/wiki_content.rb +113 -0
- data/app/models/wiki_service.rb +137 -0
- data/app/models/wiki_service_test.rb +15 -0
- data/app/models/wiki_words.rb +26 -0
- data/app/models/wiki_words_test.rb +12 -0
- data/app/views/bottom.rhtml +4 -0
- data/app/views/markdown_help.rhtml +16 -0
- data/app/views/menu.rhtml +20 -0
- data/app/views/navigation.rhtml +26 -0
- data/app/views/rdoc_help.rhtml +16 -0
- data/app/views/static_style_sheet.rhtml +231 -0
- data/app/views/style.rhtml +179 -0
- data/app/views/textile_help.rhtml +28 -0
- data/app/views/top.rhtml +52 -0
- data/app/views/wiki/authors.rhtml +15 -0
- data/app/views/wiki/bliki.rhtml +101 -0
- data/app/views/wiki/bliki_edit.rhtml +33 -0
- data/app/views/wiki/bliki_new.rhtml +61 -0
- data/app/views/wiki/bliki_revision.rhtml +51 -0
- data/app/views/wiki/edit.rhtml +34 -0
- data/app/views/wiki/edit_menu.rhtml +27 -0
- data/app/views/wiki/edit_web.rhtml +139 -0
- data/app/views/wiki/export.rhtml +14 -0
- data/app/views/wiki/feeds.rhtml +10 -0
- data/app/views/wiki/list.rhtml +164 -0
- data/app/views/wiki/locked.rhtml +14 -0
- data/app/views/wiki/login.rhtml +11 -0
- data/app/views/wiki/mind.rhtml +39 -0
- data/app/views/wiki/new.rhtml +27 -0
- data/app/views/wiki/new_system.rhtml +78 -0
- data/app/views/wiki/new_web.rhtml +64 -0
- data/app/views/wiki/page.rhtml +84 -0
- data/app/views/wiki/print.rhtml +16 -0
- data/app/views/wiki/published.rhtml +10 -0
- data/app/views/wiki/recently_revised.rhtml +31 -0
- data/app/views/wiki/revision.rhtml +87 -0
- data/app/views/wiki/rss_feed.rhtml +22 -0
- data/app/views/wiki/search.rhtml +26 -0
- data/app/views/wiki/tex.rhtml +23 -0
- data/app/views/wiki/tex_web.rhtml +35 -0
- data/app/views/wiki/todo.rhtml +39 -0
- data/app/views/wiki/web_list.rhtml +13 -0
- data/app/views/wiki_words_help.rhtml +8 -0
- data/libraries/action_controller_servlet.rb +177 -0
- data/libraries/bluecloth.rb +1127 -0
- data/libraries/diff/diff.rb +475 -0
- data/libraries/diff/diff_test.rb +80 -0
- data/libraries/erb.rb +490 -0
- data/libraries/madeleine/automatic.rb +357 -0
- data/libraries/madeleine/clock.rb +94 -0
- data/libraries/madeleine_service.rb +69 -0
- data/libraries/rdocsupport.rb +156 -0
- data/libraries/redcloth_for_tex.rb +869 -0
- data/libraries/redcloth_for_tex_test.rb +41 -0
- data/libraries/view_helper.rb +33 -0
- data/libraries/web_controller_server.rb +95 -0
- data/pimki.rb +97 -0
- metadata +169 -0
@@ -0,0 +1,41 @@
|
|
1
|
+
require "test/unit"
|
2
|
+
require "redcloth_for_tex"
|
3
|
+
|
4
|
+
class RedClothForTexTest < Test::Unit::TestCase
|
5
|
+
def test_basics
|
6
|
+
assert_equal '{\bf First Page}', RedClothForTex.new("*First Page*").to_tex
|
7
|
+
assert_equal '{\em First Page}', RedClothForTex.new("_First Page_").to_tex
|
8
|
+
assert_equal "\\begin{itemize}\n\t\\item A\n\t\t\\item B\n\t\t\\item C\n\t\\end{itemize}", RedClothForTex.new("* A\n* B\n* C").to_tex
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_blocks
|
12
|
+
assert_equal '\section*{hello}', RedClothForTex.new("h1. hello").to_tex
|
13
|
+
assert_equal '\subsection*{hello}', RedClothForTex.new("h2. hello").to_tex
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_table_of_contents
|
17
|
+
assert_equal(
|
18
|
+
"\n\\section{A}\nAbe\n\n\\subsection{B}\nBabe\n\n\\subsection{C}\n\n\\section{D}\n\n\\subsection{E}\n\n\\subsubsection{F}",
|
19
|
+
table_of_contents("* [[A]]\n** [[B]]\n** [[C]]\n* D\n** [[E]]\n*** F", { "A" => "Abe", "B" => "Babe" } )
|
20
|
+
)
|
21
|
+
end
|
22
|
+
|
23
|
+
def test_entities
|
24
|
+
assert_equal "Beck \\& Fowler are 100\\% cool", RedClothForTex.new("Beck & Fowler are 100% cool").to_tex
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_bracket_links
|
28
|
+
assert_equal "such a Horrible Day, but I won't be Made Useless", RedClothForTex.new("such a [[Horrible Day]], but I won't be [[Made Useless]]").to_tex
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_footnotes_on_abbreviations
|
32
|
+
assert_equal(
|
33
|
+
"such a Horrible Day\\footnote{1}, but I won't be Made Useless",
|
34
|
+
RedClothForTex.new("such a [[Horrible Day]][1], but I won't be [[Made Useless]]").to_tex
|
35
|
+
)
|
36
|
+
end
|
37
|
+
|
38
|
+
def test_subsection_depth
|
39
|
+
assert_equal "\\subsubsection*{Hello}", RedClothForTex.new("h4. Hello").to_tex
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
module ViewHelper
|
2
|
+
# Accepts a container (hash, array, enumerable, your type) and returns a string of option tags. Given a container
|
3
|
+
# where the elements respond to first and last (such as a two-element array), the "lasts" serve as option values and
|
4
|
+
# the "firsts" as option text. Hashes are turned into this form automatically, so the keys become "firsts" and values
|
5
|
+
# become lasts. If +selected+ is specified, the matching "last" or element will get the selected option-tag.
|
6
|
+
#
|
7
|
+
# Examples (call, result):
|
8
|
+
# html_options([["Dollar", "$"], ["Kroner", "DKK"]])
|
9
|
+
# <option value="$">Dollar</option>\n<option value="DKK">Kroner</option>
|
10
|
+
#
|
11
|
+
# html_options([ "VISA", "Mastercard" ], "Mastercard")
|
12
|
+
# <option>VISA</option>\n<option selected>Mastercard</option>
|
13
|
+
#
|
14
|
+
# html_options({ "Basic" => "$20", "Plus" => "$40" }, "$40")
|
15
|
+
# <option value="$20">Basic</option>\n<option value="$40" selected>Plus</option>
|
16
|
+
def html_options(container, selected = nil)
|
17
|
+
container = container.to_a if Hash === container
|
18
|
+
|
19
|
+
html_options = container.inject([]) do |options, element|
|
20
|
+
if element.respond_to?(:first) && element.respond_to?(:last)
|
21
|
+
if element.last != selected
|
22
|
+
options << "<option value=\"#{element.last}\">#{element.first}</option>"
|
23
|
+
else
|
24
|
+
options << "<option value=\"#{element.last}\" selected>#{element.first}</option>"
|
25
|
+
end
|
26
|
+
else
|
27
|
+
options << ((element != selected) ? "<option>#{element}</option>" : "<option selected>#{element}</option>")
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
html_options.join("\n")
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
require 'webrick'
|
2
|
+
include WEBrick
|
3
|
+
|
4
|
+
# Terminology:
|
5
|
+
# * Static controller: Is a controller that has all it's show_* and do_* methods mounted by the server
|
6
|
+
# at server start, so the server will handle request rejection of invalid requests
|
7
|
+
# * Dynamic controller: Is a controller that's mounted with a responsibility to handle all the request mapping
|
8
|
+
# itself. Hence, the server will never reject a request that's below the controller in the path.
|
9
|
+
class WebControllerServer
|
10
|
+
STATIC_MOUNTING = 1
|
11
|
+
DYNAMIC_MOUNTING = 2
|
12
|
+
|
13
|
+
MOUNT_TYPE = DYNAMIC_MOUNTING
|
14
|
+
|
15
|
+
SERVER_TYPE = (RUBY_PLATFORM =~ /mswin/ ? SimpleServer : Daemon)
|
16
|
+
|
17
|
+
def WebControllerServer.the_active_server
|
18
|
+
@the_active_server
|
19
|
+
end
|
20
|
+
def WebControllerServer.the_active_server= server
|
21
|
+
@the_active_server = server
|
22
|
+
end
|
23
|
+
|
24
|
+
def initialize(port, server_type, controller_path)
|
25
|
+
@server = WEBrick::HTTPServer::new(:Port => port, :ServerType => server_type || SERVER_TYPE)
|
26
|
+
WebControllerServer::the_active_server = @server
|
27
|
+
@server.logger.info "Your WEBrick server is now running on http://localhost:#{port}"
|
28
|
+
@controller_path = controller_path
|
29
|
+
mount_controllers
|
30
|
+
start_server
|
31
|
+
end
|
32
|
+
|
33
|
+
private
|
34
|
+
# Mounts all the controllers in the controller_path according to the mount type
|
35
|
+
def mount_controllers
|
36
|
+
require_controller_files
|
37
|
+
|
38
|
+
case MOUNT_TYPE
|
39
|
+
when STATIC_MOUNTING then controller_names.each { |name| mount_static_controller(name) }
|
40
|
+
when DYNAMIC_MOUNTING then controller_names.each { |name| mount_dynamic_controller(name) }
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
# Mounts the controller specified by <tt>controller_name</tt> to accept all requests below it's path.
|
45
|
+
# If more than one controller is mounted by this WebControllerServer, the controller is mounted by name,
|
46
|
+
# such that fx WikiController would get the requests of "/wiki/something" and "/wiki/some/thing/else".
|
47
|
+
# If only one controller is mounted, all requests to this WebControllerServer is handled by that controller
|
48
|
+
def mount_dynamic_controller(controller_name)
|
49
|
+
mount_path = mounting_multiple_controllers? ? "/#{controller_name}" : "/"
|
50
|
+
@server.mount(mount_path, controller_class(controller_name))
|
51
|
+
end
|
52
|
+
|
53
|
+
# Mount all public show_* and do_* methods as actions tied to the controller specified by <tt>controller_name</tt>.
|
54
|
+
# If more than one controller is mounted by this WebControllerServer, the actions are mounted below the controller
|
55
|
+
# in the path, such as "/wiki/page" or "/wiki/list". If only one controller is mounted, they're mounted directly on
|
56
|
+
# the root, such as "/page" or "/list"
|
57
|
+
def mount_static_controller(controller_name)
|
58
|
+
controller_class(controller_name).public_instance_methods(false).each { |method|
|
59
|
+
mount_path = (mounting_multiple_controllers? ? "/#{controller_name}" : "") + "/#{method}"
|
60
|
+
@server.mount(mount_path, controller_class(controller_name))
|
61
|
+
}
|
62
|
+
end
|
63
|
+
|
64
|
+
# Requires all the controller files that are present in the controller_path
|
65
|
+
def require_controller_files
|
66
|
+
controller_names.each { |controller| require @controller_path + controller }
|
67
|
+
end
|
68
|
+
|
69
|
+
# Returns true if more than one controller exists in the controller_path
|
70
|
+
def mounting_multiple_controllers?
|
71
|
+
controller_names.length > 1
|
72
|
+
end
|
73
|
+
|
74
|
+
# Returns a list of controller names in lower-case from the controller path
|
75
|
+
def controller_names
|
76
|
+
Dir.entries(@controller_path).delete_if { |file| file !~ /rb$/ }.collect{ |c| c[0..-4] }
|
77
|
+
end
|
78
|
+
|
79
|
+
# Returns the class of the controller specified by the <tt>controller_name</tt>
|
80
|
+
def controller_class(controller_name)
|
81
|
+
eval(controller_name.capitalize + "Controller")
|
82
|
+
end
|
83
|
+
|
84
|
+
public
|
85
|
+
|
86
|
+
# Start accepting requests to the defined mount points
|
87
|
+
def start_server
|
88
|
+
@server.start
|
89
|
+
end
|
90
|
+
|
91
|
+
# Stops accepting requests to the defined mount points
|
92
|
+
def shutdown
|
93
|
+
@server.shutdown
|
94
|
+
end
|
95
|
+
end
|
data/pimki.rb
ADDED
@@ -0,0 +1,97 @@
|
|
1
|
+
#!/usr/local/bin/ruby
|
2
|
+
|
3
|
+
if RUBY_VERSION < "1.8.1"
|
4
|
+
puts "Pimki requires Ruby 1.8.1+"
|
5
|
+
exit
|
6
|
+
end
|
7
|
+
|
8
|
+
# Handle rubygems support & loading libraries: {{{
|
9
|
+
$LOAD_PATH.unshift File.join(File.dirname(__FILE__), "libraries")
|
10
|
+
begin
|
11
|
+
require 'rubygems'
|
12
|
+
require_gem 'madeleine'
|
13
|
+
require_gem 'redcloth', '~> 2.0.11'
|
14
|
+
require_gem 'rubyzip'
|
15
|
+
require_gem 'bluecloth'
|
16
|
+
|
17
|
+
rescue LoadError
|
18
|
+
# no rubygems, so load from the libraries directory
|
19
|
+
require 'redcloth'
|
20
|
+
require 'bluecloth'
|
21
|
+
end
|
22
|
+
# }}}
|
23
|
+
|
24
|
+
# Handle command-line options: {{{
|
25
|
+
require 'optparse'
|
26
|
+
|
27
|
+
cdir = File.expand_path(File.dirname(__FILE__))
|
28
|
+
%w( /libraries/ /app/models /app/controllers ).each { |dir| $:.unshift(cdir + dir) }
|
29
|
+
%w( web_controller_server action_controller_servlet wiki_service wiki ).each { |lib| require lib }
|
30
|
+
|
31
|
+
fork_available = true
|
32
|
+
begin
|
33
|
+
exit unless fork
|
34
|
+
rescue NotImplementedError
|
35
|
+
fork_available = false
|
36
|
+
end
|
37
|
+
|
38
|
+
begin
|
39
|
+
pdflatex_available = system "pdflatex -version"
|
40
|
+
rescue Errno::ENOENT
|
41
|
+
pdflatex_available = false
|
42
|
+
end
|
43
|
+
|
44
|
+
OPTIONS = {
|
45
|
+
:server_type => fork_available ? Daemon : SimpleServer,
|
46
|
+
:port => 2500,
|
47
|
+
:storage => "#{cdir}/storage",
|
48
|
+
:pdflatex => pdflatex_available
|
49
|
+
}
|
50
|
+
|
51
|
+
ARGV.options do |opts|
|
52
|
+
script_name = File.basename($0)
|
53
|
+
opts.banner = "Usage: ruby #{script_name} [options]"
|
54
|
+
|
55
|
+
opts.separator ""
|
56
|
+
|
57
|
+
opts.on("-p", "--port=port", Integer,
|
58
|
+
"Runs Instiki on the specified port.",
|
59
|
+
"Default: 2500") { |OPTIONS[:port]| }
|
60
|
+
opts.on("-s", "--simple", "--simple-server",
|
61
|
+
"Forces Instiki not to run as a Daemon if fork is available."
|
62
|
+
) { OPTIONS[:server_type] = SimpleServer }
|
63
|
+
opts.on("-t", "--storage=storage", String,
|
64
|
+
"Makes Instiki use the specified directory for storage.",
|
65
|
+
"Default: ./storage/[port]") { |OPTIONS[:storage]| }
|
66
|
+
|
67
|
+
opts.separator ""
|
68
|
+
|
69
|
+
opts.on("-h", "--help",
|
70
|
+
"Show this help message.") { puts opts; exit }
|
71
|
+
|
72
|
+
opts.parse!
|
73
|
+
end
|
74
|
+
|
75
|
+
Socket.do_not_reverse_lookup = true
|
76
|
+
#}}}
|
77
|
+
|
78
|
+
# Start the application: {{{
|
79
|
+
storage_dir = OPTIONS[:storage] + "/" + OPTIONS[:port].to_s
|
80
|
+
require 'fileutils'
|
81
|
+
FileUtils.mkdir_p(storage_dir)
|
82
|
+
WikiService.storage_path = storage_dir
|
83
|
+
|
84
|
+
WikiController.template_root = "#{cdir}/app/views/"
|
85
|
+
|
86
|
+
trap "INT" do
|
87
|
+
WebControllerServer::the_active_server.shutdown
|
88
|
+
end
|
89
|
+
trap "TERM" do
|
90
|
+
WebControllerServer::the_active_server.shutdown
|
91
|
+
end
|
92
|
+
|
93
|
+
WebControllerServer.new(OPTIONS[:port], OPTIONS[:server_type], "#{cdir}/app/controllers/")
|
94
|
+
|
95
|
+
# }}}
|
96
|
+
|
97
|
+
# jEdit :folding=explicit:collapseFolds=1:
|
metadata
ADDED
@@ -0,0 +1,169 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
rubygems_version: 0.8.1
|
3
|
+
specification_version: 1
|
4
|
+
name: Pimki
|
5
|
+
version: !ruby/object:Gem::Version
|
6
|
+
version: 1.0.092
|
7
|
+
date: 2004-11-24
|
8
|
+
summary: A Personal Information Manager (PIM) based on the Wiki technology of Instiki.
|
9
|
+
require_paths:
|
10
|
+
- libraries
|
11
|
+
author: Assaph Mehr (based on work by David Heinemeier Hansson)
|
12
|
+
email: assaph@gmail.com
|
13
|
+
homepage: http://pimki.rubyforge.org
|
14
|
+
rubyforge_project: pimki
|
15
|
+
description: "Pimki in a Personal Information Manager based on the Wiki technology of Instiki. Besides all the rich features and excellent look of Instiki, a few features have been added, such as: a personal blog, todo lists, graphical mapping, quick-links and others."
|
16
|
+
autorequire:
|
17
|
+
default_executable: pimki.rb
|
18
|
+
bindir: "."
|
19
|
+
has_rdoc: false
|
20
|
+
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
21
|
+
requirements:
|
22
|
+
-
|
23
|
+
- ">"
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: 0.0.0
|
26
|
+
version:
|
27
|
+
platform: ruby
|
28
|
+
files:
|
29
|
+
- pimki.rb
|
30
|
+
- README
|
31
|
+
- README-PIMKI
|
32
|
+
- "./pimki.rb"
|
33
|
+
- app/controllers
|
34
|
+
- app/models
|
35
|
+
- app/views
|
36
|
+
- app/controllers/wiki.rb
|
37
|
+
- app/models/author.rb
|
38
|
+
- app/models/chunks
|
39
|
+
- app/models/page.rb
|
40
|
+
- app/models/page_lock.rb
|
41
|
+
- app/models/page_set.rb
|
42
|
+
- app/models/page_test.rb
|
43
|
+
- app/models/revision.rb
|
44
|
+
- app/models/revision_test.rb
|
45
|
+
- app/models/web.rb
|
46
|
+
- app/models/web_test.rb
|
47
|
+
- app/models/wiki_content.rb
|
48
|
+
- app/models/wiki_service.rb
|
49
|
+
- app/models/wiki_service_test.rb
|
50
|
+
- app/models/wiki_words.rb
|
51
|
+
- app/models/wiki_words_test.rb
|
52
|
+
- app/models/chunks/category.rb
|
53
|
+
- app/models/chunks/category_test.rb
|
54
|
+
- app/models/chunks/chunk.rb
|
55
|
+
- app/models/chunks/engines.rb
|
56
|
+
- app/models/chunks/include.rb
|
57
|
+
- app/models/chunks/literal.rb
|
58
|
+
- app/models/chunks/match.rb
|
59
|
+
- app/models/chunks/nowiki.rb
|
60
|
+
- app/models/chunks/nowiki_test.rb
|
61
|
+
- app/models/chunks/test.rb
|
62
|
+
- app/models/chunks/todo.rb
|
63
|
+
- app/models/chunks/uri.rb
|
64
|
+
- app/models/chunks/uri_test.rb
|
65
|
+
- app/models/chunks/wiki.rb
|
66
|
+
- app/models/chunks/wiki_test.rb
|
67
|
+
- app/views/bottom.rhtml
|
68
|
+
- app/views/markdown_help.rhtml
|
69
|
+
- app/views/menu.rhtml
|
70
|
+
- app/views/navigation.rhtml
|
71
|
+
- app/views/rdoc_help.rhtml
|
72
|
+
- app/views/static_style_sheet.rhtml
|
73
|
+
- app/views/style.rhtml
|
74
|
+
- app/views/textile_help.rhtml
|
75
|
+
- app/views/top.rhtml
|
76
|
+
- app/views/wiki
|
77
|
+
- app/views/wiki_words_help.rhtml
|
78
|
+
- app/views/wiki/authors.rhtml
|
79
|
+
- app/views/wiki/bliki.rhtml
|
80
|
+
- app/views/wiki/bliki_edit.rhtml
|
81
|
+
- app/views/wiki/bliki_new.rhtml
|
82
|
+
- app/views/wiki/bliki_revision.rhtml
|
83
|
+
- app/views/wiki/edit.rhtml
|
84
|
+
- app/views/wiki/edit_menu.rhtml
|
85
|
+
- app/views/wiki/edit_web.rhtml
|
86
|
+
- app/views/wiki/export.rhtml
|
87
|
+
- app/views/wiki/feeds.rhtml
|
88
|
+
- app/views/wiki/list.rhtml
|
89
|
+
- app/views/wiki/locked.rhtml
|
90
|
+
- app/views/wiki/login.rhtml
|
91
|
+
- app/views/wiki/mind.rhtml
|
92
|
+
- app/views/wiki/new.rhtml
|
93
|
+
- app/views/wiki/new_system.rhtml
|
94
|
+
- app/views/wiki/new_web.rhtml
|
95
|
+
- app/views/wiki/page.rhtml
|
96
|
+
- app/views/wiki/print.rhtml
|
97
|
+
- app/views/wiki/published.rhtml
|
98
|
+
- app/views/wiki/recently_revised.rhtml
|
99
|
+
- app/views/wiki/revision.rhtml
|
100
|
+
- app/views/wiki/rss_feed.rhtml
|
101
|
+
- app/views/wiki/search.rhtml
|
102
|
+
- app/views/wiki/tex.rhtml
|
103
|
+
- app/views/wiki/tex_web.rhtml
|
104
|
+
- app/views/wiki/todo.rhtml
|
105
|
+
- app/views/wiki/web_list.rhtml
|
106
|
+
- libraries/action_controller_servlet.rb
|
107
|
+
- libraries/bluecloth.rb
|
108
|
+
- libraries/diff
|
109
|
+
- libraries/erb.rb
|
110
|
+
- libraries/madeleine
|
111
|
+
- libraries/madeleine_service.rb
|
112
|
+
- libraries/rdocsupport.rb
|
113
|
+
- libraries/redcloth_for_tex.rb
|
114
|
+
- libraries/redcloth_for_tex_test.rb
|
115
|
+
- libraries/view_helper.rb
|
116
|
+
- libraries/web_controller_server.rb
|
117
|
+
- libraries/diff/diff.rb
|
118
|
+
- libraries/diff/diff_test.rb
|
119
|
+
- libraries/madeleine/automatic.rb
|
120
|
+
- libraries/madeleine/clock.rb
|
121
|
+
test_files: []
|
122
|
+
rdoc_options: []
|
123
|
+
extra_rdoc_files: []
|
124
|
+
executables:
|
125
|
+
- pimki.rb
|
126
|
+
extensions: []
|
127
|
+
requirements:
|
128
|
+
- none
|
129
|
+
dependencies:
|
130
|
+
- !ruby/object:Gem::Dependency
|
131
|
+
name: RedCloth
|
132
|
+
version_requirement:
|
133
|
+
version_requirements: !ruby/object:Gem::Version::Requirement
|
134
|
+
requirements:
|
135
|
+
-
|
136
|
+
- "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 2.0.11
|
139
|
+
version:
|
140
|
+
- !ruby/object:Gem::Dependency
|
141
|
+
name: BlueCloth
|
142
|
+
version_requirement:
|
143
|
+
version_requirements: !ruby/object:Gem::Version::Requirement
|
144
|
+
requirements:
|
145
|
+
-
|
146
|
+
- ">="
|
147
|
+
- !ruby/object:Gem::Version
|
148
|
+
version: 0.0.3
|
149
|
+
version:
|
150
|
+
- !ruby/object:Gem::Dependency
|
151
|
+
name: rubyzip
|
152
|
+
version_requirement:
|
153
|
+
version_requirements: !ruby/object:Gem::Version::Requirement
|
154
|
+
requirements:
|
155
|
+
-
|
156
|
+
- ">="
|
157
|
+
- !ruby/object:Gem::Version
|
158
|
+
version: 0.5.5
|
159
|
+
version:
|
160
|
+
- !ruby/object:Gem::Dependency
|
161
|
+
name: madeleine
|
162
|
+
version_requirement:
|
163
|
+
version_requirements: !ruby/object:Gem::Version::Requirement
|
164
|
+
requirements:
|
165
|
+
-
|
166
|
+
- ">="
|
167
|
+
- !ruby/object:Gem::Version
|
168
|
+
version: 0.6.1
|
169
|
+
version:
|