Change Default Drag and Drop Embed Behaviour?

I think achieving it would be very difficult. Your question is very specific meaning you have to use some of the power plugins that can do many things.

 

In Templater you have tp.system.clipboard() but files are not supported.
https://silentvoid13.github.io/Templater/internal-functions/internal-modules/system-module.html#tpsystemclipboard

 

In QuickAdd you have quickAddApi.utility.getClipboard() but I doubt it supports files.

const clipboardText = await quickAddApi.utility.getClipboard();
console.log("Clipboard contains:", clipboardText);

https://quickadd.obsidian.guide/docs/QuickAddAPI#getclipboard-promisestring

 

And lastly you have Shell commands plugin which offer {{clipboard}}. Support for files is very limited.
https://publish.obsidian.md/shellcommands/Variables/{{clipboard}}

 

If you can for example retrieve file path from {{clipboard}} then you can use other shell commands to move files to your vault and then return the customized link.

You can also monitor files created in your vault if you drag and drop them into files:
https://publish.obsidian.md/shellcommands/Events/File+created

With some custom code in Shell commands you could then insert file links in active note (or clipboard) if their file extension is pdf (etc).

 

And very finally there is Linter which can do many powerful things maybe including solving your use case.
https://platers.github.io/obsidian-linter/settings/custom-rules/

 


I came up with some other solution not featuring any plugins:

  1. Disable wikilinks:
  2. Drag and drop your file to Files (left side bar)
  3. Go to your active note and write [[ and select your file either using down arrow ↓ and enter or left click

You can use this feature to reveal current folder:

And there is command Focus on last note if you want to reveal last active note.

1 Like