File managers have a curious, some would say unique, place in desktop computerdom. They seem to be only slightly behind text editors in their ability to trigger religious conflict among true believers. It's not hard to find instances of one user reacting to another's choice of file manager with, "You use what???", a situation that can quickly put the "personal" (as in ad hominem) back into personal computing.
|Figure 1: Midnight Commander file manager.|
File managers have a curious, some would say unique, place in desktop computerdom. They seem to be only slightly behind text editors in their ability to trigger religious conflict among true believers. It’s not hard to find instances of one user reacting to another’s choice of file manager with, “You use what???”, a situation that can quickly put the “personal” (as in ad hominem) back into personal computing.
File managers are also like text editors in that their users are very prone to exhibiting the “baby duck syndrome.” This quaint term refers to the way baby ducks will “imprint” on the first entity they’re exposed to for any length of time (be it a duck, a human, or whatever), and treat it as its mother. Editor and file manager users are much the same way — they imprint on one set of features, keystrokes, and appearance, and often don’t even consider looking for an alternative. I’m no different from anyone else in this regard — I still configure the function keys in any editor I use to match the set I learned at IBM about a billion years ago on the mainframe editor XEDIT, and I always set the colors for marked blocks to the same scheme I’ve been using for years on desktop systems, whenever possible.
This imprinting is a natural side effect of the amount of time we spend with these programs, and the sheer number of low-level interactions (keystrokes, mouse clicks) we have with them during a work day. It’s not hard to find newbies who think that the file manager is the operating system’s interface.
This user behavior is also why many of the large, full-featured text editors don’t just allow for the customization of key bindings (the actions attached to special keystrokes, such as ctrl-x-c in Emacs to quit), but they even come with pre-built sets of bindings and other settings to mimic certain other editors. To some degree we see a measure of this mimicry in Linux file managers, as there are a number that claim to be similar to Windows Explorer or the Methuselah of file managers, X-Tree.
This reluctance to change causes a problem, though, since there are probably as many file managers for Linux floating about the Net as there are text editors, and few users take the time to look for a better alternative. They don’t even think about it. Generally the Linux file managers are serviceable if imperfect; unfortunately, and that’s often enough to keep people from trying new options.
I spent some time recently downloading and testing various file managers, and found some interesting things, as well as a few pitfalls to avoid. Because of the personal nature of file managers I’ll try not to inflict my opinion on the remainder of this column, except in well marked places.
Shades of Gray
I won’t attempt to create a formal taxonomy of file managers (even my geekiness has a limit), but some basic classifications are obvious once you take a quick look at the different varieties. Note that some file managers — Midnight Commander for example — fall into several of these categories.
The first category is the single-pane, very simple file manager that shows you a mix of directories and files in a single “pane” of a window, typically without a tree representation of the directory structure. Since I consider these to be barely file managers at all, and there are so many other, far more functional, programs just waiting to be downloaded, I say no more about them here.
Next up are two-pane file managers,which show you two views of your file space, side-by-side, so you can more easily move files from one to the other.Within this category are numerous programs with an even wider range of features available, including ytree and Midnight Commander. Some of these programs are relatively straightforward, while some, like X-Files, take the “Whoever dies with the most buttons wins” approach to interface design. Which style you prefer is purely a matter of taste. This is one of the rare times, though, when it’s not a good idea to trust your initial reaction to a user interface. (And admit it — we all make those kinds of snap judgments when evaluating software.) I found that some of the file managers only showed their true colors after a few hours of use, and some grew on me quite a bit as I tried different tasks with them.
|Figures 2 and 3: ytree (top) and XTC.|
The third group is a real oddity –clones of the old DOS program X-Tree. This is a full-screen, character-mode program that uses two panes, one for a directory tree, and one for a file list, plus some screen real estate for function-keys and/or commands. X-Tree apparently has the same addictive qualities of certain controlled substances, based on the number of people I’ve encountered who use the original or one of the many clones available. There are several Linux entries in this group, including Midnight Commander and ytree, mentioned above, and xtc (). All the ones I’ve seen to date have been character mode programs that will run either on a console or in an XTerm window.
And finally we come to what I call the “full featured” file managers, most notably those that come with GNOME and KDE: Midnight Commander (GNOME) and KFM (KDE’s K File Manager). These two are quite important for a couple of reasons. First, since each is part of its desktop environment, many people automatically lock in to using them, without giving much thought to alternatives. Second, they’re more fully integrated into the desktop environment in terms of things like drag-and-drop support, making them easier and more natural to work with in some instances. Personally, I have some minor quibbles with both file managers, but I switch between them regularly and can still get my work done without trouble.
Here Be Dragons
If you’re going to take my advice and experiment with file managers, please take all my advice, including the following:
Don’t dive in, download a dozen file managers, and start pounding away on all of them at once. That’s like trying to develop an appreciation for classical music by listening to all nine of Beethoven’s symphonies for the first time in one long sitting. It just won’t work, and you’re guaranteed to come away confused and glassy eyed. My recommendation is to pick just a few that look enticing (for whatever reason any software looks enticing to you), and then try each one in isolation from the others and in parallel with your usual file manager for at least two or three days. That’s about how long it will take for most users to get over the learning curve and begin to understand a program on its own terms.
|Figure 4: xplore file manager.|
As you scout around for file managers on the Net, you’ll see a lot of programs described as providing a “Windows Explorer-like” interface. Whether you do or don’t want something that looks like Explorer, take such descriptions with a grain of salt. Of the numerous files I saw labeled that way, none of them was close enough to Explorer for the description to fit.
When you find a file manager that you want to test drive, look first for a pre-built binary version of the program that’s compatible with the libraries on your system, to avoid the hassles of compiling. Some of the file managers I experimented with built almost effortlessly, others were nightmares that only succumbed to profanity and extensive keyboard pounding, and a couple simply wouldn’t build into a usable program, no matter what I did. I’m not sure what it is about file managers as programming projects, but they seem to be even more prone to dependencies on development libraries and subtle configuration details than the average project. In particular, those that require a specific library, such as Gtk+ 1.2 or later, are not kidding, so make sure you know what’s in your computer before you start experimenting. For that matter, even if you’re using a pre-built program, check its system requirements carefully.
Just as important is knowing exactly what the program you’re running is, as obvious as that may sound. I downloaded the source for Midnight Commander version 4.5.30 and built it (via one of the longest-running configure-and-make processes for a program of this size I’ve ever seen), but then absentmindedly started it from the file manager within KDE. It locked up the GUI tight as a drum. I had to ctrl-alt-backspace to shutdown KDE and X, and even then I couldn’t enter anything at the command line, and had to reboot via ctrl-alt-delete. Midnight Commander runs fine either at a console or from an xterm on the same system, but it sure didn’t like running under X. I got the same result with xtc, but ytree managed to lock up the system so badly I had to resort to ye olde reset button, one of the very few times I’ve seen Linux do the Redmond shuffle.
|Figures 5 and 6: X-Files (top) and Worker.|
The documentation that comes with these programs is also varied, even by the standards of free (as in beer) software. Some programs come with surprisingly good documentation, some have nothing more than a minimal README file, and a few have nothing at all. Luckily, most of these programs are obvious enough that you can find your way around them, at least well enough to form a reasonable opinion, without documentation. Another issue you’ll wind up dealing with is file associations. These are configuration settings that allow you to tell your system that, for example, all files with names ending in .jpg are JPEG files that should be opened by GIMP. A few of the independent file managers available try to tackle this problem with their own schemes, but with varying degrees of success. We’ll be wrestling with this issue for along time to come, I suspect, an unfortunate side-effect of the modular nature of Linux, and its historical command-line orientation.
One file manager — or really a digital content manager, according to the people who make it — worth checking out because of its handling of file associations is Photodex, Inc’s CompuPic. As I write this, it’s still in beta, but if you use a lot of image files, you’ll definitely want to check this one out. It provides thumbnails of your images as you browse, and lets you do neat things like edit and e-mail images, and convert file formats (see the review of CompuPic -Ed.).
Recommendations and the Hidden Agenda Revealed
I encourage everyone using Linux to experiment with some of the file managers out there, even if not in the total immersion style that I used. There are really two goals in test driving different file managers: First, simply to see what’s out there, and look for a tool that better fits how you work with Linux. In particular, those of you who routinely run on other people’s computers, such as in a support role, might want to consider putting one of the smaller console-mode file managers on a networked drive or even a floppy, so that you can take a reasonable tool with you when you stray into the alien territory of another person’s highly customized Linux system.
Second, it can be worth the time and effort to experience different ways of working with files, directories, and commands. One of the more enlightening things even a very experienced computer user can do is watch someone else pilot a PC; the little differences and tricks you can pick up are amazing, even, or especially, when you both use the same programs. Even more valuable can be viewing your system through another person’s lens, in the form of a file manager she wrote. And that, as you’ve probably realized, is the hidden agenda of this column — to encourage people to experiment with different ways of doing some of the most common operations in Linux –dealing with files and directories. If you experiment with a few file managers and find that none of them is worth keeping, the odds are very good that it will still be time well spent. Even though you haven’t added to your software toolbox, you’ll have become more mindful (in the Zen sense) of something that you did automatically.
Lou Grinzo is a technical writer and consultant living in the wilds of upstate NY. He can be reached at firstname.lastname@example.org.