diff --git a/convert.py b/convert.py
index 08b4814..94fc23d 100644
--- a/convert.py
+++ b/convert.py
@@ -23,14 +23,40 @@ def convert_markdown_to_html(md_path: Path, html_path: Path):
title = md.Meta["title"][0] # type: ignore
prev_page = md.Meta["prev"][0] # type: ignore
next_page = md.Meta["next"][0] # type: ignore
+
+ prev_link = f'Prev' \
+ if prev_page else ''
+ next_link = f'Next' \
+ if next_page else ''
+
html_page = f"""
- {title}
+
+ YREA SLS | {title}
+
+
{html}
@@ -38,9 +64,9 @@ def convert_markdown_to_html(md_path: Path, html_path: Path):
© 2025 Kyler Olsen |
- {f'Prev |' if prev_page else ''}
+ {f'{prev_link} |' if prev_page else ''}
Home
- {f'| Next' if next_page else ''}
+ {f'| {next_link}' if next_page else ''}
@@ -51,6 +77,12 @@ def convert_markdown_to_html(md_path: Path, html_path: Path):
print(f"Converted: {md_path} → {html_path}")
def convert_all(source_dir: Path, output_dir: Path):
+ for svg_file in source_dir.rglob("*.svg"):
+ rel_path = svg_file.relative_to(source_dir)
+ dest_path = output_dir / rel_path
+ dest_path.parent.mkdir(parents=True, exist_ok=True)
+ dest_path.write_bytes(svg_file.read_bytes())
+ print(f"Copied: {svg_file} → {dest_path}")
for css_file in source_dir.rglob("*.css"):
rel_path = css_file.relative_to(source_dir)
dest_path = output_dir / rel_path
@@ -69,13 +101,13 @@ def convert_all_watch_files(source_dir: Path, output_dir: Path):
class ChangeHandler(FileSystemEventHandler):
def on_modified(self, event):
- if event.src_path.endswith(".md"):
- md_path = Path(event.src_path)
+ if event.src_path.endswith(".md"): # type: ignore
+ md_path = Path(event.src_path) # type: ignore
rel_path = md_path.relative_to(source_dir)
html_path = output_dir / rel_path.with_suffix(".html")
convert_markdown_to_html(md_path, html_path)
- elif event.src_path.endswith(".css"):
- css_path = Path(event.src_path)
+ elif event.src_path.endswith(".css"): # type: ignore
+ css_path = Path(event.src_path) # type: ignore
rel_path = css_path.relative_to(source_dir)
dest_path = output_dir / rel_path
dest_path.parent.mkdir(parents=True, exist_ok=True)
@@ -96,4 +128,4 @@ def convert_all_watch_files(source_dir: Path, output_dir: Path):
if __name__ == "__main__":
convert_all(SOURCE_DIR, OUTPUT_DIR)
- # convert_all_watch_files(SOURCE_DIR, OUTPUT_DIR)
+ convert_all_watch_files(SOURCE_DIR, OUTPUT_DIR)
diff --git a/docs/YREA.svg b/docs/YREA.svg
new file mode 100644
index 0000000..28dff25
--- /dev/null
+++ b/docs/YREA.svg
@@ -0,0 +1,126 @@
+
+
diff --git a/docs/advanced_topics.md b/docs/advanced_topics.md
index 84bf7e2..8bd4876 100644
--- a/docs/advanced_topics.md
+++ b/docs/advanced_topics.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 11 Advanced Topics
+Title: 11 Advanced Topics
Prev: Generic Programming
Next: Standard Library
---
diff --git a/docs/basic_operations.md b/docs/basic_operations.md
index 8772294..8603b4c 100644
--- a/docs/basic_operations.md
+++ b/docs/basic_operations.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 4 Basic Operations
+Title: 4 Basic Operations
Prev: Primitive Types
Next: Functions
---
diff --git a/docs/complete_operator_reference.md b/docs/complete_operator_reference.md
index a5f54a4..f80bb62 100644
--- a/docs/complete_operator_reference.md
+++ b/docs/complete_operator_reference.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | C Complete Operator Reference
+Title: C Complete Operator Reference
Prev: Complete Trait Reference
Next: Grammar Summary
---
diff --git a/docs/complete_trait_reference.md b/docs/complete_trait_reference.md
index fd6f83c..fa44f47 100644
--- a/docs/complete_trait_reference.md
+++ b/docs/complete_trait_reference.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | B Complete Trait Reference
+Title: B Complete Trait Reference
Prev: Standard Library
Next: Complete Operator Reference
---
diff --git a/docs/control_flow.md b/docs/control_flow.md
index 13e4e2f..8a823b2 100644
--- a/docs/control_flow.md
+++ b/docs/control_flow.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 6 Control Flow
+Title: 6 Control Flow
Prev: Functions
Next: Data Structures
---
diff --git a/docs/data_structures.md b/docs/data_structures.md
index 0b73cd8..eeecf98 100644
--- a/docs/data_structures.md
+++ b/docs/data_structures.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 7 Data Structures
+Title: 7 Data Structures
Prev: Control Flow
Next: Type System
---
diff --git a/docs/examples_and_tutorials.md b/docs/examples_and_tutorials.md
index ebd8412..8821eaa 100644
--- a/docs/examples_and_tutorials.md
+++ b/docs/examples_and_tutorials.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | G Examples & Tutorials
+Title: G Examples & Tutorials
Prev: Memory Management
Next:
---
diff --git a/docs/functions.md b/docs/functions.md
index d34c7e7..48958ae 100644
--- a/docs/functions.md
+++ b/docs/functions.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 5 Functions
+Title: 5 Functions
Prev: Basic Operations
Next: Control Flow
---
diff --git a/docs/generic_programming.md b/docs/generic_programming.md
index fce1eef..968f1e0 100644
--- a/docs/generic_programming.md
+++ b/docs/generic_programming.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 10 Generic Programming
+Title: 10 Generic Programming
Prev: Trait System
Next: Advanced Topics
---
diff --git a/docs/grammar_summary.md b/docs/grammar_summary.md
index 8eabf54..ca66150 100644
--- a/docs/grammar_summary.md
+++ b/docs/grammar_summary.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | D Grammar Summary
+Title: D Grammar Summary
Prev: Complete Operator Reference
Next: Module System
---
diff --git a/docs/index.md b/docs/index.md
index 811fe72..c5fb91f 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -1,10 +1,10 @@
---
-Title: YREA SLS | Specs Home
+Title: Specs Home
Prev:
Next: Overview
---
-# Stack Language Specification
+# YREA SLS
Sections:
1. [[Overview]]
diff --git a/docs/lexical_structure.md b/docs/lexical_structure.md
index 1a2150e..77e3e52 100644
--- a/docs/lexical_structure.md
+++ b/docs/lexical_structure.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 2 Lexical Structure
+Title: 2 Lexical Structure
Prev: Overview
Next: Primitive Types
---
diff --git a/docs/memory_management.md b/docs/memory_management.md
index e036756..18a4e36 100644
--- a/docs/memory_management.md
+++ b/docs/memory_management.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | F Memory Management
+Title: F Memory Management
Prev: Module System
Next: Examples and Tutorials
---
diff --git a/docs/module_system.md b/docs/module_system.md
index 3c9ce4c..38845ca 100644
--- a/docs/module_system.md
+++ b/docs/module_system.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | E Module System
+Title: E Module System
Prev: Grammar Summary
Next: Memory Management
---
diff --git a/docs/overview.md b/docs/overview.md
index 9b3f86a..422f758 100644
--- a/docs/overview.md
+++ b/docs/overview.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 1 Overview
+Title: 1 Overview
Prev: Index
Next: Lexical Structure
---
diff --git a/docs/primitive_types.md b/docs/primitive_types.md
index e09729f..93b4df7 100644
--- a/docs/primitive_types.md
+++ b/docs/primitive_types.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 3 Primitive Types
+Title: 3 Primitive Types
Prev: Lexical Structure
Next: Basic Operations
---
diff --git a/docs/sls-on-white.svg b/docs/sls-on-white.svg
new file mode 100644
index 0000000..86f1d81
--- /dev/null
+++ b/docs/sls-on-white.svg
@@ -0,0 +1,187 @@
+
+
diff --git a/docs/sls.svg b/docs/sls.svg
new file mode 100644
index 0000000..9d977ae
--- /dev/null
+++ b/docs/sls.svg
@@ -0,0 +1,175 @@
+
+
diff --git a/docs/standard_library.md b/docs/standard_library.md
index 1a117b8..e5eff05 100644
--- a/docs/standard_library.md
+++ b/docs/standard_library.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | A Standard Library
+Title: A Standard Library
Prev: Advanced Topics
Next: Complete Trait Reference
---
diff --git a/docs/styles.css b/docs/styles.css
index 3b4664f..3aec572 100644
--- a/docs/styles.css
+++ b/docs/styles.css
@@ -27,7 +27,7 @@ h1 {
}
a {
- color: blue;
+ color: #375899;
}
/* p {
@@ -45,10 +45,11 @@ ul, ol {
code {
font-family: 'Consolas', 'Courier New', Courier, monospace;
- background-color: #cccccc;
+ background-color: #cad5ee;
padding-left: 4px;
padding-right: 4px;
border-radius: 3px;
+ break-inside: avoid;
}
pre > code {
@@ -63,17 +64,54 @@ pre {
border-style: solid;
border-radius: 3px;
padding: 4px;
- background-color: #cccccc;
+ background-color: #cad5ee;
+ overflow-x: auto;
}
blockquote {
border-color: black;
+ border-left-color: #001847;
border-width: 1px;
- border-left-width: 5px;
+ border-left-width: 8px;
border-style: solid;
border-radius: 3px;
padding-left: 8px;
- background-color: #ccccff;
+ background-color: #9cbdff;
+}
+
+header {
+ text-align: center;
+ padding: 0;
+ padding-left: 20vw;
+ padding-right: 20vw;
+}
+
+header > div {
+ display: grid;
+ grid-template-areas: 't l n';
+ grid-template-columns: 1fr 2fr 1fr;
+ grid-template-rows: 1fr;
+ justify-content: space-between;
+}
+
+header > div > .title {
+ text-align: left;
+ grid-area: t;
+}
+
+header > div > .logo {
+ margin: 0;
+ grid-area: l;
+}
+
+header > div > .logo > span {
+ display: inline-block;
+ width: 4px;
+}
+
+header > div > .nav {
+ text-align: right;
+ grid-area: n;
}
footer {
@@ -84,6 +122,11 @@ footer {
}
@media screen and (max-width: 768px) {
+ header {
+ padding-left: 5vw;
+ padding-right: 5vw;
+ }
+
main {
padding-left: 5vw;
padding-right: 5vw;
@@ -93,4 +136,26 @@ footer {
padding-left: 5vw;
padding-right: 5vw;
}
+
+ ol, ul {
+ padding-left: 24px;
+ }
+
+ blockquote {
+ margin-left: 24px;
+ margin-right: 24px;
+ }
+
+ header > div {
+ grid-template-areas: 'l' 't' 'n';
+ grid-template-columns: 1fr;
+ grid-template-rows: 2fr 1fr 1fr;
+ justify-content: center;
+ }
+
+ header > div > .title, header > div > .nav {
+ text-align: center;
+ margin-top: 4px;
+ margin-bottom: 4px;
+ }
}
diff --git a/docs/trait_system.md b/docs/trait_system.md
index 7af6ae4..aa511f3 100644
--- a/docs/trait_system.md
+++ b/docs/trait_system.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 9 Trait System
+Title: 9 Trait System
Prev: Type System
Next: Generic Programming
---
diff --git a/docs/type_system.md b/docs/type_system.md
index 7717be7..c5a3d5c 100644
--- a/docs/type_system.md
+++ b/docs/type_system.md
@@ -1,5 +1,5 @@
---
-Title: YREA SLS | 8 Type System
+Title: 8 Type System
Prev: Data Structures
Next: Trait System
---