diff --git a/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml b/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml
index f3b6cf3a05..0ed683ca14 100644
--- a/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml
+++ b/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml
@@ -1,4 +1,7 @@
<%- simple_files = @files.select { |f| f.text? } %>
+<%- if defined?(current) -%>
+ <%- dir = current.full_name[%r{\A[^/]+(?=/)}] || current.page_name -%>
+<%- end -%>
<%- unless simple_files.empty? then -%>
Pages
@@ -12,7 +15,7 @@
<%= h f.page_name %>
<%- next -%>
<%- end -%>
- <%
+ open<% end %>><%
if n == f.page_name
%><%= h n %><%
else
diff --git a/test/rdoc/test_rdoc_generator_darkfish.rb b/test/rdoc/test_rdoc_generator_darkfish.rb
index 90b934dc63..ae3a4c5ebf 100644
--- a/test/rdoc/test_rdoc_generator_darkfish.rb
+++ b/test/rdoc/test_rdoc_generator_darkfish.rb
@@ -110,6 +110,10 @@ class TestRDocGeneratorDarkfish < RDoc::TestCase
assert_match(re, index)
summary = index[re]
assert_match %r[inner], summary
+ re = %r[outer
.*? ]m
+ assert_match(re, File.read('outer_rdoc.html'))
+ re = %r[outer
.*? ]m
+ assert_match(re, File.read('outer/inner_rdoc.html'))
end
def test_generate_dry_run