slightyl nicer parsing
This commit is contained in:
parent
a785d208f9
commit
ea98ec57c4
|
@ -62,7 +62,6 @@ def generate_index_pages(template=config.template_main, template_nav=config.temp
|
||||||
pages = all_tags[index]
|
pages = all_tags[index]
|
||||||
pages = add_file_path(pages, config.files_folder)
|
pages = add_file_path(pages, config.files_folder)
|
||||||
entries = create_entries(pages)
|
entries = create_entries(pages)
|
||||||
# TODO this broke as well, not sure what happened to entries, but the whole page is blank?
|
|
||||||
subPages = generate_sub_pages(entries, len(
|
subPages = generate_sub_pages(entries, len(
|
||||||
entries), config.files_folder, False)
|
entries), config.files_folder, False)
|
||||||
# Build the files by filling out the template
|
# Build the files by filling out the template
|
||||||
|
@ -125,6 +124,7 @@ def generate_html_pages(site_folder, entries, template, sub_pages_list, template
|
||||||
head=generate_head(page_title=entry['title']),
|
head=generate_head(page_title=entry['title']),
|
||||||
page_body=entry['pageContent'],
|
page_body=entry['pageContent'],
|
||||||
page_date="<date>%s</date>" % entry['date'],
|
page_date="<date>%s</date>" % entry['date'],
|
||||||
|
page_update="<date>%s</date>" % entry['update'],
|
||||||
page_tags=entry['tags'],
|
page_tags=entry['tags'],
|
||||||
name_of_site="Kitaab",
|
name_of_site="Kitaab",
|
||||||
page_navigation=nav_html,
|
page_navigation=nav_html,
|
||||||
|
@ -288,6 +288,24 @@ def remove_date(page):
|
||||||
print(f'Unexpected error in removing date in {page}')
|
print(f'Unexpected error in removing date in {page}')
|
||||||
return page
|
return page
|
||||||
|
|
||||||
|
def remove_update(page):
|
||||||
|
try:
|
||||||
|
regex = r"%update [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}"
|
||||||
|
page = re.sub(regex, '', page)
|
||||||
|
return page
|
||||||
|
except Exception as e:
|
||||||
|
print(f'Unexpected error in removing date in {page}')
|
||||||
|
return page
|
||||||
|
|
||||||
|
def remove_links(page):
|
||||||
|
try:
|
||||||
|
regex = r"%link *"
|
||||||
|
page = re.sub(regex, '', page)
|
||||||
|
return page
|
||||||
|
except Exception as e:
|
||||||
|
print(f'Unexpected error in removing date in {page}')
|
||||||
|
return page
|
||||||
|
|
||||||
|
|
||||||
def replacement_function(replace):
|
def replacement_function(replace):
|
||||||
replace = replace.group()
|
replace = replace.group()
|
||||||
|
@ -329,6 +347,28 @@ def get_date(page):
|
||||||
# print(f"Could not parse date")
|
# print(f"Could not parse date")
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def get_update(page):
|
||||||
|
try:
|
||||||
|
regex = r"%update [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}"
|
||||||
|
match = re.findall(regex, page)[0].strip('%update')
|
||||||
|
return match
|
||||||
|
except:
|
||||||
|
# print(f"Could not parse date")
|
||||||
|
return None
|
||||||
|
|
||||||
|
def get_links(page):
|
||||||
|
try:
|
||||||
|
regex = r"%link *"
|
||||||
|
match = re.findall(regex, page)[0].strip('%link')
|
||||||
|
ret = []
|
||||||
|
for m in match:
|
||||||
|
m = m.group()
|
||||||
|
m = m.strip("%link")
|
||||||
|
ret.append(m)
|
||||||
|
return ret
|
||||||
|
except:
|
||||||
|
# print(f"Could not parse date")
|
||||||
|
return None
|
||||||
|
|
||||||
def parse_headings(page):
|
def parse_headings(page):
|
||||||
try:
|
try:
|
||||||
|
@ -360,6 +400,7 @@ def create_entries(pages):
|
||||||
markdown_text = open(page, 'r').read()
|
markdown_text = open(page, 'r').read()
|
||||||
except UnicodeDecodeError:
|
except UnicodeDecodeError:
|
||||||
print(f"Couldn't parse {title}, {page}")
|
print(f"Couldn't parse {title}, {page}")
|
||||||
|
continue
|
||||||
markdown_text = parse_headings(markdown_text)
|
markdown_text = parse_headings(markdown_text)
|
||||||
markdown_text = replace_generated(markdown_text)
|
markdown_text = replace_generated(markdown_text)
|
||||||
markdown_text = style_iframes(markdown_text)
|
markdown_text = style_iframes(markdown_text)
|
||||||
|
@ -367,9 +408,13 @@ def create_entries(pages):
|
||||||
markdown_text = fix_wiki_links(markdown_text, path["folder"])
|
markdown_text = fix_wiki_links(markdown_text, path["folder"])
|
||||||
tags = get_tags(markdown_text)
|
tags = get_tags(markdown_text)
|
||||||
date = get_date(markdown_text)
|
date = get_date(markdown_text)
|
||||||
|
update = get_update(markdown_text)
|
||||||
|
links = get_links(markdown_text)
|
||||||
markdown_text = remove_tags(markdown_text)
|
markdown_text = remove_tags(markdown_text)
|
||||||
markdown_text = remove_title(markdown_text)
|
markdown_text = remove_title(markdown_text)
|
||||||
markdown_text = remove_date(markdown_text)
|
markdown_text = remove_date(markdown_text)
|
||||||
|
markdown_text = remove_update(markdown_text)
|
||||||
|
markdown_text = remove_links(markdown_text)
|
||||||
pageContent = markdown(markdown_text)
|
pageContent = markdown(markdown_text)
|
||||||
|
|
||||||
# Create the page object with all the informations we need
|
# Create the page object with all the informations we need
|
||||||
|
@ -383,9 +428,14 @@ def create_entries(pages):
|
||||||
tempPage['date'] = date
|
tempPage['date'] = date
|
||||||
else:
|
else:
|
||||||
tempPage['date'] = path['iso_date'][:-3]
|
tempPage['date'] = path['iso_date'][:-3]
|
||||||
|
if update:
|
||||||
|
tempPage['update'] = update
|
||||||
|
else:
|
||||||
|
tempPage['update'] = tempPage['date']
|
||||||
tempPage['title'] = fix_amp(title)
|
tempPage['title'] = fix_amp(title)
|
||||||
tempPage['pageContent'] = pageContent
|
tempPage['pageContent'] = pageContent
|
||||||
tempPage['tags'] = tags
|
tempPage['tags'] = tags
|
||||||
|
tempPage['links'] = links
|
||||||
|
|
||||||
fullContent.append(tempPage)
|
fullContent.append(tempPage)
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
TODO
|
TODO
|
||||||
Sometimes the entry doesn't output a title and I'm not entirely sure why
|
Sometimes the entry doesn't output a title and I'm not entirely sure why
|
||||||
--!>
|
--!>
|
||||||
{% if entry['title'] %}
|
{% if entry['title']|length > 0 %}
|
||||||
<a href='{{entry['file']}}.html'>{{entry["title"]}}</a>
|
<a href='{{entry['file']}}.html'>{{entry["title"]}}</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href='{{entry['file']}}.html'>{{entry['file']}}</a>
|
<a href='{{entry['file']}}.html'>{{entry['file']}}</a>
|
||||||
|
|
|
@ -20,7 +20,10 @@
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if page_date %}
|
{% if page_date %}
|
||||||
{{page_date}}
|
<p> published {{page_date}} </p>
|
||||||
|
{% endif %}
|
||||||
|
{% if page_update %}
|
||||||
|
<p> updated {{page_update}} </p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{{page_body}}
|
{{page_body}}
|
||||||
</article>
|
</article>
|
||||||
|
|
Loading…
Reference in a new issue