.. _Tinkerer: Das Blog-System Tinkerer ======================== `Tinkerer `__ ist ein relativ junges Projekt, das auf :ref:`Sphinx ` aufbaut und es erlaubt, ein statisches HTML-Weblog aus einer beziehungsweise mehreren Textdateien mit `Restructured-Text `_-Syntax zu erzeugen. "Statisch" soll hierbei bedeuten, dass es zwar keine Kommentier-Funktion und kein Content-Management-System bietet, dafür allerdings ohne jede Datenbank und serverseitige Skripte auskommt. Es genügt also bereits ein einfacher Webspace ohne Extras, um das Weblog zu hosten. Tinkerer kann folgendermaßen installiert werden: .. code-block:: sh sudo pip3 install Tinkerer Ruft man anscheinend in einer Shell ``tinker`` auf, so bekommt man eine kurze Hilfeseite mit den wichtigsten Programm-Optionen angezeigt. .. _Neues Weblog: .. _Neues Weblog anlegen: .. _Ein neues Weblog anlegen: .. rubric:: Ein neues Weblog anlegen Um mit Tinkerer ein Weblog zu generieren, legt man zunächst ein neues Verzeichnis an; anschließend wechselt man ins Projektverzeichnis: .. code-block:: sh # Blog-Verzeichnis anlegen: mkdir myblog cd myblog Ähnlich wie Sphinx stellt auch Tinkerer eine Routine für das erstmalige Erstellen eines Blogs bereit. Diese wird folgendermaßen gestartet: .. code-block:: sh tinker --setup Einige Basis-Einstellungen können anschließend in der neu erstellten Datei ``conf.py`` im Projektverzeichnis vorgenommen werden: .. code-block:: python # Titel des Blogs festlegen: project = 'Mein Blog' # Zusatzzeile unter dem Blogtitel tagline = 'Eine zusätzliche Header-Zeile' # Kurze Beschreibung dse Blogs: description = 'Sinn dieses Weblogs' # Change this to your name author = 'Vorname Nachname' # Change this to your copyright string copyright = '2016, ' + author # Change this to your blog root URL (required for RSS feed) website = 'http://www.grund-wissen.de/blog/' Der angegebene Webseiten-Pfad ist wichtig, damit die Seite mit einem RSS-Reader abonniert werden kann und die Abonnenten so automatisch über neue Artikel informiert werden. Gibt man in einer Shell ``tinker`` ohne weitere Angaben ein, so werden die möglichen Aufruf-Optionen eingeblendet. .. _Posting: .. _Weblog-Eintrag: .. _Einen neuen Weblog-Eintrag erstellen: .. rubric:: Einen neuen Weblog-Eintrag erstellen Um einen neuen Weblog-Eintrag ('Posting') zu erstellen, gibt man im Projektverzeichnis folgendes ein: .. code-block:: sh # Neuen Blog-Eintrag mit angegebenem Titel erstellen: tinker -p 'Titel des Weblog-Eintrags' Hierdurch wird im Projektverzeichnis eine neue RestructuredText-Datei beispielsweise unter ``2016/03/23/titel_des_weblog_eintrags.rst`` erstellt, wobei die Verzeichnisangabe dem aktuellen Datum entspricht. Diese Datei kann mit einem Texteditor geöffnet und mit Text gemäß der regulären RestructuredText-Syntax gefüllt werden. Gleichzeitig wird in der Datei ``master.rst`` im Projektverzeichnis ein Eintrag ins dortige Inhalts-Verzeichnis aufgenommen: .. code-block:: rst # Datei master.rst Sitemap ======= .. toctree:: :maxdepth: 1 2016/03/23/titel_des_weblog_eintrags Mag man beispielsweise nachträglich den Titel eines Eintrags ändern, so sollte sowohl der Name der ``.rst``-Datei als auch die entsprechende Pfadangabe in der Datei ``master.rst`` angepasst werden. .. _Weblog-Seite: .. _Neue Weblog-Seite erstellen: .. _Eine neue Weblog-Seite erstellen: .. rubric:: Eine neue Weblog-Seite erstellen Um eine neue, statische Weblog-Seite zu erstellen, gibt man im Projektverzeichnis folgendes ein: .. code-block:: sh # Neue Blog-Seite mit angegebenem Titel erstellen: tinker --page 'Titel der Weblog-Seite' Hierdurch wird im Projektverzeichnis eine neue RestructuredText-Datei ``pages/titel_der_weblog_seite.rst`` erstellt. Diese Datei kann wiederum mit einem Texteditor geöffnet und mit Text gemäß der regulären RestructuredText-Syntax gefüllt werden. Auch in diesem Fall wird in der Datei ``master.rst`` im Projektverzeichnis ein Eintrag ins dortige Inhalts-Verzeichnis aufgenommen: .. code-block:: rst # Datei master.rst Sitemap ======= .. toctree:: :maxdepth: 1 2016/03/23/titel_des_weblog_eintrags pages/titel_der_weblog_seite Soll also nachträglich der Name einer Seite geändert werden, so sollte wiederum sowohl der Name der ``.rst``-Datei als auch die entsprechende Pfadangabe in der Datei ``master.rst`` angepasst werden. Statische Seiten wie ein Impressum können beispielsweise verwendet werden, um Informationen über den Autor sowie Kontaktmöglichkeiten zu hinterlegen. .. _Weblog aus Quellcode-Dateien generieren: .. rubric:: Weblog aus Quellcode-Dateien generieren Um aus den ``.rst``-Quelldateien fertige HTML-Seiten zu erzeugen, gibt man im Projektverzeichnis folgendes ein: .. code-block:: sh # Weblog aus Quellcode bauen: tinker -b Durch diesen Aufruf werden die fertigen HTMl-Dateien (bei Verwendung der Standard-Optionen) im Unterverzeichnis ``blog`` innerhalb des Projektverzeichnisses gespeichert. Von dort können sie mit einem FTP-fähigen Dateimanager, beispielsweise :ref:`mc `, auf den zur Domain gehörenden Webspace kopiert werden. .. .. raw:: html ..
.. .. only:: html .. .. rubric:: Anmerkungen: .. .. [#] **Tip:** Da das Projekt noch in Entwicklung ist, lohnt sich womöglich ein .. Eintrag in der entsprechenden Googlegroup. Möchte man dafür jedoch kein .. Google-Konto eröffnen, so genügt auch eine Email an: .. ``tinkerer-dev+subscribe@googlegroups.com`` .. Dies funktioniert nach `dieser Anleitung .. `__ mit jeder Googlegroup.