Compare commits

...

5 Commits

Author SHA1 Message Date
bootstraponline f1c523aa30 Release 2.2.9 2012-10-14 22:26:17 -06:00
bootstraponline 87c08f5613 Escape " in headers 2012-10-14 22:21:00 -06:00
bootstraponline 82913cea20 Improve base path note 2012-10-14 21:42:25 -06:00
bootstraponline 2ad743e4bd Release 2.2.8 2012-10-14 21:28:43 -06:00
bootstraponline fa97b57a96 Define default map as suggested on #460
Base path now sets a default map without having to use an external config.ru.
2012-10-14 20:57:27 -06:00
6 changed files with 40 additions and 10 deletions
+4 -1
View File
@@ -413,7 +413,10 @@ By default, internal wiki links are all absolute from the root. To specify a dif
wiki = Gollum::Wiki.new("my-gollum-repo.git", :base_path => "/wiki")
Note that base_path just modifies the links. To map gollum to a non-root location, use `map` in config.ru. See [#532](https://github.com/github/gollum/issues/532).
Note that base_path just modifies the links. To map gollum to a non-root location:
- Use the gollum binary: `gollum path/to/wiki --base-path mywiki`
- Define config.ru with `map`. See [#532](https://github.com/github/gollum/issues/532) for an example.
> :base_path - String base path for all Wiki links.
>
+27 -1
View File
@@ -141,5 +141,31 @@ else
require cfg
end
Precious::App.run!(options)
base_path = wiki_options[:base_path]
if wiki_options[:base_path].nil?
Precious::App.run!(options)
else
require 'rack'
class MapGollum
def initialize base_path
@mg = Rack::Builder.new do
map '/' do
run Proc.new { [ 302, {'Location'=> "/#{base_path}" }, [] ] }
end
map "/#{base_path}" do
run Precious::App
end
end
end
def call(env)
@mg.call(env)
end
end
# Rack::Handler does not work with Ctrl + C. Use Rack::Server instead.
Rack::Server.new(:app => MapGollum.new(base_path), :Port => options['port']).start
end
end
+1 -1
View File
@@ -5,7 +5,7 @@ Gem::Specification.new do |s|
s.required_ruby_version = ">= 1.8.7"
s.name = 'gollum'
s.version = '2.2.7'
s.version = '2.2.9'
s.date = '2012-10-14'
s.rubyforge_project = 'gollum'
+1 -1
View File
@@ -23,7 +23,7 @@ require File.expand_path('../gollum/web_sequence_diagram', __FILE__)
require File.expand_path('../gollum/frontend/uri_encode_component', __FILE__)
module Gollum
VERSION = '2.2.7'
VERSION = '2.2.9'
def self.assets_path
::File.expand_path('gollum/frontend/public', ::File.dirname(__FILE__))
+2 -1
View File
@@ -95,7 +95,8 @@ module Gollum
def process_headers(doc)
toc = nil
doc.css('h1,h2,h3,h4,h5,h6').each do |h|
h_name = h.content.gsub(' ','-')
# must escape "
h_name = h.content.gsub(' ','-').gsub('"','%22')
level = h.name.gsub(/[hH]/,'').to_i
+5 -5
View File
@@ -42,21 +42,21 @@ context "Unicode Support" do
end
test "create and read non-latin page with anchor 2" do
@wiki.write_page("test", :markdown, "# La faune d'Édiacara")
@wiki.write_page("test", :markdown, "# \"La\" faune d'Édiacara")
page = @wiki.page("test")
assert_equal Gollum::Page, page.class
assert_equal "# La faune d'Édiacara", utf8(page.raw_data)
assert_equal "# \"La\" faune d'Édiacara", utf8(page.raw_data)
# markup.rb
# markup.rb test: ', ", É
doc = Nokogiri::HTML page.formatted_data
h1s = doc / :h1
h1 = h1s.first
anchors = h1 / :a
assert_equal 1, h1s.size
assert_equal 1, anchors.size
assert_equal %q(#La-faune-d'Édiacara), anchors[0]['href']
assert_equal %q(La-faune-d'Édiacara), anchors[0]['id']
assert_equal %q(#%22La%22-faune-d'Édiacara), anchors[0]['href']
assert_equal %q(%22La%22-faune-d'Édiacara), anchors[0]['id']
assert_equal 'anchor', anchors[0]['class']
assert_equal '', anchors[0].text
end