middlemac-extras 1.0.6 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. checksums.yaml +5 -5
  2. data/.gitattributes +4 -0
  3. data/.gitignore +8 -1
  4. data/.yardopts +7 -0
  5. data/CHANGELOG.md +55 -9
  6. data/Rakefile +206 -7
  7. data/documentation_project/Gemfile +3 -3
  8. data/documentation_project/config.rb +2 -6
  9. data/documentation_project/source/api_reference.html.md.erb +38 -0
  10. data/documentation_project/source/cli.html.md.erb +4 -3
  11. data/documentation_project/source/config_rb.html.md.erb +1 -2
  12. data/documentation_project/source/css_image_sizes.html.md.erb +2 -3
  13. data/documentation_project/source/image_tag.html.md.erb +1 -2
  14. data/documentation_project/source/index.html.md.erb +8 -7
  15. data/documentation_project/source/license.html.md.erb +1 -2
  16. data/documentation_project/source/md_images.html.md.erb +1 -2
  17. data/documentation_project/source/md_links.html.md.erb +1 -2
  18. data/documentation_project/source/partials/_yard_config.erb +200 -0
  19. data/documentation_project/source/partials/_yard_helpers.erb +192 -0
  20. data/documentation_project/source/partials/_yard_helpers_extended.erb +135 -0
  21. data/documentation_project/source/stylesheets/_middlemac_minimal.scss +281 -0
  22. data/features/helpers.feature +39 -0
  23. data/features/support/env.rb +20 -0
  24. data/fixtures/middlemac_extras_app/config.rb +7 -0
  25. data/fixtures/middlemac_extras_app/source/images/middlemac-extras-small.png +0 -0
  26. data/fixtures/middlemac_extras_app/source/images/middlemac-extras-small@2x.png +0 -0
  27. data/fixtures/middlemac_extras_app/source/images/middlemac-extras-smaller.png +0 -0
  28. data/fixtures/middlemac_extras_app/source/index.html.md.erb +31 -0
  29. data/lib/middlemac-extras/extension.rb +187 -61
  30. data/lib/middlemac-extras/version.rb +1 -1
  31. data/middlemac-extras.gemspec +44 -17
  32. data/yard/readme.md +6 -0
  33. data/yard/template-grouped/default/module/html/method_details_list.erb +11 -0
  34. data/yard/template-partials/default/method_details/setup.rb +4 -0
  35. data/yard/template-partials/default/module/html/attribute_details.erb +9 -0
  36. data/yard/template-partials/default/module/html/method_details_list.erb +10 -0
  37. data/yard/template-partials/default/module/setup.rb +6 -0
  38. data/yard/template-partials/default/onefile/html/layout.erb +1 -0
  39. data/yard/template-partials/default/onefile/html/setup.rb +4 -0
  40. data/yard/yard_extensions.rb +109 -0
  41. metadata +118 -23
