starting a blog
1. Blog experiments
I have been thinking about starting a blog for some time, but after reading https://dou-meishi.github.io/org-blog/2024-01-22-TryOrgStaticBlog/notes.html#org811a1c5 1 I started to experiment.
https://github.com/bastibe/org-static-blog/blob/master/README.org
The only requirement is that every org file must have a #+TITLE and a #+DATE, and optionally, #+FILETAGS, #+DESCRIPTION and #+IMAGE.
2. Chronological log
2.1. 2026-01-22 plain HTML export
Using ./j0rat.html as an example, I exported it to HTML using C-c
C-e h. The following warning was shown
■ Warning (emacs): Cannot fontify source block (htmlize.el >= 1.34 required). Falling back to plain text. (see ‘org-html-htmlize-output-type’)
but a HTML file was produced.
Opening the file in either Firefox or Chrome using the URL p/j0rat/j0rat.html failed, because the browsers are not permitted to access files owned by the `termux~ user. After copying the HTML file to file:///data/data/com.termux/files/home/storage/downloads/bt/j0rat.html (which is another name for file:///storage/emulated/0/Download/bt/j0rat.html)
file:///storage/emulated/0/Download/bt/j0rat.html
I could not open it, but the search engine
translated the URL to
content://com.android.externalstorage.documents/document/primary%3ADownload%2Fbt%2Fj0rat.html
/When marked up as link, org-mode produces the following error
user-error: Org export aborted. Unable to resolve link: "content://com.android.externalstorage.documents/document/primary%3ADownload%2Fbt%2Fj0rat.html" See ‘org-export-with-broken-links’
2.2. Android is inadequate 2026-01-26
Similar attempts opening file:/// URLs on anderl were also
unsuccessful, my conclusion is that Android is inadequate for local
creation amd test of a website.
2.3. TODO [4/8] Next steps 2026-01-27
I read Dou-Meishi's description https://dou-meishi.github.io/org-blog/2024-01-22-TryOrgStaticBlog/notes.html#org811a1c5
org-static-blog and want to try a similar setup.
So I need to
[X]installorg-static-blog[X]configure it[X]create an "about" page[X]render, copy HTML toiwasno.net[ ]improve design[ ]CSS experiments[ ]formula rendering: MathJax, KaTeX, pre-rendered MathJax[ ]upgrade toox-tufte?
2.4. TODO [2/2] 2026-01-28
Evaluated the following on rhea
(package-install 'org-static-blog)
The first time nothing appeared to happen, bu evaluating the expression again produced the message to be continued "already installed" or something similar Clean up the messages below
Importing package-keyring.gpg...done Package refresh done [3 times] Saving file /data/data/com.termux/files/home/.emacs... Wrote /data/data/com.termux/files/home/.emacs Saving file /data/data/com.termux/files/home/.emacs... Wrote /data/data/com.termux/files/home/.emacs Parsing tar file...done Extracting...done INFO Scraping 2 files for loaddefs...done GEN org-static-blog-autoloads.el Checking /data/data/com.termux/files/home/.emacs.d/elpa/org-static-blog-20250320.1842... [3 times] Compiling /data/data/com.termux/files/home/.emacs.d/elpa/org-static-blog-20250320.1842/org-static-blog.el...done Wrote /data/data/com.termux/files/home/.emacs.d/elpa/org-static-blog-20250320.1842/org-static-blog.elc Checking /data/data/com.termux/files/home/.emacs.d/elpa/org-static-blog-20250320.1842... Done (Total of 1 file compiled, 2 skipped) Package ‘org-static-blog’ installed. "Package ‘org-static-blog’ installed."
Copied https://dou-meishi.github.io/org-blog/2024-01-22-TryOrgStaticBlog/notes.html#org811a1c5 to ./2024-01-22-TryOrgStaticBlog.txt, extracted ./static/header.html ./static/postamble.html and ./static/preamble.html Adapted them slightly.
[X]Need style.css,[X]favicon.icos
Extracted ./blog-settings.el,
2.5. 2026-01-31
needed to create blog/drafts
■ Warning (org-element): org-element--cache: Added org-data parent to non-headline element: (section (:standard-properties [532995 532995 532995 533102 533102 0 nil section element t (284 . 532997) 532995 533102 nil #<buffer rhea3.org> nil nil (headline (:standard-properties [532950 532950 532963 533105 533105 0 (:title) nil element nil (284 . 532953) 532965 533105 1 #<buffer rhea3.org> [org-element-deferred org-element--headline-deferred nil t] nil (org-data (:standard-properties [1 1 1 553521 553521 0 nil org-data nil t nil 3 553521 nil #<buffer rhea3.org> [org-element-deferred org-element--get-global-node-properties nil t] nil nil] :path "/data/data/com.termux/files/home/p/rhea3.org" :fragile-cache nil))] :pre-blank 0 :raw-value [org-element-deferred org-element--headline-parse-title (t) t] :title [org-element-deferred org-element--headline-parse-title (t) t] :level [org-element-deferred org-element--headline-parse-title (t) t] :priority [org-element-deferred org-element--headline-parse-title (t) t] :tags [org-element-deferred org-element--headline-parse-title (t) t] :todo-keyword [org-element-deferred org-element--headline-parse-title (t) t] :todo-type [org-element-deferred org-element--headline-parse-title (t) t] :footnote-section-p [org-element-deferred org-element--headline-parse-title (t) t] :archivedp [org-element-deferred org-element--headline-parse-title (t) t] :commentedp [org-element-deferred org-element--headline-parse-title (t) t]))])) If this warning appears regularly, please report the warning text to Org mode mailing list (M-x org-submit-bug-report). ■ Warning (org-element): org-element--cache: Org parser error in rhea3.org::553603. Resetting. The error was: (error "Invalid search bound (wrong side of point)") Backtrace: nil Please report this to Org mode mailing list (M-x org-submit-bug-report). ■ Warning (emacs): Cannot fontify source block (htmlize.el >= 1.34 required). Falling back to plain text. (see ‘org-html-htmlize-output-type’) ■ Warning (emacs): Cannot fontify source block (htmlize.el >= 1.34 required). Falling back to plain text. (see ‘org-html-htmlize-output-type’) ■ Warning (emacs): ~/p/j0rat/blog/org/blog-notes.org file does not have a title, using ~/p/j0rat/blog/org/blog-notes.org as the title ■ Warning (emacs): ~/p/j0rat/blog/org/blog-notes.org file does not have a title, using ~/p/j0rat/blog/org/blog-notes.org as the title ■ Warning (emacs): Cannot fontify source block (htmlize.el >= 1.34 required). Falling back to plain text. (see ‘org-html-htmlize-output-type’)
3. 2026-02-01
create symbolic links from blog/org/ to the .org files
added TITLE, DATE and FILETAGS to thsi file and j0rat.org.
4. 2026-02-02
evaluated
(package-install 'htmlize)
this time, the installation was reported in both the minibuffer and
*Messages*:
Contacting host: melpa.org:443 [2 times] Parsing tar file...done Extracting...done INFO Scraping 2 files for loaddefs...done GEN htmlize-autoloads.el Checking /data/data/com.termux/files/home/.emacs.d/elpa/htmlize-20250724.1703... [3 times] Compiling /data/data/com.termux/files/home/.emacs.d/elpa/htmlize-20250724.1703/htmlize.el...done Wrote /data/data/com.termux/files/home/.emacs.d/elpa/htmlize-20250724.1703/htmlize.elc Checking /data/data/com.termux/files/home/.emacs.d/elpa/htmlize-20250724.1703... Done (Total of 1 file compiled, 2 skipped) Package ‘htmlize’ installed. "Package ‘htmlize’ installed."
After correcting ./blog-settings.el, org-static-blog~publish produced the following files
file:///data/data/com.termux/files/home/p/j0rat/blog/archive.html
file:///data/data/com.termux/files/home/p/j0rat/blog/index.html
file:///data/data/com.termux/files/home/p/j0rat/blog/tag-mathematics.html
file:///data/data/com.termux/files/home/p/j0rat/blog/tag-meta.html
file:///data/data/com.termux/files/home/p/j0rat/blog/tags.html
and, somewhat mislaid
file:///data/data/com.termux/files/home/p/j0rat.html
file:///data/data/com.termux/files/home/p/blog-notes.html
5. 2026-02-03
j0rat.html refers via href to the following files
15 matches in 14 lines for "href=" in buffer: j0rat.html
7: href="~/p/j0rat/blog/rss.xml"
12:<link href= "static/style.css" rel="stylesheet" type="text/css" />
13:<link href="static/favicon.ico" rel="icon" />
21:<div class="post-date">01 Feb 2026</div><h1 class="post-title"><a href="~/p/j0rat/blog/../../j0rat.html">rational minimax approximation for J₀(x)</a></h1>
26:<li><a href="#org84ad828">1. Introduction</a>
28:<li><a href="#orgb0ad37d">1.1. Plotting</a></li>
29:<li><a href="#org9c6f9ce">1.2. <span class="done DONE">DONE</span> Fix git configuration</a></li>
30:<li><a href="#org6eddd1c">1.3. Another idea</a></li>
31:<li><a href="#orged3198f">1.4. Meta</a></li>
45:<a href="https://dlmf.nist.gov/3.11#iii">https://dlmf.nist.gov/3.11#iii</a> describes a rational minimax
50:<a href="https://dlmf.nist.gov/10.3">https://dlmf.nist.gov/10.3</a> confirms that. I shall look at the
87:<a href="https://dlmf.nist.gov/3.11#F1">https://dlmf.nist.gov/3.11#F1</a> shows
133:<div class="taglist"><a href="~/p/j0rat/blog/tags.html">Tags</a>: <a href="~/p/j0rat/blog/tag-mathematics.html">mathematics</a> </div></div>
134:<div id="postamble" class="status">Created by <a href="https://github.com/bastibe/org-static-blog/">Org Static Blog</a></div>
6. 2026-02-04
Added Emacs version, name of the machine rendering the .org files and a version of the settings to org-static-blog-page-postamble.
After moving the .org files to blog/org/, thr .html files end up in blog/, but some files were not updated:
/data/data/com.termux/files/home/p/j0rat/blog: drwx------. 4 u0_a150 u0_a150 4096 Feb 4 09:35 . drwx------. 6 u0_a150 u0_a150 4096 Feb 4 09:30 .. -rw-------. 1 u0_a150 u0_a150 1038 Feb 2 19:09 archive.html -rw-------. 1 u0_a150 u0_a150 15916 Feb 4 09:35 blog-notes.html -rw-------. 1 u0_a150 u0_a150 1192 Feb 4 09:35 draft.html drwx------. 2 u0_a150 u0_a150 4096 Feb 4 09:35 drafts -rw-------. 1 u0_a150 u0_a150 1691 Feb 2 19:09 index.html -rw-------. 1 u0_a150 u0_a150 4842 Feb 4 09:35 j0rat.html drwx------. 2 u0_a150 u0_a150 4096 Feb 4 11:16 org lrwxrwxrwx. 1 u0_a150 u0_a150 18 Jan 30 18:21 plot -> ../plot/ -rw-------. 1 u0_a150 u0_a150 16670 Feb 2 19:09 rss.xml lrwxrwxrwx. 1 u0_a150 u0_a150 18 Jan 30 18:21 static -> ../static/ -rw-------. 1 u0_a150 u0_a150 1162 Feb 2 19:09 tag-mathematics.html -rw-------. 1 u0_a150 u0_a150 1417 Feb 2 19:09 tag-meta.html -rw-------. 1 u0_a150 u0_a150 1140 Feb 2 19:09 tags.html
My old home page https://roland.iwasno.net uses 9atom-style.css and
roland.ico as favicon.
I tried to download them from the BGA guest network, but failed.
u0_a150@rhea:~/.../blog/static$ scp rlk@iwasno.net:/var/www.roland.iwasno.net/9atom-style.css . ssh: connect to host iwasno.net port 8738: Network is unreachable scp: Connection closed u0_a150@rhea:~/.../blog/static$ u0_a150@rhea:~/.../blog/static$ pi PING 5.9.120.57 (5.9.120.57) 56(84) bytes of data. --- 5.9.120.57 ping statistics --- 3 packets transmitted, 0 received, 100% packet loss, time 2061ms u0_a150@rhea:~/.../blog/static$ pi PING 5.9.120.57 (5.9.120.57) 56(84) bytes of data. --- 5.9.120.57 ping statistics --- 3 packets transmitted, 0 received, 100% packet loss, time 2039ms u0_a150@rhea:~/.../blog/static$
Got them via https
u0_a150@rhea:~/.../blog/static$ wget https://roland.iwasno.net/roland.ico --2026-02-04 13:27:56-- https://roland.iwasno.net/roland.ico Resolving roland.iwasno.net (roland.iwasno.net)... 5.9.120.57, 2a01:4f8:162:7019::2 Connecting to roland.iwasno.net (roland.iwasno.net)|5.9.120.57|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 1150 (1.1K) [image/vnd.microsoft.icon] Saving to: ‘roland.ico’ roland.ico 100% 1.12K --.-KB/s in 0s 2026-02-04 13:27:57 (41.9 MB/s) - ‘roland.ico’ saved [1150/1150] u0_a150@rhea:~/.../blog/static$ wget https://roland.iwasno.net/9atom-style.css --2026-02-04 13:28:12-- https://roland.iwasno.net/9atom-style.css Resolving roland.iwasno.net (roland.iwasno.net)... 5.9.120.57, 2a01:4f8:162:7019::2 Connecting to roland.iwasno.net (roland.iwasno.net)|5.9.120.57|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 752 [text/css] Saving to: ‘9atom-style.css’ 9atom-style.c 100% 752 --.-KB/s in 0s 2026-02-04 13:28:12 (68.8 MB/s) - ‘9atom-style.css’ saved [752/752] u0_a150@rhea:~/.../blog/static$
I wanted to move ~/p/gio.org to drafts, but lost it.
7. 2026-02-05
Recovered gio.org, I had moved it to the file blog/draft instead
of the directory blog/drafts/. I also changed the name of the
main page from index.html to blog.html so it can coexist with my
current home page.
8. 2026-02-06
Directory structure
u0_a150@rhea:~/p/j0rat$ tree
.
├── 2024-01-22-TryOrgStaticBlog.txt
├── README-GitLab.md
├── README-template.md
├── README.md
├── README.md-rhea
├── blog
│ ├── archive.html
│ ├── blog-notes.html
│ ├── blog.html
│ ├── draft.html
│ ├── drafts
│ │ ├── draft.org
│ │ └── gio.org
│ ├── gio.html
│ ├── j0rat.html
│ ├── org
│ │ ├── blog-notes.org
│ │ └── j0rat.org
│ ├── plot -> ../plot/
│ ├── rss.xml
│ ├── rss.xml~
│ ├── static -> ../static/
│ ├── tag-mathematics.html
│ ├── tag-meta.html
│ ├── tags.html
├── blog-settings.el
├── blog-settings.el~
├── j0rat-plain.html
├── plot
│ ├── j0rat-01.png
│ └── j0rat-02.png
└── static
├── 9atom-style.css
├── header.html
├── old-postamble.html
├── preamble.html
└── roland.ico
8 directories, 39 files
u0_a150@rhea:~/p/j0rat$
Directories used by org-static-blog: the variables
org-static-blog-suffix have the following values:
| abb | suffix | value |
|---|---|---|
| pu | publish-directory | ~/p/j0rat/blog |
| po | posts-directory | ~/p/j0rat/blog/org |
| dr | drafts-directory | ~/p/j0rat/blog/drafts |
The references in blog.html below are annotated with the
abbreviations from column "abb" or "hc" for URLs hard-coded in
org-static-blog.el and "ud" fur URLs defined by the user.
14 matches in 11 lines for "href=\|img=" in buffer: blog.html pu 7: href="~/p/j0rat/blog/rss.xml" hc 12:<link href= "static/style.css" rel="stylesheet" type="text/css" /> hc 13:<link href="static/favicon.ico" rel="icon" /> pu 21:<h2 class="post-title"><a href="~/p/j0rat/blog/j0rat.html">rational minimax approximation for J₀(x)</a></h2><div class="post-date">01 Feb 2026</div><p> ud 23:<a href="https://dlmf.nist.gov/3.11#iii">https://dlmf.nist.gov/3.11#iii</a> describes a rational minimax ud 28:<a href="https://dlmf.nist.gov/10.3">https://dlmf.nist.gov/10.3</a> confirms that. I shall look at the pu pu 30:</p>(...)<div class="taglist"><a href="~/p/j0rat/blog/tags.html">Tags</a>: <a href="~/p/j0rat/blog/tag-mathematics.html">mathematics</a> </div><h2 class="post-title"><a href="~/p/j0rat/blog/blog-notes.html">starting a blog</a></h2><div class="post-date">31 Jan 2026</div><p> ud 32:reading [[<a href="https://dou-meishi.github.io/org-blog/2024-01-22-TryOrgStaticBlog/notes.html#org811a1c5">https://dou-meishi.github.io/org-blog/2024-01-22-TryOrgStaticBlog/notes.html#org811a1c5</a> <i>insert URLs</i> I started to experiment. pu 33:</p>(...)<div class="taglist"><a href="~/p/j0rat/blog/tags.html">Tags</a>: <a href="~/p/j0rat/blog/tag-meta.html">meta</a> </div><div id="archive"> pu 34:<a href="~/p/j0rat/blog/archive.html">Other posts</a> ud 37:<div id="postamble" class="status">Created by <a href="https://github.com/bastibe/org-static-blog/">Org Static Blog</a>, Emacs GNU Emacs 30.2 (build 1, aarch64-unknown-linux-android)
9. 2026-02-09
tried to use relative path for org-static-blog-publish-directory,
org-static-blog-posts-directory,
org-static-blog-drafts-directory, this seems to produce sensible
references.
10. 2026-02-10
copied the files to iwasno.net
u0_a150@rhea:~/p/j0rat/blog$ ssh rlk@iwasno.net mkdir /var/www/roland.iwasno.net/blog u0_a150@rhea:~/p/j0rat/blog$ rsync *.html rss.xml static/* rlk@iwasno.net:/var/www/roland.iwasno.net/blog/ u0_a150@rhea:~/p/j0rat/blog$
but this failed to create the subdirectory static
and the files were not readable by www-data.
11. 2026-02-11
11.1. TODO [2/9] next steps
[X]write "about" and[ ]"starting-a-blog" pages.[ ]math rendering[X]add link in quote from DLMF https://dlmf.nist.gov/10.2#ii[ ]make plots scalable, the PNG plot is too large for a phone display[ ]start a feature check list[ ]adjust date format[ ]improve validation links[ ]shorten Emacs version information
12. 2026-02-19
12.1. Progress
I did not log my work since 2026-02-11, but now I have a menu and found an error in my calculation of the rational approximation to J₀(x).
13. 2026-02-25
I have implemented a two color scheme, which I will adjust to get a better approximation to Plan 9's acme
https://wiki.selfhtml.org/wiki/Selektoren_in_CSS/Einstieg#Klassen-Selektor
13.0.1. acme colors
acme.png (copied to nc/zmisc) was taken from
light blue in the command menus (r,g,b) = 168,255,255 = 0xA8, 0xFF, 0xFF darker blue in the border 159,239,239 light yellow I could not seem to pick the color in IrfanView, but using the right mouse button revealed 255,255,168 lilac in the first cell of the second row 133,136,207
acme-color.el contains the following:
;; Acme-inspired colors, from http://www.lispforum.com/viewtopic.php?f=15&p=818#p773 ;; Use list-colors-display and a real acme (or ;; http://www.cs.bell-labs.com/plan9/img/screenshot.gif) ;; for fine tuning. ;; https://swtch.com/jsamterm/ uses #e9ffff for blue and #ffffe9 for yellow
but actually uses
(set-face-background 'default "lightyellow1") (set-face-background 'region "lemonchiffon2")
14. 2026-02-27
[DLMF] NIST Digital Library of Mathematical Functions. https://dlmf.nist.gov/, Release 1.2.5 of 2025-12-15. F. W. J. Olver, A. B. Olde Daalhuis, D. W. Lozier, B. I. Schneider, R. F. Boisvert, C. W. Clark, B. R. Miller, B. V. Saunders, H. S. Cohl, and M. A. McClain, eds.
15. What does this mean?
When publishing, the following message was shown:
Using vacuous schema
Last changed: 2026-03-05T20:37:22-CET.
Footnotes:
for example, the blogs of Inspiring blogs https://roland.iwasno.net/links/?searchtags=design, but there are others, e.g. from Tim Bradshaw, Sandra Snan and Karl Voit (insert URLs)