Vorwort
Markdown ist eine großartige Möglichkeit, einen kurzen Artikel und manchmal ziemlich umfangreichen Text mit einfacher Kursivschrift und dickem Druck zu schreiben. Markdown eignet sich auch zum Schreiben von Artikeln mit eingeschlossenem Quellcode. Aber manchmal möchte ich es in eine normale, gut gestaltete PDF-Datei ohne Verluste übertragen, mit einem Tamburin tanzen und damit es keine Probleme bei der Konvertierung gibt, die zum Beispiel meine waren - Sie können in den Quellcode-Kommentaren nicht auf Russisch schreiben, Zeilen, die zu lang sind, werden nicht übertragen, aber andere kleinere Probleme werden abgeschnitten. Mit dieser Anweisung können Sie den md2pdf- Konverter schnell konfigurieren, ohne besonders zu verstehen, wie er funktioniert. Das Skript für eine weniger automatische Installation finden Sie weiter unten im entsprechenden Abschnitt.
Installieren Sie TexLive
Natürlich können Sie nur die erforderlichen Teile dieses Pakets installieren. Aber ich persönlich war ehrlich gesagt faul, nach der minimal notwendigen Arbeitsinstallation zu suchen. Installieren Sie das gesamte TexLive-Paket, damit alles funktioniert. Es heißt texlive-full und wiegt etwas mehr als 2 Gigabyte. Denken Sie daran. Wir führen den Befehl aus:
user@hostname:~$ sudo apt install texlive-full -y
Nach einer ausreichend langen Installation können Sie mit dem nächsten Schritt fortfahren.
Installieren Sie den Pandoc Converter
Pandoc ist ein Linux-Paket, mit dem Sie einige Textformate in andere konvertieren können. Es hat viele interessante Funktionen, die Sie im Internet kennenlernen können. Wir sind nur an der Möglichkeit interessiert, Markdown-Dateien in PDF zu konvertieren. Überprüfen Sie, ob Pandoc installiert ist, und installieren Sie es, falls nicht. Zum Beispiel so:
user@hostname:~$ dpkg -s pandoc
Wenn die Ausgabe angibt, dass sie nicht installiert ist, installieren Sie:
user@hostname:~$ sudo apt install pandoc -y
Installieren Sie MD2PDF
Sie können zur Skriptseite auf GitHub gehen und dann gemäß den Anweisungen fortfahren.
Oder laden Sie das Archiv herunter, entpacken Sie es in einen beliebigen Ordner, öffnen Sie es im Terminal und befolgen Sie die Anweisungen erneut.
Öffnen Sie ein Terminal und gehen Sie wie folgt vor:
git clone https://github.com/melichron/md2pdf.git && cd md2pdf
Führen Sie dann als root aus, zum Beispiel:
sudo ./install.sh
Beachten Sie, dass das Skript ein Dienstprogramm zum Erstellen von Whiptail-Dialogen für die Konsole verwendet. Wenn Sie es nicht installiert haben oder nicht installieren möchten oder alles selbst ausführen möchten, installieren Sie texlive-full und pandoc manuell und fahren Sie gemäß den Anweisungen fort.
Installieren Sie md2pdf für alle Benutzer:
root@host:~/md2pdf# cp ./src/template.tex $(kpsewhich -expand-var='$TEXMFLOCAL') root@host:~/md2pdf# echo "#!/bin/bash" | tee usr/local/bin/md2pdf root@host:~/md2pdf# echo "pandoc --output=\$1.pdf --from=markdown_github --latex-engine=pdflatex --listings --template=$(kpsewhich -expand-var='$TEXMFLOCAL')/template.tex \$1" | tee -a usr/local/bin/md2pdf root@host:~/md2pdf# chmod 755 /usr/local/bin/md2pdf
Installieren Sie md2pdf für den aktuellen Benutzer:
user@host:~/md2pdf$ cp ./src/template.tex $(kpsewhich -expand-var='$TEXMFHOME') user@host:~/md2pdf$ echo "#!/bin/bash" | tee ~/.local/bin/md2pdf user@host:~/md2pdf$ echo "pandoc --output=\$1.pdf --from=markdown_github --latex-engine=pdflatex --listings --template=$(kpsewhich -expand-var='$TEXMFHOME')/template.tex \$1" | tee -a ~/.local/bin/md2pdf user@host:~/md2pdf$ chmod 755 ~/.local/bin/md2pdf
Mit md2pdf
Öffnen Sie einfach den Ordner mit der Markdown-Datei ( some_file.md ) im Terminal und führen Sie den folgenden Befehl aus:
user@hostname:~$ md2pdf some_file.md
Infolgedessen wird die Datei some_file.md.pdf im Ordner angezeigt .
Fazit
Basierend auf der beschriebenen Methode können Sie jeden Stil von PDF-Dateien erstellen und andere Formate anstelle von md konvertieren, die von Pandoc unterstützt werden. Ich wage zu hoffen, dass diese Anweisung eines Tages für dreieinhalb Personen nützlich sein wird.