1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|
README for launcher version 0.85 - updated 6/7/99
http://www.cs.columbia.edu/~etgold/software/launcher/
Ethan Gold <etgold@cs.columbia.edu>
This software is provided under the GNU Public License.
You should have received a copy with this distribution.
What does it do?
----------------
This launcher maps files to MIME types via filename extension or
output from the Unix "file" command. If there are more than one
handler defined for a given MIME type it presents you with a GUI
giving you a choice of which one to use. The dialog is similar to the
Windoze "Open With" dialog box, but *gasp* resizeable! The Launcher
can also be used as a commandline MIME file typer by other applications
which need to determine the types of files (such as email programs).
There are also several additional features listed below.
Why this launcher?
------------------
Every filemanager and other file handling piece of
software has its own way of mapping file types to file
handling programs. I wrote this one-stop solution for mapping
filenames to handlers so I could keep all my configuration
information in one place. Whether I'm using KDE, DFM, TkArchive,
or Window Maker, I configure them all to use my launcher for
everything. I considered using metamail for this purpose, but
metamail insists copying its input to temporary files! This is
VERY inconvenient if you use it to launch an editor to access
an existing file. There were other problems as well.
Features:
---------
* Handles files, directories, URL's, and executables
* Makes use of well-known files/formats by parsing Apache's mime.types file and
making use of the Un*x file utility along with Apache's magic number
definition file
* Uses MIME types for mapping files to handlers
* Allows multiple handler definitions per type and provides
GUI-based disambiguation
* GUI only lists handlers defined for the given file type or lists
all defined handlers if the type is unknown
* Runs synchronously or asynchronously
* Launches handlers by file or by type
* Allows multiple files to be handled by the same handler invocation
* Can be used as a generic file typer without launching handlers
* Includes modified copies of Apache's mime.types and magic files
* Written in 100% basic tcl/tk - should be extremely portable
* Emacs/emacsclient wrapper script included
* GUI configurator for the Launcher's config file
Installation:
-------------
Read the INSTALL document
Usage:
------
You may also want to read the man page.
The launcher is intended to be invoked from a comandline or from
some sort of program requiring application file handling facilities.
If several possible handlers are defined for a given file or set of files
of a particular type on the commandline the Launcher will pop up a GUI window
to let you select between them. Clicking the third mouse button in the GUI
window will bring up the config file GUI configurator. You may also edit
the config file with a text editor or by launching the config GUI from
a commandline.
Several commandline switches are supported, some of which may be
set in the config file:
--nowait
Operate asynchronously, launching handlers in the background
--all
Send all same-type files to the same handler invocation if
the configuration indicates that the handler can open multiple
files
--type mimetype
Force "mimetype" to the be type for all files specified
on the commandline - bypasses all filetype tests. Unknown
types will be handled as usual.
--showtypes
Print the name and MIME type of each file to stdout and exit.
--default
Surpress user queries and just use the default handler for
each type. The default handler is the *first* one defined on
any given type.
--compressed
Peek inside compressed files to detect primary type using the
file command's "-z" option. Note that this will return the internal
type which will then be mapped to the handlers defined for that
type. If your defined handlers do not read compressed data then
this won't work very well. One option is to map compressed data
reading handlers (like gv) to the compressed types as well as to
their primary types. This can be used implicitly with the
provided definition in the launcher mapfile called "Peek in
compressed..." which will recursively call the launcher with the
--compressed option for you.
--help
Print out the usage message.
--version
Print out the version number and primary web address.
Future/Bugs:
------------
* May decide to handler all types with common handlers
in a single invocation
- The Solaris "file" command seems to do strange things
with the Apache magic.mime file
- semi-generic typing not fully handled yet. i.e. image/*
- interaction model (set/add/whatever) for the GUI needs
some minor revision.
Changes:
|