Internal Browser

I have looked and may have missed this feature, but is there a way to use a browser internal to Obsidian (i.e. open links in a browser pane) rather than an external browser?

(Mindmanager is another tool I use which has an internal browser pane which helps keep continuity within the one app).

Thank you.

1 Like

Yep, I’ve been hankering for the same, a more integrated view of reference materials located outside the vault. Obsidian does have iframe capabilities, but there is so much more to a browser implementation than merely displaying a fixed page. Our default browser is likely to be full screen with menus and tabs, which is why I use a second browser, the highly customizable Vivaldi, for pop-up views from Obsidian, mediated via an AutoHotkey script.

I’d love to be able to embed a Vivaldi window (and for other file types the Windows app QuickLook) within an Obsidian pane.

Thanks for the comfirmation. You are right, the ability to embed a window (rather than just an iframe) would be excellent.

How do you use Vivaldi script with Obsidian? Just curious for my preferences…

Well a little complicated, but here’s the overview:

I have about 11,000 documents maintained in Scrivener, RTFs and HTMLs, and I want to display them seamlessly in Obsidian via a Vivaldi pop-up. Technique is to read Scrivener’s binder (its document tree) via AutoHotkey, then write it out as an MD file, a nested unordered list. Links to the docs are represented as Obsidian URIs.

Clicking on a URI link (Action: New) creates a file with a command and parameters in a scratch vault on a ram drive (IMDisk). I use the AutoHotkey routine WatchFolder() to watch for changes in the scratch vault folder, then AHK code to read and delete the file generated by the Obsidian URI, and then parse its contents for a command, and for the specified Scriv document to convert and display.

It’s kinda Rube Goldberg, but used with care this routine effectively extends the reach of an Obsidian URI to the entire file system.

Rgds - Jerome

@box222 Don’t remember the plugin name, but I remember there is a plugin that does that. Can be found in the plugin directory.

I see there’s an ePub Reader Plugin that absolutely proves the concept. With the plugin activated, an ePub in the Vault will snap display in an Obsidian pane as quickly and easily as an MD file dies. By contrast, an HTML takes four or five seconds to display in its default browser (on my admittedly slow silent PC.)

Read-only display of HTML files, those in the vault at least, would make a great plugin or native Obsidian capability.

Note: this seems like it could be tricky from a security perspective unless you are trying to just display HTML that you wrote that does not include any scripts etc. that you did not write! Browsers have lots of isolation and protections that a desktop app such as Obsidian does not have.

That said, if I write HTML source code into a blank note and then go into “Reading Mode” (or in “Live Preview” move my cursor outside the outermost HTML tags) it seems to show up as rendered HTML. Again, assuming the HTML files are yours and contain only code that you trust completely, have you tried renaming them to put an .md extension on the end and see how they look in Obsidian?

You could also look into converting the HTML into Markdown if that fits your use case. Obsidian has a setting at the bottom of the “Editor” page that can do that automatically for copy-pasted HTML code.

@scholarInTraining Thanks, you’re exactly right about the security concern; I use a local CKEditor5 script that works brilliantly in the browser but won’t load in an Iframe within Obsidian. Also: HTMLs renamed or converted to MD display perfectly, but I need these to remain HTMLs because they constitute a personal wiki; they link to each other and I move them across platforms.

So the solution is to enhance the behavior of the iframe. I need to iframe only two HTML docs, since they link out to all the HTMLs I’ll want to display within Obsidian.

First problem is that iframe doesn’t have a Home or a Back button. (Obsidian’s Back button helpfully takes us one step back within the iframe, but no more.) Easiest route I’ve found to a painless reload of Home is to have a row of Obsidian links above the iframe, and make A and B versions of the document, identical except that A’s first link is to B, and B’s first is to A. A click thereupon and Home is reloaded.

(Edit: An earlier version of this post elaborated on my belief that an iframe could not be sized responsively. I’ve since found that width: 100%; works perfectly to fit the iframe into a pane, but that the user must compensate for scaling. So if we use transform: scale(1.5); we’d use width: 67%; or thereabouts to fit the pane.)

Styling iframe seems to be the best route to local HTML display.

Cheers - Jerome

2 Likes

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.