uEdition 1.3.1__tar.gz → 2.0.0a1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of uEdition might be problematic. Click here for more details.

Files changed (124) hide show
  1. {uedition-1.3.1 → uedition-2.0.0a1}/.github/workflows/release.yml +2 -3
  2. {uedition-1.3.1 → uedition-2.0.0a1}/.pre-commit-config.yaml +2 -5
  3. {uedition-1.3.1 → uedition-2.0.0a1}/PKG-INFO +9 -4
  4. {uedition-1.3.1 → uedition-2.0.0a1}/docs/.gitignore +1 -1
  5. {uedition-1.3.1 → uedition-2.0.0a1}/docs/.uEdition.answers +1 -1
  6. {uedition-1.3.1 → uedition-2.0.0a1}/docs/de/changelog.md +8 -0
  7. {uedition-1.3.1 → uedition-2.0.0a1}/docs/de/index.md +19 -4
  8. uedition-2.0.0a1/docs/de/user/configuration.md +36 -0
  9. uedition-2.0.0a1/docs/de/user/content.md +56 -0
  10. {uedition-1.3.1 → uedition-2.0.0a1}/docs/de/user/language-add.md +1 -1
  11. uedition-2.0.0a1/docs/de/user/language-update.md +12 -0
  12. uedition-2.0.0a1/docs/de/user/publish.md +34 -0
  13. uedition-2.0.0a1/docs/de/user/update.md +13 -0
  14. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/changelog.md +8 -0
  15. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/index.md +19 -4
  16. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/user/content.md +4 -4
  17. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/user/language-add.md +1 -1
  18. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/user/language-update.md +1 -1
  19. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/user/publish.md +1 -1
  20. uedition-2.0.0a1/docs/en/user/working-with-tei.tei +46 -0
  21. {uedition-1.3.1 → uedition-2.0.0a1}/docs/pyproject.toml +3 -1
  22. uedition-2.0.0a1/docs/static/overrides.css +3 -0
  23. {uedition-1.3.1 → uedition-2.0.0a1}/docs/toc.yml +1 -0
  24. uedition-2.0.0a1/docs/uEdition.yml +73 -0
  25. {uedition-1.3.1 → uedition-2.0.0a1}/pyproject.toml +21 -30
  26. uedition-2.0.0a1/tests/conftest.py +82 -0
  27. uedition-2.0.0a1/tests/fixtures/multilang/.gitignore +4 -0
  28. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/toc.yml +0 -1
  29. {uedition-1.3.1 → uedition-2.0.0a1}/tests/test_build.py +6 -0
  30. uedition-2.0.0a1/tests/test_language.py +16 -0
  31. uedition-2.0.0a1/tests/test_serve.py +10 -0
  32. uedition-2.0.0a1/tests/test_settings.py +18 -0
  33. uedition-2.0.0a1/tests/test_update.py +10 -0
  34. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/__about__.py +2 -1
  35. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/cli/__init__.py +0 -7
  36. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/cli/build.py +75 -68
  37. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/cli/language.py +6 -0
  38. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/cli/serve.py +3 -1
  39. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/cli/update.py +6 -0
  40. uedition-2.0.0a1/uedition/ext/config.py +31 -0
  41. uedition-2.0.0a1/uedition/ext/settings.py +131 -0
  42. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/ext/tei/builder.py +2 -3
  43. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/ext/tei/parser.py +91 -107
  44. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/settings.py +16 -7
  45. uedition-1.3.1/docs/de/user/content.md +0 -54
  46. uedition-1.3.1/docs/de/user/language-update.md +0 -12
  47. uedition-1.3.1/docs/de/user/publish.md +0 -33
  48. uedition-1.3.1/docs/en/user/configuration.md +0 -29
  49. uedition-1.3.1/docs/en/user/update.md +0 -13
  50. uedition-1.3.1/docs/uEdition.yml +0 -18
  51. uedition-1.3.1/tests/conftest.py +0 -157
  52. uedition-1.3.1/tests/fixtures/invalid_core_files/en/_config.yml +0 -3
  53. uedition-1.3.1/tests/fixtures/invalid_core_files/en/_toc.yml +0 -3
  54. uedition-1.3.1/tests/fixtures/invalid_core_files/uEdition.yaml +0 -9
  55. uedition-1.3.1/tests/fixtures/missing_core_files/uEdition.yaml +0 -9
  56. uedition-1.3.1/tests/fixtures/missing_files/.gitignore +0 -2
  57. uedition-1.3.1/tests/fixtures/missing_files/en/_config.yml +0 -31
  58. uedition-1.3.1/tests/fixtures/missing_files/en/_toc.yml +0 -8
  59. uedition-1.3.1/tests/fixtures/missing_files/uEdition.yaml +0 -9
  60. uedition-1.3.1/tests/fixtures/missing_toc_root/en/_config.yml +0 -3
  61. uedition-1.3.1/tests/fixtures/missing_toc_root/en/_toc.yml +0 -4
  62. uedition-1.3.1/tests/fixtures/missing_toc_root/uEdition.yaml +0 -9
  63. uedition-1.3.1/tests/fixtures/missing_toc_root_file/en/_config.yml +0 -3
  64. uedition-1.3.1/tests/fixtures/missing_toc_root_file/en/_toc.yml +0 -5
  65. uedition-1.3.1/tests/fixtures/missing_toc_root_file/uEdition.yaml +0 -9
  66. uedition-1.3.1/tests/fixtures/multilang/.gitignore +0 -2
  67. uedition-1.3.1/tests/fixtures/multilang/de/_config.yml +0 -7
  68. uedition-1.3.1/tests/fixtures/multilang/de/_toc.yml +0 -12
  69. uedition-1.3.1/tests/fixtures/multilang/en/_config.yml +0 -7
  70. uedition-1.3.1/tests/fixtures/multilang/en/_toc.yml +0 -12
  71. uedition-1.3.1/tests/fixtures/multilang/en/intro.md +0 -6
  72. uedition-1.3.1/tests/fixtures/multilang/references.bib +0 -56
  73. uedition-1.3.1/tests/test_check.py +0 -54
  74. uedition-1.3.1/uedition/cli/check.py +0 -183
  75. uedition-1.3.1/uedition/ext/config.py +0 -197
  76. {uedition-1.3.1 → uedition-2.0.0a1}/.github/dependabot.yml +0 -0
  77. {uedition-1.3.1 → uedition-2.0.0a1}/.github/workflows/codestyle.yml +0 -0
  78. {uedition-1.3.1 → uedition-2.0.0a1}/.github/workflows/coverage.yml +0 -0
  79. {uedition-1.3.1 → uedition-2.0.0a1}/.github/workflows/tests.yml +0 -0
  80. {uedition-1.3.1 → uedition-2.0.0a1}/.gitignore +0 -0
  81. {uedition-1.3.1 → uedition-2.0.0a1}/.readthedocs.yml +0 -0
  82. {uedition-1.3.1 → uedition-2.0.0a1}/LICENSE.txt +0 -0
  83. {uedition-1.3.1 → uedition-2.0.0a1}/README.md +0 -0
  84. {uedition-1.3.1 → uedition-2.0.0a1}/docs/.readthedocs.yml +0 -0
  85. {uedition-1.3.1 → uedition-2.0.0a1}/docs/de/.uEdition.answers +0 -0
  86. {uedition-1.3.1 → uedition-2.0.0a1}/docs/de/user/create.md +0 -0
  87. {uedition-1.3.1 → uedition-2.0.0a1}/docs/de/user/index.md +0 -0
  88. {uedition-1.3.1 → uedition-2.0.0a1}/docs/de/user/installation.md +0 -0
  89. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/.uEdition.answers +0 -0
  90. {uedition-1.3.1/docs/de → uedition-2.0.0a1/docs/en}/user/configuration.md +0 -0
  91. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/user/create.md +0 -0
  92. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/user/index.md +0 -0
  93. {uedition-1.3.1 → uedition-2.0.0a1}/docs/en/user/installation.md +0 -0
  94. {uedition-1.3.1/docs/de → uedition-2.0.0a1/docs/en}/user/update.md +0 -0
  95. {uedition-1.3.1 → uedition-2.0.0a1}/tests/__init__.py +0 -0
  96. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/basic/uEdition.yml +0 -0
  97. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/empty/.gitkeep +0 -0
  98. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/de/a-1-page.md +0 -0
  99. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/de/a-2-page.md +0 -0
  100. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/de/a-page.md +0 -0
  101. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/de/b-page.md +0 -0
  102. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/de/intro.md +0 -0
  103. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/en/a-1-page.md +0 -0
  104. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/en/a-2-page.md +0 -0
  105. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/en/a-page.md +0 -0
  106. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/en/b-page.md +0 -0
  107. {uedition-1.3.1/tests/fixtures/missing_files → uedition-2.0.0a1/tests/fixtures/multilang}/en/intro.md +0 -0
  108. {uedition-1.3.1/tests/fixtures/missing_files → uedition-2.0.0a1/tests/fixtures/multilang}/references.bib +0 -0
  109. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/multilang/uEdition.yaml +0 -0
  110. {uedition-1.3.1 → uedition-2.0.0a1}/tests/fixtures/yaml/uEdition.yaml +0 -0
  111. {uedition-1.3.1 → uedition-2.0.0a1}/tests/test_about.py +0 -0
  112. {uedition-1.3.1 → uedition-2.0.0a1}/tests/test_ext/test_config.py +0 -0
  113. {uedition-1.3.1 → uedition-2.0.0a1}/tests/test_ext/test_tei/__init__.py +0 -0
  114. {uedition-1.3.1 → uedition-2.0.0a1}/tests/test_ext/test_tei/test_parser.py +0 -0
  115. {uedition-1.3.1 → uedition-2.0.0a1}/tox.ini +0 -0
  116. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/__init__.py +0 -0
  117. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/__main__.py +0 -0
  118. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/cli/create.py +0 -0
  119. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/ext/__init__.py +0 -0
  120. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/ext/language_switcher.css +0 -0
  121. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/ext/language_switcher.js +0 -0
  122. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/ext/language_switcher.py +0 -0
  123. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/ext/tei/__init__.py +0 -0
  124. {uedition-1.3.1 → uedition-2.0.0a1}/uedition/ext/tei/tei_download.js +0 -0
