summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2021-06-07 01:24:52 +0200
committerCarlos Garnacho <carlosg@gnome.org>2021-08-26 14:04:23 +0200
commitc5414ed4da159004ef45d933d7c3f7595cc71fb8 (patch)
tree79ac523cff59da737249719e6811b2a14f96fd62
parent5bf212ad647540442c553a0b2b581994b7abd476 (diff)
downloadtracker-c5414ed4da159004ef45d933d7c3f7595cc71fb8.tar.gz
docs: Generate examples page with actual examples
Do some string replacement here to include the examples.
-rwxr-xr-xdocs/reference/libtracker-sparql/embed-files.py25
-rw-r--r--docs/reference/libtracker-sparql/examples.md.in (renamed from docs/reference/libtracker-sparql/examples.md)0
-rw-r--r--docs/reference/libtracker-sparql/meson.build23
3 files changed, 46 insertions, 2 deletions
diff --git a/docs/reference/libtracker-sparql/embed-files.py b/docs/reference/libtracker-sparql/embed-files.py
new file mode 100755
index 000000000..df993b24f
--- /dev/null
+++ b/docs/reference/libtracker-sparql/embed-files.py
@@ -0,0 +1,25 @@
+#!/usr/bin/python3
+
+import os, sys, re
+
+f = open(sys.argv[1])
+content = f.read()
+f.close()
+
+dirname = os.path.dirname(sys.argv[1])
+
+regex = re.compile('{{(.*)}}')
+matches = regex.findall(content)
+replacements = {}
+
+for m in matches:
+ f = open(os.path.join(dirname, m))
+ embedded = f.read()
+ escaped = embedded.replace('\\', '\\\\')
+ replace = re.compile('{{' + m + '}}')
+ content = replace.sub(escaped, content)
+ f.close()
+
+f = open(sys.argv[2], 'w')
+f.write(content)
+f.close()
diff --git a/docs/reference/libtracker-sparql/examples.md b/docs/reference/libtracker-sparql/examples.md.in
index e3340a4d9..e3340a4d9 100644
--- a/docs/reference/libtracker-sparql/examples.md
+++ b/docs/reference/libtracker-sparql/examples.md.in
diff --git a/docs/reference/libtracker-sparql/meson.build b/docs/reference/libtracker-sparql/meson.build
index a492accfd..14321c810 100644
--- a/docs/reference/libtracker-sparql/meson.build
+++ b/docs/reference/libtracker-sparql/meson.build
@@ -1,3 +1,22 @@
+documents_with_examples = [
+ [ 'examples.md.in', 'examples.md' ],
+]
+examples = []
+
+foreach doc : documents_with_examples
+ examples += custom_target(
+ 'examples-generate',
+ input: doc[0],
+ output: doc[1],
+ command: [
+ 'embed-files.py',
+ '@INPUT@',
+ '@OUTPUT@',
+ ],
+ depend_files: [ doc[0] ],
+ build_by_default: true)
+endforeach
+
base_ontology_docs = custom_target('ontology-docgen',
output: ['dc-ontology.md'],
command: [tracker_docgen,
@@ -12,7 +31,6 @@ base_ontology_docs = custom_target('ontology-docgen',
content = [
'overview.md',
'ontologies.md',
- 'examples.md',
'limits.md',
'performance.md',
'sparql-and-tracker.md',
@@ -22,6 +40,7 @@ content = [
]
generated_content = [
+ 'examples.md',
'xsd-ontology.md',
'dc-ontology.md',
'rdf-ontology.md',
@@ -57,6 +76,6 @@ custom_target(
'--content-dir=@0@'.format(icon_images_base),
'@INPUT1@',
],
- depends: [tracker_sparql_gir[0], base_ontology_docs],
+ depends: [tracker_sparql_gir[0], base_ontology_docs, examples],
depend_files: [ content ],
build_by_default: true)