FrontPage  Index  Search  Changes  Login

Ticket-47

quote_pageプラグインが例外する

Priority
Normal
Reporter
togawa
Status
Closed
Assigned to
かずひこ
Version
0.8.4
Milestone
0.8.5
Created
2005-12-23

Description

quote_pageプラグインが例外してしまいます。 Hiki 0.8.4 の変更点にパーザが変わったとありますが、その影響でしょうか。

パッチを作りましたが、第2引数の扱いが正しいのか少し不安です。

例外したときの出力:

{ {quote_page('page_name)} }
NoMethodError (undefined method `id2name' for nil:NilClass): inline plugin

パッチ:

--- hiki-0.8.4/misc/plugin/quote_page.rb.orig	Thu Dec 22 14:29:17 2005
+++ hiki-0.8.4/misc/plugin/quote_page.rb	Thu Dec 22 14:30:53 2005
@@ -9,28 +9,10 @@
 def quote_page(name, top_wanted=1)
   unless @quote_page_quoted.include?(name)
     @quote_page_quoted << name
-    tokens = @conf.parser.new(@conf).parse(@db.exist?(name) ? @db.load(name) : %Q|[[#{name}]]|)
-    @conf.formatter.new(remap_headings(tokens, top_wanted), @db, self, @conf).to_s
+    tokens = @conf.parser.new(@conf).parse(@db.exist?(name) ? @db.load(name) : %Q|[[#{name}]]|, top_wanted)
+    @conf.formatter.new(tokens, @db, self, @conf).to_s
   else
     ''
-  end
-end
-
-def remap_headings(tokens, top_mapped=1)
-  top_real = tokens.select {|t| /heading([1-5])_(open|close)/ =~ t[:e].id2name
-}.collect{|t| t[:lv]}.min
-  if top_real
-    tokens.collect do |t|
-      if /heading([1-5])_(open|close)/ =~ t[:e].id2name
-        lv = t[:lv] + (top_mapped - top_real)
-        lv = [[lv, 1].max, 5].min
-        {:e => "heading#{lv}_#{$2}".intern, :lv => lv}
-      else
-        t
-      end
-    end
-  else
-    tokens
   end
 end

--- hiki-0.8.4/style/default/parser.rb.orig	Thu Sep  8 18:51:25 2005
+++ hiki-0.8.4/style/default/parser.rb	Thu Dec 22 14:28:49 2005
@@ -23,8 +23,8 @@
     def initialize( conf )
     end

-    def parse( s )
-      HikiDoc.new( s, :level => 2 ).to_html
+    def parse( s, top_level = 1 )
+      HikiDoc.new( s, :level => top_level+1 ).to_html
     end
   end
 end
  • 2005-12-29 (木) 07:43:15 かずひこ : ありがとうございます。若干パッチを変更してマージしました。

Name:
Comment:
Change Properties
Priority:
Status:
Version:
Milestone:
Assigned to:
Last modified:2006/08/07 15:36:24
Keyword(s):
References: