The Ideal File Manager

Let’s say I have a file on which I want to execute a certain instruction (e.g., “open with whatever program”).

I (and I believe most people) prefer to accomplish things in this order: Go to the file; then open it. It is also possible to run the program and then instruct the program to open the file, but I almost never do this.

Now, there are basically two interfaces that I use and that are really available: the command line and the graphical file browser.

The command line has some big advantages in terms of finely tuned instructions. If you were to use the script “engliSH” that I wrote–well, if I’d continued work on it, anyway–then it would be even more natural.1

The graphical file browser has a big advantage in terms of selecting which files will be the object of the commands.

Think about it in terms of explaining to another person what you want to happen. To describe what needs to be done, you want to use language. To describe the location of something, however, it is often easier to gesture or even make a little drawing.

So, the ideal file manager, in my opinion, would be graphical with a command line on the bottom. Without clicking anything, typing would allow you to enter commands (e.g., a bash shell). Clicking would let you change directories and select files, etc. Hitting enter would then execute the commands you entered on the selected files. It would combine “showing” and “telling” using the strong points of each.

Konqueror can actually be made to operate pretty closely to this, but there are extra clicks involved.


1 english was a “natural language” shell. Basically, it’s a python script that translates fairly natural language into bash commands.

An actual engliSH session could look like this:

$ list all files here
[ ... ]
$ now delete them

This code in the engliSH shell ends up getting translated as ls ./* and then rm -f ./*

If I hadn’t quit working on it, my goal was to get to the point of being able to use complex descriptions like “the text document I last edited” or “all the songs that start with the letter ‘a’” . Even getting the pronouns to work was pretty neat.

2 Responses to “The Ideal File Manager”

Gravatar Jason

I’m curious how your phython script worked. I did very little Python programming, but I was a Perl guru. A simplified version of your script’s functionality could be accomplished with simple shell aliases.

Gravatar Dylan

Honestly, the script did not do much. It basically did singular/plural pronoun substitution, trimmed out certain words such as articles, and then matched things to a table of phrases->bash commands if possible.

It’s true that shell aliases would work. The pronoun substitution thing was probably where shell aliases would cease working (unless you got really fancy and grepped out certain commands from the ! history).

I shouldn’t be surprised that a perl guru would try to find a one-line regular expression based solution. ;)

Actually, I’m just glad that there’s another person who appreciates the finer things in computing.

Leave a Reply

Creative Commons License
By submitting a comment, you agree to place it under the Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States License.

Powered by WP Hashcash