@@ -26,12 +26,11 @@ jobs:
26
26
 
27
27
  - name: Install Base Dependencies
28
28
  run: |
29
- sudo apt-get install python3-venv
30
- sudo pip install hatch
29
+ pip install --user build
31
30
 
32
31
  - name: Build the package
33
32
  run: |
34
- hatch build
33
+ python -m build
35
34
 
36
35
  - name: Publish package distributions to PyPI
37
36
  uses: pypa/gh-action-pypi-publish@release/v1
@@ -1,10 +1,7 @@
1
1
  repos:
2
- - repo: https://github.com/psf/black
3
- rev: 24.1.0
4
- hooks:
5
- - id: black
6
2
  - repo: https://github.com/astral-sh/ruff-pre-commit
7
- rev: v0.1.14
3
+ rev: v0.9.5
8
4
  hooks:
9
5
  - id: ruff
10
6
  args: [--fix]
7
+ - id: ruff-format
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: uEdition
3
- Version: 1.3.1
3
+ Version: 2.0.0a1
4
4
  Project-URL: Documentation, https://github.com/uEdition/uEdition#readme
5
5
  Project-URL: Issues, https://github.com/uEdition/uEdition/issues
6
6
  Project-URL: Source, https://github.com/uEdition/uEdition
@@ -11,17 +11,22 @@ Classifier: Development Status :: 4 - Beta
11
11
  Classifier: Programming Language :: Python