@@ -0,0 +1,135 @@
1
+
2
+
3
+
4
+
5
+
6
+ <div class="method_details_list">
7
+
8
+
9
+
10
+ <div class="method_details first">
11
+ <h3 class="signature first" id="image_tag-instance_method">
12
+
13
+ #<strong>image_tag</strong>(path, params = {}) &#x21d2; <tt>String</tt>
14
+
15
+
16
+
17
+
18
+
19
+ </h3><div class="docstring">
20
+ <div class="discussion">
21
+ <p>With the proper options enabled this helper extends
22
+ the built-in functionality of <strong>Middleman</strong>’s helpers
23
+ in a couple of ways. With <code>:retina_srcset</code> enabled,
24
+ automatic <code>srcset</code> attributes will be applied to
25
+ <code>&lt;img&gt;</code> tags if an @2x version of the specified image
26
+ is found. With <code>:img_auto_extensions</code> it’s possible to
27
+ specify image names without the file name extension.</p>
28
+
29
+
30
+ </div>
31
+ </div>
32
+ <div class="tags">
33
+ <p class="tag_title">Parameters:</p>
34
+ <ul class="param">
35
+
36
+ <li>
37
+
38
+ <span class='name'>path</span>
39
+
40
+
41
+ <span class='type'>(<tt>String</tt>)</span>
42
+
43
+
44
+
45
+ &mdash;
46
+ <div class='inline'><p>Specify path to the image file.</p>
47
+ </div>
48
+
49
+ </li>
50
+
51
+ <li>
52
+
53
+ <span class='name'>params</span>
54
+
55
+
56
+ <span class='type'>(<tt>Hash</tt>)</span>
57
+
58
+
59
+ <em class="default">(defaults to: <tt>{}</tt>)</em>
60
+
61
+
62
+ &mdash;
63
+ <div class='inline'><p>Optional parameters to pass to
64
+ the helper. <strong>Middleman</strong> (and other extensions)
65
+ provide other parameters in addition to these.</p>
66
+ </div>
67
+
68
+ </li>
69
+
70
+ </ul>
71
+
72
+
73
+
74
+
75
+
76
+
77
+ <p class="tag_title">Options Hash (<tt>params</tt>):</p>
78
+ <ul class="option">
79
+
80
+ <li>
81
+ <span class="name">:img_auto_extensions</span>
82
+ <span class="type">(<tt>Boolean</tt>)</span>
83
+ <span class="default">
84
+
85
+ </span>
86
+
87
+ &mdash; <div class='inline'><p>Allows
88
+ control of the automatic image extensions option
89
+ on a per-use basis.</p>
90
+ </div>
91
+
92
+ </li>
93
+
94
+ <li>
95
+ <span class="name">:retina_srcset</span>
96
+ <span class="type">(<tt>Boolean</tt>)</span>
97
+ <span class="default">
98
+
99
+ </span>
100
+
101
+ &mdash; <div class='inline'><p>Allows control
102
+ of the automatic @2x images feature on a per-use
103
+ basis.</p>
104
+ </div>
105
+
106
+ </li>
107
+
108
+ </ul>
109
+
110
+
111
+ <p class="tag_title">Returns:</p>
112
+ <ul class="return">
113
+
114
+ <li>
115
+
116
+
117
+ <span class='type'>(<tt>String</tt>)</span>
118
+
119
+
120
+
121
+ &mdash;
122
+ <div class='inline'><p>Returns an HTML <code>&lt;img&gt;</code> tag.</p>
123
+ </div>
124
+
125
+ </li>
126
+
127
+ </ul>
128
+
129
+ </div>
130
+ </div>
131
+
132
+
133
+ </div>
134
+
135
+
@@ -514,3 +514,284 @@ div.image_article:after
514
514
  display: table;
515
515
  clear: both;
516
516
  }
