Have Obsidian be the handler of .md files (file association)

In case it’s still relevant, I made a Zotero add-on that lets you open existing Obsidian notes for items in Zotero: ZoteroObsidianCitations . It also adds a tag to the corresponding items in your Zotero database, which you can color so that Zotero items associated with MD notes are visible at a glance.

ZoteroObsidianCitationsMenu

Of course, having obsidian be a better file explorer with keyboard functionality and better view would work as well. Then I wouldn’t need to use the file explorer.

The Quick Explorer plugin makes it easier to browse and preview in Obsidian using the keyboard. It’s not as good as Windows’ own explorer, but I created it because of the same frustration

I’m not allowed to open md files with obsidian in the file explorer.

You can drag and drop them into Obsidian and then open them, but that’s probably not what you want, as it’ll make a copy – even if the file was already in your vault! (I’d love to see Obsidian check whether dropped files are already in the vault, and if so, not import a new copy, as it would make for better interop with both File Explorer and NotebooksApp.)

I personally use Typora for non-vault files, but for File Explorer integration I do have a Windows Script Host script registered as a menu item for .md files, that converts the file path into a URL and opens it in Obsidian. (Assuming it’s under a vault.) The script is in Python, and looks roughly like this:

#!cscript
import os, urllib
(filename,) = list(WScript.Arguments)
os.startfile(
    "obsidian://open?path=" + urllib.quote(filename)
)

This will only open markdown files that are within some Obsidian vault, however. If it’s not in a vault you’ll get an error message. The registry entries I used to enable it were:

[HKEY_CLASSES_ROOT\Applications\Typora.exe\shell\open_with_obsidian]
@="Open with Obsidi&an"
"Icon"="C:\\Users\\pje\\AppData\\Local\\Obsidian\\Obsidian.exe"

[HKEY_CLASSES_ROOT\Applications\Typora.exe\shell\open_with_obsidian\command]
@="C:\\Windows\\SysWOW64\\wscript.exe \"E:\\Users\\pje\\cyghome\\DSI\\automata\\Open_In_Obsidian.pys\" \"%1\""

But please don’t ask me for help on adapting this to your system, because I honestly don’t know for sure how I set WSH up to begin with nor am I even certain what version of Python was used (though it’s probably in the 2.5-2.7 range). It’s been a decade minimum since I first set up the Windows Script Host stuff and haven’t touched it much since. (Also, the registry entry for Typora.exe is obviously not what you’d change if that’s not your system-default markdown editor!)

2 Likes

I wanted to request this as well. I uses Quicksilver Mac OS to open individual files, which is much more convenient than having to launch Obsidian and then use open the file I want within Obsidian.

Chaoses-Ib/ObsidianShell

I wrote a small program to implement that on Windows. If the .md file is in a Vault, it will open the Vault, otherwise it will use the fallback method to open the file.

File list

6 Likes

I would love this feature as well. Following