@@ -378,6 +378,21 @@ class RDoc::Options
378378
379379 attr_accessor :canonical_root
380380
381+ ##
382+ # Custom footer content configuration for themes that support it.
383+ # Currently only supported by the Aliki theme.
384+ #
385+ # A hash where keys are column titles and values are hashes of link text => URL pairs.
386+ # Each column will be displayed in the upper footer section.
387+ #
388+ # Example:
389+ # {
390+ # "DOCUMENTATION" => {"Home" => "/index.html", "Guide" => "/guide.html"},
391+ # "RESOURCES" => {"RDoc" => "https://ruby.github.io/rdoc/", "GitHub" => "https://github.com/ruby/rdoc"}
392+ # }
393+
394+ attr_accessor :footer_content
395+
381396 def initialize ( loaded_options = nil ) # :nodoc:
382397 init_ivars
383398 override loaded_options if loaded_options
@@ -434,6 +449,7 @@ def init_ivars # :nodoc:
434449 @class_module_path_prefix = nil
435450 @file_path_prefix = nil
436451 @canonical_root = nil
452+ @footer_content = nil
437453 end
438454
439455 def init_with ( map ) # :nodoc:
@@ -462,6 +478,7 @@ def init_with(map) # :nodoc:
462478
463479 @apply_default_exclude = map [ 'apply_default_exclude' ]
464480 @autolink_excluded_words = map [ 'autolink_excluded_words' ]
481+ @footer_content = map [ 'footer_content' ]
465482
466483 @rdoc_include = sanitize_path map [ 'rdoc_include' ]
467484 @static_path = sanitize_path map [ 'static_path' ]
@@ -498,6 +515,7 @@ def override(map) # :nodoc:
498515 @autolink_excluded_words = map [ 'autolink_excluded_words' ] if map . has_key? ( 'autolink_excluded_words' )
499516 @apply_default_exclude = map [ 'apply_default_exclude' ] if map . has_key? ( 'apply_default_exclude' )
500517 @canonical_root = map [ 'canonical_root' ] if map . has_key? ( 'canonical_root' )
518+ @footer_content = map [ 'footer_content' ] if map . has_key? ( 'footer_content' )
501519
502520 @warn_missing_rdoc_ref = map [ 'warn_missing_rdoc_ref' ] if map . has_key? ( 'warn_missing_rdoc_ref' )
503521
0 commit comments