TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Static Site Generator for Emacs Lisp Programmers

54 pointsby dskhatri2 months ago

6 comments

adityaathalye2 months ago
Such opposite motivations. I built shite [1] because I want to <i>author</i> everything in org-mode [2], but I <i>don&#x27;t</i> want <i>publishing</i> hardwired to my Emacs. Also I want HTML templates to be just... HTML (heredocs are rather useful!).<p>Plus org-babel lets me pull tricks like this:<p>I want to insert certain HTML fragments in some pages, arbitrarily. There is no sensible way to automate it. BUT, I can source my HTML templates inside any org file, and manually expand it in-line. Like so:<p><pre><code> #+BEGIN_SRC bash :results raw html :exports results source ..&#x2F;bin&#x2F;templates.sh shite_template_common_org_inline_sales_banner &quot;.&quot; #+END_SRC #+RESULTS: #+begin_export html &lt;the neatly in-lined HTML&gt; #+end_export </code></pre> That expands to this sales banner <a href="https:&#x2F;&#x2F;www.evalapply.org&#x2F;index.html#standing-invitation" rel="nofollow">https:&#x2F;&#x2F;www.evalapply.org&#x2F;index.html#standing-invitation</a> (which is also expanded similarly in my hire.org and now.org pages).<p>Nifty!!!<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;adityaathalye&#x2F;shite&#x2F;">https:&#x2F;&#x2F;github.com&#x2F;adityaathalye&#x2F;shite&#x2F;</a> is my little hot-reloadin&#x27; site maker from shell. I write all of <a href="https:&#x2F;&#x2F;evalapply.org" rel="nofollow">https:&#x2F;&#x2F;evalapply.org</a> with it!<p>[2] Recently discussed at HN: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43157672">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43157672</a> &quot;Why and How I use “Org Mode” for my writing and more (2022)&quot;
评论 #43290377 未加载
AnonHP2 months ago
In “Why one.el”, one of the points listed is this:<p>&gt; I want websites to be written to a single org file,<p>Since the entire site’s source is in one file, this means individual blog entries (the index.html files) do not by default have their original date after the build and publish, right? For example, if the blog was built and published with one post yesterday and I add one more post today, build and publish, does it mean that both the blog posts on the web server would show up with today’s date&#x2F;time as when they were modified&#x2F;updated? If yes, wouldn’t this affect things like browser caching, search engine crawlers, etc.?
评论 #43289993 未加载
shortrounddev22 months ago
This looks cool but:<p>&gt; Have you ever wanted [...] &gt; &quot;html templates&quot; that are plain Emacs Lisp data,<p>I can honestly say I&#x27;ve never wanted to write HTML in another language. Html is fine, I&#x27;m not sure what the benefit of reimplementing it in other languages is. I see this in python a lot too
zck2 months ago
I wanted to:<p>1. Write HTML in org-mode. Org-mode is great for thinking. 2. Publish clean HTML.<p>The other libraries I was seeing were about exporting arbitrary org files for being consumed online. For example, the built-in exporter has a bunch of html classes that include &quot;org&quot; in them.<p>So I built a custom exporter: <a href="https:&#x2F;&#x2F;hg.sr.ht&#x2F;~zck&#x2F;ox-zhtml" rel="nofollow">https:&#x2F;&#x2F;hg.sr.ht&#x2F;~zck&#x2F;ox-zhtml</a>. It&#x27;s definitely not documented well, but it works well enough for my use.
blenderob2 months ago
This is very cool. But has someone done this for Common Lisp? Not that there is anything wrong with the dependency on Emacs but I&#x27;d like to avoid that if I can.
评论 #43289650 未加载
tetris112 months ago
ox-hugo is pretty decent, using pretty much the same workflow:<p><pre><code> org --&gt; markdown --&gt; publish to hugo </code></pre> all done with one save trigger