代码之家  ›  专栏  ›  技术社区  ›  bgrantdev

Sphinx从html_边栏中排除一个页面

  •  1
  • bgrantdev  · 技术社区  · 8 年前

    documentaion .

    html_sidebars = {
    '**': ['globaltoc.html', 'sourcelink.html', 'searchbox.html'],
    'using/windows': ['windowssidebar.html', 'searchbox.html'],
    }
    

    我希望所有页面都显示边栏,除了一个,我只能实现相反的效果,边栏只出现在一个页面上,而不是其他页面。

    html_sidebars = {'index': ['localtoc.html']}
    

    2 回复  |  直到 8 年前
        1
  •  2
  •   Steve Piercy    8 年前

    您需要让表达式匹配除字符串“index”之外的所有内容。不幸的是,全球化并没有那么灵活。有几种解决方法。

    1. 用前缀或后缀重命名要在边栏中显示的文件,并使用相应的全局模式仅匹配这些文件
    2. 尝试 [!x] ,假设没有其他文件的名称中有“x”(i、n、d和e太常见)
        2
  •  2
  •   Chris Bay    7 年前

    我也有同样的问题,并且能够通过以下方式实现预期结果:

    html_sidebars = {
        '**': ['localtoc.html'],
        'index': []
    }