517
+
518
+ //*************************************
519
+ // For partials extracted from YARD
520
+ //*************************************
521
+
522
+ $yard_color_symbol: rgba(0,136,204,1);
523
+ $yard_font_mono: Menlo, Consolas, Monaco, Courier, monospace;
524
+
525
+ div.attr_details,
526
+ div.method_details_list
527
+ {
528
+ .inline
529
+ {
530
+ display: inline;
531
+
532
+ p:first-child
533
+ {
534
+ display: inline;
535
+ }
536
+ }
537
+
538
+ .method_details
539
+ {
540
+ border-top: 1px dotted #aaa;
541
+ margin-top: 15px;
542
+ padding-top: 0;
543
+
544
+ &.first
545
+ {
546
+ border: 0;
547
+ }
548
+ }
549
+
550
+ p.signature,
551
+ h3.signature
552
+ {
553
+ font-size: 0.9em;
554
+ font-weight: normal;
555
+ font-family: $yard_font_mono;
556
+ padding: 6px 10px;
557
+ margin-top: 18px;
558
+ background: #f2f3ff;
559
+ border: 1px solid #d8d8e5;
560
+ -moz-border-radius: 3px;
561
+ -webkit-border-radius: 3px;
562
+ color: $yard_color_symbol;
563
+
564
+ strong
565
+ {
566
+ color: inherit;;
567
+ }
568
+
569
+ tt
570
+ {
571
+ font-family: inherit;
572
+ }
573
+
574
+ .overload
575
+ {
576
+ display: block;
577
+ }
578
+
579
+ .extras
580
+ {
581
+ font-weight: normal;
582
+ font-family: sans-serif;
583
+ color: #444;
584
+ font-size: 1em;
585
+ }
586
+
587
+ .not_defined_here,
588
+ .aliases
589
+ {
590
+ display: block;
591
+ font-weight: normal;
592
+ font-size: 0.9em;
593
+ font-family: $yard_font_mono;
594
+ margin-top: 0px;
595
+ color: #555;
596
+
597
+ .names
598
+ {
599
+ font-family: $yard_font_mono;
600
+ font-weight: bold;
601
+ color: #000;
602
+ font-size: 1.2em;
603
+ }
604
+ }
605
+ }
606
+
607
+ div.docstring
608
+ {
609
+ div.discussion
610
+ {
611
+
612
+ }
613
+ }
614
+
615
+ div.tags
616
+ {
617
+ margin-bottom: 12px;
618
+
619
+ .tag_title
620
+ {
621
+ font-size: 1em;
622
+ margin-bottom: 0;
623
+ font-weight: bold; }
624
+
625
+ ul
626
+ {
627
+ margin-top: 5px;
628
+ padding-left: 30px;
629
+ list-style: square;
630
+
631
+ li {
632
+ margin-bottom: 3px;
633
+ }
634
+
635
+ .name
636
+ {
637
+ font-family: $yard_font_mono;
638
+ font-weight: bold;
639
+ }
640
+
641
+ .note
642
+ {
643
+ padding: 3px 6px;
644
+ }
645
+
646
+ }
647
+
648
+ .examples
649
+ {
650
+ .tag_title
651
+ {
652
+ margin-bottom: 10px;
653
+ font-weight: bold;
654
+ }
655
+
656
+ .inline p
657
+ {
658
+ padding: 0;
659
+ margin: 0;
660
+ margin-left: 15px;
661
+ font-weight: bold;
662
+ font-size: 0.9em;
663
+ }
664
+ }
665
+
666
+ .overload
667
+ {
668
+ .overload_item
669
+ {
670
+ list-style: none;
671
+ margin-bottom: 25px;
672
+
673
+ .signature
674
+ {
675
+ padding: 2px 8px;
676
+ background: #e5e8ff;
677
+ border: 1px solid #d8d8e5;
678
+ -moz-border-radius: 3px;
679
+ -webkit-border-radius: 3px;
680
+ }
681
+ }
682
+
683
+ .signature
684
+ { margin-left: -15px;
685
+ font-family: monospace;
686
+ display: block;
687
+ font-size: 1.1em;
688
+ }
689
+
690
+ .docstring
691
+ {
692
+ margin-top: 15px;
693
+ }
694
+
695
+ }
696
+
697
+ /* syntax highlighting */
698
+ //.source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
699
+ //#filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
700
+ //#filecontents pre.code, .docstring pre.code { display: block; }
701
+ //.source_code .lines { padding-right: 12px; color: #555; text-align: right; }
702
+
703
+ #filecontents pre.code,
704
+ .docstring pre.code,
705
+ pre.example
706
+ {
707
+ padding: 5px 12px; margin-top: 4px; border: 1px solid #eef; background: #f5f5ff;
708
+ }
709
+
710
+ pre.code
711
+ {
712
+ color: #000;
713
+
714
+ info.file { color: #555; }
715
+
716
+ .val { color: #036A07; }
717
+
718
+ .tstring_content,
719
+ .heredoc_beg,
720
+ .heredoc_end,
721
+ .qwords_beg,
722
+ .qwords_end,
723
+ .tstring,
724
+ .dstring
725
+ {
726
+ color: #036A07;
727
+ }
728
+
729
+ .fid,
730
+ .rubyid_new,
731
+ .rubyid_to_s,
732
+ .rubyid_to_sym,
733
+ .rubyid_to_f,
734
+ .dot + pre.code .id,
735
+ .rubyid_to_i pre.code .rubyid_each
736
+ {
737
+ color: #0085FF;
738
+ }
739
+
740
+ .comment
741
+ {
742
+ color: #0066FF;
743
+ }
744
+
745
+ .const,
746
+ .constant
747
+ {
748
+ color: #585CF6;
749
+ }
750
+
751
+ .label,
752
+ .symbol
753
+ {
754
+ color: #C5060B;
755
+ }
756
+
757
+ .kw,
758
+ .rubyid_require,
759
+ .rubyid_extend,
760
+ .rubyid_include
761
+ {
762
+ color: #0000FF;
763
+ }
764
+
765
+ .ivar
766
+ {
767
+ color: #318495;
768
+ }
769
+
770
+ .gvar,
771
+ .rubyid_backref,
772
+ .rubyid_nth_ref
773
+ {
774
+ color: #6D79DE;
775
+ }
776
+
777
+ .regexp,
778
+ .dregexp
779
+ {
780
+ color: #036A07;
781
+ }
782
+
783
+ a
784
+ {
785
+ border-bottom: 1px dotted #bbf;
786
+ }
787
+
788
+ }
789
+ }
790
+
791
+ table.source_code
792
+ {
793
+ display: none;
794
+ }
795
+
796
+
797
+ }
@@ -0,0 +1,39 @@
1
+ Feature: Provide helpers and resource items to make multiple targets easy to manage.
2
+
3
+ As a software developer
4
+ I want to use helpers and resource items
5
+ In order to enable automatic navigation of items.
6
+
7
+ Background:
8
+ Given a built app at "middlemac_extras_app"
9
+
10
+ Scenario:
11
+ The css_image_sizes helper should return CSS for every image in the project
12
+ and @2x images should have proper widths and heights, too.
13
+ When I cd to "build"
14
+ And the file "index.html" should contain "img[src$='/images/middlemac-extras-small.png'] { max-width: 128px; max-height: 128px; }"
15
+ And the file "index.html" should contain "img[src$='/images/middlemac-extras-small@2x.png'] { max-width: 128px; max-height: 128px; }"
16
+ And the file "index.html" should contain "img[src$='/images/middlemac-extras-smaller.png'] { max-width: 64px; max-height: 64px; }"
17
+
18
+
19
+ Scenario:
20
+ The md_images helper should return Markdown references for every image in
21
+ the project.
22
+ When I cd to "build"
23
+ And the file "index.html" should contain '[middlemac-extras-small]: /images/middlemac-extras-small.png'
24
+ And the file "index.html" should contain '[middlemac-extras-small@2x]: /images/middlemac-extras-small@2x.png'
25
+ And the file "index.html" should contain '[middlemac-extras-smaller]: /images/middlemac-extras-smaller.png'
26
+
27
+
28
+ Scenario:
29
+ The md_links helper should return Markdown references for every HTML file
30
+ in the project, and should include a title generated from the front matter.
31
+ When I cd to "build"
32
+ And the file "index.html" should contain '[index]: / "Fixture for middlemac-extras"'
33
+
34
+ Scenario:
35
+ The extended image tag should include srcset automatically if @2x images are
36
+ present, and not include a srcset if not.
37
+ When I cd to "build"
38
+ And the file "index.html" should contain 'img src="/images/middlemac-extras-small.png" srcset="/images/middlemac-extras-small@2x.png 2x" alt=""'
39
+ And the file "index.html" should contain 'img src="/images/middlemac-extras-smaller.png" alt=""'