12
12
  Classifier: Programming Language :: Python :: 3.10
13
13
  Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
14
16
  Classifier: Programming Language :: Python :: Implementation :: CPython
15
17
  Classifier: Programming Language :: Python :: Implementation :: PyPy
16
18
  Requires-Python: >=3.10
17
19
  Requires-Dist: copier<10.0.0,>=9.0.0
18
- Requires-Dist: jupyter-book<2.0.0,>=1.0.0
19
20
  Requires-Dist: livereload
20
21
  Requires-Dist: lxml<6.0.0,>=4.9.2
22
+ Requires-Dist: myst-parser<5,>=4.0.1
21
23
  Requires-Dist: pydantic-settings<3.0.0,>=2.0.0
22
24
  Requires-Dist: pydantic<3.0.0,>=2.0.0
23
25
  Requires-Dist: pyyaml<7.0.0,>=6.0.0
24
- Requires-Dist: typer[all]<1.0.0
26
+ Requires-Dist: sphinx-book-theme<2,>=1.1.4
27
+ Requires-Dist: sphinx-external-toc<2,>=1.0.1
28
+ Requires-Dist: sphinx<9,>=8.2.3
29
+ Requires-Dist: typer<1.0.0
25
30
  Description-Content-Type: text/markdown
26
31
 
27
32
  # μEdition
@@ -1,5 +1,5 @@
1
1
  _build
2
2
  site
3
3
  _toc.yml
4
- _config.yml
4
+ conf.py
5
5
  _static
@@ -1,5 +1,5 @@
1
1
  # Changes here will be overwritten by Copier
2
- _commit: v0.1.8
2
+ _commit: v0.6.1
3
3
  _src_path: gh:uEdition/uEdition-project-template
4
4
  author_email: mark.hall@work.room3b.eu
5
5
  author_name: Mark Hall
@@ -1,5 +1,13 @@
1
1
  # Änderungsgeschichte
2
2
 
3
+ ## In Entwicklung
4
+
5
+ * **Entfernt**: Undokumentierten "check" Kommandozeilenbefehl entfernt
6
+
7
+ ## 1.3.2 (26.02.2024)
8
+
9
+ * **Bugfix**: Weiteren Fehler in der Sortierung nach Seitenzahlen behoben
10
+
3
11
  ## 1.3.1 (26.02.2024)
4
12
 
5
13
  * **Bugfix**: Fehler in der Sortierung nach Seitenzahlen behoben
@@ -5,6 +5,20 @@ die technischen Anforderungen und Hostingkosten geht. Die μEdition bietet ein G
5
5
  es ein einfaches Werkzeug anbietet, welches Projekte darin unterstützt einfach (multilinguale) digitale Editionen zu
6
6
  erstellen, welche dann über gratis oder billige Hostinglösungen online verfügbar gemacht werden können.
7
7
 
