Bagaimana saya bisa melakukannya di buffer berbeda atau bahkan di buffer saat ini?
Saya mencoba melakukan Github README.md dan rendering Github lainnya untuk penurunan harga (untuk catatan dan semacamnya),
Bagaimana saya bisa melakukannya di buffer berbeda atau bahkan di buffer saat ini?
Saya mencoba melakukan Github README.md dan rendering Github lainnya untuk penurunan harga (untuk catatan dan semacamnya),
Jawaban:
Inilah solusi yang cukup panjang namun efisien.
simple-httpddan M-x httpd-start.markdowndari manajer paket sistem Anda.impatient-modedan M-x impatient-mode.Akhirnya, evaluasi kode ini:
(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)
Perhatikan bahwa add-hookpernyataan tersebut harus lokal untuk penurunan harga, jadi jalankan di buffer itu.
Setelah semua ini, buka browser Anda http://localhost:8080/imp/dan itu akan menyegarkan setiap kali Anda C-x C-s.
Pada mode penurunan harga 2.1 , fungsi ini disediakan dalam markdown-live-preview-mode(terikat ke C-c C-c l).
Ini menggunakan eww untuk rendering HTML. Tangkapan layar:
markdown-exportdaneww, didorong dari kait pemberitahuan pengatur waktu. Tetapi sepertinya bagian yang menarik adalah menentukan bagianewwbuffer HTML yang sesuai denganpointdalam markdown buffer (sehingga mereka dapat menggulir "dalam sinkronisasi").