-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCreate-Toc.ps1
34 lines (29 loc) · 878 Bytes
/
Create-Toc.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
function New-Toc()
{
Param
(
$Folder
)
$Contents = get-childitem -path $Folder | Where-Object {$_.name -ne "toc.yml" -and $_.name -ne "media"}
foreach ($Content in $Contents)
{
if ($Content.UnixMode -like "d*")
{
"- name: {0}`n href: {1}/toc.yml" -f ($Content.name).Replace("-"," ").Replace(".md",""), $Content.Name
}
else
{
"- name: {0}`n href: {1}" -f ($Content.name).Replace("-"," ").Replace(".md",""), $Content.name
}
}
}
$directories = Get-ChildItem ./docs -Recurse -Directory | Where-Object {$_.name -ne "media"}
foreach ($directory in $directories)
{
if ((Get-ChildItem -Path $directory).name -notcontains "toc.yml")
{
$Toc = New-Toc -Folder $directory
"$directory/toc.yml"
$Toc | Out-File "$directory/toc.yml"
}
}