- 我"拉取"了我的项目的wiki存储库。
- 创建了"_sidebar.md"文件。
- Git add
- Git commit
- 将更改推送到GitLab。
- 在Google Chrome的无痕模式下加载了我的项目的维基页面。
- 自定义侧边栏未呈现。
我刷新了很多次,但都没有成功。
以下是我的_sidebar.md的内容:
0. [Home](home)
1. [Page 1](page-1)
2. [Page 2](page-2)
有什么想法吗?
我刷新了很多次,但都没有成功。
以下是我的_sidebar.md的内容:
0. [Home](home)
1. [Page 1](page-1)
2. [Page 2](page-2)
我发现手动更新侧边栏或目录很烦人。因此,我写了一段简单的代码,以正确的格式打印出列表,这样你就不需要手动编写它:
import os
ignore_list = [".git", ".idea", "create_table_of_content.py"]
spaces = " "
def get_all_files_and_directories(path, depth):
spaces_tmp = spaces*depth
file_list = os.listdir(path)
for f in file_list:
if f in ignore_list:
continue
if os.path.isdir(path+"/"+f):
print(f'{spaces_tmp}- {f}')
get_all_files_and_directories(path+"/"+f, depth+1)
elif f.split(".")[-1] == "md":
print(f'{spaces_tmp}- [{f.split(".")[0]}]({f})')
return
if __name__ == '__main__':
c = os.getcwd()
get_all_files_and_directories(c, 0)
只需在wiki仓库的根目录下运行即可。
示例输出:
- The-Code is a directory
- editor-applications is a directory
- [edit_hosts_file](edit_hosts_file.ps1.md)
- [mount_logs_dir](mount_logs_dir.ps1.md)
- [main-editor-app](main-editor-app.ps1.md)
- [setup_tasks](setup_tasks.ps1.md)
- [home](home.md)
- [Logging](Logging.md)
- Execution is a directory
- [User-Data](User-Data.md)
- [General](General.md)
- [File-Structure](File-Structure.md)
- [Running-Manually](Running-Manually.md)
- [About](About.md)
这应该会更容易维护。
我发现了这个仓库https://github.com/ekalinin/github-markdown-toc,它提供了一种根据标题创建目录的工具。个人觉得创建一个带有目录的单页比创建多个页面的维基更好。
现在应该可以使用GitLab 11.2(2018年8月22日)了,感谢jsooter。
参见 "自定义Wiki侧边栏":
当在GitLab项目中使用Wiki进行扩展文档时,默认情况下,右侧边栏显示Wiki页面结构的分层目录。
然而,有些情况下,您可能希望提供额外的内容,扩展这组自动列出的页面。
通过GitLab 11.2,我们引入了一种选项,可以通过您自己的自定义侧边栏来覆盖生成的目录。 通过添加一个
_sidebar
Wiki 页面,维护者可以完全自由地定义基于 GitLab Flavored Markdown的个人Wiki侧边栏。
您还可以使用编辑器来确保侧边栏正确:请参见GitLab 13.8(2021年1月)。
快速编辑Wiki侧边栏_sidebar
的Markdown文件,将使用该文件的内容生成自定义项目的侧边栏导航菜单。_sidebar
。_sidebar
文件(如果不存在),并在页面编辑器中打开它。_sidebar
的新页面即可。您可以通过
your-repository/wikis/_sidebar
访问它,或者在侧边栏中创建一个编辑链接:0. [Home](home)
1. [Page 1](page-1)
2. [Page 2](page-2)
[Edit sidebar](/_sidebar/edit)