After reading Jeff Atwood’s recent blog post on Zopfli optimization, I wanted to see how hard it would be to create a GUI to apply the compression algorithm to my PNG files.
The design is borrowed heavily from Teeny Tokyo. I don’t know whether I’ll ever release this thing, but if I do I’ll be sure to change the interface so John Saddington doesn’t punch me in the face.
The thing is actually completely functional – except for the image resizing stuff – and does reduce the filesize of PNG images considerably. Unfortunately the compression algorithm is horrendously slow, sometimes taking 15-20 seconds per file. Basically, the only way this ever sees a public release is if I can make it run considerably faster with some multithreading magic.
Github’s Atom text editor is one of the best available. Unfortunately on Windows, there’s no easy way to set Atom as the default editor for specific file formats.
The issue was reported on Github and a viable workaround was devised, however the workaround has its own set of annoyances. Atom user bilderbuchi observes the following:
I got no way to select the Atom icon, I got an empty white rectangle.
It flickers the terminal for a split second, which interestingly does not happen when starting atom via the start menu. Annoying, but not vital.
It says “atom.cmd” in the relevant dialogs/menus, which is not exactly beautiful/elegant.
I can’t imagine a normal user to go through this dance to do this, compared to the experience in other editors like Notepad++.
I’ve created my own solution to this problem by adding an “intermediary” executable file that can easily be set as the default associated program for filetypes that then passes the file along to Atom. The most significant benefit of this method is that it correctly sets the file association icon.
Simply install ‘Atom Editor OpenWith Assistant‘ and associate your code files with ‘C:\Program Files (x86)\Atom Editor OpenWith Assistant\Atom OpenWith Assistant.exe‘
Files associated with the OpenWith Assistant will now display the above Atom icon designed by Tharique Azeez. The hastily written VB.NET code behind this program is available on Github.