Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the media-types Reference Manual, generated automatically by Declt version 3.0 "Montgomery Scott" on Sun May 15 05:33:14 2022 GMT+0.
• Introduction | What media-types is all about | |
• Systems | The systems documentation | |
• Files | The files documentation | |
• Packages | The packages documentation | |
• Definitions | The symbols documentation | |
• Indexes | Concepts, functions, variables and data types |
MEDIA-TYPES is a library for querying and comparing media types.
Probably the most useful function is extension-media-type
:
(extension-media-type "txt") => "text/plain"
An unknown extension, or no extension, has a media type of
application/octet-stream
:
(extension-media-type "my-fake-extension") => "application/octet-stream"
(extension-media-type nil) => "application/octet-stream"
(This is nonstandard, but reflects general practice.)
You can also use media-type-extension
to query the extension (or
extensions) for a media type:
(media-type-extension "application/javascript") => "js"
If a media type has multiple extensions, they are returned as multiple values:
(media-type-extension "image/jpeg") => "jpeg", "jpg", "jpe"
Extensions are not case sensitive:
(extension-media-type "TXT") => "text/plain"
You may pass the extension with or without a leading dot:
(extension-media-type ".txt") => "text/plain"
You can get the extension of a file name with file-name-extension
:
(file-name-extension "file.txt") => "txt"
Or just get the media type of the file directly:
(file-name-media-type "file.txt") => "text/plain"
(file-name-media-type #p"file.txt") => "text/plain"
A file name without an extension has a media type of application/octet-stream
:
(file-name-media-type "file") => "application/octet-stream"
However, if you want to test whether a file is of a specific media
type, you should use file-name-media-typep
.
(file-name-media-typep "file.xml" "application/xml") => t
(file-name-media-typep "file.svg" "application/xml") => t
file-name-media-typep
uses media-subtypep
, which has a
sophisticated understanding of media types:
(media-subtypep "text/plain" "*/*") => t
(media-subtypep "text/plain" "text/*") => t
;; All media types are effectively subtypes of application/octet-stream.
(media-subtypep "text/plain" "application/octet-stream") => t
;; Structured syntax suffixes.
(media-subtypep "image/svg+xml" "application/xml") => t
(media-subtypep "application/vnd.my-format+json" "application/json") => t
;; Media type parameters.
(media-subtypep "application/atom+xml;type=entry" "application/xml") => t
(media-subtypep "application/atom+xml" "application/atom+xml;type=entry") => nil
(media-subtypep "application/atom+xml;charset=UTF8;type=entry"
"application/atom+xml;type=entry")
=> t
;; The "q" pseudo-parameter is used in HTTP content negotiation.
(media-subtypep "application/json" "*/*;q=0.1") => t
MEDIA-TYPES uses the mime.types
from the Apache sources.
Next: Files, Previous: Introduction, Up: Top [Contents][Index]
The main system appears first, followed by any subsystem dependency.
• The media-types system |
Paul M. Rodriguez <pmr@ruricolist.com>
MIT
Query and compare media types.
media-types.asd (file)
Files are sorted by type and then listed depth-first from the systems components trees.
• Lisp files | ||
• Static files |
Next: Static files, Previous: Files, Up: Files [Contents][Index]
• The media-types.asd file | ||
• The media-types/package.lisp file | ||
• The media-types/media-types.lisp file | ||
• The media-types/file-extensions.lisp file |
Next: The media-types/package․lisp file, Previous: Lisp files, Up: Lisp files [Contents][Index]
media-types.asd
media-types (system)
Next: The media-types/media-types․lisp file, Previous: The media-types․asd file, Up: Lisp files [Contents][Index]
media-types (system)
package.lisp
Next: The media-types/file-extensions․lisp file, Previous: The media-types/package․lisp file, Up: Lisp files [Contents][Index]
package.lisp (file)
media-types (system)
media-types.lisp
Previous: The media-types/media-types․lisp file, Up: Lisp files [Contents][Index]
mime.types (file)
media-types (system)
file-extensions.lisp
Previous: Lisp files, Up: Files [Contents][Index]
• The media-types/mime.types file |
Previous: Static files, Up: Static files [Contents][Index]
media-types.lisp (file)
media-types (system)
mime.types
Next: Definitions, Previous: Files, Up: Top [Contents][Index]
Packages are listed by definition order.
• The media-types package |
package.lisp (file)
Definitions are sorted by export status, category, package, and then by lexicographic order.
• Exported definitions | ||
• Internal definitions |
Next: Internal definitions, Previous: Definitions, Up: Definitions [Contents][Index]
• Exported compiler macros | ||
• Exported functions | ||
• Exported conditions | ||
• Exported structures |
Next: Exported functions, Previous: Exported definitions, Up: Exported definitions [Contents][Index]
file-extensions.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
Next: Exported conditions, Previous: Exported compiler macros, Up: Exported definitions [Contents][Index]
file-extensions.lisp (file)
file-extensions.lisp (file)
file-extensions.lisp (file)
file-extensions.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
file-extensions.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
Next: Exported structures, Previous: Exported functions, Up: Exported definitions [Contents][Index]
media-types.lisp (file)
error (condition)
:type
Previous: Exported conditions, Up: Exported definitions [Contents][Index]
media-types.lisp (file)
%read-only-struct (structure)
string
(alexandria:required-argument (quote type))
media-type-type (function)
(setf media-type-type) (function)
string
(alexandria:required-argument (quote media-types::subtype))
media-type-subtype (function)
(setf media-type-subtype) (function)
list
media-type-params (function)
(setf media-type-params) (function)
Previous: Exported definitions, Up: Definitions [Contents][Index]
• Internal constants | ||
• Internal special variables | ||
• Internal symbol macros | ||
• Internal functions | ||
• Internal types |
Next: Internal special variables, Previous: Internal definitions, Up: Internal definitions [Contents][Index]
media-types.lisp (file)
Next: Internal symbol macros, Previous: Internal constants, Up: Internal definitions [Contents][Index]
file-extensions.lisp (file)
file-extensions.lisp (file)
Next: Internal functions, Previous: Internal special variables, Up: Internal definitions [Contents][Index]
media-types.lisp (file)
media-types::*storage-for-deflex-var-application/cbor*
media-types.lisp (file)
media-types::*storage-for-deflex-var-application/fastinfoset*
media-types.lisp (file)
media-types::*storage-for-deflex-var-application/json*
media-types.lisp (file)
media-types::*storage-for-deflex-var-application/octet-stream*
media-types.lisp (file)
media-types::*storage-for-deflex-var-application/vnd.wap.wbxml*
media-types.lisp (file)
media-types::*storage-for-deflex-var-application/x-www-form-urlencoded*
media-types.lisp (file)
media-types::*storage-for-deflex-var-application/xml*
media-types.lisp (file)
media-types::*storage-for-deflex-var-application/zip*
media-types.lisp (file)
media-types::+storage-for-deflex-var-media-ranges+
file-extensions.lisp (file)
media-types::*storage-for-deflex-var-mime.types*
media-types.lisp (file)
media-types::*storage-for-deflex-var-multipart/form-data*
media-types.lisp (file)
media-types::*storage-for-deflex-var-suffix-types*
Next: Internal types, Previous: Internal symbol macros, Up: Internal definitions [Contents][Index]
media-types.lisp (file)
file-extensions.lisp (file)
file-extensions.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
file-extensions.lisp (file)
media-types.lisp (file)
file-extensions.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
file-extensions.lisp (file)
media-types.lisp (file)
Previous: Internal functions, Up: Internal definitions [Contents][Index]
file-extensions.lisp (file)
file-extensions.lisp (file)
file-extensions.lisp (file)
file-extensions.lisp (file)
media-types.lisp (file)
media-types.lisp (file)
file-extensions.lisp (file)
file-extensions.lisp (file)
Previous: Definitions, Up: Top [Contents][Index]
• Concept index | ||
• Function index | ||
• Variable index | ||
• Data type index |
Next: Function index, Previous: Indexes, Up: Indexes [Contents][Index]
Jump to: | F L M S |
---|
Jump to: | F L M S |
---|
Next: Variable index, Previous: Concept index, Up: Indexes [Contents][Index]
Jump to: | C D E F M P R S |
---|
Jump to: | C D E F M P R S |
---|
Next: Data type index, Previous: Function index, Up: Indexes [Contents][Index]
Jump to: | *
+
A C M P S T |
---|
Jump to: | *
+
A C M P S T |
---|
Previous: Variable index, Up: Indexes [Contents][Index]
Jump to: | B C D E F I M N P S T |
---|
Jump to: | B C D E F I M N P S T |
---|