cheatsheet do
  title 'HTML Head Elements'
  docset_file_name 'HTML_Head_Elements'
  keyword 'htmlhe'
  source_url 'http://cheat.kapeli.com'

  category do
    id 'Basic Head Elements'

    entry do
      notes <<-'END'
        ```html
        <title>Page Title</title>
        <base href="https://example.com/page.html">
        <style>
          body { color: red; }
        </style>
        <script src="script.js"></script>
        ```
      END
    end
  end

  category do
    id 'Meta Element'

    entry do
      notes <<-'END'
          ```html
          <meta charset="utf-8">
          <meta http-equiv="x-ua-compatible" content="ie=edge">
          <meta name="viewport" content="width=device-width, initial-scale=1">
          <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
          <meta name="keywords" content="your,keywords,here,comma,separated,no,spaces">
          <meta name="description" content="150 chars">
          <meta name="subject" content="your website's subject">
          <meta name="language" content="en">
          <meta name="robots" content="index,follow">
          <meta name="googlebot" content="index,follow">
          <meta name="google" content="nositelinkssearchbox">
          <meta name="google-site-verification" content="verification_token">
          <meta name="revised" content="Sunday, July 18th, 2010, 5:15 pm">
          <meta name="abstract" content="">
          <meta name="topic" content="">
          <meta name="summary" content="">
          <meta name="classification" content="business">
          <meta name="author" content="name, email@example.com">
          <meta name="designer" content="">
          <meta name="reply-to" content="email@example.com">
          <meta name="owner" content="">
          <meta name="url" content="https://example.com/">
          <meta name="identifier-URL" content="https://example.com/">
          <meta name="directory" content="submission">
          <meta name="category" content="">
          <meta name="coverage" content="Worldwide">
          <meta name="distribution" content="Global">
          <meta name="rating" content="General">
          <meta name="referrer" content="never">
          <meta name="revisit-after" content="7 days">
          <meta http-equiv="refresh" content="300;url=https://example.com/">

          <!-- Cache Control -->
          <meta http-equiv="Expires" content="0">
          <meta http-equiv="Pragma" content="no-cache">
          <meta http-equiv="Cache-Control" content="no-cache">
          ```
      END
    end
  end

  category do
    id 'Link Element'

    entry do
      name 'Link Element'
      notes <<-'END'
        ```html
        <link rel="copyright" href="copyright.html">
        <link rel="stylesheet" href="https://example.com/styles.css">
        <link rel="alternate" href="https://feeds.feedburner.com/martini" type="application/rss+xml" title="RSS">
        <link rel="alternate" href="https://example.com/feed.atom" type="application/atom+xml" title="Atom 0.3">
        <link rel="alternate" href="https://es.example.com/" hreflang="es">
        <link rel="me" href="https://google.com/profiles/thenextweb" type="text/html">
        <link rel="archives" href="https://example.com/2003/05/" title="May 2003">
        <link rel="index" href="https://example.com/" title="DeWitt Clinton">
        <link rel="start" href="https://example.com/photos/pattern_recognition_1_about/" title="Pattern Recognition 1">
        <link rel="prev" href="https://example.com/opensearch/opensearch-and-openid-a-sure-way-to-get-my-attention/" title="OpenSearch and OpenID? A sure way to get my attention.">
        <link rel="search" href="/search.xml" type="application/opensearchdescription+xml" title="Viatropos">
        <link rel="self" type="application/atom+xml" href="https://example.com/atomFeed.php?page=3">
        <link rel="first" href="https://example.com/atomFeed.php">
        <link rel="next" href="https://example.com/atomFeed.php?page=4">
        <link rel="previous" href="https://example.com/atomFeed.php?page=2">
        <link rel="last" href="https://example.com/atomFeed.php?page=147">
        <link rel="shortlink" href="https://example.com/?p=43625">
        <link rel="canonical" href="https://example.com/2010/06/9-things-to-do-before-entering-social-media.html">
        <link rel="amphtml" href="https://www.example.com/url/to/amp-version.html">
        <link rel="EditURI" href="https://example.com/xmlrpc.php?rsd" type="application/rsd+xml" title="RSD">
        <link rel="pingback" href="https://example.com/xmlrpc.php">
        <link rel="webmention" href="https://example.com/webmention">
        <link rel="manifest" href="manifest.json">
        <link rel="author" href="humans.txt">

        <!-- Prefetching, preloading, prebrowsing -->
        <link rel="dns-prefetch" href="//example.com/">
        <link rel="preconnect" href="https://www.example.com/">
        <link rel="prefetch" href="https://www.example.com/">
        <link rel="prerender" href="https://example.com/">
        <link rel="subresource" href="styles.css">
        <link rel="preload" href="image.png">
        <!-- More info: https://css-tricks.com/prefetching-preloading-prebrowsing/ -->
        ```
      END
    end

    entry do
      name 'Favicons'
      notes <<-'END'
        ```html
        <!-- For IE 10 and below -->  
        <!-- No link, just place a file called favicon.ico in the root directory -->

        <!-- For IE 11, Chrome, Firefox, Safari, Opera -->  
        <link rel="icon" href="path/to/favicon-16.png" sizes="16x16" type="image/png">
        <link rel="icon" href="path/to/favicon-32.png" sizes="32x32" type="image/png">
        <link rel="icon" href="path/to/favicon-48.png" sizes="48x48" type="image/png">
        <link rel="icon" href="path/to/favicon-62.png" sizes="62x62" type="image/png">
        <!-- More info: https://bitsofco.de/all-about-favicons-and-touch-icons/ -->
        ```

        [All About Favicons (And Touch Icons)](https://bitsofco.de/all-about-favicons-and-touch-icons/)
      END
    end
  end

  category do
    id 'Social'

    entry do
      name 'Facebook / Open Graph'
      notes <<-'END'
        ```html
        <meta property="fb:app_id" content="123456789">
        <meta property="og:url" content="https://example.com/page.html">
        <meta property="og:type" content="website">
        <meta property="og:title" content="Content Title">
        <meta property="og:image" content="https://example.com/image.jpg">
        <meta property="og:description" content="Description Here">
        <meta property="og:site_name" content="Site Name">
        <meta property="og:locale" content="en_US">
        <meta property="article:author" content="">
        <!-- Facebook: https://developers.facebook.com/docs/sharing/webmasters#markup -->
        <!-- Open Graph: http://ogp.me/ -->
        ```

        [Facebook Open Graph Markup](https://developers.facebook.com/docs/sharing/webmasters#markup)
        [Open Graph protocol](http://ogp.me/)
      END
    end

    entry do
      name 'Twitter'
      notes <<-'END'
        ```html
        <meta name="twitter:card" content="summary">
        <meta name="twitter:site" content="@site_account">
        <meta name="twitter:creator" content="@individual_account">
        <meta name="twitter:url" content="https://example.com/page.html">
        <meta name="twitter:title" content="Content Title">
        <meta name="twitter:description" content="Content description less than 200 characters">
        <meta name="twitter:image" content="https://example.com/image.jpg">
        <!-- More info: https://dev.twitter.com/cards/getting-started -->
        <!-- Validate: https://dev.twitter.com/docs/cards/validation/validator -->
        ```

        [Twitter Cards: Getting Started Guide](https://dev.twitter.com/cards/getting-started)
        [Twitter Card Validator](https://dev.twitter.com/docs/cards/validation/validator)
      END
    end

    entry do
      name 'Google+/Schema.org'
      notes <<-'END'
        ```html
        <meta itemprop="name" content="Content Title">
        <meta itemprop="description" content="Content description less than 200 characters">
        <meta itemprop="image" content="https://example.com/image.jpg">
        ```
      END
    end
  end

  category do
    id 'Browser/Platform'

    entry do
      name 'Apple iOS'
      notes <<-'END'
        ```html
        <!-- Smart App Banner -->
        <meta name="apple-itunes-app" content="app-id=APP_ID,affiliate-data=AFFILIATE_ID,app-argument=SOME_TEXT">

        <!-- Disable automatic detection and formatting of possible phone numbers -->
        <meta name="format-detection" content="telephone=no">

        <!-- Add to Home Screen -->
        <meta name="apple-mobile-web-app-capable" content="yes">
        <meta name="apple-mobile-web-app-status-bar-style" content="black">
        <meta name="apple-mobile-web-app-title" content="App Title">

        <!-- Touch Icons -->
        <link rel="apple-touch-icon" href="apple-touch-icon.png">
        <link rel="apple-touch-icon-precomposed" href="apple-touch-icon-precomposed.png">
        <!-- In most cases, one 180×180px touch icon in the head is enough -->
        <!-- If you use art-direction and/or want to have different content for each device, you can add more touch icons -->

        <!-- Startup Image -->
        <link rel="apple-touch-startup-image" href="startup.png">

        <!-- More info: https://developer.apple.com/safari/library/documentation/appleapplications/reference/safarihtmlref/articles/metatags.html -->
        ```

        [Apple Meta Tags](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)
      END
    end

    entry do
      name 'Apple Safari'
      notes <<-'END'
        ```html
        <!-- Pinned Site -->
        <link rel="mask-icon" href="icon.svg" color="red">
        ```
      END
    end

    entry do
      name 'Google Android'
      notes <<-'END'
        ```html
        <meta name="theme-color" content="#E64545">

        <!-- Add to homescreen -->
        <meta name="mobile-web-app-capable" content="yes">
        <!-- More info: https://developer.chrome.com/multidevice/android/installtohomescreen -->
        ```
      END
    end

    entry do
      name 'Google Chrome'
      notes <<-'END'
        ```html
        <link rel="chrome-webstore-item" href="https://chrome.google.com/webstore/detail/APP_ID">

        <!-- Disable translation prompt -->
        <meta name="google" value="notranslate">
        ```
      END
    end

    entry do
      name 'Microsoft Internet Explorer'
      notes <<-'END'
        ```html
        <meta http-equiv="x-ua-compatible" content="ie=edge">
        <meta http-equiv="cleartype" content="on">
        <meta name="skype_toolbar" content="skype_toolbar_parser_compatible">

        <!-- Pinned Site -->
        <!-- IE 10 / Windows 8 -->
        <meta name="msapplication-TileImage" content="pinned-tile-144.png">
        <meta name="msapplication-TileColor" content="#009900">
        <!-- IE 11 / Windows 9.1 -->
        <meta name="msapplication-config" content="ieconfig.xml">
        ```
      END
    end

    entry do
      name 'Microsoft Internet Explorer (LEGACY DO NOT USE)'
      notes <<-'END'
        ```html
        <!-- Legacy Tags (DO NOT USE) -->
        <meta name="mssmarttagspreventparsing" content="true">
        <meta http-equiv="page-enter" content="revealtrans(duration=2,transition=2)">
        <meta http-equiv="page-exit" content="revealtrans(duration=3,transition=12)">
        ```
      END
    end
  end

  category do
    id 'Other Resources'
    entry do
      notes <<-'END'
        - [HTML5 Boilerplate Docs: The HTML](https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/html.md)
        - [HTML5 Boilerplate Docs: Extend and customize](https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/extend.md)
      END
    end
  end

  notes <<-'END'
    * Based on [github.com/joshbuchea/HEAD](https://github.com/joshbuchea/HEAD) ([MIT License](https://github.com/joshbuchea/HEAD/blob/master/LICENSE))
  END
end
