Module: PictureTag
- Extended by:
- Router
- Defined in:
- lib/jekyll_picture_tag.rb,
lib/jekyll_picture_tag/cache.rb,
lib/jekyll_picture_tag/utils.rb,
lib/jekyll_picture_tag/router.rb,
lib/jekyll_picture_tag/version.rb,
lib/jekyll_picture_tag/instructions.rb,
lib/jekyll_picture_tag/srcsets/basic.rb,
lib/jekyll_picture_tag/srcsets/width.rb,
lib/jekyll_picture_tag/images/img_uri.rb,
lib/jekyll_picture_tag/parsers/preset.rb,
lib/jekyll_picture_tag/defaults/global.rb,
lib/jekyll_picture_tag/defaults/presets.rb,
lib/jekyll_picture_tag/images/image_file.rb,
lib/jekyll_picture_tag/output_formats/img.rb,
lib/jekyll_picture_tag/parsers/tag_parser.rb,
lib/jekyll_picture_tag/images/source_image.rb,
lib/jekyll_picture_tag/output_formats/auto.rb,
lib/jekyll_picture_tag/srcsets/pixel_ratio.rb,
lib/jekyll_picture_tag/output_formats/basic.rb,
lib/jekyll_picture_tag/parsers/arg_splitter.rb,
lib/jekyll_picture_tag/parsers/configuration.rb,
lib/jekyll_picture_tag/parsers/image_backend.rb,
lib/jekyll_picture_tag/images/generated_image.rb,
lib/jekyll_picture_tag/output_formats/picture.rb,
lib/jekyll_picture_tag/output_formats/data_img.rb,
lib/jekyll_picture_tag/parsers/html_attributes.rb,
lib/jekyll_picture_tag/output_formats/data_auto.rb,
lib/jekyll_picture_tag/output_formats/direct_url.rb,
lib/jekyll_picture_tag/output_formats/data_picture.rb,
lib/jekyll_picture_tag/output_formats/naked_srcset.rb,
lib/jekyll_picture_tag/instructions/children/config.rb,
lib/jekyll_picture_tag/instructions/children/params.rb,
lib/jekyll_picture_tag/instructions/children/preset.rb,
lib/jekyll_picture_tag/instructions/children/context.rb,
lib/jekyll_picture_tag/instructions/children/parsers.rb,
lib/jekyll_picture_tag/output_formats/data_attributes.rb,
lib/jekyll_picture_tag/instructions/parents/env_instruction.rb,
lib/jekyll_picture_tag/instructions/parents/conditional_instruction.rb
Overview
Title: Jekyll Picture Tag Authors: Rob Wierzbowski : @robwierzbowski Justin Reese : @justinxreese Welch Canavan : @xiwcx Robert Buchberger : @celeritas_5k
Description: Easy responsive images for Jekyll.
Download: https://rubygems.org/gems/jekyll_picture_tag Documentation: https://rbuchberger.github.io/jekyll_picture_tag/ Issues: https://github.com/rbuchberger/jekyll_picture_tag/
Syntax: picture [preset] img.jpg [media_query: alt-img.jpg] [attributes] %
Examples:
{% picture poster.jpg --alt The strange case of responsive images %}
{% picture
gallery
poster.jpg
source_small: poster_closeus.jpg
--alt The strange case of responsive images
--img class="gal-img"
%}
See the documentation for full configuration and usage instructions.
Defined Under Namespace
Modules: Instructions, OutputFormats, Parsers, Router, Srcsets, Utils Classes: Cache, GeneratedImage, ImageFile, ImgURI, Picture, SourceImage
Constant Summary collapse
- ROOT_PATH =
__dir__- VERSION =
'2.1.3'.freeze
- DEFAULT_CONFIG =
Default settings for _config.yml
{ 'picture' => { 'source' => '', 'output' => 'generated', 'suppress_warnings' => false, 'relative_url' => true, 'cdn_environments' => ['production'], 'nomarkdown' => true, 'ignore_missing_images' => false, 'disabled' => false, 'fast_build' => false, 'ignore_baseurl' => false, 'baseurl_key' => 'baseurl' } }.freeze
- DEFAULT_PRESET =
{ 'markup' => 'auto', 'formats' => ['original'], 'widths' => [400, 600, 800, 1000], 'fallback_width' => 800, 'fallback_format' => 'original', 'noscript' => false, 'link_source' => false, 'quality' => 75, 'format_quality' => { 'webp' => 50, 'avif' => 30, 'jp2' => 30 }, 'data_sizes' => true, 'keep' => 'attention', 'dimension_attributes' => false, 'strip_metadata' => true, 'image_options' => { 'avif' => { 'compression' => 'av1', 'speed' => 8 } } }.freeze
- STOCK_PRESETS =
{ 'jpt-webp' => { 'formats' => %w[webp original] }, 'jpt-avif' => { 'formats' => %w[avif webp original] }, 'jpt-lazy' => { 'markup' => 'data_auto', 'noscript' => true, 'formats' => %w[webp original], 'attributes' => { 'parent' => 'class="lazy"' } }, 'jpt-loaded' => { 'formats' => %w[avif jp2 webp original], 'dimension_attributes' => true }, 'jpt-direct' => { 'markup' => 'direct_url', 'fallback_format' => 'webp', 'fallback_width' => 600 }, 'jpt-thumbnail' => { 'base_width' => 250, 'pixel_ratios' => [1, 1.5, 2], 'formats' => %w[webp original], 'fallback_width' => 250, 'attributes' => { 'picture' => 'class="icon"' } }, 'jpt-avatar' => { 'base_width' => 100, 'pixel_ratios' => [1, 1.5, 2], 'fallback_width' => 100, 'crop' => '1:1' } }.freeze
- STOCK_MEDIA_QUERIES =
{ 'jpt-mobile' => 'max-width: 480px', 'jpt-tablet' => 'max-width: 768px', 'jpt-laptop' => 'max-width: 1024px', 'jpt-desktop' => 'max-width: 1200px', 'jpt-wide' => 'min-width: 1201px' }.freeze