Wie lebe ich eine Markdown-Vorschau, während ich sie schreibe?


14

Wie kann ich das entweder in einem anderen Puffer oder sogar im aktuellen Puffer machen?

Ich versuche, Github README.md und andere Github-Renderings von Markdown (für Notizen und ähnliches) durchzuführen.


Auf den ersten Blick scheint dies unkompliziert zu sein, wenn Sie markdown-exportund verwenden eww, basierend auf einem Hook und Timer für Änderungsmeldungen. Aber es scheint so, als würde der interessante Teil bestimmen, welchem ​​Teil des ewwPuffer-HTML pointim Markdown-Puffer entspricht (damit sie "synchron" scrollen können).
Greg Hendershott

Antworten:


4

Hier ist eine ziemlich lange, aber effiziente Lösung.

  1. Installieren Sie simple-httpdund M-x httpd-start.
  2. Installation markdownvom Paketmanager Ihres Systems.
  3. Öffnen Sie Ihren Abschriftenpuffer und führen Sie ihn aus markdown-export. Dadurch wird eine HTML-Datei im selben Verzeichnis erstellt.
  4. Öffnen Sie diese HTML-Datei.
  5. Installieren Sie impatient-modeund M-x impatient-mode.
  6. Gehen Sie zurück zu Ihrer Abschriftendatei.

Bewerten Sie abschließend diesen Code:

(defun markdown-export-continuous (&optional output-file)
  (interactive)
  (let ((input-file (buffer-file-name))
        (output-file (markdown-export-file-name ".html")))
    (when output-file
      (with-current-buffer (find-file-noselect output-file)
        (erase-buffer)
        (insert
         (shell-command-to-string
          (format "markdown %s" input-file)))
        (save-buffer)))))
(add-hook 'after-save-hook 'markdown-export-continuous t t)

Beachten Sie, dass die add-hookAnweisung für Markdown lokal sein muss. Führen Sie sie daher in diesem Puffer aus.

Öffnen Sie nach all dem Ihren Browser http://localhost:8080/imp/und er wird jedes Mal aktualisiert, wenn Sie C-x C-s.


Ich sehe die HTML-Datei in localhost: 8080 / imp, aber ich muss darauf klicken, um sie zu sehen, und Cx Cs scheint nicht zu aktualisieren. Oder ist das beabsichtigt?
CodeSammich

Gibt es außerdem eine Möglichkeit, anstatt nur Abschriften zu exportieren, Abschriften mit Github-Geschmack zu exportieren?
CodeSammich

5

Ab Markdown-Modus 2.1 wird diese Funktionalität in markdown-live-preview-mode(gebunden an C-c C-c l) bereitgestellt .

Es verwendet eww zum Rendern des HTML. Bildschirmfoto:

Live-Vorschau von Markdown

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.