Simple File Manager

Moin moin,

SB is perfect for my personal notes. Something that would help me a lot would be a slightly more advanced file manager. Two examples:

Implementation session for product x:

  • PDF with instructions
  • bunch of screenshots
  • used Docker and config file

.Dot Config files:

  • vimrc
  • bash_profile
  • etc.

The idea is to ‘upload’ all these files ‘to a note’, where they are getting uploaded and where I can view, edit and delete them (view and edit depending on the file format).

This would allow me to kill like 2-3 other platforms that I currently use for something ‘so simple’.

Some additional thoughts:

  • PWA Sync mode (too much data, big space) - might be a problem over time? Disable sync for certain ‘file storage’ as option?
  • would be great if someone could reference those files in their notes

Just an idea, though, as I don’t know how much work it would take to implement, if it’s even possible or in the vision of the project.

What do you think?

Cheers

3 Likes

Most of what you are looking for can be done through bash scripts and any one of a number of file managers available on Linux. If you are running a Window Manager like i3 or Hyprland, you can run Silverbullet in one window beside another window with your terminal set up in it. This gives you access to everything you want.

As for accessing your exterior files from inside Silverbullet. It currently only recognizes .md files. However, again, there are a lot of excellent editors outside of Silverbullet. One possible work around would be to create .md versions of your files. Shrug.

Of course, you could create a plugin which would provide the functionality that you are looking for. After all, the introduction to Silverbullet clearly states, “SilverBullet is a note-taking application optimized for people with a hacker mindset.”
Introduction

Just think how much you would learn as you develop that plugin. What an opportunity for any nerd with a hacker mindset!! :grinning:

MrMugame is working on a plug to show/edit other types of files than markdown. So editing dotfiles is in the realm of possibility. :slight_smile:

2 Likes

I just implemented something called document editors. Basically you can just upload files to silverbullet and open them in an editor/viewer, which is implemented by a plug. Currently there isn‘t something for dot files, but it should be fairly simple to implement depending on your needs. I don‘t exactly know what you mean by file manager, but I guess something like this could also be implemented as a plug.

EDIT: Mind you it‘s only on edge right now

2 Likes

Out of the box it now also supports most image file formats. At least viewing :wink:

2 Likes

That goes into the right direction for sure.

To clarify it a little bit more:

  • In my mind, I want to add and upload like 30 screenshots or other files to a note
  • I click some kind of magic button in the note that creates a folder + directory in the space
  • in the browser, it allows me to bulk upload files (pdf, images, what ever) and I can view the content of this folder
  • additionally, when I add stuff to this folder via server backend (rsync etc) it should get indexed and available via ‘file viewer’
  • in SB I can view the pictures (or other files), (editing txt files = not that important), or bulk download

This might be still kinda vague, but I hope I made it more clear - been a long week already haha

Mhm,

  • And have links to them in the note? Or just as a sub folder?
  • Directories/folders don’t really exist in Silverbullet
  • This is currently not possible maybe we could add a multiple argument to this syscall, which would allow uploading multiple files and thus one could implement a space lua or at least a plug to handle multi file upload fairly easily.
  • What’s the “file viewer”?. I think stuff that’s externally added to the space should be detected after a space reindex. Automatically? unsure
  • Image viewing works as mentioned. Bulk download doesn’t work out of the box, but using js interop and space lua could probably make something work here. A little fiddly tho There is an editor.downloadFile syscall, again using space lua you should be able to tinker something here.