This commit is contained in:
恍兮惚兮 2024-12-25 19:18:14 +08:00
parent 414a1b31fd
commit f6335674cc
2 changed files with 861 additions and 12 deletions

View File

@ -0,0 +1,819 @@
{
".123" : "application/vnd.lotus-1-2-3",
".3dml" : "text/vnd.in3d.3dml",
".3g2" : "video/3gpp2",
".3gp" : "video/3gpp",
".a" : "application/octet-stream",
".aab" : "application/x-authorware-bin",
".aac" : "audio/x-aac",
".aam" : "application/x-authorware-map",
".aas" : "application/x-authorware-seg",
".abw" : "application/x-abiword",
".acc" : "application/vnd.americandynamics.acc",
".ace" : "application/x-ace-compressed",
".acu" : "application/vnd.acucobol",
".acutc" : "application/vnd.acucorp",
".adp" : "audio/adpcm",
".aep" : "application/vnd.audiograph",
".afm" : "application/x-font-type1",
".afp" : "application/vnd.ibm.modcap",
".ai" : "application/postscript",
".aif" : "audio/x-aiff",
".aifc" : "audio/x-aiff",
".aiff" : "audio/x-aiff",
".air" : "application/vnd.adobe.air-application-installer-package+zip",
".ami" : "application/vnd.amiga.ami",
".apk" : "application/vnd.android.package-archive",
".application" : "application/x-ms-application",
".apr" : "application/vnd.lotus-approach",
".asc" : "application/pgp-signature",
".asf" : "video/x-ms-asf",
".asm" : "text/x-asm",
".aso" : "application/vnd.accpac.simply.aso",
".asx" : "video/x-ms-asf",
".atc" : "application/vnd.acucorp",
".atom" : "application/atom+xml",
".atomcat" : "application/atomcat+xml",
".atomsvc" : "application/atomsvc+xml",
".atx" : "application/vnd.antix.game-component",
".au" : "audio/basic",
".avi" : "video/x-msvideo",
".aw" : "application/applixware",
".azf" : "application/vnd.airzip.filesecure.azf",
".azs" : "application/vnd.airzip.filesecure.azs",
".azw" : "application/vnd.amazon.ebook",
".bat" : "application/x-msdownload",
".bcpio" : "application/x-bcpio",
".bdf" : "application/x-font-bdf",
".bdm" : "application/vnd.syncml.dm+wbxml",
".bh2" : "application/vnd.fujitsu.oasysprs",
".bin" : "application/octet-stream",
".bmi" : "application/vnd.bmi",
".bmp" : "image/bmp",
".book" : "application/vnd.framemaker",
".box" : "application/vnd.previewsystems.box",
".boz" : "application/x-bzip2",
".bpk" : "application/octet-stream",
".btif" : "image/prs.btif",
".bz" : "application/x-bzip",
".bz2" : "application/x-bzip2",
".c" : "text/x-c",
".c4d" : "application/vnd.clonk.c4group",
".c4f" : "application/vnd.clonk.c4group",
".c4g" : "application/vnd.clonk.c4group",
".c4p" : "application/vnd.clonk.c4group",
".c4u" : "application/vnd.clonk.c4group",
".cab" : "application/vnd.ms-cab-compressed",
".car" : "application/vnd.curl.car",
".cat" : "application/vnd.ms-pki.seccat",
".cc" : "text/x-c",
".cct" : "application/x-director",
".ccxml" : "application/ccxml+xml",
".cdbcmsg" : "application/vnd.contact.cmsg",
".cdf" : "application/x-netcdf",
".cdkey" : "application/vnd.mediastation.cdkey",
".cdx" : "chemical/x-cdx",
".cdxml" : "application/vnd.chemdraw+xml",
".cdy" : "application/vnd.cinderella",
".cer" : "application/pkix-cert",
".cgm" : "image/cgm",
".chat" : "application/x-chat",
".chm" : "application/vnd.ms-htmlhelp",
".chrt" : "application/vnd.kde.kchart",
".cif" : "chemical/x-cif",
".cii" : "application/vnd.anser-web-certificate-issue-initiation",
".cil" : "application/vnd.ms-artgalry",
".cla" : "application/vnd.claymore",
".class" : "application/java-vm",
".clkk" : "application/vnd.crick.clicker.keyboard",
".clkp" : "application/vnd.crick.clicker.palette",
".clkt" : "application/vnd.crick.clicker.template",
".clkw" : "application/vnd.crick.clicker.wordbank",
".clkx" : "application/vnd.crick.clicker",
".clp" : "application/x-msclip",
".cmc" : "application/vnd.cosmocaller",
".cmdf" : "chemical/x-cmdf",
".cml" : "chemical/x-cml",
".cmp" : "application/vnd.yellowriver-custom-menu",
".cmx" : "image/x-cmx",
".cod" : "application/vnd.rim.cod",
".com" : "application/x-msdownload",
".conf" : "text/plain",
".cpio" : "application/x-cpio",
".cpp" : "text/x-c",
".cpt" : "application/mac-compactpro",
".crd" : "application/x-mscardfile",
".crl" : "application/pkix-crl",
".crt" : "application/x-x509-ca-cert",
".csh" : "application/x-csh",
".csml" : "chemical/x-csml",
".csp" : "application/vnd.commonspace",
".css" : "text/css",
".cst" : "application/x-director",
".csv" : "text/csv",
".cu" : "application/cu-seeme",
".curl" : "text/vnd.curl",
".cww" : "application/prs.cww",
".cxt" : "application/x-director",
".cxx" : "text/x-c",
".daf" : "application/vnd.mobius.daf",
".dataless" : "application/vnd.fdsn.seed",
".davmount" : "application/davmount+xml",
".dcr" : "application/x-director",
".dcurl" : "text/vnd.curl.dcurl",
".dd2" : "application/vnd.oma.dd2+xml",
".ddd" : "application/vnd.fujixerox.ddd",
".deb" : "application/x-debian-package",
".def" : "text/plain",
".deploy" : "application/octet-stream",
".der" : "application/x-x509-ca-cert",
".dfac" : "application/vnd.dreamfactory",
".dic" : "text/x-c",
".diff" : "text/plain",
".dir" : "application/x-director",
".dis" : "application/vnd.mobius.dis",
".dist" : "application/octet-stream",
".distz" : "application/octet-stream",
".djv" : "image/vnd.djvu",
".djvu" : "image/vnd.djvu",
".dll" : "application/x-msdownload",
".dmg" : "application/octet-stream",
".dms" : "application/octet-stream",
".dna" : "application/vnd.dna",
".doc" : "application/msword",
".docm" : "application/vnd.ms-word.document.macroenabled.12",
".docx" : "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
".dot" : "application/msword",
".dotm" : "application/vnd.ms-word.template.macroenabled.12",
".dotx" : "application/vnd.openxmlformats-officedocument.wordprocessingml.template",
".dp" : "application/vnd.osgi.dp",
".dpg" : "application/vnd.dpgraph",
".dsc" : "text/prs.lines.tag",
".dtb" : "application/x-dtbook+xml",
".dtd" : "application/xml-dtd",
".dts" : "audio/vnd.dts",
".dtshd" : "audio/vnd.dts.hd",
".dump" : "application/octet-stream",
".dvi" : "application/x-dvi",
".dwf" : "model/vnd.dwf",
".dwg" : "image/vnd.dwg",
".dxf" : "image/vnd.dxf",
".dxp" : "application/vnd.spotfire.dxp",
".dxr" : "application/x-director",
".ecelp4800" : "audio/vnd.nuera.ecelp4800",
".ecelp7470" : "audio/vnd.nuera.ecelp7470",
".ecelp9600" : "audio/vnd.nuera.ecelp9600",
".ecma" : "application/ecmascript",
".edm" : "application/vnd.novadigm.edm",
".edx" : "application/vnd.novadigm.edx",
".efif" : "application/vnd.picsel",
".ei6" : "application/vnd.pg.osasli",
".elc" : "application/octet-stream",
".eml" : "message/rfc822",
".emma" : "application/emma+xml",
".eol" : "audio/vnd.digital-winds",
".eot" : "application/vnd.ms-fontobject",
".eps" : "application/postscript",
".epub" : "application/epub+zip",
".es3" : "application/vnd.eszigno3+xml",
".esf" : "application/vnd.epson.esf",
".et3" : "application/vnd.eszigno3+xml",
".etx" : "text/x-setext",
".exe" : "application/x-msdownload",
".ext" : "application/vnd.novadigm.ext",
".ez" : "application/andrew-inset",
".ez2" : "application/vnd.ezpix-album",
".ez3" : "application/vnd.ezpix-package",
".f" : "text/x-fortran",
".f4v" : "video/x-f4v",
".f77" : "text/x-fortran",
".f90" : "text/x-fortran",
".fbs" : "image/vnd.fastbidsheet",
".fdf" : "application/vnd.fdf",
".fe_launch" : "application/vnd.denovo.fcselayout-link",
".fg5" : "application/vnd.fujitsu.oasysgp",
".fgd" : "application/x-director",
".fh" : "image/x-freehand",
".fh4" : "image/x-freehand",
".fh5" : "image/x-freehand",
".fh7" : "image/x-freehand",
".fhc" : "image/x-freehand",
".fig" : "application/x-xfig",
".fli" : "video/x-fli",
".flo" : "application/vnd.micrografx.flo",
".flv" : "video/x-flv",
".flw" : "application/vnd.kde.kivio",
".flx" : "text/vnd.fmi.flexstor",
".fly" : "text/vnd.fly",
".fm" : "application/vnd.framemaker",
".fnc" : "application/vnd.frogans.fnc",
".for" : "text/x-fortran",
".fpx" : "image/vnd.fpx",
".frame" : "application/vnd.framemaker",
".fsc" : "application/vnd.fsc.weblaunch",
".fst" : "image/vnd.fst",
".ftc" : "application/vnd.fluxtime.clip",
".fti" : "application/vnd.anser-web-funds-transfer-initiation",
".fvt" : "video/vnd.fvt",
".fzs" : "application/vnd.fuzzysheet",
".g3" : "image/g3fax",
".gac" : "application/vnd.groove-account",
".gdl" : "model/vnd.gdl",
".geo" : "application/vnd.dynageo",
".gex" : "application/vnd.geometry-explorer",
".ggb" : "application/vnd.geogebra.file",
".ggt" : "application/vnd.geogebra.tool",
".ghf" : "application/vnd.groove-help",
".gif" : "image/gif",
".gim" : "application/vnd.groove-identity-message",
".gmx" : "application/vnd.gmx",
".gnumeric" : "application/x-gnumeric",
".gph" : "application/vnd.flographit",
".gqf" : "application/vnd.grafeq",
".gqs" : "application/vnd.grafeq",
".gram" : "application/srgs",
".gre" : "application/vnd.geometry-explorer",
".grv" : "application/vnd.groove-injector",
".grxml" : "application/srgs+xml",
".gsf" : "application/x-font-ghostscript",
".gtar" : "application/x-gtar",
".gtm" : "application/vnd.groove-tool-message",
".gtw" : "model/vnd.gtw",
".gv" : "text/vnd.graphviz",
".gz" : "application/x-gzip",
".h" : "text/x-c",
".h261" : "video/h261",
".h263" : "video/h263",
".h264" : "video/h264",
".hbci" : "application/vnd.hbci",
".hdf" : "application/x-hdf",
".hh" : "text/x-c",
".hlp" : "application/winhlp",
".hpgl" : "application/vnd.hp-hpgl",
".hpid" : "application/vnd.hp-hpid",
".hps" : "application/vnd.hp-hps",
".hqx" : "application/mac-binhex40",
".htke" : "application/vnd.kenameaapp",
".htm" : "text/html",
".html" : "text/html",
".hvd" : "application/vnd.yamaha.hv-dic",
".hvp" : "application/vnd.yamaha.hv-voice",
".hvs" : "application/vnd.yamaha.hv-script",
".icc" : "application/vnd.iccprofile",
".ice" : "x-conference/x-cooltalk",
".icm" : "application/vnd.iccprofile",
".ico" : "image/x-icon",
".ics" : "text/calendar",
".ief" : "image/ief",
".ifb" : "text/calendar",
".ifm" : "application/vnd.shana.informed.formdata",
".iges" : "model/iges",
".igl" : "application/vnd.igloader",
".igs" : "model/iges",
".igx" : "application/vnd.micrografx.igx",
".iif" : "application/vnd.shana.informed.interchange",
".imp" : "application/vnd.accpac.simply.imp",
".ims" : "application/vnd.ms-ims",
".in" : "text/plain",
".ipk" : "application/vnd.shana.informed.package",
".irm" : "application/vnd.ibm.rights-management",
".irp" : "application/vnd.irepository.package+xml",
".iso" : "application/octet-stream",
".itp" : "application/vnd.shana.informed.formtemplate",
".ivp" : "application/vnd.immervision-ivp",
".ivu" : "application/vnd.immervision-ivu",
".jad" : "text/vnd.sun.j2me.app-descriptor",
".jam" : "application/vnd.jam",
".jar" : "application/java-archive",
".java" : "text/x-java-source",
".jisp" : "application/vnd.jisp",
".jlt" : "application/vnd.hp-jlyt",
".jnlp" : "application/x-java-jnlp-file",
".joda" : "application/vnd.joost.joda-archive",
".jpe" : "image/jpeg",
".jpeg" : "image/jpeg",
".jpg" : "image/jpeg",
".jpgm" : "video/jpm",
".jpgv" : "video/jpeg",
".jpm" : "video/jpm",
".js" : "application/javascript",
".json" : "application/json",
".kar" : "audio/midi",
".karbon" : "application/vnd.kde.karbon",
".kfo" : "application/vnd.kde.kformula",
".kia" : "application/vnd.kidspiration",
".kil" : "application/x-killustrator",
".kml" : "application/vnd.google-earth.kml+xml",
".kmz" : "application/vnd.google-earth.kmz",
".kne" : "application/vnd.kinar",
".knp" : "application/vnd.kinar",
".kon" : "application/vnd.kde.kontour",
".kpr" : "application/vnd.kde.kpresenter",
".kpt" : "application/vnd.kde.kpresenter",
".ksh" : "text/plain",
".ksp" : "application/vnd.kde.kspread",
".ktr" : "application/vnd.kahootz",
".ktz" : "application/vnd.kahootz",
".kwd" : "application/vnd.kde.kword",
".kwt" : "application/vnd.kde.kword",
".latex" : "application/x-latex",
".lbd" : "application/vnd.llamagraphics.life-balance.desktop",
".lbe" : "application/vnd.llamagraphics.life-balance.exchange+xml",
".les" : "application/vnd.hhe.lesson-player",
".lha" : "application/octet-stream",
".link66" : "application/vnd.route66.link66+xml",
".list" : "text/plain",
".list3820" : "application/vnd.ibm.modcap",
".listafp" : "application/vnd.ibm.modcap",
".log" : "text/plain",
".lostxml" : "application/lost+xml",
".lrf" : "application/octet-stream",
".lrm" : "application/vnd.ms-lrm",
".ltf" : "application/vnd.frogans.ltf",
".lvp" : "audio/vnd.lucent.voice",
".lwp" : "application/vnd.lotus-wordpro",
".lzh" : "application/octet-stream",
".m13" : "application/x-msmediaview",
".m14" : "application/x-msmediaview",
".m1v" : "video/mpeg",
".m2a" : "audio/mpeg",
".m2v" : "video/mpeg",
".m3a" : "audio/mpeg",
".m3u" : "audio/x-mpegurl",
".m4u" : "video/vnd.mpegurl",
".m4v" : "video/x-m4v",
".ma" : "application/mathematica",
".mag" : "application/vnd.ecowin.chart",
".maker" : "application/vnd.framemaker",
".man" : "text/troff",
".mathml" : "application/mathml+xml",
".mb" : "application/mathematica",
".mbk" : "application/vnd.mobius.mbk",
".mbox" : "application/mbox",
".mc1" : "application/vnd.medcalcdata",
".mcd" : "application/vnd.mcd",
".mcurl" : "text/vnd.curl.mcurl",
".mdb" : "application/x-msaccess",
".mdi" : "image/vnd.ms-modi",
".me" : "text/troff",
".mesh" : "model/mesh",
".mfm" : "application/vnd.mfmp",
".mgz" : "application/vnd.proteus.magazine",
".mht" : "message/rfc822",
".mhtml" : "message/rfc822",
".mid" : "audio/midi",
".midi" : "audio/midi",
".mif" : "application/vnd.mif",
".mime" : "message/rfc822",
".mj2" : "video/mj2",
".mjp2" : "video/mj2",
".mlp" : "application/vnd.dolby.mlp",
".mmd" : "application/vnd.chipnuts.karaoke-mmd",
".mmf" : "application/vnd.smaf",
".mmr" : "image/vnd.fujixerox.edmics-mmr",
".mny" : "application/x-msmoney",
".mobi" : "application/x-mobipocket-ebook",
".mov" : "video/quicktime",
".movie" : "video/x-sgi-movie",
".mp2" : "audio/mpeg",
".mp2a" : "audio/mpeg",
".mp3" : "audio/mpeg",
".mp4" : "video/mp4",
".mp4a" : "audio/mp4",
".mp4s" : "application/mp4",
".mp4v" : "video/mp4",
".mpa" : "video/mpeg",
".mpc" : "application/vnd.mophun.certificate",
".mpe" : "video/mpeg",
".mpeg" : "video/mpeg",
".mpg" : "video/mpeg",
".mpg4" : "video/mp4",
".mpga" : "audio/mpeg",
".mpkg" : "application/vnd.apple.installer+xml",
".mpm" : "application/vnd.blueice.multipass",
".mpn" : "application/vnd.mophun.application",
".mpp" : "application/vnd.ms-project",
".mpt" : "application/vnd.ms-project",
".mpy" : "application/vnd.ibm.minipay",
".mqy" : "application/vnd.mobius.mqy",
".mrc" : "application/marc",
".ms" : "text/troff",
".mscml" : "application/mediaservercontrol+xml",
".mseed" : "application/vnd.fdsn.mseed",
".mseq" : "application/vnd.mseq",
".msf" : "application/vnd.epson.msf",
".msh" : "model/mesh",
".msi" : "application/x-msdownload",
".msl" : "application/vnd.mobius.msl",
".msty" : "application/vnd.muvee.style",
".mts" : "model/vnd.mts",
".mus" : "application/vnd.musician",
".musicxml" : "application/vnd.recordare.musicxml+xml",
".mvb" : "application/x-msmediaview",
".mwf" : "application/vnd.mfer",
".mxf" : "application/mxf",
".mxl" : "application/vnd.recordare.musicxml",
".mxml" : "application/xv+xml",
".mxs" : "application/vnd.triscape.mxs",
".mxu" : "video/vnd.mpegurl",
".n-gage" : "application/vnd.nokia.n-gage.symbian.install",
".nb" : "application/mathematica",
".nc" : "application/x-netcdf",
".ncx" : "application/x-dtbncx+xml",
".ngdat" : "application/vnd.nokia.n-gage.data",
".nlu" : "application/vnd.neurolanguage.nlu",
".nml" : "application/vnd.enliven",
".nnd" : "application/vnd.noblenet-directory",
".nns" : "application/vnd.noblenet-sealer",
".nnw" : "application/vnd.noblenet-web",
".npx" : "image/vnd.net-fpx",
".nsf" : "application/vnd.lotus-notes",
".nws" : "message/rfc822",
".o" : "application/octet-stream",
".oa2" : "application/vnd.fujitsu.oasys2",
".oa3" : "application/vnd.fujitsu.oasys3",
".oas" : "application/vnd.fujitsu.oasys",
".obd" : "application/x-msbinder",
".obj" : "application/octet-stream",
".oda" : "application/oda",
".odb" : "application/vnd.oasis.opendocument.database",
".odc" : "application/vnd.oasis.opendocument.chart",
".odf" : "application/vnd.oasis.opendocument.formula",
".odft" : "application/vnd.oasis.opendocument.formula-template",
".odg" : "application/vnd.oasis.opendocument.graphics",
".odi" : "application/vnd.oasis.opendocument.image",
".odp" : "application/vnd.oasis.opendocument.presentation",
".ods" : "application/vnd.oasis.opendocument.spreadsheet",
".odt" : "application/vnd.oasis.opendocument.text",
".oga" : "audio/ogg",
".ogg" : "audio/ogg",
".ogv" : "video/ogg",
".ogx" : "application/ogg",
".onepkg" : "application/onenote",
".onetmp" : "application/onenote",
".onetoc" : "application/onenote",
".onetoc2" : "application/onenote",
".opf" : "application/oebps-package+xml",
".oprc" : "application/vnd.palm",
".org" : "application/vnd.lotus-organizer",
".osf" : "application/vnd.yamaha.openscoreformat",
".osfpvg" : "application/vnd.yamaha.openscoreformat.osfpvg+xml",
".otc" : "application/vnd.oasis.opendocument.chart-template",
".otf" : "application/x-font-otf",
".otg" : "application/vnd.oasis.opendocument.graphics-template",
".oth" : "application/vnd.oasis.opendocument.text-web",
".oti" : "application/vnd.oasis.opendocument.image-template",
".otm" : "application/vnd.oasis.opendocument.text-master",
".otp" : "application/vnd.oasis.opendocument.presentation-template",
".ots" : "application/vnd.oasis.opendocument.spreadsheet-template",
".ott" : "application/vnd.oasis.opendocument.text-template",
".oxt" : "application/vnd.openofficeorg.extension",
".p" : "text/x-pascal",
".p10" : "application/pkcs10",
".p12" : "application/x-pkcs12",
".p7b" : "application/x-pkcs7-certificates",
".p7c" : "application/pkcs7-mime",
".p7m" : "application/pkcs7-mime",
".p7r" : "application/x-pkcs7-certreqresp",
".p7s" : "application/pkcs7-signature",
".pas" : "text/x-pascal",
".pbd" : "application/vnd.powerbuilder6",
".pbm" : "image/x-portable-bitmap",
".pcf" : "application/x-font-pcf",
".pcl" : "application/vnd.hp-pcl",
".pclxl" : "application/vnd.hp-pclxl",
".pct" : "image/x-pict",
".pcurl" : "application/vnd.curl.pcurl",
".pcx" : "image/x-pcx",
".pdb" : "application/vnd.palm",
".pdf" : "application/pdf",
".pfa" : "application/x-font-type1",
".pfb" : "application/x-font-type1",
".pfm" : "application/x-font-type1",
".pfr" : "application/font-tdpfr",
".pfx" : "application/x-pkcs12",
".pgm" : "image/x-portable-graymap",
".pgn" : "application/x-chess-pgn",
".pgp" : "application/pgp-encrypted",
".pic" : "image/x-pict",
".pkg" : "application/octet-stream",
".pki" : "application/pkixcmp",
".pkipath" : "application/pkix-pkipath",
".pl" : "text/plain",
".plb" : "application/vnd.3gpp.pic-bw-large",
".plc" : "application/vnd.mobius.plc",
".plf" : "application/vnd.pocketlearn",
".pls" : "application/pls+xml",
".pml" : "application/vnd.ctc-posml",
".png" : "image/png",
".pnm" : "image/x-portable-anymap",
".portpkg" : "application/vnd.macports.portpkg",
".pot" : "application/vnd.ms-powerpoint",
".potm" : "application/vnd.ms-powerpoint.template.macroenabled.12",
".potx" : "application/vnd.openxmlformats-officedocument.presentationml.template",
".ppa" : "application/vnd.ms-powerpoint",
".ppam" : "application/vnd.ms-powerpoint.addin.macroenabled.12",
".ppd" : "application/vnd.cups-ppd",
".ppm" : "image/x-portable-pixmap",
".pps" : "application/vnd.ms-powerpoint",
".ppsm" : "application/vnd.ms-powerpoint.slideshow.macroenabled.12",
".ppsx" : "application/vnd.openxmlformats-officedocument.presentationml.slideshow",
".ppt" : "application/vnd.ms-powerpoint",
".pptm" : "application/vnd.ms-powerpoint.presentation.macroenabled.12",
".pptx" : "application/vnd.openxmlformats-officedocument.presentationml.presentation",
".pqa" : "application/vnd.palm",
".prc" : "application/x-mobipocket-ebook",
".pre" : "application/vnd.lotus-freelance",
".prf" : "application/pics-rules",
".ps" : "application/postscript",
".psb" : "application/vnd.3gpp.pic-bw-small",
".psd" : "image/vnd.adobe.photoshop",
".psf" : "application/x-font-linux-psf",
".ptid" : "application/vnd.pvi.ptid1",
".pub" : "application/x-mspublisher",
".pvb" : "application/vnd.3gpp.pic-bw-var",
".pwn" : "application/vnd.3m.post-it-notes",
".pwz" : "application/vnd.ms-powerpoint",
".py" : "text/x-python",
".pya" : "audio/vnd.ms-playready.media.pya",
".pyc" : "application/x-python-code",
".pyo" : "application/x-python-code",
".pyv" : "video/vnd.ms-playready.media.pyv",
".qam" : "application/vnd.epson.quickanime",
".qbo" : "application/vnd.intu.qbo",
".qfx" : "application/vnd.intu.qfx",
".qps" : "application/vnd.publishare-delta-tree",
".qt" : "video/quicktime",
".qwd" : "application/vnd.quark.quarkxpress",
".qwt" : "application/vnd.quark.quarkxpress",
".qxb" : "application/vnd.quark.quarkxpress",
".qxd" : "application/vnd.quark.quarkxpress",
".qxl" : "application/vnd.quark.quarkxpress",
".qxt" : "application/vnd.quark.quarkxpress",
".ra" : "audio/x-pn-realaudio",
".ram" : "audio/x-pn-realaudio",
".rar" : "application/x-rar-compressed",
".ras" : "image/x-cmu-raster",
".rcprofile" : "application/vnd.ipunplugged.rcprofile",
".rdf" : "application/rdf+xml",
".rdz" : "application/vnd.data-vision.rdz",
".rep" : "application/vnd.businessobjects",
".res" : "application/x-dtbresource+xml",
".rgb" : "image/x-rgb",
".rif" : "application/reginfo+xml",
".rl" : "application/resource-lists+xml",
".rlc" : "image/vnd.fujixerox.edmics-rlc",
".rld" : "application/resource-lists-diff+xml",
".rm" : "application/vnd.rn-realmedia",
".rmi" : "audio/midi",
".rmp" : "audio/x-pn-realaudio-plugin",
".rms" : "application/vnd.jcp.javame.midlet-rms",
".rnc" : "application/relax-ng-compact-syntax",
".roff" : "text/troff",
".rpm" : "application/x-rpm",
".rpss" : "application/vnd.nokia.radio-presets",
".rpst" : "application/vnd.nokia.radio-preset",
".rq" : "application/sparql-query",
".rs" : "application/rls-services+xml",
".rsd" : "application/rsd+xml",
".rss" : "application/rss+xml",
".rtf" : "application/rtf",
".rtx" : "text/richtext",
".s" : "text/x-asm",
".saf" : "application/vnd.yamaha.smaf-audio",
".sbml" : "application/sbml+xml",
".sc" : "application/vnd.ibm.secure-container",
".scd" : "application/x-msschedule",
".scm" : "application/vnd.lotus-screencam",
".scq" : "application/scvp-cv-request",
".scs" : "application/scvp-cv-response",
".scurl" : "text/vnd.curl.scurl",
".sda" : "application/vnd.stardivision.draw",
".sdc" : "application/vnd.stardivision.calc",
".sdd" : "application/vnd.stardivision.impress",
".sdkd" : "application/vnd.solent.sdkm+xml",
".sdkm" : "application/vnd.solent.sdkm+xml",
".sdp" : "application/sdp",
".sdw" : "application/vnd.stardivision.writer",
".see" : "application/vnd.seemail",
".seed" : "application/vnd.fdsn.seed",
".sema" : "application/vnd.sema",
".semd" : "application/vnd.semd",
".semf" : "application/vnd.semf",
".ser" : "application/java-serialized-object",
".setpay" : "application/set-payment-initiation",
".setreg" : "application/set-registration-initiation",
".sfd-hdstx" : "application/vnd.hydrostatix.sof-data",
".sfs" : "application/vnd.spotfire.sfs",
".sgl" : "application/vnd.stardivision.writer-global",
".sgm" : "text/sgml",
".sgml" : "text/sgml",
".sh" : "application/x-sh",
".shar" : "application/x-shar",
".shf" : "application/shf+xml",
".si" : "text/vnd.wap.si",
".sic" : "application/vnd.wap.sic",
".sig" : "application/pgp-signature",
".silo" : "model/mesh",
".sis" : "application/vnd.symbian.install",
".sisx" : "application/vnd.symbian.install",
".sit" : "application/x-stuffit",
".sitx" : "application/x-stuffitx",
".skd" : "application/vnd.koan",
".skm" : "application/vnd.koan",
".skp" : "application/vnd.koan",
".skt" : "application/vnd.koan",
".sl" : "text/vnd.wap.sl",
".slc" : "application/vnd.wap.slc",
".sldm" : "application/vnd.ms-powerpoint.slide.macroenabled.12",
".sldx" : "application/vnd.openxmlformats-officedocument.presentationml.slide",
".slt" : "application/vnd.epson.salt",
".smf" : "application/vnd.stardivision.math",
".smi" : "application/smil+xml",
".smil" : "application/smil+xml",
".snd" : "audio/basic",
".snf" : "application/x-font-snf",
".so" : "application/octet-stream",
".spc" : "application/x-pkcs7-certificates",
".spf" : "application/vnd.yamaha.smaf-phrase",
".spl" : "application/x-futuresplash",
".spot" : "text/vnd.in3d.spot",
".spp" : "application/scvp-vp-response",
".spq" : "application/scvp-vp-request",
".spx" : "audio/ogg",
".src" : "application/x-wais-source",
".srx" : "application/sparql-results+xml",
".sse" : "application/vnd.kodak-descriptor",
".ssf" : "application/vnd.epson.ssf",
".ssml" : "application/ssml+xml",
".stc" : "application/vnd.sun.xml.calc.template",
".std" : "application/vnd.sun.xml.draw.template",
".stf" : "application/vnd.wt.stf",
".sti" : "application/vnd.sun.xml.impress.template",
".stk" : "application/hyperstudio",
".stl" : "application/vnd.ms-pki.stl",
".str" : "application/vnd.pg.format",
".stw" : "application/vnd.sun.xml.writer.template",
".sus" : "application/vnd.sus-calendar",
".susp" : "application/vnd.sus-calendar",
".sv4cpio" : "application/x-sv4cpio",
".sv4crc" : "application/x-sv4crc",
".svd" : "application/vnd.svd",
".svg" : "image/svg+xml",
".svgz" : "image/svg+xml",
".swa" : "application/x-director",
".swf" : "application/x-shockwave-flash",
".swi" : "application/vnd.arastra.swi",
".sxc" : "application/vnd.sun.xml.calc",
".sxd" : "application/vnd.sun.xml.draw",
".sxg" : "application/vnd.sun.xml.writer.global",
".sxi" : "application/vnd.sun.xml.impress",
".sxm" : "application/vnd.sun.xml.math",
".sxw" : "application/vnd.sun.xml.writer",
".t" : "text/troff",
".tao" : "application/vnd.tao.intent-module-archive",
".tar" : "application/x-tar",
".tcap" : "application/vnd.3gpp2.tcap",
".tcl" : "application/x-tcl",
".teacher" : "application/vnd.smart.teacher",
".tex" : "application/x-tex",
".texi" : "application/x-texinfo",
".texinfo" : "application/x-texinfo",
".text" : "text/plain",
".tfm" : "application/x-tex-tfm",
".tgz" : "application/x-gzip",
".tif" : "image/tiff",
".tiff" : "image/tiff",
".tmo" : "application/vnd.tmobile-livetv",
".torrent" : "application/x-bittorrent",
".tpl" : "application/vnd.groove-tool-template",
".tpt" : "application/vnd.trid.tpt",
".tr" : "text/troff",
".tra" : "application/vnd.trueapp",
".trm" : "application/x-msterminal",
".tsv" : "text/tab-separated-values",
".ttc" : "application/x-font-ttf",
".ttf" : "application/x-font-ttf",
".twd" : "application/vnd.simtech-mindmapper",
".twds" : "application/vnd.simtech-mindmapper",
".txd" : "application/vnd.genomatix.tuxedo",
".txf" : "application/vnd.mobius.txf",
".txt" : "text/plain",
".u32" : "application/x-authorware-bin",
".udeb" : "application/x-debian-package",
".ufd" : "application/vnd.ufdl",
".ufdl" : "application/vnd.ufdl",
".umj" : "application/vnd.umajin",
".unityweb" : "application/vnd.unity",
".uoml" : "application/vnd.uoml+xml",
".uri" : "text/uri-list",
".uris" : "text/uri-list",
".urls" : "text/uri-list",
".ustar" : "application/x-ustar",
".utz" : "application/vnd.uiq.theme",
".uu" : "text/x-uuencode",
".vcd" : "application/x-cdlink",
".vcf" : "text/x-vcard",
".vcg" : "application/vnd.groove-vcard",
".vcs" : "text/x-vcalendar",
".vcx" : "application/vnd.vcx",
".vis" : "application/vnd.visionary",
".viv" : "video/vnd.vivo",
".vor" : "application/vnd.stardivision.writer",
".vox" : "application/x-authorware-bin",
".vrml" : "model/vrml",
".vsd" : "application/vnd.visio",
".vsf" : "application/vnd.vsf",
".vss" : "application/vnd.visio",
".vst" : "application/vnd.visio",
".vsw" : "application/vnd.visio",
".vtu" : "model/vnd.vtu",
".vxml" : "application/voicexml+xml",
".w3d" : "application/x-director",
".wad" : "application/x-doom",
".wav" : "audio/x-wav",
".wax" : "audio/x-ms-wax",
".wbmp" : "image/vnd.wap.wbmp",
".wbs" : "application/vnd.criticaltools.wbs+xml",
".wbxml" : "application/vnd.wap.wbxml",
".wcm" : "application/vnd.ms-works",
".wdb" : "application/vnd.ms-works",
".wiz" : "application/msword",
".wks" : "application/vnd.ms-works",
".wm" : "video/x-ms-wm",
".wma" : "audio/x-ms-wma",
".wmd" : "application/x-ms-wmd",
".wmf" : "application/x-msmetafile",
".wml" : "text/vnd.wap.wml",
".wmlc" : "application/vnd.wap.wmlc",
".wmls" : "text/vnd.wap.wmlscript",
".wmlsc" : "application/vnd.wap.wmlscriptc",
".wmv" : "video/x-ms-wmv",
".wmx" : "video/x-ms-wmx",
".wmz" : "application/x-ms-wmz",
".wpd" : "application/vnd.wordperfect",
".wpl" : "application/vnd.ms-wpl",
".wps" : "application/vnd.ms-works",
".wqd" : "application/vnd.wqd",
".wri" : "application/x-mswrite",
".wrl" : "model/vrml",
".wsdl" : "application/wsdl+xml",
".wspolicy" : "application/wspolicy+xml",
".wtb" : "application/vnd.webturbo",
".wvx" : "video/x-ms-wvx",
".x32" : "application/x-authorware-bin",
".x3d" : "application/vnd.hzn-3d-crossword",
".xap" : "application/x-silverlight-app",
".xar" : "application/vnd.xara",
".xbap" : "application/x-ms-xbap",
".xbd" : "application/vnd.fujixerox.docuworks.binder",
".xbm" : "image/x-xbitmap",
".xdm" : "application/vnd.syncml.dm+xml",
".xdp" : "application/vnd.adobe.xdp+xml",
".xdw" : "application/vnd.fujixerox.docuworks",
".xenc" : "application/xenc+xml",
".xer" : "application/patch-ops-error+xml",
".xfdf" : "application/vnd.adobe.xfdf",
".xfdl" : "application/vnd.xfdl",
".xht" : "application/xhtml+xml",
".xhtml" : "application/xhtml+xml",
".xhvml" : "application/xv+xml",
".xif" : "image/vnd.xiff",
".xla" : "application/vnd.ms-excel",
".xlam" : "application/vnd.ms-excel.addin.macroenabled.12",
".xlb" : "application/vnd.ms-excel",
".xlc" : "application/vnd.ms-excel",
".xlm" : "application/vnd.ms-excel",
".xls" : "application/vnd.ms-excel",
".xlsb" : "application/vnd.ms-excel.sheet.binary.macroenabled.12",
".xlsm" : "application/vnd.ms-excel.sheet.macroenabled.12",
".xlsx" : "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
".xlt" : "application/vnd.ms-excel",
".xltm" : "application/vnd.ms-excel.template.macroenabled.12",
".xltx" : "application/vnd.openxmlformats-officedocument.spreadsheetml.template",
".xlw" : "application/vnd.ms-excel",
".xml" : "application/xml",
".xo" : "application/vnd.olpc-sugar",
".xop" : "application/xop+xml",
".xpdl" : "application/xml",
".xpi" : "application/x-xpinstall",
".xpm" : "image/x-xpixmap",
".xpr" : "application/vnd.is-xpr",
".xps" : "application/vnd.ms-xpsdocument",
".xpw" : "application/vnd.intercon.formnet",
".xpx" : "application/vnd.intercon.formnet",
".xsl" : "application/xml",
".xslt" : "application/xslt+xml",
".xsm" : "application/vnd.syncml+xml",
".xspf" : "application/xspf+xml",
".xul" : "application/vnd.mozilla.xul+xml",
".xvm" : "application/xv+xml",
".xvml" : "application/xv+xml",
".xwd" : "image/x-xwindowdump",
".xyz" : "chemical/x-xyz",
".zaz" : "application/vnd.zzazz.deck+xml",
".zip" : "application/zip",
".zir" : "application/vnd.zul",
".zirz" : "application/vnd.zul",
".zmm" : "application/vnd.handheld-entertainment+xml"
}

