【问题标题】:Markdown to plain text in Ruby?Markdown 到 Ruby 中的纯文本?
【发布时间】:2010-03-30 17:46:39
【问题描述】:

我目前正在使用 BlueCloth 在 Ruby 中处理 Markdown 并将其显示为 HTML,但在一个位置我需要它作为纯文本(没有一些 Markdown)。有没有办法做到这一点?

是否有降价到纯文本的方法?有没有一种 html 到纯文本的方法可以让我感受到 BlueCloth 的结果?

【问题讨论】:

    标签: ruby markdown bluecloth


    【解决方案1】:

    RedCarpet gem 有一个 Redcarpet::Render::StripDown 渲染器,可以“将 Markdown 转换为纯文本”。

    复制并修改它以满足您的需要。

    或者像这样使用它:

    Redcarpet::Markdown.new(Redcarpet::Render::StripDown).render(markdown)
    

    【讨论】:

      【解决方案2】:

      使用 Ruby 将 HTML 转换为纯文本是 not a problem,但当然你会丢失所有标记。如果您只想摆脱 一些 Markdown 语法,它可能不会产生您正在寻找的结果。

      底线是未渲染的 Markdown 旨在用作 纯文本,因此将其 转换 为纯文本实际上没有任何意义。我见过的所有 Ruby 实现都遵循相同的接口,它不提供剥离语法的方法(仅包括 to_htmltext,它返回原始 Markdown 文本)。

      【讨论】:

      • 我对一些标记很好,比如列表;但例如,非技术人员很难阅读链接。
      • 换行、链接(应该做成[1]引用并添加到底部)、标题、元素之间的空白等都可以做得更好。
      【解决方案3】:

      它不是 ruby​​,但 Pandoc 现在编写的格式之一是“plain”。这是一些任意的降价:

      # My Great Work
      
      ## First Section
      
      Here we discuss my difficulties with [Markdown](http://wikipedia.org/Markdown)
      
      ## Second Section
      
      We begin with a quote:
      
      > We hold these truths to be self-evident ...
      
      then some code:
      
          #! /usr/bin/bash
      
      That's *all*. 
      

      (不确定如何关闭语法高亮!)这是相关的“plain”:

      My Great Work
      =============
      
      First Section
      -------------
      
      Here we discuss my difficulties with Markdown
      
      Second Section
      --------------
      
      We begin with a quote:
      
        We hold these truths to be self-evident ...
      
      then some code:
      
          #! /usr/bin/bash
      
      That's all.
      

      您可以从 Github 存储库中 pandoc/blob/master/src/Text/Pandoc/Writers/Markdown.hs 中 plainify 的定义中了解它如何处理从文档中解析出的不同元素;还有一个tutorial 显示修改行为是多么容易。

      【讨论】:

        猜你喜欢
        • 2020-08-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-04-10
        • 2011-03-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多