TreeΒ€
Markdown Exec provides a tree
formatter that can be used to render file-system trees easily:
```tree
root1
file1
dir1
file
dir2
file1
file2
file2
file3
root2
file1
```
π root1
βββ file1
βββ π dir1
β βββ file
βββ π dir2
β βββ file1
β βββ file2
βββ file2
βββ file3
π root2
βββ file1
Syntax highlightΒ€
By default, the language used for syntax highlight is bash
. It means you can add comments with #
:
```tree
root1 # comment 1
file1
dir1
file
dir2
file1 # comment 2
file2 # comment 3
file2
file3
root2
file1
```
π root1 # comment 1
βββ file1
βββ π dir1
β βββ file
βββ π dir2
β βββ file1 # comment 2
β βββ file2 # comment 3
βββ file2
βββ file3
π root2
βββ file1
You can change the syntax highlight language with the result
option:
```tree result="javascript"
root1 // comment 1
file1
dir1
file
dir2
file1 // comment 2
file2 // comment 3
file2
file3
root2
file1
```
π root1 // comment 1
βββ file1
βββ π dir1
β βββ file
βββ π dir2
β βββ file1 // comment 2
β βββ file2 // comment 3
βββ file2
βββ file3
π root2
βββ file1
Leaf directoriesΒ€
You can force an entry to be displayed as a directory instead of a regular file by appending a trailing slash to the name:
```tree
root1
dir1/
dir2/
dir3/
```
π root1
βββ π dir1/
βββ π dir2/
βββ π dir3/
It is recommended to always append trailing slashes to directories anyway.
Limitation
Spaces in file names are not supported when searching for a trailing slash.
Custom iconsΒ€
Sponsors only — Insiders 1.1.0
Custom icons based on the file name and extension can be used in tree fences. This feature requires that the Material for MkDocs theme is used. By default, if Material for MkDocs is used, custom icons will be rendered. You can opt-out with icons="basic"
to use the basic folder and file emojis, or even remove all icons/emojis with icons="none"
.
```tree icons="none"
folder/
file
file.py
file.rb
file.js
```
folder/
βββ file
βββ file.py
βββ file.rb
βββ file.js
```tree icons="basic"
folder/
file
file.py
file.rb
file.rs
```
π folder/
βββ π file
βββ π file.py
βββ π file.rb
βββ π file.rs
```tree icons="material"
folder/
file
file.py
file.rb
file.rs
```
π folder/
βββ file
βββ file.py
βββ file.rb
βββ file.rs
```tree icons="auto"
folder/
file
file.py
file.rb
file.rs
```
π folder/
βββ file
βββ file.py
βββ file.rb
βββ file.rs