Compare commits

..

No commits in common. "07152a37468309a57e9fef6698f5bed65807e4bd" and "faac8f63bbf960bb41fb99924db46533cd7c203d" have entirely different histories.

8 changed files with 9 additions and 24 deletions

View file

@ -317,7 +317,6 @@ available:
| `template` | `str \| none` = `none` | Template to use for this page. Relative to `templates/`, `.html` extension optional. |
| `post` | `bool \| none` = `none` | Whether this page is a **post**. `true`/`false` is _absolute_. Leave it unset for automatic detection. |
| `draft` | `bool` = `false` | Whether this page is a draft. See [drafts](#drafts) for more. |
| `ignore` | `bool` = `false` | Whether this page should be ignored in _both_ `final` and `draft` contexts. |
| `math` | `bool` = `true` | Whether the LaTeX extension should be enabled for this page. |
**Note**: you can specify the date in any format that can be parsed by

View file

@ -62,7 +62,7 @@ allowedUntypedLibraries = ["frontmatter", "pygments", "pymdownx", "l2m4m"]
[tool.ruff]
line-length = 70
indent-width = 4
target-version = "py312"
target-version = "py311"
[tool.ruff.lint]
fixable = ["ALL"]

View file

@ -53,7 +53,7 @@ class ZonaBuilder:
):
logger.debug(f"Parsing {path.name}.")
item.metadata, item.content = parse_metadata(path)
if item.metadata.ignore or (
if (
item.metadata.draft
and not self.config.build.include_drafts
):

View file

@ -59,9 +59,7 @@ def build(
"""
if draft:
print("Option override: including drafts.")
builder = ZonaBuilder(
cli_root=root, cli_output=output, draft=draft
)
builder = ZonaBuilder(cli_root=root, cli_output=output, draft=draft)
builder.build()
@ -75,9 +73,7 @@ def serve(
] = None,
host: Annotated[
str,
typer.Option(
"--host", help="Hostname for live preview server."
),
typer.Option("--host", help="Hostname for live preview server."),
] = "localhost",
port: Annotated[
int,

View file

@ -76,9 +76,7 @@ IGNORELIST = [".marksman.toml"]
class ZonaConfig:
base_url: str = "/"
# dictionary where key is name, value is url
sitemap: SitemapConfig = field(
default_factory=lambda: {"Home": "/"}
)
sitemap: SitemapConfig = field(default_factory=lambda: {"Home": "/"})
# list of globs relative to content that should be ignored
ignore: list[str] = field(default_factory=lambda: IGNORELIST)
markdown: MarkdownConfig = field(default_factory=MarkdownConfig)

View file

@ -24,7 +24,6 @@ class Metadata:
template: str | None = None
post: bool | None = None
draft: bool = False
ignore: bool = False
math: bool = True

View file

@ -238,9 +238,7 @@ def serve(
event_handler, path=str(root / "content"), recursive=True
)
observer.schedule(
event_handler,
path=str(root / "templates"),
recursive=True,
event_handler, path=str(root / "templates"), recursive=True
)
observer.start()

View file

@ -19,9 +19,7 @@ def get_resource(path: str) -> ZonaResource:
if file.is_file():
return ZonaResource(name=path, contents=file.read_text())
else:
raise FileNotFoundError(
f"{path} is not a valid Zona resource!"
)
raise FileNotFoundError(f"{path} is not a valid Zona resource!")
def get_resources(subdir: str) -> list[ZonaResource]:
@ -77,13 +75,10 @@ def normalize_url(url: str) -> str:
return url
def should_ignore(
path: Path, patterns: list[str], base: Path
) -> bool:
def should_ignore(path: Path, patterns: list[str], base: Path) -> bool:
rel_path = path.relative_to(base)
return any(
fnmatch.fnmatch(str(rel_path), pattern)
for pattern in patterns
fnmatch.fnmatch(str(rel_path), pattern) for pattern in patterns
)