hackjutsu / Lepton

💻 Democratizing Snippet Management (macOS/Win/Linux)
https://hackjutsu.com/Lepton
MIT License
10.12k stars 475 forks source link

Support pasting images in markdown files #529

Open knugie opened 2 years ago

knugie commented 2 years ago

I like Lepton a lot for many reasons. A feature I use a lot when creating/editing markdown gists in a browser is pasting images directly. I would love to see this feature being aded to Lepton.

Kapture 2022-03-25 at 09 56 56

Would that be something other people are interested in too?

knugie commented 2 years ago

On a more technical note

✅ As far as I can tell, Electron supports pasting image content https://www.electronjs.org/docs/latest/api/clipboard#clipboardreadimagetype

🤔 However, it looks like there is a major technical obstacle: GitHub doesn't support uploading image content programatically - https://github.com/isaacs/github/issues/1133 People have been looking into workarounds for that, but hosting Lepton users' images in e.g. a hackjutsu repo would break a couple of Lepton's core concepts https://gist.github.com/maxisam/5c6ec10cc4146adce05d62f553c5062f

knugie commented 2 years ago

💡 Adding images as files in the user's gist might work (https://docs.github.com/en/rest/reference/gists#create-a-gist). Those images could then be referenced with their raw_url in md file, e.g. https://gist.github.com/knugie/55b6e043dee0a1781810db2131ed89fb

I know the result is not the same, but I would be totally happy with that, plus it even adds to offline usage convenience and portability capabilities. 🤷

hackjutsu commented 1 year ago

Thanks for the research. Image hosting is a blocker and I'm hesitant to introduce a Lepton-specific solution. But if someone implements what @knugie suggests above, I'm happy to add it behind a .leptronrc config.

uwezi commented 1 year ago

I would absolutely support @knugie 's suggestion. Currently I am opening the gist in a browser window directly after creating it with lepton, and then I add the image there - however, the big disadvantage I see there is that the image itself is not included when you later download the gist from Github again. Having the image file as part of the gist would make sure that they stay together.