8
+ :::{admonition} Hilfe und Unterstützung
9
+ :class: tip
10
+
11
+ Die μEdition ist noch ein junges Projekt und benötigt Feedback von Nutzern und Nutzerinnen um die Hürden zur Nutzung
12
+ weiter zu reduzieren. Egal ob dies zusätzliche Dokumentation ist, Fehler beheben, oder zusätzliche Funktionalität,
13
+ bitte informiert uns und dann können wir die μEdition besser machen.
14
+
15
+ Für alle Fragen zur μEdition und zu ihrer Nutzung, nutzt bitte unser GitHub Discussions Forum:
16
+ https://github.com/uEdition/uEdition/discussions.
17
+
18
+ Wenn Fehler auftreten, dann bitte diese über unsere GitHub Issues melden und dann können wir sie reparieren:
19
+ https://github.com/uEdition/uEdition/issues.
20
+ :::
21
+
8
22
  ## Inhaltsverzeichnis
9
23
 
10
24
  :::{tableofcontents}
@@ -12,10 +26,11 @@ erstellen, welche dann über gratis oder billige Hostinglösungen online verfüg
12
26
 
13
27
  ## Schnellstart
14
28
 
15
- Für einen Schnellstart mit der μEdition, folgens sie diesen Schritten (Python 3.10 oder nuer muss bereits installiert sein):
29
+ Für einen Schnellstart mit der μEdition, folgens sie diesen Schritten (Python 3.10 oder neuer und pipx müssen bereits installiert sein):
16
30
 
17
31
  :::{code} console
18
- $ pipx install hatch copier
32
+ $ pipx install hatch
33
+ $ pipx install copier
19
34
  $ copier copy https://github.com/uEdition/uEdition-project-template my-edition
20
35
  🎤 What is the name of your μEdition?
21
36
  My Edition
@@ -33,7 +48,7 @@ $ copier copy https://github.com/uEdition/uEdition-project-template my-edition
33
48
  🎤 What is the repository branch containing your μEdition?
34
49
  main
35
50
 
36
- Copying from template version 0.1.0
51
+ Copying from template version 0.6.1
37
52
  create .
38
53
  create toc.yml
39
54
  create uEdition.yml
@@ -44,7 +59,7 @@ Copying from template version 0.1.0
44
59
  create .gitignore
45
60
  create pyproject.toml
46
61
  $ cd my-edition
47
- $ hatch run uEdition language add cy
62
+ $ hatch run add-language cy
48
63
  🎤 What is the language code?
49
64
  cy
50
65
  🎤 What is the name of the language?
