Have searched for quite a while for the answer to this question but the only solution that has worked has been to change icons on a file to file basis, which is not very efficient...
Currently my Mac is using some generic images for icons, regardless of what the default application for them is. As you can see in this image, even though all three of those files are set to open with Sublime Text by default, they retain painfully ambiguous icons.
What I would like is some way to simply set a default image for a file extension, regardless of default application. Say that I want to set the Sublime Text icon for .py extensions and the TextEdit icon for .txt and .tsv extensions. The result should look like this.
So far, I've tried setting the icon through the default application, which is the only solution I could find so far aside from changing the icon on a file by file basis, with no luck. I attempted this by changing the CFBundleTypeIconFile for the python entry in the Sublime Text Info.plist file from PYTHON to Sublime Text. Upon reboot, the icon had not changed and sublime could no longer launch due to verification issues I think. Changed that back and tried simply replacing the PYTHON.icns file in the Sublime Text Resources folder with a copy of the Sublime Text.icns. Rebooted and no change had taken place.