Skip to content

Instantly share code, notes, and snippets.

@jhyland87
Last active June 25, 2018 19:04
Show Gist options
  • Save jhyland87/f1c08c8c774848f47f161d49d2a852bc to your computer and use it in GitHub Desktop.
Save jhyland87/f1c08c8c774848f47f161d49d2a852bc to your computer and use it in GitHub Desktop.
Assoc array associating a file extension type to the appropriate mime type
# Assoc array associating a file extension type to the appropriate mime type
# source: https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types
#
# JS To gather data from source:
# $('table.standard-table > tbody > tr').each(function(a,b){
# console.log('ext2mime["%s"]="%s"',
# $(b).find("td:eq(0) > code").text().replace(/^\./, ''),
# $(b).find("td:eq(2) > code").text())
# })
declare -A ext2mime
ext2mime["txt"]="text/plain"
ext2mime["md"]="text/plain"
ext2mime["aac"]="audio/aac"
ext2mime["abw"]="application/x-abiword"
ext2mime["arc"]="application/octet-stream"
ext2mime["avi"]="video/x-msvideo"
ext2mime["azw"]="application/vnd.amazon.ebook"
ext2mime["bin"]="application/octet-stream"
ext2mime["bmp"]="image/bmp"
ext2mime["bz"]="application/x-bzip"
ext2mime["bz2"]="application/x-bzip2"
ext2mime["csh"]="application/x-csh"
ext2mime["css"]="text/css"
ext2mime["csv"]="text/csv"
ext2mime["doc"]="application/msword"
ext2mime["docx"]="application/vnd.openxmlformats-officedocument.wordprocessingml.document"
ext2mime["eot"]="application/vnd.ms-fontobject"
ext2mime["epub"]="application/epub+zip"
ext2mime["es"]="application/ecmascript"
ext2mime["gif"]="image/gif"
ext2mime["html"]="text/html"
ext2mime["htm"]="text/html"
ext2mime["ico"]="image/x-icon"
ext2mime["ics"]="text/calendar"
ext2mime["jar"]="application/java-archive"
ext2mime["jpeg.jpg"]="image/jpeg"
ext2mime["js"]="application/javascript"
ext2mime["json"]="application/json"
ext2mime["mid.midi"]="audio/midiaudio/x-midi"
ext2mime["mpeg"]="video/mpeg"
ext2mime["mpkg"]="application/vnd.apple.installer+xml"
ext2mime["odp"]="application/vnd.oasis.opendocument.presentation"
ext2mime["ods"]="application/vnd.oasis.opendocument.spreadsheet"
ext2mime["odt"]="application/vnd.oasis.opendocument.text"
ext2mime["oga"]="audio/ogg"
ext2mime["ogv"]="video/ogg"
ext2mime["ogx"]="application/ogg"
ext2mime["otf"]="font/otf"
ext2mime["png"]="image/png"
ext2mime["pdf"]="application/pdf"
ext2mime["ppt"]="application/vnd.ms-powerpoint"
ext2mime["pptx"]="application/vnd.openxmlformats-officedocument.presentationml.presentation"
ext2mime["rar"]="application/x-rar-compressed"
ext2mime["rtf"]="application/rtf"
ext2mime["sh"]="application/x-sh"
ext2mime["svg"]="image/svg+xml"
ext2mime["swf"]="application/x-shockwave-flash"
ext2mime["tar"]="application/x-tar"
ext2mime["tif"]="image/tiff"
ext2mime["tiff"]="image/tiff"
ext2mime["ts"]="application/typescript"
ext2mime["ttf"]="font/ttf"
ext2mime["vsd"]="application/vnd.visio"
ext2mime["wav"]="audio/wav"
ext2mime["weba"]="audio/webm"
ext2mime["webm"]="video/webm"
ext2mime["webp"]="image/webp"
ext2mime["woff"]="font/woff"
ext2mime["woff2"]="font/woff2"
ext2mime["xhtml"]="application/xhtml+xml"
ext2mime["xls"]="application/vnd.ms-excel"
ext2mime["xlsx"]="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
ext2mime["xml"]="application/xml"
ext2mime["xul"]=""
ext2mime["zip"]="application/zip"
ext2mime["3gp"]="video/3gppaudio/3gpp"
ext2mime["3g2"]="video/3gpp2audio/3gpp2"
ext2mime["7z"]="application/x-7z-compressed"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment