Compare commits
3 Commits
abc05ee4e8
...
9caf08a277
Author | SHA1 | Date | |
---|---|---|---|
9caf08a277 | |||
8aabd93273 | |||
6d7987cfae |
@ -2,6 +2,14 @@
|
||||
|
||||
Included is a summary of changes to the project, by version. Details can be found in the commit history.
|
||||
|
||||
## v2.0.1
|
||||
|
||||
### Improvements
|
||||
|
||||
* The `Image` tag in Markdown files no longer requires the full URL to be specified. Now `Config.BASE_HOST` is
|
||||
prepended to the tag value, which should be the full path to the image.
|
||||
* `.files` are skipped when copying files to the SSG output directory.
|
||||
|
||||
## v2.0.0
|
||||
|
||||
### Features
|
||||
|
@ -90,7 +90,7 @@ def handle_markdown_file_path(path: str) -> str:
|
||||
return template.render(title=page_title,
|
||||
config=Config,
|
||||
description=get_meta_str(md, 'description'),
|
||||
image=get_meta_str(md, 'image'),
|
||||
image=Config.BASE_HOST + get_meta_str(md, 'image'),
|
||||
content=content,
|
||||
base_url=Config.BASE_HOST + instance_resource_path_to_request_path(path),
|
||||
navs=parent_navs,
|
||||
|
@ -97,6 +97,9 @@ class StaticSiteGenerator(object):
|
||||
|
||||
# process and copy files
|
||||
for file_ in files:
|
||||
if file_[0] == '.':
|
||||
cprint(f"skipping {file_}", 'yellow')
|
||||
continue
|
||||
self.build_file_in_destination(source_dir, base_dir, file_, dest_dir, convert_markdown)
|
||||
|
||||
def build_subdir_in_destination(self, source_dir: str, base_dir: str, subdir: str, dest_dir: str) -> None:
|
||||
|
@ -5,9 +5,9 @@ SPDX-License-Identifier: GPL-3.0-only
|
||||
<html lang="en">
|
||||
<title>{{ title }}</title>
|
||||
<meta charset="utf-8">
|
||||
<meta property="og:url" content="{{ base_url }}">
|
||||
{% if title %}<meta property="og:title" content="{{ title }}">{% endif %}
|
||||
{% if description %}<meta property="og:description" content="{{ description }}">{% endif %}
|
||||
<meta property="og:url" content="{{ base_url }}">
|
||||
{% if image %}<meta property="og:image" content="{{ image }}">{% endif %}
|
||||
<meta name="twitter:card" content="summary_large_image">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
@ -63,3 +63,16 @@ def test_figures_are_rendered():
|
||||
'<span></span></figure>') in data
|
||||
assert '<figure><img alt="just a logo" src="bss-square-no-bg.png" /></figure>' in data
|
||||
os.chdir(HERE)
|
||||
|
||||
|
||||
def test_og_image():
|
||||
"""Test that the og:image meta tag is present as expected."""
|
||||
with tempfile.TemporaryDirectory() as tmpdir:
|
||||
src_dir = os.path.join(HERE, 'instance')
|
||||
ssg = StaticSiteGenerator(src_dir, tmpdir)
|
||||
os.chdir(os.path.join(src_dir, 'pages'))
|
||||
|
||||
ssg.build_file_in_destination(os.path.join(HERE, 'instance', 'pages'), '', 'more-metadata.md', tmpdir, True)
|
||||
with open(os.path.join(tmpdir, 'more-metadata.html'), 'r') as graphviz_output:
|
||||
data = graphviz_output.read()
|
||||
assert ('<meta property="og:image" content="http://example.org/test.img') in data
|
||||
|
1
tests/instance/pages/.ignored-file.md
Normal file
1
tests/instance/pages/.ignored-file.md
Normal file
@ -0,0 +1 @@
|
||||
this is ignored
|
@ -1,6 +1,6 @@
|
||||
Title: title for the page
|
||||
Description: description of this page
|
||||
made even longer
|
||||
Image: http://buh.com/test.img
|
||||
Image: /test.img
|
||||
|
||||
hello
|
||||
|
@ -88,3 +88,13 @@ def test_build_in_destination():
|
||||
assert os.path.exists(os.path.join(tmpdir, 'index.html'))
|
||||
assert os.path.exists(os.path.join(tmpdir, 'subdir', 'index.md'))
|
||||
assert os.path.exists(os.path.join(tmpdir, 'subdir', 'index.html'))
|
||||
|
||||
|
||||
def test_build_in_destination_ignores_dot_files():
|
||||
"""Test the ability to walk a source and populate the destination."""
|
||||
with tempfile.TemporaryDirectory() as tmpdir:
|
||||
src_dir = os.path.join(HERE, 'instance')
|
||||
generator = ssg.StaticSiteGenerator(src_dir, tmpdir)
|
||||
generator.build_in_destination(os.path.join(src_dir, 'pages'), tmpdir)
|
||||
|
||||
assert not os.path.exists(os.path.join(tmpdir, '.ignored-file.md'))
|
||||
|
Loading…
x
Reference in New Issue
Block a user