asciidoctor-epub3 1.5.1 → 2.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.adoc +24 -2
- data/Gemfile +7 -10
- data/README.adoc +5 -5
- data/Rakefile +1 -1
- data/asciidoctor-epub3.gemspec +18 -15
- data/bin/adb-push-ebook +17 -15
- data/data/styles/_colors.scss +90 -0
- data/data/styles/_reset.scss +54 -0
- data/data/styles/{epub3-css3-only.css → epub3-css3-only.scss} +1 -31
- data/data/styles/{epub3.css → epub3.scss} +145 -233
- data/lib/asciidoctor-epub3/converter.rb +496 -420
- data/lib/asciidoctor-epub3/ext/asciidoctor/abstract_node.rb +16 -0
- data/lib/asciidoctor-epub3/ext/asciidoctor.rb +1 -2
- data/lib/asciidoctor-epub3/ext/core/file.rb +10 -0
- data/lib/asciidoctor-epub3/ext/core/string.rb +5 -3
- data/lib/asciidoctor-epub3/ext/core.rb +1 -0
- data/lib/asciidoctor-epub3/font_icon_map.rb +1 -1
- data/lib/asciidoctor-epub3/version.rb +1 -1
- data/lib/asciidoctor-epub3.rb +1 -1
- metadata +57 -40
- data/data/styles/color-palette.css +0 -25
- data/lib/asciidoctor-epub3/ext/asciidoctor/document.rb +0 -19
- data/lib/asciidoctor-epub3/ext/asciidoctor/logging_shim.rb +0 -33
- /data/data/styles/{epub3-fonts.css → epub3-fonts.scss} +0 -0
@@ -1,42 +1,7 @@
|
|
1
|
+
@import "reset";
|
2
|
+
@import "colors";
|
1
3
|
@import url("epub3-fonts.css");
|
2
4
|
|
3
|
-
*, *:before, *:after {
|
4
|
-
box-sizing: border-box;
|
5
|
-
}
|
6
|
-
|
7
|
-
/* educate older readers about tags introduced in HTML5 */
|
8
|
-
article, aside, details, figcaption, figure,
|
9
|
-
footer, header, nav, section, summary {
|
10
|
-
display: block;
|
11
|
-
}
|
12
|
-
|
13
|
-
/* html and body declarations must be separate entries for some readers */
|
14
|
-
html {
|
15
|
-
margin: 0 !important;
|
16
|
-
padding: 0 !important;
|
17
|
-
/* set the em base (and relative em anchor) by setting the font-size on html */
|
18
|
-
/* TODO set font-size > 100% except for Kindle */
|
19
|
-
font-size: 100%;
|
20
|
-
}
|
21
|
-
|
22
|
-
/* don't set margin on body as that's how many readers frame reading area */
|
23
|
-
/* can't set the font-family on body in Kindle */
|
24
|
-
body {
|
25
|
-
padding: 0 !important;
|
26
|
-
/* add margin to ~ match Kindle's narrow setting */
|
27
|
-
/* don't use !important on margin as it interferes with reader overrides (Calibre and Kindle) */
|
28
|
-
margin: 0;
|
29
|
-
font-size: 100%;
|
30
|
-
/* NOTE putting optimizeLegibility on the body slows down rendering considerably */
|
31
|
-
text-rendering: optimizeSpeed;
|
32
|
-
/* -webkit-font-smoothing has no noticable effect and is controversial, so leaving it off */
|
33
|
-
}
|
34
|
-
|
35
|
-
/* disables night mode in Aldiko, hoo-ha! */
|
36
|
-
html body {
|
37
|
-
background-color: #FFFFFF;
|
38
|
-
}
|
39
|
-
|
40
5
|
/* @page only applies to EPUB2 readers; not supported by EPUB3 readers such as Kindle and Gitden */
|
41
6
|
@page {
|
42
7
|
/* sets minimum margin permitted */
|
@@ -44,28 +9,6 @@ html body {
|
|
44
9
|
margin: 1cm;
|
45
10
|
}
|
46
11
|
|
47
|
-
div, p, blockquote, pre, figure, figcaption,
|
48
|
-
h1, h2, h3, h4, h5, h6,
|
49
|
-
dl, dt, dd, ol, ul, li,
|
50
|
-
table, caption, thead, tfoot, tbody, tr, th, td {
|
51
|
-
margin: 0;
|
52
|
-
padding: 0;
|
53
|
-
font-size: 100%;
|
54
|
-
vertical-align: baseline;
|
55
|
-
}
|
56
|
-
|
57
|
-
a, abbr, address, cite, code, em, kbd, span, strong {
|
58
|
-
font-size: 100%;
|
59
|
-
}
|
60
|
-
|
61
|
-
a {
|
62
|
-
background: transparent;
|
63
|
-
}
|
64
|
-
|
65
|
-
a:active, a:hover {
|
66
|
-
outline: 0;
|
67
|
-
}
|
68
|
-
|
69
12
|
abbr[title] {
|
70
13
|
border-bottom: 1px dotted;
|
71
14
|
}
|
@@ -74,27 +17,44 @@ address {
|
|
74
17
|
white-space: pre-line;
|
75
18
|
}
|
76
19
|
|
77
|
-
|
20
|
+
strong {
|
78
21
|
font-weight: bold;
|
79
22
|
}
|
80
23
|
|
24
|
+
em {
|
25
|
+
font-style: italic;
|
26
|
+
}
|
27
|
+
|
81
28
|
b.button {
|
82
29
|
font-weight: normal;
|
83
|
-
text-shadow: 1px 0 0
|
84
|
-
color:
|
30
|
+
text-shadow: 1px 0 0 $button-shadow;
|
31
|
+
color: $button-text;
|
85
32
|
white-space: nowrap;
|
86
33
|
}
|
87
34
|
|
88
|
-
b.button
|
89
|
-
|
35
|
+
b.button::before,
|
36
|
+
b.button::after {
|
37
|
+
position: relative;
|
38
|
+
top: -1px;
|
39
|
+
font-weight: 400;
|
40
|
+
}
|
41
|
+
|
42
|
+
b.button::before {
|
43
|
+
content: "[";
|
44
|
+
padding: 0 3px 0 2px;
|
45
|
+
}
|
46
|
+
|
47
|
+
b.button::after {
|
48
|
+
content: "]";
|
49
|
+
padding: 0 2px 0 3px;
|
90
50
|
}
|
91
51
|
|
92
52
|
kbd {
|
93
53
|
display: inline-block;
|
94
54
|
font-size: 0.8em;
|
95
55
|
line-height: 1;
|
96
|
-
background-color:
|
97
|
-
border: 1px solid
|
56
|
+
background-color: $kbd-background;
|
57
|
+
border: 1px solid $kbd-border;
|
98
58
|
-webkit-border-radius: 3px;
|
99
59
|
border-radius: 3px;
|
100
60
|
-webkit-box-shadow: 1px 1px 0 rgba(102, 102, 101, 0.25), 0 0 0 1px white inset;
|
@@ -135,14 +95,9 @@ kbd {
|
|
135
95
|
padding-right: 0.15em;
|
136
96
|
}
|
137
97
|
|
138
|
-
img {
|
139
|
-
border: 0;
|
140
|
-
max-width: 100%;
|
141
|
-
}
|
142
|
-
|
143
98
|
mark {
|
144
|
-
background-color:
|
145
|
-
color:
|
99
|
+
background-color: $mark-background;
|
100
|
+
color: $mark-text;
|
146
101
|
}
|
147
102
|
|
148
103
|
small {
|
@@ -188,15 +143,6 @@ sub {
|
|
188
143
|
vertical-align: text-bottom;
|
189
144
|
}
|
190
145
|
|
191
|
-
table {
|
192
|
-
border-collapse: collapse;
|
193
|
-
border-spacing: 0;
|
194
|
-
}
|
195
|
-
|
196
|
-
td, th {
|
197
|
-
padding: 0;
|
198
|
-
}
|
199
|
-
|
200
146
|
/* We need to apply text-align to <p> too in order to override global text-align:justify */
|
201
147
|
th.halign-left, td.halign-left, th.halign-left > p, td.halign-left > p {
|
202
148
|
text-align: left
|
@@ -226,22 +172,13 @@ body a:link {
|
|
226
172
|
/* Kindle requires the !important on text-decoration */
|
227
173
|
/* In night mode, the only indicator of a link is the underline, so we need it or a background image */
|
228
174
|
text-decoration: none !important;
|
229
|
-
border-bottom: 1px dashed
|
175
|
+
border-bottom: 1px dashed $link-border;
|
230
176
|
/* allow URLs to break anywhere if they don't fit on a line; but how do we know it's a URL? */
|
231
177
|
/*
|
232
178
|
word-break: break-all;
|
233
179
|
*/
|
234
180
|
}
|
235
181
|
|
236
|
-
body:first-of-type a:link {
|
237
|
-
border-bottom: none;
|
238
|
-
background-repeat: no-repeat;
|
239
|
-
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, #666665 5%, #666665 95%, rgba(255, 255, 255, 0) 100%);
|
240
|
-
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #666665 5%, #666665 95%, rgba(255, 255, 255, 0) 100%);
|
241
|
-
background-size: 100% 1px;
|
242
|
-
background-position: 0 1.2em;
|
243
|
-
}
|
244
|
-
|
245
182
|
code.literal {
|
246
183
|
/* don't let it affect line spacing */
|
247
184
|
/* disable since M+ 1mn won't interrupt line height */
|
@@ -295,7 +232,7 @@ body p, li, dt, dd, footer {
|
|
295
232
|
}
|
296
233
|
|
297
234
|
code, kbd, pre {
|
298
|
-
color:
|
235
|
+
color: $pre-text;
|
299
236
|
font-family: "M+ 1mn", monospace;
|
300
237
|
-webkit-hyphens: none; /* disable hyphenation where supported (e.g., iBooks) */
|
301
238
|
}
|
@@ -313,7 +250,7 @@ th, td, figcaption, caption {
|
|
313
250
|
}
|
314
251
|
|
315
252
|
p.last::after {
|
316
|
-
color:
|
253
|
+
color: $last-mark-text;
|
317
254
|
display: inline-block;
|
318
255
|
font-family: "FontAwesome";
|
319
256
|
font-size: 1em;
|
@@ -332,19 +269,6 @@ ul li, ol li {
|
|
332
269
|
margin-top: 1em;
|
333
270
|
}
|
334
271
|
|
335
|
-
/* squeeze content in complex lists */
|
336
|
-
/*
|
337
|
-
li > figure,
|
338
|
-
li > p {
|
339
|
-
margin-top: 0.4em;
|
340
|
-
}
|
341
|
-
*/
|
342
|
-
|
343
|
-
dl {
|
344
|
-
margin-top: 0;
|
345
|
-
margin-bottom: 0;
|
346
|
-
}
|
347
|
-
|
348
272
|
dt {
|
349
273
|
-webkit-column-break-inside: avoid;
|
350
274
|
page-break-inside: avoid;
|
@@ -391,9 +315,10 @@ div.callout-list ol li {
|
|
391
315
|
}
|
392
316
|
|
393
317
|
i.conum {
|
394
|
-
color:
|
318
|
+
color: $i-conum-text;
|
395
319
|
font-family: "M+ 1mn", monospace;
|
396
320
|
font-style: normal;
|
321
|
+
user-select: none;
|
397
322
|
}
|
398
323
|
|
399
324
|
/* don't let conum affect line spacing; REVIEW may not need this! */
|
@@ -446,68 +371,53 @@ div.stack-subject li strong.subject {
|
|
446
371
|
ul {
|
447
372
|
/* QUESTION do we need important here? */
|
448
373
|
margin-left: 1em !important;
|
449
|
-
list-style-type: square;
|
450
|
-
}
|
451
|
-
|
452
|
-
ul ul {
|
453
|
-
list-style-type: circle;
|
454
|
-
}
|
455
|
-
|
456
|
-
ul ul ul {
|
457
|
-
list-style-type: disc;
|
458
|
-
}
|
459
|
-
|
460
|
-
/* disable list style type for CSS3-enabled clients */
|
461
|
-
body:first-of-type ul,
|
462
|
-
body:first-of-type ul ul,
|
463
|
-
body:first-of-type ul ul ul {
|
464
|
-
list-style-type: none;
|
465
|
-
}
|
466
|
-
|
467
|
-
ul > li::before {
|
468
|
-
float: left;
|
469
|
-
margin-left: -1em;
|
470
|
-
margin-top: -0.05em;
|
471
|
-
padding-left: 0.25em;
|
472
|
-
/* guarantee it's out of the flow */
|
473
|
-
width: 0;
|
474
|
-
display: block;
|
475
|
-
}
|
476
|
-
|
477
|
-
ul > li::before {
|
478
|
-
content: "\25AA"; /* small black square */
|
479
|
-
color: #333332;
|
480
|
-
}
|
481
|
-
|
482
|
-
ul ul > li::before {
|
483
|
-
content: "\25E6"; /* small white circle */
|
484
|
-
color: #57AD68;
|
485
|
-
}
|
486
|
-
|
487
|
-
ul ul ul > li::before {
|
488
|
-
content: "\2022"; /* small black circle */
|
489
|
-
color: #333332;
|
490
|
-
}
|
491
374
|
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
375
|
+
> li::before {
|
376
|
+
float: left;
|
377
|
+
margin-left: -1em;
|
378
|
+
margin-top: -0.05em;
|
379
|
+
padding-left: 0.25em;
|
380
|
+
/* guarantee it's out of the flow */
|
381
|
+
width: 0;
|
382
|
+
display: block;
|
383
|
+
|
384
|
+
content: "▪";
|
385
|
+
color: $list-lvl1;
|
386
|
+
}
|
496
387
|
|
497
|
-
|
498
|
-
|
388
|
+
ul {
|
389
|
+
> li::before {
|
390
|
+
content: "◦";
|
391
|
+
color: $list-lvl2;
|
392
|
+
}
|
393
|
+
|
394
|
+
ul {
|
395
|
+
> li::before {
|
396
|
+
content: "•";
|
397
|
+
color: $list-lvl3;
|
398
|
+
}
|
399
|
+
|
400
|
+
ul {
|
401
|
+
> li::before {
|
402
|
+
content: "▫";
|
403
|
+
color: $list-lvl4;
|
404
|
+
}
|
405
|
+
}
|
406
|
+
}
|
407
|
+
}
|
499
408
|
}
|
500
409
|
|
501
410
|
ol {
|
502
411
|
list-style-type: decimal;
|
503
|
-
|
412
|
+
margin-left: 1.75em !important;
|
504
413
|
|
505
|
-
ol
|
506
|
-
|
507
|
-
}
|
414
|
+
ol {
|
415
|
+
list-style-type: lower-alpha;
|
508
416
|
|
509
|
-
ol
|
510
|
-
|
417
|
+
ol {
|
418
|
+
list-style-type: lower-roman;
|
419
|
+
}
|
420
|
+
}
|
511
421
|
}
|
512
422
|
|
513
423
|
/* REVIEW */
|
@@ -561,7 +471,7 @@ h3 {
|
|
561
471
|
}
|
562
472
|
|
563
473
|
h4 {
|
564
|
-
color:
|
474
|
+
color: $h4-header-text;
|
565
475
|
font-weight: 200;
|
566
476
|
|
567
477
|
font-size: 1.1em;
|
@@ -571,12 +481,13 @@ h4 {
|
|
571
481
|
font-size: 1.2em;
|
572
482
|
margin-top: .917em; /* 1.1rem */
|
573
483
|
margin-top: 0.875em; /* 1.05rem */
|
574
|
-
/*margin-bottom: -0.75em;*/
|
484
|
+
/*margin-bottom: -0.75em;*/
|
485
|
+
/* -0.9rem, 0.1rem to content */
|
575
486
|
margin-bottom: -0.625em; /* -0.75rem, 0.25rem to content */
|
576
487
|
}
|
577
488
|
|
578
489
|
h5 {
|
579
|
-
color:
|
490
|
+
color: $h5-header-text;
|
580
491
|
/*
|
581
492
|
font-size: 1em;
|
582
493
|
text-transform: uppercase;
|
@@ -606,7 +517,7 @@ h5 code {
|
|
606
517
|
/*padding: 0.75em 1.5em 0.25em 1.5em;*/
|
607
518
|
padding: 0.25em 0;
|
608
519
|
margin-bottom: 2.5em;
|
609
|
-
border-bottom: 1px solid
|
520
|
+
border-bottom: 1px solid $chapter-header-title-border;
|
610
521
|
/* TODO maybe what we need to get articles to start in left column
|
611
522
|
-webkit-column-break-before: left;
|
612
523
|
page-break-before: left;
|
@@ -619,7 +530,7 @@ h1.chapter-title {
|
|
619
530
|
margin-top: 3.5em; /* 4.2rem - would like to use 9vh */
|
620
531
|
margin-bottom: 0;
|
621
532
|
padding-bottom: 0.8333em; /* 1.2rem */
|
622
|
-
color:
|
533
|
+
color: $chapter-header-title-text;
|
623
534
|
text-transform: uppercase; /* not supported in Adobe Digital Editions */
|
624
535
|
word-spacing: -0.075em;
|
625
536
|
letter-spacing: -0.01em;
|
@@ -634,7 +545,7 @@ h1.chapter-title .subtitle {
|
|
634
545
|
}
|
635
546
|
|
636
547
|
h1.chapter-title em {
|
637
|
-
color:
|
548
|
+
color: $chapter-header-em;
|
638
549
|
font-style: normal;
|
639
550
|
}
|
640
551
|
|
@@ -673,7 +584,7 @@ div.abstract {
|
|
673
584
|
}
|
674
585
|
|
675
586
|
div.abstract > p {
|
676
|
-
color:
|
587
|
+
color: $abstract-text;
|
677
588
|
font-size: 1.05em; /* or 1.1em? */
|
678
589
|
line-height: 1.75;
|
679
590
|
}
|
@@ -752,7 +663,7 @@ figcaption,
|
|
752
663
|
caption {
|
753
664
|
font-size: 0.9em;
|
754
665
|
font-style: italic;
|
755
|
-
color:
|
666
|
+
color: $caption-text;
|
756
667
|
letter-spacing: -0.01em;
|
757
668
|
line-height: 1.4;
|
758
669
|
text-align: left;
|
@@ -784,10 +695,10 @@ figure.listing > figcaption + pre {
|
|
784
695
|
}
|
785
696
|
|
786
697
|
aside.sidebar {
|
787
|
-
border: 1px solid
|
698
|
+
border: 1px solid $aside-border;
|
788
699
|
padding: 0 1.5em;
|
789
700
|
font-size: 0.9em;
|
790
|
-
background-color:
|
701
|
+
background-color: $aside-background;
|
791
702
|
text-align: right; /* aligns heading to right */
|
792
703
|
/*
|
793
704
|
-webkit-box-shadow: 0px 1px 1px rgba(102, 102, 101, 0.15);
|
@@ -795,11 +706,6 @@ aside.sidebar {
|
|
795
706
|
*/
|
796
707
|
}
|
797
708
|
|
798
|
-
body:first-of-type aside.sidebar {
|
799
|
-
background-color: rgba(0, 0, 0, 0.05); /* using transparency is night-mode friendly */
|
800
|
-
/*background-color: rgba(51, 51, 50, 0.06);*/ /* using transparency is night-mode friendly */
|
801
|
-
}
|
802
|
-
|
803
709
|
/* a bit of a cheat; could use aside.sidebar[title] instead, but not on Aldiko */
|
804
710
|
aside.sidebar.titled {
|
805
711
|
margin-top: 2em;
|
@@ -815,22 +721,16 @@ aside.sidebar > h2 {
|
|
815
721
|
letter-spacing: 0;
|
816
722
|
display: inline-block;
|
817
723
|
white-space: nowrap; /* for some reason it's wrapping prematurely */
|
818
|
-
border: 1px solid
|
724
|
+
border: 1px solid $aside-border;
|
819
725
|
padding: 1.5em .75em .5em .75em;
|
820
726
|
margin: -1em 0.5em -0.25em 0.5em;
|
821
|
-
background-color:
|
727
|
+
background-color: $body-background;
|
822
728
|
/*
|
823
729
|
-webkit-box-shadow: 0px 1px 1px rgba(102, 102, 101, 0.1);
|
824
730
|
box-shadow: 0px 1px 1px rgba(102, 102, 101, 0.1);
|
825
731
|
*/
|
826
732
|
}
|
827
733
|
|
828
|
-
/* doesn't work
|
829
|
-
body:first-of-type aside.sidebar > h2 {
|
830
|
-
background-color: rgba(255, 255, 255, 1);
|
831
|
-
}
|
832
|
-
*/
|
833
|
-
|
834
734
|
aside.sidebar > div.content {
|
835
735
|
margin-bottom: 1em;
|
836
736
|
text-align: justify; /* restore text alignment in content */
|
@@ -852,7 +752,7 @@ div[class~="blockquote"] {
|
|
852
752
|
}
|
853
753
|
|
854
754
|
blockquote > p {
|
855
|
-
color:
|
755
|
+
color: $blockquote-text;
|
856
756
|
font-style: italic;
|
857
757
|
|
858
758
|
/*
|
@@ -869,13 +769,14 @@ blockquote > p {
|
|
869
769
|
|
870
770
|
blockquote > p:first-of-type::before {
|
871
771
|
display: inline-block;
|
872
|
-
color:
|
772
|
+
color: $para-first-text;
|
873
773
|
text-shadow: 0 1px 2px rgba(102, 102, 101, 0.3);
|
874
774
|
|
875
775
|
/* using serif quote from entypo */
|
876
776
|
font-family: "FontIcons";
|
877
777
|
|
878
|
-
/*content: "\f10e";*/
|
778
|
+
/*content: "\f10e";*/
|
779
|
+
/* quote-right from Entypo */
|
879
780
|
/*
|
880
781
|
-webkit-transform: rotate(180deg);
|
881
782
|
transform: rotate(180deg);
|
@@ -902,26 +803,22 @@ blockquote footer {
|
|
902
803
|
blockquote footer .context {
|
903
804
|
font-size: 0.9em;
|
904
805
|
letter-spacing: -0.05em;
|
905
|
-
color:
|
806
|
+
color: $footer-context;
|
906
807
|
}
|
907
808
|
|
908
809
|
pre {
|
909
810
|
text-align: left; /* fix for Namo */
|
910
811
|
margin-top: 1em; /* 0.85rem */
|
911
|
-
/*margin-top: 1.176em;*/
|
812
|
+
/*margin-top: 1.176em;*/
|
813
|
+
/* 1rem */
|
912
814
|
white-space: pre-wrap;
|
913
815
|
overflow-wrap: break-word; /* break in middle of long word if no other break opportunities are available */
|
914
816
|
font-size: 0.85em;
|
915
817
|
line-height: 1.4; /* matches what Kindle uses and can't go less */
|
916
|
-
background-color:
|
917
|
-
padding:
|
918
|
-
border-top: 1px solid
|
919
|
-
border-right: 1px solid
|
920
|
-
}
|
921
|
-
|
922
|
-
body:first-of-type pre {
|
923
|
-
background-color: rgba(0, 0, 0, 0.05); /* using transparency is night-mode friendly */
|
924
|
-
/*background-color: rgba(51, 51, 50, 0.06);*/ /* using transparency is night-mode friendly */
|
818
|
+
background-color: $pre-background;
|
819
|
+
padding: 8px 12px; /* this is supposed to be '0.5rem 0.75rem' but Sony Readers crash when see that (at least, PRS-350, PRS-505, PRS-T1) */
|
820
|
+
border-top: 1px solid $pre-border;
|
821
|
+
border-right: 1px solid $pre-border;
|
925
822
|
}
|
926
823
|
|
927
824
|
/* TODO what we really want is for pre w/o caption to be unbreakable */
|
@@ -946,6 +843,7 @@ div.verse {
|
|
946
843
|
|
947
844
|
/* TODO we may want to reenable hyphens here, but not for kf8 */
|
948
845
|
div.verse > pre {
|
846
|
+
font-family: "M+ 1p", sans-serif;
|
949
847
|
background-color: transparent;
|
950
848
|
border: none;
|
951
849
|
font-size: 1.2em;
|
@@ -974,28 +872,28 @@ aside[class~="admonition"] {
|
|
974
872
|
}
|
975
873
|
|
976
874
|
aside.note {
|
977
|
-
border-left-color:
|
978
|
-
background-color:
|
875
|
+
border-left-color: $note-border;
|
876
|
+
background-color: $note-background; /* 25% opacity of border */
|
979
877
|
}
|
980
878
|
|
981
879
|
aside.tip {
|
982
|
-
border-left-color:
|
983
|
-
background-color:
|
880
|
+
border-left-color: $tip-border;
|
881
|
+
background-color: $tip-background; /* 25% opacity of border */
|
984
882
|
}
|
985
883
|
|
986
884
|
aside.caution {
|
987
|
-
border-left-color:
|
988
|
-
background-color:
|
885
|
+
border-left-color: $caution-border;
|
886
|
+
background-color: $caution-background; /* 25% opacity of border */
|
989
887
|
}
|
990
888
|
|
991
889
|
aside.warning {
|
992
|
-
border-left-color:
|
993
|
-
background-color:
|
890
|
+
border-left-color: $warning-border;
|
891
|
+
background-color: $warning-background; /* 25% opacity of border */
|
994
892
|
}
|
995
893
|
|
996
894
|
aside.important {
|
997
|
-
border-left-color:
|
998
|
-
background-color:
|
895
|
+
border-left-color: $important-border;
|
896
|
+
background-color: $important-background; /* 25% opacity of border */
|
999
897
|
}
|
1000
898
|
|
1001
899
|
aside.admonition::before {
|
@@ -1029,52 +927,52 @@ aside[class~="admonition"] > div[class~="content"] {
|
|
1029
927
|
|
1030
928
|
aside.note::before {
|
1031
929
|
content: "\f303"; /* fa-pencil-alt */
|
1032
|
-
color:
|
930
|
+
color: $note-border;
|
1033
931
|
}
|
1034
932
|
|
1035
933
|
aside[class~="note"] > div[class~="content"] {
|
1036
|
-
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%,
|
1037
|
-
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%,
|
934
|
+
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%, $note-border 45%, $note-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
935
|
+
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%, $note-border 45%, $note-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
1038
936
|
}
|
1039
937
|
|
1040
938
|
aside.tip::before {
|
1041
939
|
content: "\f0eb"; /* fa-lightbulb */
|
1042
|
-
color:
|
940
|
+
color: $tip-border;
|
1043
941
|
}
|
1044
942
|
|
1045
943
|
aside[class~="tip"] > div[class~="content"] {
|
1046
|
-
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%,
|
1047
|
-
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%,
|
944
|
+
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%, $tip-border 45%, $tip-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
945
|
+
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%, $tip-border 45%, $tip-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
1048
946
|
}
|
1049
947
|
|
1050
948
|
aside.caution::before {
|
1051
949
|
content: "\f0c2"; /* fa-cloud */
|
1052
|
-
color:
|
950
|
+
color: $caution-border;
|
1053
951
|
}
|
1054
952
|
|
1055
953
|
aside[class~="caution"] > div[class~="content"] {
|
1056
|
-
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%,
|
1057
|
-
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%,
|
954
|
+
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%, $caution-border 45%, $caution-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
955
|
+
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%, $caution-border 45%, $caution-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
1058
956
|
}
|
1059
957
|
|
1060
958
|
aside.warning::before {
|
1061
959
|
content: "\f0e7"; /* fa-bolt */
|
1062
|
-
color:
|
960
|
+
color: $warning-border;
|
1063
961
|
}
|
1064
962
|
|
1065
963
|
aside[class~="warning"] > div[class~="content"] {
|
1066
|
-
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%,
|
1067
|
-
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%,
|
964
|
+
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%, $warning-border 45%, $warning-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
965
|
+
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%, $warning-border 45%, $warning-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
1068
966
|
}
|
1069
967
|
|
1070
968
|
aside.important::before {
|
1071
969
|
content: "\f12a"; /* fa-exclamation */
|
1072
|
-
color:
|
970
|
+
color: $important-border;
|
1073
971
|
}
|
1074
972
|
|
1075
973
|
aside[class~="important"] > div[class~="content"] {
|
1076
|
-
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%,
|
1077
|
-
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%,
|
974
|
+
background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 42.5%, $important-border 45%, $important-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
975
|
+
background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 42.5%, $important-border 45%, $important-border 55%, rgba(255, 255, 255, 0) 57.5%);
|
1078
976
|
}
|
1079
977
|
|
1080
978
|
aside.admonition > h2 {
|
@@ -1118,7 +1016,7 @@ table.table th {
|
|
1118
1016
|
}
|
1119
1017
|
|
1120
1018
|
table.table thead th {
|
1121
|
-
border-bottom: 1px solid
|
1019
|
+
border-bottom: 1px solid $table-border;
|
1122
1020
|
}
|
1123
1021
|
|
1124
1022
|
table.table td > p,
|
@@ -1135,26 +1033,26 @@ table.table div.embed > * + * {
|
|
1135
1033
|
table.table-framed-all {
|
1136
1034
|
border-width: 1px;
|
1137
1035
|
border-style: solid;
|
1138
|
-
border-color:
|
1036
|
+
border-color: $table-border;
|
1139
1037
|
}
|
1140
1038
|
|
1141
1039
|
table.table-framed-topbot {
|
1142
1040
|
border-width: 1px 0;
|
1143
1041
|
border-style: solid;
|
1144
|
-
border-color:
|
1042
|
+
border-color: $table-border;
|
1145
1043
|
}
|
1146
1044
|
|
1147
1045
|
table.table-framed-sides {
|
1148
1046
|
border-width: 0 1px;
|
1149
1047
|
border-style: solid;
|
1150
|
-
border-color:
|
1048
|
+
border-color: $table-border;
|
1151
1049
|
}
|
1152
1050
|
|
1153
1051
|
table.table-grid-all th,
|
1154
1052
|
table.table-grid-all td {
|
1155
1053
|
border-width: 1px 1px 1px 1px;
|
1156
1054
|
border-style: solid;
|
1157
|
-
border-color:
|
1055
|
+
border-color: $table-border;
|
1158
1056
|
}
|
1159
1057
|
|
1160
1058
|
table.table-grid-all thead tr > *:last-child {
|
@@ -1170,14 +1068,14 @@ table.table-grid-rows tbody th,
|
|
1170
1068
|
table.table-grid-rows tbody td {
|
1171
1069
|
border-width: 1px 0 0 0;
|
1172
1070
|
border-style: solid;
|
1173
|
-
border-color:
|
1071
|
+
border-color: $table-border;
|
1174
1072
|
}
|
1175
1073
|
|
1176
1074
|
table.table-grid-cols th,
|
1177
1075
|
table.table-grid-cols td {
|
1178
1076
|
border-width: 0 1px 0 0;
|
1179
1077
|
border-style: solid;
|
1180
|
-
border-color:
|
1078
|
+
border-color: $table-border;
|
1181
1079
|
}
|
1182
1080
|
|
1183
1081
|
table.table-grid-cols thead th:last-child {
|
@@ -1188,6 +1086,12 @@ table.table-grid-cols tbody tr > td:last-child {
|
|
1188
1086
|
border-right-width: 0;
|
1189
1087
|
}
|
1190
1088
|
|
1089
|
+
pre.pygments span.linenos,
|
1090
|
+
pre.rouge span.linenos {
|
1091
|
+
display: inline-block;
|
1092
|
+
margin-right: 0.75em;
|
1093
|
+
}
|
1094
|
+
|
1191
1095
|
hr.pagebreak {
|
1192
1096
|
-webkit-column-break-after: always;
|
1193
1097
|
page-break-after: always;
|
@@ -1203,12 +1107,12 @@ hr.pagebreak + * {
|
|
1203
1107
|
#_about_the_author {
|
1204
1108
|
-webkit-column-break-before: always;
|
1205
1109
|
page-break-before: always;
|
1206
|
-
border-bottom: 1px solid
|
1110
|
+
border-bottom: 1px solid $about-author-border;
|
1207
1111
|
}
|
1208
1112
|
|
1209
1113
|
img.headshot {
|
1210
1114
|
float: left;
|
1211
|
-
border: 1px solid
|
1115
|
+
border: 1px solid $headshot-border;
|
1212
1116
|
padding: 1px;
|
1213
1117
|
margin: 0.35em 1em 0.15em 0;
|
1214
1118
|
height: 5em !important;
|
@@ -1270,3 +1174,11 @@ nav[hidden~="hidden"] {
|
|
1270
1174
|
font-family: monospace;
|
1271
1175
|
}
|
1272
1176
|
}
|
1177
|
+
|
1178
|
+
.left {
|
1179
|
+
float: left !important;
|
1180
|
+
}
|
1181
|
+
|
1182
|
+
.right {
|
1183
|
+
float: right !important;
|
1184
|
+
}
|