View File

@ -3,6 +3,24 @@ from cishu.cishubase import DictTree
from myutils.config import isascii from myutils.config import isascii
from traceback import print_exc from traceback import print_exc
from myutils.audioplayer import bass_decode from myutils.audioplayer import bass_decode
import json, os
cachejson = None
def query_mime(ext):
# https://gist.github.com/AshHeskes/6038140
global cachejson
if not cachejson:
with open(
os.path.join(
os.path.dirname(__file__), "file-extension-to-mime-types.json"
),
"r",
encoding="utf8",
) as ff:
cachejson = json.load(ff)
return cachejson.get(ext, "application/octet-stream")
class FlexBuffer: class FlexBuffer:
@ -2285,7 +2303,9 @@ class mdict(cishubase):
ext = ".mp3" ext = ".mp3"
varname = "var_" + hashlib.md5(file_content).hexdigest() varname = "var_" + hashlib.md5(file_content).hexdigest()
audiob64vals[varname] = base64.b64encode(file_content).decode() audiob64vals[varname] = base64.b64encode(file_content).decode()
return 3, "javascript:mdict_play_sound('{}',{})".format(ext[1:], varname) return 3, "javascript:mdict_play_sound('{}',{})".format(
query_mime(ext), varname
)
file_content = self.parse_url_in_mdd(index, url) file_content = self.parse_url_in_mdd(index, url)
if not file_content: if not file_content:
return return
@ -2378,11 +2398,15 @@ class mdict(cishubase):
csscollect: dict, csscollect: dict,
): ):
base = os.path.dirname(fn) base = os.path.dirname(fn)
matches = re.findall('src="([^"]+)"', html_content) matches = []
matches += re.findall('href="([^"]+)"', html_content) for _type, patt in (
matches += re.findall("""href='([^']+)'""", html_content) ("src", 'src="([^"]+)"'),
matches += re.findall("""src='([^']+)'""", html_content) ("href", 'href="([^"]+)"'),
for url in matches: ("src", """src='([^']+)'"""),
("href", """href='([^']+)'"""),
):
matches += [(_type, _) for _ in re.findall(patt, html_content)]
for _type_1, url in matches:
if url.startswith("#"): # a href # 页内跳转 if url.startswith("#"): # a href # 页内跳转
continue continue
try: try:
@ -2391,6 +2415,7 @@ class mdict(cishubase):
print_exc() print_exc()
print("unknown", fn, url) print("unknown", fn, url)
continue continue
print(url, file_content)
if not file_content: if not file_content:
print(fn, url) print(fn, url)
continue continue
@ -2406,7 +2431,11 @@ class mdict(cishubase):
html_content = html_content.replace(url, "") html_content = html_content.replace(url, "")
elif _type == 0: elif _type == 0:
varname = "var_" + hashlib.md5(file_content).hexdigest() varname = "var_" + hashlib.md5(file_content).hexdigest()
hrefsrcvals[varname] = base64.b64encode(file_content).decode() hrefsrcvals[varname] = (
_type_1,
query_mime(os.path.splitext(url)[1].lower()),
base64.b64encode(file_content).decode(),
)
html_content = html_content.replace(url, varname) html_content = html_content.replace(url, varname)
return '<div class="{}">{}</div>'.format(divid, html_content) return '<div class="{}">{}</div>'.format(divid, html_content)
@ -2618,14 +2647,15 @@ if (content.style.display === 'block') {
func += """ func += """
function replacelongvarsrcs(varval, varname) function replacelongvarsrcs(varval, varname)
{ {
let elements = document.querySelectorAll('[src="'+varname+'"]'); let type=varval[0]
let elements = document.querySelectorAll('['+type+'="'+varname+'"]');
for(let i=0;i<elements.length;i++) for(let i=0;i<elements.length;i++)
elements[i].src="data:application/octet-stream;base64," + varval elements[i][type]="data:"+varval[1]+";base64," + varval[2]
} }
var lastmusicplayer=false; var lastmusicplayer=false;
function mdict_play_sound(ext, b64){ function mdict_play_sound(ext, b64){
const music = new Audio(); const music = new Audio();
music.src="data:audio/"+ext+";base64,"+b64 music.src="data:"+ext+";base64,"+b64
if(lastmusicplayer!=false) if(lastmusicplayer!=false)
{ {
lastmusicplayer.pause() lastmusicplayer.pause()
@ -2641,8 +2671,8 @@ function safe_mdict_entry_call(word){
}""" }"""
for varname, val in audiob64vals.items(): for varname, val in audiob64vals.items():
func += '{}="{}"\n'.format(varname, val) func += '{}="{}"\n'.format(varname, val)
for varname, val in hrefsrcvals.items(): for varname, (_type, mime, val) in hrefsrcvals.items():
func += '{}="{}"\n'.format(varname, val) func += '{}=["{}","{}","{}"]\n'.format(varname, _type, mime, val)
func += 'replacelongvarsrcs({},"{}")\n'.format(varname, varname) func += 'replacelongvarsrcs({},"{}")\n'.format(varname, varname)
func += "</script>" func += "</script>"
if self.config["stylehv"] == 0: if self.config["stylehv"] == 0: