summaryrefslogtreecommitdiff
path: root/doc/euandre.org.en.7tutorial.adoc
blob: 0e4907654e041d147a9c4bede2ed2add8ff44c16 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
= euandre.org(7tutorial)



== NAME

euandre.org - a personal website in six languages, built from asciidoc



== DESCRIPTION

Writing one article, from nothing to a page on disk.  It assumes the
tools are installed and `make` runs; everything else is here.



== A first article

Articles live under a collection, dated:

....
src/content/en/blog/2026/09/10/a-first-article.adoc
....

The path is the URL, and the three levels below the collection are the
date.  Nothing registers the file anywhere --- `mkdeps.sh` finds it
with `find`, so creating it is the whole of adding it.

The file opens with its title and then says what it says:

[source,asciidoc]
....
= A first article

The first paragraph is the summary the indexes and the feed quote, so
write it as one.

== A section

Prose, `code`, and the rest of *adocg*(7).
....



== Building it

The rules are generated, so regenerate them, then build:

....
$ sh mkdeps.sh > deps.mk
$ make
....

The page lands beside its source as
`src/content/en/blog/2026/09/10/a-first-article.html`, and the
collection index, the feed and the sitemap pick it up because the
rules that build them were regenerated too.

Read it before publishing it:

....
$ make install
$ make run
....



== Where the other languages come from

They are not written; they are translated.  The English file is the
master, and `po/` holds one catalogue per language:

....
$ make i18n
....

writes the translated masters under `src/content/<lang>/`, which the
next `sh mkdeps.sh > deps.mk` then finds like any other page.  A
change to the English source propagates rather than drifting, which is
the point of keeping them as catalogues rather than as copies.



== SEE ALSO

*euandre.org*(7recipes), *euandre.org*(0), *mkwbg*(1), *adocg*(7), *po4a*(1)



== AUTHORS

mailto:eu@euandre.org[EuAndreh] and contributors.



== BUGS

* Report bugs to the mailto:~euandreh/public-inbox@lists.sr.ht[mailing list].
  Use the subject "[euandre.org] BUG or TASK: <description>".
* Browse bugs https://euandre.org/git/euandre.org/TODOs.html[online].
* https://euandre.org/git/euandre.org/[Homepage].
* https://lists.sr.ht/~euandreh/public-inbox?search=%5Beuandre%2Eorg%5D[Comments and discussions].