Awesome
This package adds file-specific icons to Sublime Text for improved visual grepping. It's heavily inspired by Atom File Icons.
Its aims are:
-
Provide globally available file type specific icons for each UI themes, whether they provide their own file type specific icons or not.
-
Workaround a ST core bug, which causes no icons to be displayed for file types an installed but not selected/active theme provides definitions for via
tmPreferences
files. -
Display file icons, even if required syntax definition is not installed.
-
Display specific icons for files, no dedicated syntax definition exists for.
If you have any problems, please search for a similar issue first, before creating a new one.
Also, check the list of known issues before doing so.
Users
Installation
Package Control
The easiest way to install is using Sublime's Package Control. It's listed as A File Icon
.
- Open
Command Palette
using menu itemTools → Command Palette...
- Choose
Package Control: Install Package
- Find
A File Icon
and hitEnter
Download
- Download the
.zip
- Unzip and rename folder to
A File Icon
- Copy folder into
Packages
directory, which you can find using the menu itemPreferences → Browse Packages...
Note: Don't forget to restart Sublime Text after installing this package.
Customization
You can change the color, opacity level and size of the icons by modifying your user preferences file, which you can find by:
Preferences → Package Settings → A File Icon → Settings
,- Choose
A File Icon: Settings
inCommand Palette
.
Wrong Icons
Sublime Text uses syntax scopes for file-specific icons. That's why icons of packages provided by the community require them to be installed.
See the list of community packages that you may need to install to see the right icon.
Themes
If your theme supports an icon customization you can choose what icons you want to use – provided by the theme (by default) or provided by the package. Otherwise this package adds its own icons only.
Troubleshooting
If something goes wrong try to:
- Open
Command Palette
using menu itemTools → Command Palette...
. - Choose
A File Icon: Revert to a Freshly Installed State
. - Restart Sublime Text.
Developers
Bring Support of the File Icon Customization to Your Theme
If you are a theme developer and you want to support a file icon customization, you should:
- Remove all stuff related to the icon setup:
.tmPreferences
,.sublime-settings
,.sublime-syntax
and.tmLanguage
files. - Rename all your existing icons to match these ones.
- Add
.supports-a-file-icon-customization
file to the root of your theme (this is how we check if the theme supports customization of the file-specific icons).
How It Works
In simple terms, A File Icon
does the following:
- Copies all the necessary files right after install or upgrade to
zzz A File Icon zzz
directory - Searches all installed themes
- Checks if themes are already patched, if not
- Patches them by generating
<theme-name>.sublime-theme
files from a template - For themes those support file icon customization, it provides
.tmPreferences
files and missing icons by default (user can override icons provided by the theme via"force_mode": true
).
The real process is just a little bit more complex to minimize hard drive I/O.
Resources
Colors
Colors are bright because they should look good with most themes. However you can change color and opacity level of all icons. See customization.
Icons
This package contains icons provided by:
Source icons are provided in SVG format (Sublime Text doesn't currently support it). They are convert to @1x and @2x PNG assets before each release via python build script py build -i
.
Rasterized icons can be found in icons
folder.