Ever tried to compare a Windows-created file on macOS and run into an error? Here’s how to make Kaleidoscope handle it smoothly.
Here’s a tip that came out of a recent support case — one that might help others running into a similar issue:
When I try to do a git difftool on a file in my repository, I’m getting an error that Kaleidoscope is unable to open the file.
Doing a git diff on this file works OK. Doing git difftool on other files in the same repo also works OK. Any ideas what might be going on?
Uniform Type Identifiers
macOS uses a technology called Uniform Type Identifiers (UTIs) to identify files — especially those not “natively” supported by the operating system. Apps can declare the types of files they support and how those types relate to others — for example, saying “this is a kind of source code text file.”
A common way to identify files is by their extension — .fpx in this example. As it turns out, macOS already associates .fpx with Kodak FlashPix Image files, as can be seen in this following screenshot of the Finder Info panel for that file:

However, in the case above, the file came from a Windows-based tool called PCB Footprint Expert, and was actually just plain text.
Override macOS Behavior
To solve this issue, we added a feature in Kaleidoscope’s Settings › Files that lets you override the macOS default behavior.

Simply enter the file extension you’d like to override — for example, fpx. From that point on, Kaleidoscope will ignore the macOS built-in type handling and instead inspect the file’s contents to infer its real type (like plain text in this case). Clicking the small chevron next to the extension reveals what macOS knows about that type and gives you the option to remove the override.
Summary
macOS’s UTI system is powerful and flexible, but it sometimes doesn’t recognize file types that originate from other platforms or aren’t supported by any installed app.
Next time you run into trouble opening a file in Kaleidoscope, try adding its extension under File Type Overrides — that might solve the problem.
If macOS has no idea what the file is, try enabling Try to interpret unsupported files as text, right below. As the name suggests, this option attempts to open any file as plain text — which can work surprisingly often.