Obsidian plugin to help embed links automatically instead of using iframes
Assuming you have Obsidian downloaded, Download the plugin: https://obsidian.md/plugins?id=auto-embed
- Paste a link
- Select "Create Embed"
- (Optional) Add Options
- Done! Wait for the embed to load
Uses the same syntax as Obsidian - Embed Web pages. Syntax: ![options](link)
Auto embeds websites like: Imgur, CodePen, Steam. Full list of supported websites
Warning
Those websites have *
means that it has some sort of limitation. See Current Limitations & Known Bugs for more info
For a list with examples of how the websites look like Supported Websites List
How to add options:
- In between the square brackets -
![add options here](https://example.com)
- If you aren't sure which options are available, refer to the table below
Option | Description | Example Markdown |
---|---|---|
noembed | Disables embedding for this link. If possible, try using [](link) instead. Same syntax, just without '!' |
![noembed](https://example.com) |
w:value / width:value |
Sets embed's width | ![w:100%](https://example.com) |
h:value / height:value |
Sets embed's height | ![h:500px](https://example.com) |
Uses CSS Units where applicable.
TODO: Add a table that lists all the CSS classes users can override.
A brief overview with some steps on how the plugin works. Not required to use the plugin, just for those who are curious. Certain steps vary depending on whether you're in Reading View or Live Preview. However, the plugin doesn't have any impact when you're in source mode.
- Search where in the document the syntax is found.
- In Reading View:
Searches for the<img>
tag that's generated by Obsidian when you use this format:![](link)
- In Live Preview:
Searches for![](link)
and gets the options and URL from it.
- In Reading View:
- Get the URL from it, and convert it to the embed equivalent. Usually adds
/embed/
somewhere in the url. Results in the same website but focused only on the content. No headers, footer, etc - Replace those tags with
<iframe>
and apply options (width, height, dark mode, etc) - Some websites like Twitter, Reddit or Imgur, will send a resize message. The plugin uses the info to resize the embed.
- Add support for other websites (If you want other websites, create an issue or message me)
- Google Maps
- Google Docs
- Google Calendar
- Notion
- Other websites. Iframely has a list of websites that can be embedded.
- Add tests
- Updated README.md
- Improve readability. Open to suggestions, especially if something isn't clear.
- Add images/gifs to show examples
- Add installation instructions
- Submit to Obsidian plugin directory?
- General
- Live Preview: It's still experimental which means it might have bugs.
- Mobile: Not tested yet
- Website specific
- Reddit: Incorrect resizing of Reddit embeds when multiple Reddit embeds appear in the same view.
Temporary fix methods:- Space out Reddit embeds such that there aren't multiple embeds in your view
- Manually set the height by using options:
![h:240px](Reddit link)
- Spotify: Only able to play 30 seconds of a song. Spotify only allows when the user is logged in to the browser, which isn't possible in Obsidian.
- Twitter & YouTube: Since Obsidian supports it, I won't interfere with it. However, it means options isn't supported. I might be able to replace Obsidian's embeds with mine, but options will only work in Live Preview, but not Reading Mode. This makes an inconsistent user experience but if you want this feature, contact me / create a pull request.
- Twitter / X: Obsidian supports https://twitter.com but not https://x.com. This plugin just helps to embed X. If you replace Twitter with x, or vice versa, it'll lead to the same tweet/post. Usually when copying from the mobile app, it's X. When copying from the web, it's Twitter.
- Reddit: Incorrect resizing of Reddit embeds when multiple Reddit embeds appear in the same view.
Please send any issues you found!
- Have you enabled the plugin?
- Are you following this syntax?
![](link)
For example:![](https://example.com)
- If it still doesn't work, try contacting me or create an issue.
I've just started Obsidian and this is my first plugin.
If you have any questions, feature requests or issues feel free to create an issue or contact me!
Email - gnoxnahte@gmail.com
Discord DM - https://discordapp.com/users/222261096738717696
If this plugin helped you and want to support its development, consider supporting me at Ko-fi
- Inspired by Sam Warnick's Simple Embed. Changed a lot of things from it though.