Commit: 1d7d485a7c04bbf6508ff5facb3de716bef68a29 Parent: e6865326d26936a3bc2117e3406cfc0e61058350 Author: Johannes Thyssen Tishman Date: Thu, 16 May 2024 09:27:27 +0000 000: Elaborate on mmw features and fix typos Diffstat: M blog/000.md | 17 +++++++++-------- M public/atom.xml | 19 ++++++++++--------- M public/blog/000.html | 17 +++++++++-------- M public/rss.xml | 17 +++++++++-------- M public/sitemap.xml | 2 +- 5 files changed, 38 insertions(+), 34 deletions(-)
diff --git a/blog/000.md b/blog/000.md @@ -1,7 +1,7 @@ --- title: Using AWK to make my website published: 2024-05-15 -updated: 2024-05-15 +updated: 2024-05-16 description: An introduction to mmw, a minimal template engine written in POSIX awk. post-id: 000 filepath: blog/${post-id}.html @@ -46,18 +46,19 @@ $ mmw template file1 file2 file3 By defining local variables in every file, one can use them within templates to choose exactly what should be merged and what not. Together with a few other -features (see the README or man page in the [git +features like command evaluation and piping variables to other commands (see +the README file in the [git repository](https://www.thyssentishman.com/git/mmw/file/README.html)), this allows for a large number of ways to generate the content of a website. Now to the big question: _Why awk?_ For a long time I thought of awk(1) as a program for one-liners like sed(1) or cut(1), and while it is great for that -too, awk(1) is a powerful scripting language very much capable of larger -programs. It has just enough features to make it versatile while still keeping -a very simple and intuitive syntax. For example very useful feature of awk(1) -are associative arrays. They are used extensively by mmw(1) and is what allows -it to keep track of the variables in each file. However, the very best feature -of awk(1) is that it's portable[^1]. +too, awk(1) is a powerful scripting language well suited for larger programs. +It has just enough features to make it versatile while still keeping a very +simple and intuitive syntax. For example, a very useful feature of awk(1) are +associative arrays. They are used extensively by mmw(1) and is what allows it +to keep track of the variables in each file. However, the very best feature of +awk(1) is that it's portable[^1]. > Even though Awk is nearly 50 years old, and in spite of the great changes in > computing, it's still widely used, a core Unix tool that's available on any diff --git a/public/atom.xml b/public/atom.xml @@ -3,7 +3,7 @@ <title>JTT's Blog</title> <subtitle>Blog of Johannes Thyssen Tishman</subtitle> <link rel="alternate" type="text/html" href="https://www.thyssentishman.com"/> -<updated>2024-05-15T16:14:51Z</updated> +<updated>2024-05-16T09:25:12Z</updated> <author> <name>Johannes Thyssen Tishman</name> </author> @@ -14,7 +14,7 @@ <link rel="alternate" type="text/html" href="https://www.thyssentishman.com/blog/000.html"/> <id>https://www.thyssentishman.com/blog/000.html</id> <published>2024-05-15T00:00:00Z</published> -<updated>2024-05-15T00:00:00Z</updated> +<updated>2024-05-16T00:00:00Z</updated> <summary>An introduction to mmw, a minimal template engine written in POSIX awk.</summary> <content type="html"> <![CDATA[ @@ -57,18 +57,19 @@ printed once for every file.</p> <p>By defining local variables in every file, one can use them within templates to choose exactly what should be merged and what not. Together with a few other -features (see the README or man page in the <a href="https://www.thyssentishman.com/git/mmw/file/README.html">git +features like command evaluation and piping variables to other commands (see +the README file in the <a href="https://www.thyssentishman.com/git/mmw/file/README.html">git repository</a>), this allows for a large number of ways to generate the content of a website.</p> <p>Now to the big question: <em>Why awk?</em> For a long time I thought of awk(1) as a program for one-liners like sed(1) or cut(1), and while it is great for that -too, awk(1) is a powerful scripting language very much capable of larger -programs. It has just enough features to make it versatile while still keeping -a very simple and intuitive syntax. For example very useful feature of awk(1) -are associative arrays. They are used extensively by mmw(1) and is what allows -it to keep track of the variables in each file. However, the very best feature -of awk(1) is that it’s portable<sup id="fnref1"><a href="#fn1" rel="footnote">1</a></sup>.</p> +too, awk(1) is a powerful scripting language well suited for larger programs. +It has just enough features to make it versatile while still keeping a very +simple and intuitive syntax. For example, a very useful feature of awk(1) are +associative arrays. They are used extensively by mmw(1) and is what allows it +to keep track of the variables in each file. However, the very best feature of +awk(1) is that it’s portable<sup id="fnref1"><a href="#fn1" rel="footnote">1</a></sup>.</p> <blockquote> <p>Even though Awk is nearly 50 years old, and in spite of the great changes in diff --git a/public/blog/000.html b/public/blog/000.html @@ -22,7 +22,7 @@ <header> <p class="pid">#000</p> <h1>Using AWK to make my website</h1> -<p>Last updated: <time>2024-05-15</time></p> +<p>Last updated: <time>2024-05-16</time></p> </header> <p>This blog has been empty for quite some time, and the reason for it is certainly not a lack of ideas or motivation, but rather the desire to have the @@ -63,18 +63,19 @@ printed once for every file.</p> <p>By defining local variables in every file, one can use them within templates to choose exactly what should be merged and what not. Together with a few other -features (see the README or man page in the <a href="https://www.thyssentishman.com/git/mmw/file/README.html">git +features like command evaluation and piping variables to other commands (see +the README file in the <a href="https://www.thyssentishman.com/git/mmw/file/README.html">git repository</a>), this allows for a large number of ways to generate the content of a website.</p> <p>Now to the big question: <em>Why awk?</em> For a long time I thought of awk(1) as a program for one-liners like sed(1) or cut(1), and while it is great for that -too, awk(1) is a powerful scripting language very much capable of larger -programs. It has just enough features to make it versatile while still keeping -a very simple and intuitive syntax. For example very useful feature of awk(1) -are associative arrays. They are used extensively by mmw(1) and is what allows -it to keep track of the variables in each file. However, the very best feature -of awk(1) is that it’s portable<sup id="fnref1"><a href="#fn1" rel="footnote">1</a></sup>.</p> +too, awk(1) is a powerful scripting language well suited for larger programs. +It has just enough features to make it versatile while still keeping a very +simple and intuitive syntax. For example, a very useful feature of awk(1) are +associative arrays. They are used extensively by mmw(1) and is what allows it +to keep track of the variables in each file. However, the very best feature of +awk(1) is that it’s portable<sup id="fnref1"><a href="#fn1" rel="footnote">1</a></sup>.</p> <blockquote> <p>Even though Awk is nearly 50 years old, and in spite of the great changes in diff --git a/public/rss.xml b/public/rss.xml @@ -4,7 +4,7 @@ xmlns:atom="http://www.w3.org/2005/Atom"> <channel> <title>JTT's Blog</title> <description>Blog of Johannes Thyssen Tishman</description> -<dc:date>2024-05-15T16:14:51Z</dc:date> +<dc:date>2024-05-16T09:25:12Z</dc:date> <link>https://www.thyssentishman.com</link> <atom:link rel="self" type="application/rss+xml" href="https://www.thyssentishman.com/rss.xml"/> <item> @@ -54,18 +54,19 @@ printed once for every file.</p> <p>By defining local variables in every file, one can use them within templates to choose exactly what should be merged and what not. Together with a few other -features (see the README or man page in the <a href="https://www.thyssentishman.com/git/mmw/file/README.html">git +features like command evaluation and piping variables to other commands (see +the README file in the <a href="https://www.thyssentishman.com/git/mmw/file/README.html">git repository</a>), this allows for a large number of ways to generate the content of a website.</p> <p>Now to the big question: <em>Why awk?</em> For a long time I thought of awk(1) as a program for one-liners like sed(1) or cut(1), and while it is great for that -too, awk(1) is a powerful scripting language very much capable of larger -programs. It has just enough features to make it versatile while still keeping -a very simple and intuitive syntax. For example very useful feature of awk(1) -are associative arrays. They are used extensively by mmw(1) and is what allows -it to keep track of the variables in each file. However, the very best feature -of awk(1) is that it’s portable<sup id="fnref1"><a href="#fn1" rel="footnote">1</a></sup>.</p> +too, awk(1) is a powerful scripting language well suited for larger programs. +It has just enough features to make it versatile while still keeping a very +simple and intuitive syntax. For example, a very useful feature of awk(1) are +associative arrays. They are used extensively by mmw(1) and is what allows it +to keep track of the variables in each file. However, the very best feature of +awk(1) is that it’s portable<sup id="fnref1"><a href="#fn1" rel="footnote">1</a></sup>.</p> <blockquote> <p>Even though Awk is nearly 50 years old, and in spite of the great changes in diff --git a/public/sitemap.xml b/public/sitemap.xml @@ -2,6 +2,6 @@ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>/blog/000.html</loc> -<lastmod>2024-05-15T00:00:00Z</lastmod> +<lastmod>2024-05-16T00:00:00Z</lastmod> </url> </urlset>