Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RSS Feed Generation #7290

Closed
dragonstyle opened this issue Oct 19, 2023 Discussed in #7280 · 4 comments
Closed

RSS Feed Generation #7290

dragonstyle opened this issue Oct 19, 2023 Discussed in #7280 · 4 comments
Assignees
Labels
enhancement New feature or request listings websites Issues creating websites
Milestone

Comments

@dragonstyle
Copy link
Collaborator

Discussed in #7280

Originally posted by prncevince October 18, 2023

Description

Quarto Website Document Listing Feeds Reference:

It appears that the following option includes a large portion of the HTML webpage (everything in <main> after <header>) in the <item><description> tag/node of an RSS feed document XML format document:

listing:
  feed:
    type: full

Additionally, it appears that the following option includes the contents of the first <p> encountered after <main><header> HTML tag within <item><description> of the XML:

listing:
  feed:
    type: partial

This can significantly reduce the amount of HTML content pushed to the RSS feed XML document.

Additionally, options like YAML header metadata descriptions for listing item pages do not get pushed to the RSS feed file in either of these options.

I'm new to the RSS feed game, but I believe that storing rich content (e.g. iframes from widgets) may be overkill. This can produce very large RSS feeds that popular RSS readers (e.g. Feedly), do not actually parse. Additionally, if the goal is to generate additional custom content automatically from the RSS feed (e.g. a newsletter), this type of content may not be desired.

I guess that one could run a post processing text parsing script on their Quarto project to remove such content from the <description><![CDATA[[ ...]]></description> XML tag using project:post-render.

Or maybe more options could be built-in to base Quarto as extra listing:feed:type options?

Or possible, a listing:feed:remove field can be added to selectively remove rich content based on scraping search matches?

e.g. [no-iframes, no-social-embeds, etc.]

Thoughts? Thanks!

@dragonstyle dragonstyle self-assigned this Oct 19, 2023
@dragonstyle dragonstyle added this to the v1.4 milestone Oct 19, 2023
@mcanouil mcanouil added enhancement New feature or request websites Issues creating websites labels Oct 19, 2023
@evmckinney9
Copy link

evmckinney9 commented Oct 20, 2023

I'd like to see this feature as well.

Additionally, options like YAML header metadata descriptions for listing item pages do not get pushed to the RSS feed file in either of these options.

I would prefer if posts in the RSS feed had the actual post's description rather than the current behavior, which seems to be the entire text of the blog post. The RSS specification confirms the description attribute only needs to be a synopsis.


To clarify, here is example post from quarto's RSS feed:

<item>
<title>Quarto for Academics</title>
<dc:creator>Mine Çetinkaya-Rundel</dc:creator>
<link>https://quarto.org/docs/blog/posts/2023-05-22-quarto-for-academics/</link>
<description>
<![CDATA[ <p>Quarto offers a myriad of features that are especially useful for academics, as educators and as researchers. These range from chunk options that enable automatic linking of code to documentation, to article templates for manuscript submission to multiple journals. The following video walks you through some of these features.</p> <div class="quarto-video ratio ratio-16x9"><iframe data-external="1" src="https://www.youtube.com/embed/EbAAmrB0luA" title="" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe></div> <p>Select highlights include:</p> <ul> <li>Linking to documentation from code with <a href="../../../../docs/output-formats/html-code.html#code-linking"><code>code-link</code></a>.</li> <li>Informative YAML errors and YAML completion.</li> <li>Creating Quarto slides with <a href="../../../../docs/presentations/revealjs/">revealjs</a>.</li> <li><a href="../../../../docs/presentations/revealjs/presenting.html#print-to-pdf">PDF export</a> of HTML slides.</li> <li>Annotating slides with <a href="../../../../docs/presentations/revealjs/presenting.html#chalkboard"><code>chalkboard</code></a>.</li> <li>Advancing slides for your audience with <a href="../../../../docs/presentations/revealjs/presenting.html#multiplex"><code>multiplex</code></a>.</li> <li>Highlighting code with <a href="../../../../docs/presentations/revealjs/#line-highlighting"><code>code-line-numbers</code></a>.</li> <li>Customizing output location with <a href="../../../../docs/presentations/revealjs/index.html#output-location"><code>output-location</code></a>.</li> <li>Showing code chunk fences with <a href="../../../../docs/computations/execution-options.html#fenced-echo"><code>echo: fenced</code></a>.</li> <li><a href="../../../../docs/authoring/code-annotation.html">Code annotation</a>.</li> <li>Authoring manuscripts with Quarto <a href="../../../../docs/journals/index.html">journal templates</a>.</li> <li><a href="../../../../docs/visual-editor/technical.html#citations">Inserting citations</a> from Zotero or from a DOI with the <a href="../../../../docs/visual-editor/">RStudio Visual Editor</a>.</li> </ul> <p>If you would like to follow along as you watch, you can find the source code for everything created in the video in <a href="https://github.com/mine-cetinkaya-rundel/quarto-for-academics">this GitHub repository</a>.</p> ]]>
</description>
<category>Learn</category>
<guid>https://quarto.org/docs/blog/posts/2023-05-22-quarto-for-academics/</guid>
<pubDate>Mon, 22 May 2023 00:00:00 GMT</pubDate>
<media:content url="https://quarto.org/docs/blog/posts/2023-05-22-quarto-for-academics/quarto-for-academics-video-cover.png" medium="image" type="image/png" height="80" width="144"/>
</item>

However, the actual post description:
A video highlighting some of Quarto’s features that are especially useful for academics, as educators and as researchers. is absent, which is what I would prefer to be able to set in-place of the full post text.

@dragonstyle
Copy link
Collaborator Author

(Note that the partial contents of the feed already represent a thinned version of HTML which doesn't include elements such as iframes. If there are specific examples of tags shouldn't be present in this partial preview, we should open issues to track that specifically).

@maximlt
Copy link

maximlt commented Jan 31, 2024

This issue is not ticket in #7906. Should it be re-opened?

@cwickham
Copy link
Collaborator

cwickham commented Feb 7, 2024

@maximlt It moved to #8303 ...and currently working on it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request listings websites Issues creating websites
Projects
None yet
Development

No branches or pull requests

5 participants