让现代 rss2email 发出参考 Markdown 链接

让现代 rss2email 发出参考 Markdown 链接

回到 rss2email 2.70,链接在帖子末尾作为 Markdown 参考链接发出:

blah blah [blah blah][1] blah bleh

  [1]: http://www.example.com/blah-blah/

URL: http://www.example.com/blahs

然而,使用现代版本的 rss2email(特别是在我的例子中,3.9),链接将作为内联 Markdown 链接发出。更糟糕的是,它们最终被文字包裹了!

blah blah [blah blah](http://www.example.com/blah-
blah/) blah bleh

URL: http://www.example.com/blahs

我能找到的唯一相关配置选项links-after-each-paragraph描述作为:

将链接放在每个段落之后而不是末尾。

我似乎找不到任何控制链接是否作为内联链接或参考 Markdown 链接发出的东西。

如何让 rss2email 3.9 发出博客文章内容中链接的参考 Markdown 链接?

答案1

此更改似乎是由于.html2text使用的包的 python3 版本的更改所致rss2email。这用法对于该包,讨论命令行选项--reference-links执行您想要的操作:“使用参考链接而不是内联链接来创建 Markdown”。查看它的 python 代码,这INLINE_LINKS将成为您需要从rss2email.

查看rss2email/config.py(在你的某个地方的Python代码/usr/lib/python*/site-packages/ directory or simlar),你可以看到该例程setup_html2text()用于配置html2text

class Config (_configparser.ConfigParser):
    ...
    def setup_html2text(self, section='DEFAULT'):
        """Setup html2text globals to match our configuration
        """
        ...
        _html2text.BODY_WIDTH = self.getint(section, 'body-width')

这将是添加一些压倒性的额外配置的地方。但是,我发现要么我不理解这段代码,要么有一个错误,因为_html2text.BODY_WIDTH没有使用,但有一个_html2text.config.BODY_WIDTH似乎更正确。

通过编辑此文件并向此例程添加以下行(使用空格而不是制表符缩进):

        _html2text.config.INLINE_LINKS = False
        _html2text.config.USE_AUTOMATIC_LINKS = False
        _html2text.config.LINKS_EACH_PARAGRAPH = True

我获得的邮件输出与早期版本的rss2email.

相关内容