61 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
---
 | 
						|
#
 | 
						|
# Jekyll layout that compresses HTML
 | 
						|
# v0.2.0
 | 
						|
# https://github.com/penibelst/jekyll-compress-html
 | 
						|
#
 | 
						|
compress:
 | 
						|
  elements:
 | 
						|
    # Root
 | 
						|
    - html
 | 
						|
    # Metadata content
 | 
						|
    - head
 | 
						|
    - title
 | 
						|
    - base
 | 
						|
    - link
 | 
						|
    - meta
 | 
						|
    - style
 | 
						|
    # Sections
 | 
						|
    - body
 | 
						|
    - article
 | 
						|
    - section
 | 
						|
    - nav
 | 
						|
    - aside
 | 
						|
    - h1
 | 
						|
    - h2
 | 
						|
    - h3
 | 
						|
    - h4
 | 
						|
    - h5
 | 
						|
    - h6
 | 
						|
    - hgroup
 | 
						|
    - header
 | 
						|
    - footer
 | 
						|
    - address
 | 
						|
    # Grouping content except `pre`
 | 
						|
    - p
 | 
						|
    - hr
 | 
						|
    - blockquote
 | 
						|
    - ol
 | 
						|
    - ul
 | 
						|
    - li
 | 
						|
    - dl
 | 
						|
    - dt
 | 
						|
    - dd
 | 
						|
    - figure
 | 
						|
    - figcaption
 | 
						|
    - main
 | 
						|
    - div
 | 
						|
    # Tabular data
 | 
						|
    - table
 | 
						|
    - caption
 | 
						|
    - colgroup
 | 
						|
    - col
 | 
						|
    - tbody
 | 
						|
    - thead
 | 
						|
    - tfoot
 | 
						|
    - tr
 | 
						|
    - td
 | 
						|
    - th
 | 
						|
---
 | 
						|
 | 
						|
{% assign _pres = content | split: '<pre' %}{% for _pre1 in _pres %}{% assign _pre2 = _pre1 | split: '</pre>' %}{% if _pre2.size == 2 %}<pre{{ _pre2.first }}</pre>{% endif %}{% assign _second = _pre2.last | split: ' ' | join: ' ' %}{% for _element in page.compress.elements %}{% assign _edge = ' <e,<e' | replace: 'e', _element | split: ',' %}{% assign _second = _second | replace: _edge[0], _edge[1] %}{% assign _edge = ' </e>,</e>' | replace: 'e', _element | split: ',' %}{% assign _second = _second | replace: _edge[0], _edge[1] %}{% assign _edge = '</e> ,</e>' | replace: 'e', _element | split: ',' %}{% assign _second = _second | replace: _edge[0], _edge[1] %}{% assign _blank = '<e></e>' | replace: 'e', _element %}{% assign _second = _second | remove: _blank %}{% endfor %}{{ _second }}{% endfor %}
 |