jujuXplorer

This is a draft project: it contains some working material and comments about the feature I want in that jujuXplorer

Re-Inventing an Explorer/Manager/Commander  for Files and Directories

What exploring ?

Explore according to Merriam-Webster
1 a : to investigate, study, or analyze : look into <explore the relationship between social class and learning ability> —sometimes used with indirect questions <to explore where ethical issues arise — R. T. Blackburn> b : to become familiar with by testing or experimenting <explore new cuisines>
2: to travel over (new territory) for adventure or discovery
3: to examine especially for diagnostic purposes <explore the wound>

Why ?

File explorers have almost not changed since early 1980′s !

  • We have more and more files
  • It is more time consuming to find them, to organize them, to copy, to erase …etc…
  • Different contents, this enforces the need for different views
  • There is a need to have better file explorers, file managers, file commanders …etc…

How ?

It will be the longest part of this page….
I will discuss in detail problems and means to provide one or more solution

Copy/Cut/Paste Selection Issue

  • As a lot of people, I widely use the Copy/Cut/Paste
  • But, I am a bit frustrated by the selection process:
    • You can select a set of items with a box using your mouse, but it is limited, because it is only a ”contiguous” area
    • You can select some items one after the other one, it is too long and error prone
    • You can select all
  • The limitation of the previous selection process is the introduction of unneeded sequentiality when you perform an ”operation”
    • You select a set, you copy, you switch to the target  tab or window, you paste, you go back to the source tab or window
  • It is a long and an error prone process because there are many introduced switches due to previous limitations in the selection process

The “BAG” mean

  • According to Merriam-Webster 1: a usually flexible container that may be closed for holding, storing, or carrying something: as a : purse; especially : handbag b : a bag for game c : suitcase
  • We can put some files/directories in the bag
  • You can inspect and modify the content of the bag
  • We perform an action (or a list of actions) on such bag: Copy, Delete…etc…
  • I will prefer this mode with the ”BAG” mean
    • You select a set, you push it in the bag
    • Finally, you paste the content of the bag in the target tab or window
    • You go back to the source tab or window
  • You can focus only on the selection before performing the action
  • It is simpler and not error prone: you can inspect the bag and change its content if you have made a mistake !

Filtering files

  • In a regular Explorer, we can filter files according to the date, size, or name. Sometimes, we can filter according to so-called “extension”, but it not enough.
  • Sometimes, you want to “cluster” or “aggregates” some files according to the “kind” of the content. It is obvious that the extension scheme is not working in general.
  • Such cluster introduces some hierarchy, we add a new node that describes the kind of the content: image, video …etc…
  • This additional hierarchy reduces the amount of things we have to see, and it provides a clearer view both from a logical/semantic point of view but also at the display view, we can show a more abstract information

The libmagic mean to get the kind of the file content

  • The “file” command (see this link) is using so-called magic number to return what is the “kind” of the content.
  • There is a libmagic library (used by the file command, see this link) that provides such “mean” to known what is the “kind” of the content.
  • So, it is possible for a given list of files/directories to get the kind of each object such that we can after cluster them according to some filter or category provided by the “explorer” or a custom one provided by the user.

Regular expression mean to filter files through names/extensions/kind

  • Regular expressions (RegEx see this link) are ubiquitous when you use the command line.
  • RegEx are simple, short, elegant but there are few utilizations as filter for “explorer”.
  • For a given list, we can apply a RegEx and generate a filtered view.

Displaying Files/Directories with Tree

  • There are limitations with the display and our human eyes: the eyes can just see a few set of items, and any display has some limitations on the number of items that can be shown.
  • Ok, the previous statement is so obvious… but there is no explorer that tries to cluster the content of files to be able to show at most 10 items with some “hierarchical” mean.