Thunderbird 中 RSS 源的“文件夹视图”在哪里?

问题描述 投票:0回答:3

全部,

我已从 Google Reader 切换到 Thunderbird 来阅读/管理 RSS 源。

由于某种原因,我导入的提要的文件夹视图没有显示在 Thunderbird 中,但在“管理订阅”面板中,文件夹层次结构被保留。

请参阅随附的屏幕截图。

有什么想法吗?

谢谢!

Thunderbird RSS folder issue

thunderbird rss-reader
3个回答
2
投票

我认为 Thunderbird 中没有 rss 的文件夹视图。 您可以安装 Bamboo 插件,但您也可以在 Firefox 中安装。

这里有一个解决方法:

  1. 右键单击您的 rss 文件夹
  2. 搜索消息...
  3. 将下拉框从“包含”更改为“不包含”
  4. 在文本字段中输入一个疯狂的单词(我输入“zigloo”,可以肯定地认为它永远不会出现在 rss feed 中,但你可能会变得更疯狂)
  5. 单击“另存为搜索文件夹”

然后您可以为其命名并将其放在您想要的位置。


1
投票
带有提要的

.opml 文件采用 Xml 格式,因此您可以将每个叶子(没有子元素的outline元素)放入人工包装元素中,这将在 Thunderbird 中获得可见的文件夹。因此您的初始 .opml 文件:

<opml version="1.0">
  <body>
    <outline text="Birds">
      <outline title="ParrotBlog" xmlUrl="http://parrot.com/feed"/>
    </outline>
  </body>
</opml>

应转换为:

<opml version="1.0">
  <body>
    <outline text="Birds">
      <outline text="ParrotBlog">
        <outline title="ParrotBlog" xmlUrl="http://parrot.com/feed"/>
      </outline>
    </outline>
  </body>
</opml>

您可以使用在线 Xslt 转换器(这里这里)来执行 (xml+xslt)->xml。使用 Xsl 转换:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="outline[not(child::*)]">
  <xsl:element name="outline">
      <xsl:attribute name="text"><xsl:value-of select="@title"/></xsl:attribute>
      <xsl:copy>
        <xsl:apply-templates select="@* | node()"/>  
      </xsl:copy>
  </xsl:element>
</xsl:template>
    <xsl:template match="/ | @* | node()">
  <xsl:copy>
    <xsl:apply-templates select="@* | node()"/>  
  </xsl:copy>
</xsl:template>
</xsl:stylesheet>

在您找到合适的 Feed 聚合器之前,此解决方法可能对您有用。


0
投票

user63289 的回答允许我将我的提要从 QuiteRSS 导入 Thunderbird,但我必须稍微修改 XSL 转换,因为我的 OPML 文件采用以下格式:

<opml version="1.0">
  <body>
    <outline text="Birds">
      <outline text="ParrotBlog" xmlUrl="http://parrot.com/feed"/>
    </outline>
  </body>
</opml>

唯一的区别是“text=”而不是“title=”这一行。如果您遇到此问题,只需稍微修改 XSL 转换即可:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="outline[not(child::*)]">
  <xsl:element name="outline">
      <xsl:attribute name="text"><xsl:value-of select="@text"/></xsl:attribute>
      <xsl:copy>
        <xsl:apply-templates select="@* | node()"/>  
      </xsl:copy>
  </xsl:element>
</xsl:template>
    <xsl:template match="/ | @* | node()">
  <xsl:copy>
    <xsl:apply-templates select="@* | node()"/>  
  </xsl:copy>
</xsl:template>
</xsl:stylesheet>
© www.soinside.com 2019 - 2024. All rights reserved.