Come posso farlo in un buffer diverso o anche nel buffer corrente?
Sto cercando di fare Github README.md e altri rendering Github di Markdown (per note e simili),
Come posso farlo in un buffer diverso o anche nel buffer corrente?
Sto cercando di fare Github README.md e altri rendering Github di Markdown (per note e simili),
Risposte:
Ecco una soluzione piuttosto lunga ma efficiente.
simple-httpde M-x httpd-start.markdowndal gestore dei pacchetti del tuo sistema.impatient-modee M-x impatient-mode.Infine, valuta questo codice:
(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)
Nota che l' add-hookistruzione deve essere locale per Markdown, quindi eseguila in quel buffer.
Dopo tutto questo, apri il browser http://localhost:8080/imp/e si aggiornerà ogni volta che lo farai C-x C-s.
A partire dalla modalità markdown 2.1 , questa funzionalità è fornita in markdown-live-preview-mode(associata a C-c C-c l).
Utilizza eww per il rendering dell'HTML. Immagine dello schermo:
markdown-exporteeww, guidato da un gancio e un timer di notifica di modifica. Ma sembra che la parte interessante sarebbe determinare a quale parte delewwbuffer corrisponde HTMLpointnel buffer di markdown (in modo che possano scorrere "in sincronia").