Sublime Text File-Specific Icons for Improved Visual Grepping
Python JavaScript HTML
Clone or download

README.md

A File Icon

Star on GitHub Make a donation at Patreon Share via Twitter Join the chat at Gitter Join the chat at Sublime Forum

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 tmPreferences storage 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.

Users

Getting Started

Getting Started with A File Icon

Installation

Package Control

The easiest way to install is using Sublime's Package Control. It's listed as A File Icon.

  1. Open Command Palette using menu item Tools → Command Palette...
  2. Choose Package Control: Install Package
  3. Find A File Icon and hit Enter

Download

  1. Download the .zip
  2. Unzip and rename folder to A File Icon
  3. Copy folder into Packages directory, which you can find using the menu item Preferences → 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 in Command 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.

Themes that already have support of the icon customization include:

Troubleshooting

If something goes wrong try to:

  1. Open Command Palette using menu item Tools → Command Palette....
  2. Choose A File Icon: Revert to a Freshly Installed State.
  3. 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).
  • Also you can provide this script which recommends user to install A File Icon for enhanced support of the file-specific icons.

How It Works

In simple terms, A File Icon does the following:

  1. Copies all the necessary files right after install or upgrade to zzz A File Icon zzz directory
  2. Searches all installed themes
  3. Checks if themes are already patched, if not
  4. Patches them by generating <theme-name>.sublime-theme files from a template
  5. 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.

Contributing

Want to contribute some code? Excellent! Read up on our guidelines.

Resources

Colors

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.

Palette

Icons

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.

Share The Love

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.