emacs - 在 Emacs 缓冲区中渲染 Markdown

标签 emacs elisp markdown

是否可以使用 Emacs 自己的缓冲区文本格式化功能在 Emacs 缓冲区中呈现 Markdown?图形环境中的 Emacs 具有丰富的文本呈现功能(字体样式、颜色、链接甚至图像),因此这应该是完全可能的。是否有任何现有的实现?

请注意,我们的想法是让渲染的 Markdown 成为 native Emacs 格式的文本,可以像 Emacs 中的任何其他文本一样进行导航和操作。因此,渲染到嵌入 Emacs 缓冲区中的图像的解决方案在这里并不理想。

另请注意,这不是一种编辑 Markdown 的模式,而是用于在 Emacs 缓冲区中呈现渲染的 Markdown。为了可移植性,它最好是一个纯 Emacs Lisp 解决方案。

最佳答案

就我个人而言,我使用以下工作流程:

  • C-c C-c m 上运行以在当前缓冲区上运行 Markdown 并在另一个缓冲区中预览输出。
  • 移动到另一个缓冲区上的 html-mode (M-x html-mode)
  • 隐藏 html 标签以显示接近输出的内容 (M-x sgml-tags-invisible)

然后,每次您想要刷新渲染时,只需在 Markdown 缓冲区上再次运行 C-c C-c m 即可。

但我承认到目前为止,对于 Markdown 编辑/预览来说,没有什么比 Textmate 及其 Markdown 预览面板更好的了。实际上,从个人角度来看,我唯一喜欢运行 Textmate 而不是 Emacs 的情况是当我想编辑 Markdown 文件时。然而,在 emacs 上获得相同质量的预览并不是那么困难,也许我应该研究一下。在我看来,这很简单:

  • 获取 Textmate 用于渲染预览的内部 css
  • 使用 w3 或 w3m 预览使用此 css 的 Markdown 输出

关于emacs - 在 Emacs 缓冲区中渲染 Markdown,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3409484/

相关文章:

emacs - 在 Emacs 中,如何在一系列初始化语句中排列等号?

emacs 组织模式 : folder alias for links in org-files

emacs - match-* 函数不工作?

emacs - 如何在 elisp 中用变量替换硬编码字符串?

json - Elisp - 来自 API 响应的 json-read-from-string

emacs - Emacs 中的 C 注释 - Linux 内核风格 v2

version-control - 在 Emacs Lisp 中获取 VC 根

eclipse - 如何使用 Markdown 格式在 Eclipse WikiText 中创建嵌套列表

markdown - 从 Markdown 转换为 Word 时更改字体系列和大小?

github - Markdown /Github : syntax highlighting of code block as a child of a list