This package adds file-specific icons to Sublime Text for improved visual grepping. It's heavily inspired by Atom File Icons.
Its aims are:
- To be a
tmPreferencesstorage for UI themes those support file-specific icons. - To provide icons for themes those don't (fully) support file-specific icons.
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.
The easiest way to install is using Sublime's Package Control. It's listed as A File Icon.
- Open
Command Paletteusing menu itemTools → Command Palette... - Choose
Package Control: Install Package - Find
A File Iconand hitEnter
- Download the
.zip - Unzip and rename folder to
A File Icon - Copy folder into
Packagesdirectory, which you can find using the menu itemPreferences → Browse Packages...
Note: Don't forget to restart Sublime Text after installing this package.
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: SettingsinCommand Palette.
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.
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.
Themes that already have support of the icon customization include:
If something goes wrong try to:
- Open
Command Paletteusing menu itemTools → Command Palette.... - Choose
A File Icon: Revert to a Freshly Installed State. - Restart Sublime Text.
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-syntaxand.tmLanguagefiles. - Rename all your existing icons to match these ones.
- Add
.supports-a-file-icon-customizationfile to the root of your theme (this is how we check if the theme supports customization of the file-specific icons). - Also you can provide this script which recommends user to install
A File Iconfor enhanced support of the file-specific icons.
In simple terms, A File Icon does the following:
- Copies all the necessary files right after install or upgrade to
zzz A File Icon zzzdirectory - Searches all installed themes
- Checks if themes are already patched, if not
- Patches them by generating
<theme-name>.sublime-themefiles from a template - For themes those support file icon customization, it provides
.tmPreferencesfiles 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.
Want to contribute some code? Excellent! Read up on our guidelines.
Colors are from the Boxy Theme icon color palette. They are bright because they should look good with most themes. However you can change color and opacity level of all icons. See customization.
This package contains icons provided by:
Source icons are provided in SVG format (Sublime Text doesn't currently support it). We convert them to @1x and @2x PNG assets before each release via a custom gulp task.
Rasterized icons can be found in icons folder.
I've put a lot of time and effort into making A File Icon awesome. If you love it, you can buy me a coffee. I promise it will be a good investment 😉.
Donate with: Patreon.