MimeIconPlugin

%$SHORTDESCRIPTION%

This plugin tries to map known mime types commonly found on the internet to an icon set. There are not many icon sets that have a got coverage of mime types despite looking nicely, yet still coherent, not too exotic so that they can be used with a variety of web designs without too much of a problem.

MimeIconPlugin comes with two complete icon sets, namely oxygen, crystal and papirus provided in several sizes.

Usage

MimeIconPlugin implements a single macro %MIMEICON which returns the right icon in the desired size of an icon theme for a given file.

For instance you type:
%MIMEICON{
  "screenshot.png" 
  size="48" 
  theme="oxygen"
}%

will give you:

image-x-generic.png

if this plugin is installed.

The idea is that you can pretty much throw any file at it and %MIMEICON will return the right icon for it reflecting the mimetype of this file. Well, obviously there is a fallback to a neutral icon in case some file extension is totally unknown.

REST service

The get endpoint allows to retrieve a proper icon for a given mime type or file.

Parameter Description Default
file file or file extension for which to retrieve a matching icon  
size size of icon 48
theme icon set $Foswiki::cfg{Plugins}{MimeIconPlugin}{Theme}
class css class(es) to be added to the icon in addition to foswikiIcon, <iconName> and <themeName>  

Calling the get service will create a redirect to the proper icon url in a way that it can be used in an IMG html tag

<img src="%SCRIPTURLPATH{"rest"}%/MimeIconPlugin/get?file=foobar.docx;size=48" />

redirects to

.../pub/System/MimeIconPlugin/oxygen/48x48/application-vnd.oasis.opendocument.text.png

Examples

Papirus

Oxygen

Crystal

Installation Instructions

%$INSTALL_INSTRUCTIONS%

Dependencies

%$DEPENDENCIES%

Change History

04 May 2022: (4.10) added visio icon
26 Oct 2020: (4.00) updated papirus icon set
18 Nov 2019: (3.13) default to papirus icon set
13 Dec 2018: (3.12) added more mappings for office file types
26 Nov 2018: (3.11) docu fixes
12 Nov 2018: (3.10) added class parameter
06 Nov 2018: (3.00) added papirus icon set
16 Aug 2018: (2.01) disabled error message writing to stderr
30 Aug 2017: (2.00) added get REST handler
09 Sep 2016: (1.31) added vsd to image mapping
17 Jul 2015: (1.30) added support for google file formats webp, weba, webm
22 May 2013: (1.20) only ship icons covered by a mapping
16 Dec 2011: (1.10) fixed mapping in oxygen icon set; fix to make sure the icon mapping is read in properly

PackageForm edit

Author Michael Daum
Version %$VERSION%
Release %$RELEASE%
Description %$SHORTDESCRIPTION%
Repository https://github.com/foswiki/MimeIconPlugin
Copyright © 2010-2022 Michael Daum
License GPL (Gnu General Public License)
Home Foswiki:Extensions/MimeIconPlugin
Support Foswiki:Support/MimeIconPlugin
Topic revision: r1 - 18 Nov 2019, ProjectContributor
This site is powered by FoswikiCopyright © by the contributing authors. All material on this site is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback