laptop icon indicating copy to clipboard operation
laptop copied to clipboard

app-request: File Manager / VFS required

Open Gerold55 opened this issue 7 years ago • 9 comments

Todo list:

  • [ ] Multiple ports support #72
  • [ ] HDD block device: Move HDD implementation to "not removable HDD-Item"
  • [ ] VFS layer including subdirs #64
  • [ ] VFS URI definition (DOS style 'hdd://', 'C:' or Unix style FHS mountpoints?)
  • [ ] command line parser supporting files with spaces, how to parse copy my first file.txt my second file.txt
  • [ ] Port file save/load file, used stickynote
  • [ ] Develop "CP" command for CS-BOS #111
  • [ ] Develop generic file manager based on "save/load file" app

Gerold55 avatar Dec 20 '17 02:12 Gerold55

I know an file manager is needed on each computer. But I am lacking the vision how the file manager should be in this mod. We do not have "files" to be managed. Each mod manages his data byself. The Text-App creates files-like objects for texts, but already managed by the "os:select_file" app. So I do not see the need for the file manager at the time. Maybe later, if we have other file-like objects from other apps...

bell07 avatar Dec 20 '17 08:12 bell07

I like the idea of this: Open the file explorer app from the launcher, and you get an app screen with two buttons at the top: New Folder and New Text Document. Click New Folder, and it gives you an input asking you what you want it to be named. Type a name, and a folder is created in the file explorer. You can do the same thing inside that folder as well.

Clicking New Text Document will bring up the same pop-up that asks you what you want it to be named. Name it, and it appears in the folder you created it in. Opening the text document will bring you to a text editor that looks exactly the same as the sticky notepad, but it only edits that particular file.

There also needs to be a way to delete the folders and documents as well, but I can't think of how to do that right now. Maybe have a delete button for the folder/document you currently have opened? Maybe a copy, cut, and paste function as well.

Here's how I think it should be organized: The folders are in a hierarchic form on the left side of the screen (Like the advanced settings menu). Single click one to open the folder and display all the text documents stored there, or double click it to open the folder to display the subfolders contained in that folder. Double click it again to hide the subfolders. This way, it's possible to navigate the folders quickly and have the text documents in a separate area.

For example:

screenshot 2

As you can see, the folders are on the side while the documents are contained in the other area.

Also, add functionality so that the sticky notepad can save documents in folders located in the computer. Use the same hierarchic form to navigate to the folder where it will be saved as mentioned above.

That's my (long) idea of how it should work.

v-rob avatar Dec 25 '17 01:12 v-rob

The file manager could also be used to look at multiple flashdrives and to transfer items and to delete/create new files

Gerold55 avatar Jan 21 '18 04:01 Gerold55

I like the idea of a file manager as well, it would open up a lot of possibilities.

apachano avatar Mar 14 '18 06:03 apachano

So I think if this were approached I would build a file system into the computers themselves then build a file browser application. The file browser then can open up files in the text editor, all similar to a real computer. You would also have command prompts that are able to manipulate files.

apachano avatar Mar 14 '18 06:03 apachano

There is some initial work on VFS for CS-BOS https://github.com/Gerold55/minetest-laptop/blob/master/apps/cs-bos_app.lua#L66

the file system should be compatible for CS-BOS too, so we need a URI-Syntax. THe CS-BOS uses at the time [FH]DD:filename without folders and supporting only 1 HDD and 1 FDD as implemented in framework. Before we can start the "full-sized VFS" some other things needs to be done. I collected some points for #111 - "CP-Command" that requires VFS and URI-Syntax too:

Full prerequisite todo list:

  • [ ] Multiple ports support #72
  • [ ] HDD block device: Move HDD implementation to "not removable HDD-Item"
  • [ ] VFS layer including subdirs #64
  • [ ] VFS URI definition (DOS style 'hdd://', 'C:' or Unix style FHS mountpoints?)
  • [ ] command line parser supporting files with spaces, how to parse copy my first file.txt my second file.txt

bell07 avatar Mar 14 '18 07:03 bell07

Well lets get started designing this! Do you have a discord for instant messaging? I wanna help and GitHub is a little slow to communicate on. Also I cant find it what does VFS Mean?

apachano avatar Mar 14 '18 07:03 apachano

VFS is Virtual file system layer https://en.wikipedia.org/wiki/Virtual_file_system The "concrete file system" already implemented by named data partitions per app and media. At the time different implementation for hdd (simple) and fdd (block_device layer) that I like to unify at the first (porting hdd to block_device layer)

I do not use any instand messaging, it is bad for personal time management

bell07 avatar Mar 14 '18 07:03 bell07

I guess that is fair, regardless I would like to help, you say multiple port support is first then I will head to that discussion and help there.

apachano avatar Mar 14 '18 07:03 apachano