@@ -0,0 +1,36 @@
1
+ # Die μEdition konfigurieren
2
+
3
+ Die μEdition und Sphinx sind sehr konfigurable. Sowohl die μEdition, wie auch die Sphinx Funktionalität
4
+ werden über die {file}`uEdition.yml` (im Wurzelverzeichnis der μEdition) konfiguriert. Der folgende Block zeigt alle
5
+ verfügbaren Konfigurationsoptionen:
6
+
7
+ :::{code-block} yaml
8
+ author: # Die Autor:innen:information bestehend aus
9
+ name: # Dem Autor:in:namen
10
+ email: # Der E-Mailaddresse der/des Autor:in:s
11
+ sphinx_config: # Enthält alle zusätzlichen Sphinx Konfigurationseinträge
12
+ languages: # Die in der μEdition konfigurierten Sprachen. Eine List, in der jeder Eintrag aus folgenden Teilen besteht:
13
+ - code: # Der ISO 639-1 zweistellige Sprachcode
14
+ label: # Der Text der in der Ausgabe für die Sprache angezeigt wird
15
+ path: # Der Dateipfad in dem das sprachspezifische Jupyter Book abgelegt ist
16
+ output: # Das Ausgabeverzeichnis für die komplette μEdition
17
+ repository: # Das Git Repository für diese μEdition:
18
+ url: # Die URL für das Repository
19
+ title: # Der Titel der μEdition in allen konfigurierten Sprachen. Jede konfigurierte Sprache muss vorkommen.
20
+ en: # Abbildung vom ISO 639-1 Sprachcode auf den natürlichsprachlichen Titel
21
+ version: '2' # Die Version der μEdition Konfigurationsdatei. Muss auf "2" gesetzt sein.
22
+ :::
23
+
24
+ Alle Konfigurationselement der Datei sind optional und nicht angegebene Werte werden durch funktionierende Standardwerte
25
+ ersetzt.
26
+
27
+ Alle Sphinx Einstellungen können über den `jsphinx_config` Eintrag konfiguriert werden. Sphinx nutzt eine normale
28
+ Python Datei für die Konfiguration, in der die Konfigurationseinstellungen als Variablen definiert werden und die
29
+ Konfigurationseinstellung dann der Wert ist, der der Variablen zugewiesen wird. In der {file}`uEdition.yml` werden die
30
+ Variablennamen und Einstellung als Schlüssel-Wert Paare im `sphinx_config` Bereich der Datei eingetragen. Zum Beispiel
31
+ könnte das Theme der μEdition mit der folgenden Einstellung umgestellt werden:
32
+
33
+ :::{code-block} yaml
34
+ sphinx_config:
35
+ html_theme: mein-theme
36
+ :::
@@ -0,0 +1,56 @@
1
+ # Inhalte hinzufügen
2
+
3
+ Die μEdition nutzt [Jupyter Book](https://jupyterbook.org) um aus den Inhalten eine Webseite zu generieren,
4
+ welche dann veröffentlicht werden kann. Wenn die Webseite generiert wird, generiert die μEdition zuerst die
5
+ Webseiten für die einzelnen Sprachen und fügt dann die notwendigen Element hinzu um die einzelnen Sprachen
6
+ zusammenzufügen. Da die μEdition auf dem Jupyter Book aufbaut, sind der Großteil der Dokumentation des
7
+ Jupyter Book Projekts auch für die μEdition nutzbar. Der einzige Unterschied ist, dass die μEdition eine
8
+ Konfigurationsdatei und ein Inhaltsverzeichnisse für alle Sprachen nutzt.
9
+
10
+ ## Die μEdition strukturieren
11
+
12
+ Die Struktur der μEdition wird über das Inhaltsverzeichnis definiert, welches in der {file}`toc.yml` Datei
13
+ (im Wurzelverzeichnis der μEdition) konfiguriert wird. Die {file}`toc.yml` Datei nutzt das Format
14
+ [der zugrundeliegenden Jupyter Book Technik](https://jupyterbook.org/en/stable/structure/toc.html). Der
15
+ einzige Unterschied ist, dass die `title` und `caption` Einträge in der μEdition mit sprachspezifischen
16
+ Werten konfiguriert werden. Wenn die μEdition dann generiert wird, werden für jede konfigurierte Sprache
17
+ die jeweils relevanten Werte genutzt:
18
+
19
+ :::{code-block} yaml
20
+ format: jb-book
21
+ root: index
22
+ parts:
23
+ - caption:
24
+ en: Name of Part 1
25
+ de: Name von Teil 1
26
+ chapters:
27
+ - title:
28
+ en: Chapter 1
29
+ de: Chapter 2
30
+ file: path/to/part1/chapter1
31
+ - file: path/to/part1/chapter2
32
+ :::
33
+
34
+ ## Texte schreiben
35
+
36
+ Das Jupyter Book nutzt primär MyST (Markedly Structured Text) um die Textinhalte zu erstellen. Dies ist eine Erweiterung
37
+ des Markdownformats für komplexere Texte. Eine gute Übersicht über die Kernfunktionalität
38
+ [findet sich hier](https://myst-parser.readthedocs.io/en/latest/syntax/typography.html). Das Jupyter Book stellte eine
39
+ Reihe von Erweiterungen bereit, welche [hier dokumentiert sind](https://jupyterbook.org/en/stable/content/index.html)
40
+ und welche die einfache Erstellung von Aspekten wie Glossar, Index, Zitierbarkeit, Fußnoten und Layoutstrukturen.
41
+
42
+ Die μEdition stellt selbst eine Erweiterung zur Verfügung, welche die nutzung von TEI-XML (Text Encoding Initiative)
43
+ sowohl als Eingabe, wie auch als Ausgabeformat bereitstellt.
44
+
45
+ ## Lokaler Server
46
+
47
+ Während des Schreibprozesses kann es hilfreich sein zu sehen, wie das Ergebnis aussieht. Um dies zu vereinfachen stellt
48
+ die μEdition einen eingebauten Webserver zur verfügung, der die generierte μEdition automatisch aktualisiert, wenn die
49
+ Inhalte bearbeitet werden. Um den Server zu starten wird folgender Befehl genutzt:
50
+
51
+ :::{code-block} console
52
+ $ hatch run serve
53
+ :::
54
+
55
+ This generiert die μEdition und macht sie dann unter http://localhost:8000 verfügbar. Wenn die Inhalte geändert werden,
56
+ wird die μEdition automatisch neugeneriert und die Seite im Browser automatisch neugeladen.
@@ -6,7 +6,7 @@ einzigen Sprache veröffentlicht werden soll, diese Sprache trotzdem explizit ko
6
6
  Um der μEdition eine Sprache hinzuzufügen, führen sie folgenden Befehl aus:
7
7
 
8
8
  :::{code-block} console
9
- $ hatch run uEdition language add ORDERNAME
9
+ $ hatch run add-language ORDNERNAME
10
10
  :::
11
11
 
12
12
  Ersetzen sie `ORDNERNAME` mit dem Namen des Orderners in dem die Inhalte in der Sprache gespeichert werden. Der Vorgang
@@ -0,0 +1,12 @@
1
+ # Eine Sprache aktualisieren
2
+
3
+ Die μEdition nutzt dieselbe Schablonenfunktion für jede Sprache und diese müssen für jede Sprache einzeln
4
+ aktualisiert werden. Dazu wird folgender Befehl genutzt:
5
+
6
+ :::{code-block} console
7
+ $ hatch run update-language ORDNERNAME
8
+ :::
9
+
10
+ Dabei wird `ORDNERNAME` mit dem Namen des Verzeichnisse, in dem das sprachspezifische Jupyter Book sitzt, ersetzt.
11
+
12
+ Ähnlich wie beim Update der μEdition selbst, sollten alle Änderungen überprüft werden, bevor weitergearbeitet wird.
@@ -0,0 +1,34 @@
1
+ # Die μEdition publizieren
2
+
3
+ Wenn die μEdition in einem Zustand ist, in dem sie publizert werden kann, dann generiert folgender Befehl
4
+ eine publizierbare Version:
5
+
6
+ :::{code-block} console
7
+ $ hatch run build
8
+ :::
9
+
10
+ Die μEdition generiert dann die Webinhalte in das konfigurierte Ausgabeverzeichnis (Standardmäßig das Verzeichnis
11
+ {file}`site`). Der Inhalt kann dann auf eine beliebige Hostinglösung kopiert werden und ist dann öffentlich
12
+ Verfügbar.
13
+
14
+ ## Auf GitHub Pages publizieren
15
+
16
+ Die μEdition kommt standardmäßig mit Unterstützung um die μEdition über [GitHub Pages](https://pages.github.com/)
17
+ zu publizieren. Damit das funktioniert müssen folgende Vorraussetzungen erfüllt werden:
18
+
19
+ * Die μEdition muss ein Git Repository nutzen.
20
+ * Ein Benutzerkonto auf [GitHub](https://www.github.com) muss verfügbar sein.
21
+ * Ein Repository muss auf GitHub konfiguriert sein und die μEdition muss in dieses Repository gepushed werden.
22
+
23
+ Danach in GitHub in dem Repository in den Bereich {guilabel}`Settings` navigieren und dann zu {guilabel}`Pages`.
24
+ Auf der {guilabel}`Pages` Seite muss unter der Überschrift {guilabel}`Build and deployment` die {guilabel}`Source`
25
+ Auswahl auf "GitHub Actions" gesetzt sein.
26
+
27
+ Um die μEdition manuell zu publizieren, in GitHub im Respository auf {guilabel}`Actions` navigieren und dort links den
28
+ {guilabel}`Publish the site` Workflow auswählen. Dieser Workflow kann manuell getriggered werden. Dazu auf den
29
+ {guilabel}`Run workflow` Knopf klicken und dann auf den grünen {guilabel}`Run workflow` Knopf im Popup klicken.
30
+ Dies startet den Publikationsvorgang und wenn der Workflow abgeschlossen ist, can die μEdition unter der URL, die
31
+ unter {guilabel}`Settings` > {guilabel}`Pages` angezeigt wird, aufgerufen werden.
32
+
33
+ Der Workflow ist auch so konfiguriert, dass die μEdition automatisch publiziert wird, sobald eine Änderung im
34
+ primären Branch erfolgt.
@@ -0,0 +1,13 @@
1
+ # Die μEdition aktualisieren
2
+
3
+ Die μEdition Projektschablone wird von Zeit zu Zeit aktualisiert. Um die μEdition auf den neuesten Stand zu bringen,
4
+ wird folgender Befehl genutzt:
5
+
6
+ :::{code-block} console
7
+ $ hatch run update
8
+ :::
9
+
10
+ Dies wird alle Änderungen der Projektschablone auf die μEdition anwenden.
11
+
12
+ Der Updatevorgang sollte die μEdition in keiner Weise beschädigen, es wird aber empfohlen alle Änderungen zu überprüfen,
13
+ bevor an der μEdition weitergearbeitet wird.
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## In Development
4
+
5
+ * **Removed**: Removed undocumented "check" command
6
+
7
+ ## 1.3.2 (26.02.2024)
8
+
9
+ * **Bugfix**: Further bugfix in the sorting by page functionality
10
+
3
11
  ## 1.3.1 (26.02.2024)
4
12
 
5
13
  * **Bugfix**: Fix a bug in sorting by page
@@ -5,6 +5,20 @@ hurdles, particularly around technical knowledge and hosting costs. The μEditio
5
5
  providing a simple tool that supports users in easily building (multi-lingual) digital editions that can then easily be made
6
6
  available online using free or low-cost hosting solutions.
7
7
 
8
+ :::{admonition} Getting Help
9
+ :class: tip
10
+
11
+ The μEdition is still a young project and relies on your feedback to further lower the barriers to its use. Whether this is
12
+ adding documentation on how to do things, fixing broken things, or adding extra features, please let us know what is needed
13
+ and then we can make it better.
14
+
15
+ If you have any questions about anything related to the μEdition, please use our GitHub Discussions forum to ask:
16
+ [https://github.com/uEdition/uEdition/discussions](https://github.com/uEdition/uEdition/discussions).
17
+
18
+ If you run into any bugs, then please report these via the GitHub Issues and we can get them fixed:
19
+ [https://github.com/uEdition/uEdition/issues](https://github.com/uEdition/uEdition/issues).
20
+ :::
21
+
8
22
  ## Contents
9
23
 
10
24
  :::{tableofcontents}
@@ -12,10 +26,11 @@ available online using free or low-cost hosting solutions.
12
26
 
13
27
  ## Quickstart
14
28
 
15
- To quickly get started with the μEdition, follow these steps (assuming you already have Python 3.10 or newer installed):
29
+ To quickly get started with the μEdition, follow these steps (assuming you already have Python 3.10 or newer and pipx installed):
16
30
 
17
31
  :::{code} console
18
- $ pipx install hatch copier
32
+ $ pipx install hatch
33
+ $ pipx install copier
19
34
  $ copier copy https://github.com/uEdition/uEdition-project-template my-edition
20
35
  🎤 What is the name of your μEdition?
21
36
  My Edition
@@ -33,7 +48,7 @@ $ copier copy https://github.com/uEdition/uEdition-project-template my-edition
33
48
  🎤 What is the repository branch containing your μEdition?
34
49
  main
35
50
 
36
- Copying from template version 0.1.0
51
+ Copying from template version 0.6.1
37
52
  create .
38
53
  create toc.yml
39
54
  create uEdition.yml
@@ -44,7 +59,7 @@ Copying from template version 0.1.0
44
59
  create .gitignore
45
60
  create pyproject.toml
46
61
  $ cd my-edition
47
- $ hatch run uEdition language add cy
62
+ $ hatch run add-language cy
48
63
  🎤 What is the language code?
49
64
  cy
50
65
  🎤 What is the name of the language?
@@ -37,19 +37,19 @@ parts:
37
37
  Jupter Book primarily uses MyST or Markedly Structured Text for writing text content, which is an extension of Markdown
38
38
  designed for publishable content. A good overview over the core functionality can be found
39
39
  [here](https://myst-parser.readthedocs.io/en/latest/syntax/typography.html). Jupyter Book provides a range of extensions
40
- built upon the core MySQ structure, which are documented [here](https://jupyterbook.org/en/stable/content/index.html)
40
+ built upon the core MyST structure, which are documented [here](https://jupyterbook.org/en/stable/content/index.html)
41
41
  and which include useful things like glossaries, indices, citations, footnotes, plus elements for structuring the layout
42
42
  of the page and its content.
43
43
 
44
44
  ## Local server
45
45
 
46
46
  While writing it can be helpful to see what the result will look like. To simplify this, the μEdition provides a built-in
47
- web-server that automatically re-generates the website when you edit the content. To start this server, run the
47
+ web-server that automatically re-generates your μEdition when you edit the content. To start this server, run the
48
48
  following command:
49
49
 
50
50
  :::{code-block} console
51
51
  $ hatch run serve
52
52
  :::
53
53
 
54
- This will build the μEdition and then make it available at http://localhost:8000. When you make changes to the content,
55
- the μEdition will automatically re-build the website and automatically reload the view in the browser.
54
+ This will build your μEdition and then make it available at http://localhost:8000. When you make changes to the content,
55
+ the μEdition will automatically re-build your μEdition and automatically reload the view in the browser.
@@ -6,7 +6,7 @@ a single language only, you need to explicitly configure this one language.
6
6
  To add a language to your μEdition, run the following command:
7
7
 
8
8
  :::{code-block} console
9
- $ hatch run uEdition language add FOLDER_NAME
9
+ $ hatch run add-language FOLDER_NAME
10
10
  :::
11
11
 
12
12
  Replace `FOLDER_NAME` with the name of the folder that the μEdition content for that language is to be placed in. The
@@ -4,7 +4,7 @@ The μEdition uses the same template approach for each language that you set up
4
4
  from the main update. Run the following command to update a single language:
5
5
 
6
6
  :::{code-block} console
7
- $ hatch run uEdition language update PATH
7
+ $ hatch run update-language PATH
8
8
  :::
9
9
 
10
10
  Replace `PATH` with the name of the folder of the language you wish to update.
@@ -4,7 +4,7 @@ When you have your μEdition in a state that you want to publish it, then run th
4
4
  publishable version:
5
5
 
6
6
  :::{code-block} console
7
- $ hatch run publish
7
+ $ hatch run build
8
8
  :::
9
9
 
10
10
  The μEdition will build the site into the configured output folder, which by default is {file}`site`. You can then
@@ -0,0 +1,46 @@
1
+ <tei:TEI xmlns:tei="http://www.tei-c.org/ns/1.0">
2
+ <tei:teiHeader>
3
+ <tei:fileDesc>
4
+ <tei:titleStmt>
5
+ <tei:title>Working with TEI</tei:title>
6
+ <tei:author>
7
+ <tei:persName>Hall, Mark</tei:persName>
8
+ </tei:author>
9
+ </tei:titleStmt>
10
+ </tei:fileDesc>
11
+ </tei:teiHeader>
12
+ <tei:text>
13
+ <tei:body>
14
+ <tei:p>
15
+ <tei:seg>This is an example section.</tei:seg>
16
+ </tei:p>
17
+ <tei:p style="align-right">
18
+ <tei:seg>This paragraph is aligned to the </tei:seg>
19
+ <tei:hi style="italic">right</tei:hi>
20
+ <tei:seg>.</tei:seg>
21
+ </tei:p>
22
+ <tei:p>
23
+ <tei:seg>It is also possible to reference elements in another section using </tei:seg>
24
+ <tei:ref target="#annotation-1">references</tei:ref>
25
+ <tei:seg>.</tei:seg>
26
+ </tei:p>
27
+ <tei:head id="tei-configuration" type="level-1">
28
+ <tei:seg>Configuring the TEI mapping</tei:seg>
29
+ </tei:head>
30
+ </tei:body>
31
+ <tei:interpGrp>
32
+ <tei:interp id="annotation-1">
33
+ <tei:p>
34
+ <tei:seg>This is the first annotation.</tei:seg>
35
+ </tei:p>
36
+ </tei:interp>
37
+ <tei:interp id="annotation-2">
38
+ <tei:p>
39
+ <tei:seg>This is the second annotation. It has a </tei:seg>
40
+ <tei:ref target="#annotation-1">cross-reference</tei:ref>
41
+ <tei:seg> to another annotation.</tei:seg>
42
+ </tei:p>
43
+ </tei:interp>
44
+ </tei:interpGrp>
45
+ </tei:text>
46
+ </tei:TEI>
@@ -18,10 +18,12 @@ Issues = "https://github.com/uEdition/uEdition/-/issues"
18
18
  Source = "https://github.com/uEdition/uEdition/-"
19
19
 
20
20
  [tool.hatch.envs.default]
21
- dependencies = ["uedition>=0.9.0",]
21
+ dependencies = ["uedition>=1.3.0,<2",]
22
22
  skip-install = true
23
23
 
24
24
  [tool.hatch.envs.default.scripts]
25
25
  build = "uEdition build {args}"
26
26
  serve = "uEdition serve {args}"
27
27
  update = "uEdition update {args}"
28
+ add-language = "uEdition language add {args}"
29
+ update-language = "uEdition language update {args}"
@@ -0,0 +1,3 @@
1
+ [data-tei-attribute-style="align-right"] {
2
+ text-align: right;
3
+ }
@@ -11,4 +11,5 @@ chapters:
11
11
  - file: user/publish
12
12
  - file: user/update
13
13
  - file: user/language-update
14
+ - file: user/working-with-tei
14
15
  - file: changelog
@@ -0,0 +1,73 @@
1
+ author:
2
+ email: mark.hall@work.room3b.eu
3
+ name: Mark Hall
4
+ languages:
5
+ - code: en
6
+ label: English
7
+ path: en
8
+ - code: de
9
+ label: Deutsch
10
+ path: de
11
+ output: site
12
+ repository:
13
+ url: https://github.com/uEdition/uEdition
14
+ title:
15
+ de: "\u03BCEdition"
16
+ en: "\u03BCEdition"
17
+ sphinx_config:
18
+ html_static_path:
19
+ - _static
20
+ html_css_files:
21
+ - overrides.css
22
+ tei:
23
+ blocks:
24
+ - name: paragraph
25
+ selector: tei:p
26
+ tag: p
27
+ attributes:
28
+ - type: text
29
+ name: style
30
+ - name: heading-1
31
+ selector: tei:head[@type="level-1"]
32
+ tag: h1
33
+ attributes:
34
+ - type: static
35
+ name: type
36
+ value: level-1
37
+ - name: heading-2
38
+ selector: tei:head[@type="level-2"]
39
+ tag: h2
40
+ attributes:
41
+ - type: static
42
+ name: type
43
+ value: level-1
44
+ marks:
45
+ - name: emphasis
46
+ selector: tei:hi[@style="italic"]
47
+ tag: em
48
+ - name: annotation-ref
49
+ selector: tei:ref
50
+ tag: a
51
+ attributes:
52
+ - type: id-ref
53
+ name: target
54
+ - type: html-attribute
55
+ name: target
56
+ target: href
57
+ sections:
58
+ - name: metadata
59
+ type: metadata
60
+ selector: /tei:TEI/tei:teiHeader
61
+ fields:
62
+ - title: Author
63
+ type: single
64
+ selector: tei:fileDesc/tei:titleStmt/tei:author/tei:persName/text()
65
+ - name: bodytext
66
+ title: Main text
67
+ type: text
68
+ selector: /tei:TEI/tei:text/tei:body
69
+ - name: annotations
70
+ type: textlist
71
+ title: Annotations
72
+ selector: /tei:TEI/tei:text/tei:interpGrp/tei:interp
73
+ version: "2"