FILTER EMBEDS

Filter tags from embedded blocks using the page filters from above The name of the script is filter-embeds.

Installation

You could use the Copy Extension button below to individually install this extension. To install, just paste anywhere in your Roam graph and click "Yes, I Know What I'm Doing".

Manual Installation

If instead you prefer to manually install, first create a block with the text {{[[roam/js]]}} on any page in your Roam DB. Then, copy and paste this code block as a child of the block.

var existing = document.getElementById("filter-embeds");
if (!existing) {
  var extension = document.createElement("script");
  extension.src = "https://roamjs.com/filter-embeds.js";
  extension.id = "filter-embeds";
  extension.async = true;
  extension.type = "text/javascript";
  document.getElementsByTagName("head")[0].appendChild(extension);
}

Usage

Any page with embeds will now respect page filters.

To create an embed, type {{embed:((block-uid))}} into a block. Note, that this is a native Roam feature.

To use a page filter, click the filter icon on the top right of a page. The filters will apply to all embeds on the page. Embed block's original page filters will also apply to it.

Only filters applied after installing the extension will apply to embeds. Any previous filter will need to be reapplied for the script to be aware of it.

This extension currently only supports REMOVE filters on a page. This is because Roam will filter out the full embed, since it's on a block without the tag. Supporting includes has been added to the queue.

Demo

Contributors

A special thanks to those who's contributions helped make this extension possible:

Emoji Key

Other Extensions