here are some updates to file(1). there are some taste decisions to be made, i'll resubmit if i got it wrong. 1. beef up latin1 support. 0xa0-0x100 were previously not recognized as Latin. also, calling chartorune before anything else caused character like "ä" (in latin1) to be parsed as a null. (try echo ä | tcs -t latin1 > junk ; file junk) i also changed "ascii latin" to "Latin" because i kept thinking "ascii latin" was latin1, not utf-encoded codepts that are in latin1. i added the -h flag for debugging and extra information. file reports that /lib/glass is binary because it exceeds the "language limit". i added the flag to figure out what was really going on. remove it if it's not useful. 2. try iself before long0 which calls crackheader. iself is more informative, and it also results in more uniform results for elf files. (i was getting "elf executable" for some executables and "i386 ELF executable" for everything else.) 3. allow fonts to contain an offset and to be larger than 6000 bytes. code2000, which has near-full coverage, is just a little bit bigger than 6k. (there are several fonts in /lib/font/bit/*/*.font that need fixing.) 4. added support for old-style faces. 5. added support for XPM and ppm images.