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
|
\ProvidesPackage{tikzlings-list}[2025/01/05 version v2.2 Helper package for the tikzlings]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% List of all TikZlings
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ExplSyntaxOn
\clist_const:Nn \c__tikzlings_clist
{
anteater / anteaters,
ape / apes,
bat / bats,
bear / bears,
bee / bees,
bug / bugs,
cat / cats,
chicken / chickens,
coati / coatis,
elephant / elephants,
hippo / hippos,
koala / koalas,
marmot / marmots,
meerkat / meerkats,
mouse / mice,
moles / moles, % avoid conflict with siunitx's \mole
owl / owls,
panda / pandas,
penguin / penguins,
pig / pigs,
rhino / rhinos,
sheep / sheep,
sloth / sloths,
snowman / snowmen,
squirrel / squirrels,
wolf / wolves
}
\clist_new:N \g__tikzlings_names_clist
\clist_new:N \g__tikzlings_packages_clist
% Store the two “columns” of \c__tikzlings_clist in these variables
\clist_map_inline:Nn \c__tikzlings_clist
{
\seq_set_split:Nnn \l_tmpa_seq { / } {#1}
\clist_gput_right:Nx \g__tikzlings_names_clist
{ \seq_item:Nn \l_tmpa_seq { 1 } }
\clist_gput_right:Nx \g__tikzlings_packages_clist
{ \seq_item:Nn \l_tmpa_seq { 2 } }
}
% Define aliases that can be used without \ExplSyntaxOn
\cs_new_eq:NN \tikzlings@clist \c__tikzlings_clist
\cs_new_eq:NN \tikzlings@names@clist \g__tikzlings_names_clist
\cs_new_eq:NN \tikzlings@packages@clist \g__tikzlings_packages_clist
\ExplSyntaxOff
|