Managing files with Tree

Tree can use external programs to process/view/open several kind of files. In this example, index.html has been processed using lynx.

Under linux (and other Unix systems) tree can invoke

acroread, bzip2, gimp, groff, gv, gzip, jar, klyx, lynx, realplay, rpm, tar, unzip, uudecode, xanim, xdvi, xfig, xv and xwud
to handle files with extensions
[1-9nlpo], [1-9][tTxX], avi, bmp, bz2, dvi, eps, eps.gz, eps.z, fig, gif, gz htm, htm.gz, html, html.gz, jar, jpeg, jpg, lyx, man, mpeg, mpg, ms, pbm, pcx, pdf, pdf.gz, pdf.z, pgm, pm, png, pnm, ppm, ps, ps.gz, ps.z, qt, rp, rpm, t[ag]z, tar, tar.gz, tar.z, tar.bz2, tga, tif, tiff, uue, xbm, xcf, xpm, xwd, z and zip.
If you use another O.S. and change tree to suite your taste, please send me your patch to share it with other users.

If this is not enough, you can also give a command to open/view/process a file. Before sending a command to the system, a variable expansion is performed. For example,

fig2dev -L eps $f $p/$b.eps
would convert the current fig file to eps format. $f would be expanded to the absolute path+filename, $p to the absoulte path and $b to the basename (the current file is the file pointed by the cursor).

Finally, please notice that tree can manage a large amount of data. In the figure above, 921 directories and 12,927 files are shown. The buffer has only 13,849 lines (15,622 if the padding would be set to on).