Skip to content
This repository was archived by the owner on Nov 14, 2021. It is now read-only.

Commit 0238f34

Browse files
committed
fix: Wrap quote title & maintain slash in path
1 parent f7a2074 commit 0238f34

File tree

2 files changed

+13
-5
lines changed

2 files changed

+13
-5
lines changed

narkdown/exporter.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ def parse_notion_blocks(self, blocks, path, offset):
238238

239239
self.get_notion_page(block.get_browseable_url(), sub_path=path)
240240

241-
child_title = replace_path(block.title)
241+
child_title = replace_filename(block.title)
242242

243243
if self.create_page_directory:
244244
contents += f"[{block.title}]({child_title}/index.md)"
@@ -427,7 +427,7 @@ def get_metadata(self, page, database, path):
427427
if page.cover:
428428
metadata.append(f"cover: {self.get_image_path(path, page.cover, 'cover')}")
429429
if self.generate_slug:
430-
metadata.append(f"slug: '{replace_path(page.title)}'")
430+
metadata.append(f"slug: '{replace_filename(page.title)}'")
431431
if database:
432432
ordered_properties = get_ordered_properties(database)
433433
prop_map = map(
@@ -437,7 +437,7 @@ def get_metadata(self, page, database, path):
437437
props = list(filter(lambda s: len(s) != 0, prop_map))
438438
return metadata + props
439439
if page.title:
440-
metadata.append(f"title: {page.title}")
440+
metadata.append(f"title: '{page.title}'")
441441

442442
return metadata
443443

narkdown/utils.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,10 @@ def inputWithDefault(message, default):
5353
return value
5454

5555

56+
def replace_filename(filename):
57+
return strip_dash(remove_dup_dash(remove_slash(remove_special(filename)))).lower()
58+
59+
5660
def replace_path(pathname):
5761
return strip_dash(remove_dup_dash(remove_special(pathname))).lower()
5862

@@ -67,6 +71,10 @@ def remove_special(string):
6771
)
6872

6973

74+
def remove_slash(string):
75+
return re.sub(r"[\/]", "-", string)
76+
77+
7078
def strip_dash(string):
7179
if len(string) == 0:
7280
return string
@@ -90,7 +98,7 @@ def property_to_str(page, prop):
9098
return ""
9199

92100
if prop_type == "title":
93-
return f"{prop_slug}: {prop_value}"
101+
return f"{prop_slug}: '{prop_value}'"
94102
if prop_type in ["created_time", "last_edited_time"]:
95103
return f"{prop_slug}: {prop_value.strftime('%Y-%m-%d')}"
96104
if prop_type in ["created_by", "last_edited_by"]:
@@ -128,7 +136,7 @@ def get_created_time(page, database):
128136

129137
def get_filename(append_created_time, page, database):
130138
created_time = get_created_time(page, database)
131-
title = replace_path(page.title)
139+
title = replace_filename(page.title)
132140

133141
if not created_time:
134142
return title

0 commit comments

Comments
 (0)