Skip to content

Commit

Permalink
[pre-commit.ci] auto fixes from pre-commit.com hooks
Browse files Browse the repository at this point in the history
for more information, see https://pre-commit.ci
  • Loading branch information
pre-commit-ci[bot] committed Oct 4, 2024
1 parent fde7ab7 commit 995696e
Show file tree
Hide file tree
Showing 6 changed files with 22 additions and 20 deletions.
4 changes: 3 additions & 1 deletion nbconvert/exporters/html.py
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,9 @@ def from_notebook_node( # type:ignore[explicit-override, override]
markdown_collection = markdown_collection + cell.source + "\n"

resources = self._init_resources(resources)
resources.update({"tableofcontents": extract_titles_from_markdown_input(markdown_collection)})
resources.update(
{"tableofcontents": extract_titles_from_markdown_input(markdown_collection)}
)

filter_data_type = WidgetsDataTypeFilter(
notebook_metadata=self._nb_metadata, parent=self, resources=resources
Expand Down
10 changes: 4 additions & 6 deletions nbconvert/exporters/templateexporter.py
Original file line number Diff line number Diff line change
Expand Up @@ -203,10 +203,10 @@ def default_config(self):
enable_async = Bool(False, help="Enable Jinja async template execution").tag(
affects_environment=True
)
include_tableofcontents = Bool(False, allow_none=True, help="Enable to include a table of contents").tag(
config=True, affects_template=True
)

include_tableofcontents = Bool(
False, allow_none=True, help="Enable to include a table of contents"
).tag(config=True, affects_template=True)

_last_template_file = ""
_raw_template_key = "<memory>"
Expand Down Expand Up @@ -686,5 +686,3 @@ def _init_resources(self, resources):
resources["deprecated"] = deprecated
resources["include_tableofcontents"] = self.include_tableofcontents
return resources


11 changes: 8 additions & 3 deletions nbconvert/filters/markdown_mistune.py
Original file line number Diff line number Diff line change
Expand Up @@ -485,6 +485,7 @@ def render(self, source: str) -> str:
"""Render the HTML output for a Markdown source."""
return str(super().__call__(source))


def markdown2html_mistune(source: str) -> str:
"""Convert a markdown string to HTML using mistune"""
return MarkdownWithMath(renderer=IPythonRenderer(escape=False)).render(source)
Expand All @@ -500,6 +501,7 @@ def heading(self, text, level):
self.headings.append((level, text))
return "" # We return an empty string to avoid outputting the headings


def extract_titles_from_markdown_input(markdown_input):
# Markdown_input is a single string with all the markdown content concatenated
# Initiate list of titles
Expand All @@ -515,12 +517,15 @@ def extract_titles_from_markdown_input(markdown_input):
extract_titles(markdown_input)

# Extracted headings
for level, title in renderer.headings: # renderer.headings is an array for each markdown element
for (
level,
title,
) in renderer.headings: # renderer.headings is an array for each markdown element
children = title["children"]
attrs = title["attrs"]
raw_text = children[0]["raw"]
level = attrs["level"]
id = raw_text.replace(' ', '-')
href= "#" + id
id = raw_text.replace(" ", "-")
href = "#" + id
titles_array.append([level, raw_text, id, href])
return titles_array
13 changes: 5 additions & 8 deletions nbconvert/nbconvertapp.py
Original file line number Diff line number Diff line change
Expand Up @@ -187,12 +187,8 @@ def validate(self, obj, value):
"""Whether the HTML in Markdown cells and cell outputs should be sanitized..""",
),
"toc": (
{
"TemplateExporter": {
"include_tableofcontents": True
}
},
"Generate a table of contents in the output (only compatible with HTML and Latex exporters)"
{"TemplateExporter": {"include_tableofcontents": True}},
"Generate a table of contents in the output (only compatible with HTML and Latex exporters)",
),
}
)
Expand Down Expand Up @@ -223,7 +219,7 @@ def _classes_default(self):

return classes

description = Unicode(# type:ignore[assignment]
description = Unicode( # type:ignore[assignment]
"""This application is used to convert notebook files (*.ipynb)
to various other formats.
Expand Down Expand Up @@ -342,7 +338,7 @@ def _postprocessor_class_changed(self, change):
if new:
self.postprocessor_factory = import_item(new)

export_format = Unicode(# type:ignore[call-overload]
export_format = Unicode( # type:ignore[call-overload]
allow_none=False,
help=f"""The export format to be used, either one of the built-in formats
{get_export_names()}
Expand Down Expand Up @@ -678,6 +674,7 @@ def initialize(self, argv=None):
def _default_export_format(self):
return "html"


# -----------------------------------------------------------------------------
# Main entry point
# -----------------------------------------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion share/templates/lab/index.html.j2
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ a.anchor-link {
{{text}}
</a>
</div>
{%- endif -%}
{%- endif -%}
{%- if level==2 -%}
<div class="jp-RenderedHTMLCommon jp-RenderedHTMLTOC-Item-h2">
<a href={{href}}>
Expand Down
2 changes: 1 addition & 1 deletion share/templates/latex/base.tex.j2
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ override this.-=))
((* endblock header *))

((* block body *))

\begin{document}
((* block predoc *))
((* block maketitle *))\maketitle((* endblock maketitle *))
Expand Down

0 comments on commit 995696e

Please sign in to comment.