History

Merge pull request #2649 from spamguy/sass

Replace sprockets-sass with dartsass-sprockets

Simon Legner committed 7 months ago

Commit 6a9dde62 parents be50790 81dfb8b127 files · +518 −169Browse files

Unified · Split

127 files
  1. Gemfile +1 −2
  2. Gemfile.lock +90 −15
  3. assets/javascripts/application.js +2 −0
  4. assets/stylesheets/application.css.scss +121 −132
  5. assets/stylesheets/components/_app.scss +2 −0
  6. assets/stylesheets/components/_content.scss +6 −1
  7. assets/stylesheets/components/_fail.scss +2 −0
  8. assets/stylesheets/components/_header.scss +5 −1
  9. assets/stylesheets/components/_notice.scss +3 −1
  10. assets/stylesheets/components/_notif.scss +3 −0
  11. assets/stylesheets/components/_page.scss +3 −0
  12. assets/stylesheets/components/_path.scss +4 −1
  13. assets/stylesheets/components/_settings.scss +3 −0
  14. assets/stylesheets/components/_sidebar.scss +6 −2
  15. assets/stylesheets/global/_base.scss +7 −3
  16. assets/stylesheets/global/_print.scss +3 −1
  17. assets/stylesheets/global/_variables-dark.scss +4 −2
  18. assets/stylesheets/global/_variables-light.scss +4 −2
  19. assets/stylesheets/global/_variables.scss +3 −0
  20. assets/stylesheets/pages/_angular.scss +3 −0
  21. assets/stylesheets/pages/_angularjs.scss +2 −0
  22. assets/stylesheets/pages/_apache.scss +2 −0
  23. assets/stylesheets/pages/_async.scss +2 −0
  24. assets/stylesheets/pages/_bash.scss +2 −0
  25. assets/stylesheets/pages/_bootstrap.scss +2 −0
  26. assets/stylesheets/pages/_cakephp.scss +2 −0
  27. assets/stylesheets/pages/_chef.scss +2 −0
  28. assets/stylesheets/pages/_clojure.scss +2 −0
  29. assets/stylesheets/pages/_codeception.scss +2 −0
  30. assets/stylesheets/pages/_coffeescript.scss +3 −0
  31. assets/stylesheets/pages/_cordova.scss +2 −0
  32. assets/stylesheets/pages/_cppref.scss +2 −0
  33. assets/stylesheets/pages/_crystal.scss +3 −0
  34. assets/stylesheets/pages/_cypress.scss +2 −0
  35. assets/stylesheets/pages/_d.scss +2 −0
  36. assets/stylesheets/pages/_d3.scss +2 −0
  37. assets/stylesheets/pages/_dart.scss +2 −0
  38. assets/stylesheets/pages/_dojo.scss +2 −0
  39. assets/stylesheets/pages/_drupal.scss +2 −0
  40. assets/stylesheets/pages/_elisp.scss +2 −0
  41. assets/stylesheets/pages/_elixir.scss +2 −0
  42. assets/stylesheets/pages/_ember.scss +2 −0
  43. assets/stylesheets/pages/_erlang.scss +2 −0
  44. assets/stylesheets/pages/_express.scss +2 −0
  45. assets/stylesheets/pages/_fastapi.scss +2 −0
  46. assets/stylesheets/pages/_fluture.scss +2 −0
  47. assets/stylesheets/pages/_git.scss +2 −0
  48. assets/stylesheets/pages/_github.scss +2 −0
  49. assets/stylesheets/pages/_gnu_make.scss +2 −0
  50. assets/stylesheets/pages/_gnuplot.scss +2 −0
  51. assets/stylesheets/pages/_go.scss +2 −0
  52. assets/stylesheets/pages/_graphite.scss +2 −0
  53. assets/stylesheets/pages/_groovy.scss +2 −0
  54. assets/stylesheets/pages/_gtk.scss +2 −0
  55. assets/stylesheets/pages/_hapi.scss +2 −0
  56. assets/stylesheets/pages/_haproxy.scss +2 −0
  57. assets/stylesheets/pages/_haskell.scss +2 −0
  58. assets/stylesheets/pages/_jasmine.scss +2 −0
  59. assets/stylesheets/pages/_jekyll.scss +2 −0
  60. assets/stylesheets/pages/_joi.scss +2 −0
  61. assets/stylesheets/pages/_jq.scss +3 −0
  62. assets/stylesheets/pages/_jquery.scss +2 −0
  63. assets/stylesheets/pages/_julia.scss +2 −0
  64. assets/stylesheets/pages/_knockout.scss +2 −0
  65. assets/stylesheets/pages/_kotlin.scss +2 −0
  66. assets/stylesheets/pages/_kubectl.scss +2 −1
  67. assets/stylesheets/pages/_kubernetes.scss +2 −1
  68. assets/stylesheets/pages/_laravel.scss +2 −0
  69. assets/stylesheets/pages/_liquid.scss +2 −0
  70. assets/stylesheets/pages/_lit.scss +2 −0
  71. assets/stylesheets/pages/_love.scss +2 −0
  72. assets/stylesheets/pages/_lua.scss +2 −0
  73. assets/stylesheets/pages/_mariadb.scss +2 −0
  74. assets/stylesheets/pages/_mdn.scss +2 −0
  75. assets/stylesheets/pages/_meteor.scss +2 −0
  76. assets/stylesheets/pages/_mkdocs.scss +2 −0
  77. assets/stylesheets/pages/_modernizr.scss +2 −0
  78. assets/stylesheets/pages/_moment.scss +2 −0
  79. assets/stylesheets/pages/_nginx.scss +2 −0
  80. assets/stylesheets/pages/_node.scss +2 −0
  81. assets/stylesheets/pages/_npm.scss +2 −0
  82. assets/stylesheets/pages/_nushell.scss +2 −0
  83. assets/stylesheets/pages/_octave.scss +2 −0
  84. assets/stylesheets/pages/_openjdk.scss +2 −0
  85. assets/stylesheets/pages/_openlayers.scss +3 −0
  86. assets/stylesheets/pages/_perl.scss +2 −0
  87. assets/stylesheets/pages/_phalcon.scss +2 −0
  88. assets/stylesheets/pages/_phaser.scss +2 −0
  89. assets/stylesheets/pages/_php.scss +3 −0
  90. assets/stylesheets/pages/_phpunit.scss +2 −0
  91. assets/stylesheets/pages/_postgres.scss +2 −0
  92. assets/stylesheets/pages/_pug.scss +2 −0
  93. assets/stylesheets/pages/_pygame.scss +2 −0
  94. assets/stylesheets/pages/_python.scss +2 −0
  95. assets/stylesheets/pages/_qt.scss +2 −0
  96. assets/stylesheets/pages/_ramda.scss +3 −0
  97. assets/stylesheets/pages/_rdoc.scss +4 −1
  98. assets/stylesheets/pages/_react.scss +2 −0
  99. assets/stylesheets/pages/_react_native.scss +2 −0
  100. assets/stylesheets/pages/_reactivex.scss +2 −0
  101. assets/stylesheets/pages/_redis.scss +3 −0
  102. assets/stylesheets/pages/_rethinkdb.scss +2 −0
  103. assets/stylesheets/pages/_rfc.scss +2 −0
  104. assets/stylesheets/pages/_rubydoc.scss +2 −0
  105. assets/stylesheets/pages/_rust.scss +3 −0
  106. assets/stylesheets/pages/_rxjs.scss +2 −0
  107. assets/stylesheets/pages/_sanctuary.scss +2 −0
  108. assets/stylesheets/pages/_sanctuary_def.scss +2 −0
  109. assets/stylesheets/pages/_sanctuary_type_classes.scss +2 −0
  110. assets/stylesheets/pages/_scala.scss +6 −2
  111. assets/stylesheets/pages/_simple.scss +2 −0
  112. assets/stylesheets/pages/_sinon.scss +2 −0
  113. assets/stylesheets/pages/_sphinx.scss +2 −0
  114. assets/stylesheets/pages/_sphinx_simple.scss +2 −0
  115. assets/stylesheets/pages/_sqlite.scss +2 −0
  116. assets/stylesheets/pages/_support_tables.scss +2 −0
  117. assets/stylesheets/pages/_tcl_tk.scss +2 −0
  118. assets/stylesheets/pages/_tensorflow.scss +2 −0
  119. assets/stylesheets/pages/_terraform.scss +2 −0
  120. assets/stylesheets/pages/_typescript.scss +2 −0
  121. assets/stylesheets/pages/_underscore.scss +2 −0
  122. assets/stylesheets/pages/_vue.scss +2 −0
  123. assets/stylesheets/pages/_webpack.scss +2 −0
  124. assets/stylesheets/pages/_wordpress.scss +3 −1
  125. assets/stylesheets/pages/_yard.scss +3 −0
  126. assets/stylesheets/pages/_yii.scss +2 −0
  127. lib/tasks/sprites.thor +15 −0
Gemfile+1−2
@@ -15,16 +15,15 @@ group :app do · 14 unmodified lines
1515 gem 'browser'
1616 gem 'chunky_png'
1717 gem 'erubi'
18+ gem 'dartsass-sprockets'
1819 gem 'image_optim_pack', platforms: :ruby
1920 gem 'image_optim'
2021 gem 'rack-ssl-enforcer'
2122 gem 'rack'
2223 gem 'rss'
23− gem 'sass'
2424 gem 'sinatra-contrib'
2525 gem 'sinatra'
2626 gem 'sprockets-helpers'
27− gem 'sprockets-sass'
2827 gem 'sprockets'
2928 gem 'thin'
3029 end
Gemfile.lock+90−15
@@ -1,6 +1,25 @@
11 GEM
22 remote: https://rubygems.org/
33 specs:
4+ actionpack (7.2.3)
5+ actionview (= 7.2.3)
6+ activesupport (= 7.2.3)
7+ cgi
8+ nokogiri (>= 1.8.5)
9+ racc
10+ rack (>= 2.2.4, < 3.3)
11+ rack-session (>= 1.0.1)
12+ rack-test (>= 0.6.3)
13+ rails-dom-testing (~> 2.2)
14+ rails-html-sanitizer (~> 1.6)
15+ useragent (~> 0.16)
16+ actionview (7.2.3)
17+ activesupport (= 7.2.3)
18+ builder (~> 3.1)
19+ cgi
20+ erubi (~> 1.11)
21+ rails-dom-testing (~> 2.2)
22+ rails-html-sanitizer (~> 1.6)
423 activesupport (7.2.3)
524 base64
625 benchmark (>= 0.3)
@@ -21,13 +40,24 @@ GEM · 14 unmodified lines
2140 rouge (>= 1.0.0)
2241 bigdecimal (3.1.9)
2342 browser (5.3.1)
43+ builder (3.3.0)
2444 byebug (12.0.0)
45+ cgi (0.5.1)
2546 chunky_png (1.4.0)
2647 coderay (1.1.3)
2748 concurrent-ruby (1.3.5)
2849 connection_pool (2.4.1)
50+ crass (1.0.6)
2951 daemons (1.4.1)
52+ dartsass-sprockets (3.2.1)
53+ railties (>= 4.0.0)
54+ sassc-embedded (~> 1.80.1)
55+ sprockets (> 3.0)
56+ sprockets-rails
57+ tilt
58+ date (3.5.1)
3059 drb (2.2.3)
60+ erb (6.0.1)
3161 erubi (1.13.1)
3262 ethon (0.18.0)
3363 ffi (>= 1.15.0)
@@ -37,6 +67,9 @@ GEM · 3 unmodified lines
3767 exifr (1.4.0)
3868 ffi (1.17.3)
3969 fspath (3.1.2)
70+ google-protobuf (4.33.4)
71+ bigdecimal
72+ rake (>= 13)
4073 highline (3.1.2)
4174 reline
4275 html-pipeline (2.14.3)
@@ -56,7 +89,14 @@ GEM · 13 unmodified lines
5689 image_size (3.3.0)
5790 in_threads (1.6.0)
5891 io-console (0.8.0)
92+ irb (1.16.0)
93+ pp (>= 0.6.0)
94+ rdoc (>= 4.0.0)
95+ reline (>= 0.4.2)
5996 logger (1.6.6)
97+ loofah (2.25.0)
98+ crass (~> 1.0.2)
99+ nokogiri (>= 1.12.0)
60100 method_source (1.1.0)
61101 mini_portile2 (2.8.9)
62102 minitest (5.27.0)
@@ -68,6 +108,9 @@ GEM · 5 unmodified lines
68108 mini_portile2 (~> 2.8.2)
69109 racc (~> 1.4)
70110 options (2.3.2)
111+ pp (0.6.3)
112+ prettyprint
113+ prettyprint (0.2.0)
71114 progress (3.6.0)
72115 progress_bar (1.3.4)
73116 highline (>= 1.6)
@@ -78,18 +121,44 @@ GEM · 4 unmodified lines
78121 pry-byebug (3.11.0)
79122 byebug (~> 12.0)
80123 pry (>= 0.13, < 0.16)
124+ psych (5.3.1)
125+ date
126+ stringio
81127 racc (1.8.1)
82128 rack (2.2.22)
83129 rack-protection (3.2.0)
84130 base64 (>= 0.1.0)
85131 rack (~> 2.2, >= 2.2.4)
132+ rack-session (1.0.2)
133+ rack (< 3)
86134 rack-ssl-enforcer (0.2.9)
87135 rack-test (2.2.0)
88136 rack (>= 1.3)
137+ rackup (1.0.1)
138+ rack (< 3)
139+ webrick
140+ rails-dom-testing (2.3.0)
141+ activesupport (>= 5.0.0)
142+ minitest
143+ nokogiri (>= 1.6)
144+ rails-html-sanitizer (1.6.2)
145+ loofah (~> 2.21)
146+ nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
147+ railties (7.2.3)
148+ actionpack (= 7.2.3)
149+ activesupport (= 7.2.3)
150+ cgi
151+ irb (~> 1.13)
152+ rackup (>= 1.0.0)
153+ rake (>= 12.2)
154+ thor (~> 1.0, >= 1.2.2)
155+ tsort (>= 0.2)
156+ zeitwerk (~> 2.6)
89157 rake (13.3.1)
90− rb-fsevent (0.11.2)
91− rb-inotify (0.10.1)
92− ffi (~> 1.0)
158+ rdoc (7.1.0)
159+ erb
160+ psych (>= 4.0.0)
161+ tsort
93162 redcarpet (3.6.1)
94163 reline (0.6.0)
95164 io-console (~> 0.5)
@@ -99,11 +168,11 @@ GEM · 3 unmodified lines
99168 rss (0.3.1)
100169 rexml
101170 ruby2_keywords (0.0.5)
102− sass (3.7.4)
103− sass-listen (~> 4.0.0)
104− sass-listen (4.0.0)
105− rb-fsevent (~> 0.9, >= 0.9.4)
106− rb-inotify (~> 0.9, >= 0.9.7)
171+ sass-embedded (1.97.3)
172+ google-protobuf (~> 4.31)
173+ rake (>= 13)
174+ sassc-embedded (1.80.8)
175+ sass-embedded (~> 1.80)
107176 securerandom (0.3.2)
108177 sinatra (3.2.0)
109178 mustermann (~> 3.0)
@@ -116,14 +185,17 @@ GEM · 6 unmodified lines
116185 rack-protection (= 3.2.0)
117186 sinatra (= 3.2.0)
118187 tilt (~> 2.0)
119− sprockets (3.7.5)
120− base64
188+ sprockets (4.2.2)
121189 concurrent-ruby (~> 1.0)
122− rack (> 1, < 3)
190+ logger
191+ rack (>= 2.2.4, < 4)
123192 sprockets-helpers (1.4.0)
124193 sprockets (>= 2.2)
125− sprockets-sass (2.0.0.beta2)
126− sprockets (>= 2.0, < 4.0)
194+ sprockets-rails (3.5.2)
195+ actionpack (>= 6.1)
196+ activesupport (>= 6.1)
197+ sprockets (>= 3.0.0)
198+ stringio (3.2.0)
127199 strings (0.2.1)
128200 strings-ansi (~> 0.2)
129201 unicode-display_width (>= 1.5, < 3.0)
@@ -139,6 +211,7 @@ GEM · 9 unmodified lines
139211 rack (>= 1, < 3)
140212 thor (1.4.0)
141213 tilt (2.6.0)
214+ tsort (0.2.0)
142215 tty-pager (0.14.0)
143216 strings (~> 0.2.0)
144217 tty-screen (~> 0.8)
@@ -150,7 +223,10 @@ GEM · 5 unmodified lines
150223 unicode-display_width (2.3.0)
151224 unicode_utils (1.4.0)
152225 unix_utils (0.0.15)
226+ useragent (0.16.11)
227+ webrick (1.9.2)
153228 yajl-ruby (1.4.3)
229+ zeitwerk (2.7.4)
154230
155231 PLATFORMS
156232 ruby
@@ -160,6 +236,7 @@ DEPENDENCIES · 3 unmodified lines
160236 better_errors
161237 browser
162238 chunky_png
239+ dartsass-sprockets
163240 erubi
164241 html-pipeline
165242 image_optim
@@ -176,12 +253,10 @@ DEPENDENCIES · 10 unmodified lines
176253 redcarpet
177254 rr
178255 rss
179− sass
180256 sinatra
181257 sinatra-contrib
182258 sprockets
183259 sprockets-helpers
184− sprockets-sass
185260 terminal-table
186261 terser
187262 thin
assets/javascripts/application.js+2−0
@@ -18,6 +18,8 @@ · 17 unmodified lines
1818
1919 //= require_tree ./templates
2020
21+//= link_tree ../images/sprites
22+
2123 //= require tracking
2224
2325 var init = function () {
assets/stylesheets/application.css.scss+121−132
@@ -1,7 +1,3 @@
1−//= depend_on sprites/docs.png
2−//= depend_on sprites/docs@2x.png
3−//= depend_on sprites/docs.json
4−
51 /*!
62 * Copyright 2013-2026 Thibaut Courouble and other contributors
73 *
@@ -10,133 +6,126 @@ · 2 unmodified lines
106 * http://mozilla.org/MPL/2.0/
117 */
128
13−@import 'global/variables-light',
14− 'global/variables-dark',
15− 'global/variables',
16− 'global/mixins',
17− 'global/icons',
18− 'global/classes',
19− 'global/base';
9+ // SCSS partials that were formerly imported here are now invoked on an as-needed, per-file basis.
2010
21−@import 'components/app',
22− 'components/header',
23− 'components/notif',
24− 'components/sidebar',
25− 'components/settings',
26− 'components/content',
27− 'components/page',
28− 'components/fail',
29− 'components/path',
30− 'components/notice',
31− 'components/prism',
32− 'components/mobile',
33− 'components/environment';
11+@use 'components/app';
12+@use 'components/header';
13+@use 'components/notif';
14+@use 'components/sidebar';
15+@use 'components/settings';
16+@use 'components/content';
17+@use 'components/page';
18+@use 'components/fail';
19+@use 'components/path';
20+@use 'components/notice';
21+@use 'components/prism';
22+@use 'components/mobile';
23+@use 'components/environment';
3424
35−@import 'pages/simple',
36− 'pages/angular',
37− 'pages/angularjs',
38− 'pages/apache',
39− 'pages/async',
40− 'pages/bash',
41− 'pages/bootstrap',
42− 'pages/cppref',
43− 'pages/cakephp',
44− 'pages/clojure',
45− 'pages/codeception',
46− 'pages/coffeescript',
47− 'pages/cordova',
48− 'pages/crystal',
49− 'pages/cypress',
50− 'pages/d',
51− 'pages/d3',
52− 'pages/dart',
53− 'pages/dojo',
54− 'pages/drupal',
55− 'pages/eigen3',
56− 'pages/elixir',
57− 'pages/elisp',
58− 'pages/ember',
59− 'pages/erlang',
60− 'pages/express',
61− 'pages/fastapi',
62− 'pages/fluture',
63− 'pages/git',
64− 'pages/github',
65− 'pages/gnuplot',
66− 'pages/go',
67− 'pages/graphite',
68− 'pages/groovy',
69− 'pages/gtk',
70− 'pages/hapi',
71− 'pages/haproxy',
72− 'pages/haskell',
73− 'pages/jasmine',
74− 'pages/jekyll',
75− 'pages/joi',
76− 'pages/jq',
77− 'pages/jquery',
78− 'pages/julia',
79− 'pages/knockout',
80− 'pages/kotlin',
81− 'pages/kubectl',
82− 'pages/kubernetes',
83− 'pages/laravel',
84− 'pages/liquid',
85− 'pages/lit',
86− 'pages/love',
87− 'pages/lua',
88− 'pages/gnu_make',
89− 'pages/mariadb',
90− 'pages/mdn',
91− 'pages/meteor',
92− 'pages/mkdocs',
93− 'pages/modernizr',
94− 'pages/moment',
95− 'pages/nginx',
96− 'pages/node',
97− 'pages/npm',
98− 'pages/nushell',
99− 'pages/octave',
100− 'pages/openjdk',
101− 'pages/openlayers',
102− 'pages/perl',
103− 'pages/phalcon',
104− 'pages/phaser',
105− 'pages/php',
106− 'pages/phpunit',
107− 'pages/postgres',
108− 'pages/pug',
109− 'pages/pygame',
110− 'pages/python',
111− 'pages/qt',
112− 'pages/ramda',
113− 'pages/rdoc',
114− 'pages/react',
115− 'pages/react_native',
116− 'pages/reactivex',
117− 'pages/redis',
118− 'pages/rethinkdb',
119− 'pages/rfc',
120− 'pages/rubydoc',
121− 'pages/rust',
122− 'pages/rxjs',
123− 'pages/sanctuary',
124− 'pages/sanctuary_def',
125− 'pages/sanctuary_type_classes',
126− 'pages/scala',
127− 'pages/sinon',
128− 'pages/sphinx',
129− 'pages/sphinx_simple',
130− 'pages/sqlite',
131− 'pages/support_tables',
132− 'pages/tailwindcss',
133− 'pages/tcl_tk',
134− 'pages/tensorflow',
135− 'pages/terraform',
136− 'pages/typescript',
137− 'pages/underscore',
138− 'pages/vue',
139− 'pages/webpack',
140− 'pages/wordpress',
141− 'pages/yard',
142− 'pages/yii';
25+@use 'pages/angular';
26+@use 'pages/angularjs';
27+@use 'pages/apache';
28+@use 'pages/async';
29+@use 'pages/bash';
30+@use 'pages/bootstrap';
31+@use 'pages/cppref';
32+@use 'pages/cakephp';
33+@use 'pages/clojure';
34+@use 'pages/codeception';
35+@use 'pages/coffeescript';
36+@use 'pages/cordova';
37+@use 'pages/crystal';
38+@use 'pages/cypress';
39+@use 'pages/d';
40+@use 'pages/d3';
41+@use 'pages/dart';
42+@use 'pages/dojo';
43+@use 'pages/drupal';
44+@use 'pages/eigen3';
45+@use 'pages/elixir';
46+@use 'pages/elisp';
47+@use 'pages/ember';
48+@use 'pages/erlang';
49+@use 'pages/express';
50+@use 'pages/fastapi';
51+@use 'pages/fluture';
52+@use 'pages/git';
53+@use 'pages/github';
54+@use 'pages/gnuplot';
55+@use 'pages/go';
56+@use 'pages/graphite';
57+@use 'pages/groovy';
58+@use 'pages/gtk';
59+@use 'pages/hapi';
60+@use 'pages/haproxy';
61+@use 'pages/haskell';
62+@use 'pages/jasmine';
63+@use 'pages/jekyll';
64+@use 'pages/joi';
65+@use 'pages/jq';
66+@use 'pages/jquery';
67+@use 'pages/julia';
68+@use 'pages/knockout';
69+@use 'pages/kotlin';
70+@use 'pages/kubectl';
71+@use 'pages/kubernetes';
72+@use 'pages/laravel';
73+@use 'pages/liquid';
74+@use 'pages/lit';
75+@use 'pages/love';
76+@use 'pages/lua';
77+@use 'pages/gnu_make';
78+@use 'pages/mariadb';
79+@use 'pages/mdn';
80+@use 'pages/meteor';
81+@use 'pages/mkdocs';
82+@use 'pages/modernizr';
83+@use 'pages/moment';
84+@use 'pages/nginx';
85+@use 'pages/node';
86+@use 'pages/npm';
87+@use 'pages/nushell';
88+@use 'pages/octave';
89+@use 'pages/openjdk';
90+@use 'pages/openlayers';
91+@use 'pages/perl';
92+@use 'pages/phalcon';
93+@use 'pages/phaser';
94+@use 'pages/php';
95+@use 'pages/phpunit';
96+@use 'pages/postgres';
97+@use 'pages/pug';
98+@use 'pages/pygame';
99+@use 'pages/python';
100+@use 'pages/qt';
101+@use 'pages/ramda';
102+@use 'pages/rdoc';
103+@use 'pages/react';
104+@use 'pages/react_native';
105+@use 'pages/reactivex';
106+@use 'pages/redis';
107+@use 'pages/rethinkdb';
108+@use 'pages/rfc';
109+@use 'pages/rubydoc';
110+@use 'pages/rust';
111+@use 'pages/rxjs';
112+@use 'pages/sanctuary';
113+@use 'pages/sanctuary_def';
114+@use 'pages/sanctuary_type_classes';
115+@use 'pages/scala';
116+@use 'pages/sinon';
117+@use 'pages/sphinx';
118+@use 'pages/sphinx_simple';
119+@use 'pages/sqlite';
120+@use 'pages/support_tables';
121+@use 'pages/tailwindcss';
122+@use 'pages/tcl_tk';
123+@use 'pages/tensorflow';
124+@use 'pages/terraform';
125+@use 'pages/typescript';
126+@use 'pages/underscore';
127+@use 'pages/vue';
128+@use 'pages/webpack';
129+@use 'pages/wordpress';
130+@use 'pages/yard';
131+@use 'pages/yii';
assets/stylesheets/components/_app.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 html._booting { background: var(--contentBackground); }
24 body._max-width { background: none; }
35 html._booting body._max-width { background: var(--documentBackground); }
assets/stylesheets/components/_content.scss+6−1
@@ -2,6 +2,11 @@ · 1 unmodified line
22 // Content
33 //
44
5+@use 'global/base';
6+@use 'global/icons';
7+@use 'global/mixins' as m;
8+@use 'global/classes';
9+
510 ._container {
611 position: relative;
712 z-index: var(--contentZ);
@@ -10,7 +15,7 @@ · 2 unmodified lines
1015 pointer-events: none;
1116 @extend %border-box;
1217
13− @include mobile { margin-left: var(--sidebarMediumWidth); }
18+ @include m.mobile { margin-left: var(--sidebarMediumWidth); }
1419
1520 ._sidebar-hidden & { margin-left: 0; }
1621 body:not(._native-scrollbars) & { -webkit-margin-end: -1px; }
assets/stylesheets/components/_fail.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._fail { // Don't use CSS variables, in case the browser doesn't support them.
24 display: block;
35 position: relative;
assets/stylesheets/components/_header.scss+5−1
@@ -2,6 +2,10 @@ · 1 unmodified line
22 // Header
33 //
44
5+@use 'global/icons';
6+@use 'global/mixins' as m;
7+@use 'global/classes';
8+
59 ._header {
610 position: absolute;
711 z-index: var(--headerZ);
@@ -17,7 +21,7 @@ · 9 unmodified lines
1721 @extend %border-box;
1822 @extend %user-select-none;
1923
20− @include mobile { width: var(--sidebarMediumWidth); }
24+ @include m.mobile { width: var(--sidebarMediumWidth); }
2125 }
2226
2327 ._header-left {
assets/stylesheets/components/_notice.scss+3−1
@@ -1,3 +1,5 @@
1+@use 'global/mixins' as m;
2+
13 ._notice {
24 position: absolute;
35 z-index: var(--noticeZ);
@@ -9,7 +11,7 @@ · 5 unmodified lines
911 background: var(--noticeBackground);
1012 box-shadow: inset 0 1px var(--noticeBorder);
1113
12− @include mobile { left: var(--sidebarMediumWidth); }
14+ @include m.mobile { left: var(--sidebarMediumWidth); }
1315
1416 ._sidebar-hidden & { left: 0; }
1517
assets/stylesheets/components/_notif.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/classes';
2+@use 'global/icons';
3+
14 ._notif, %notif {
25 position: absolute;
36 z-index: 2;
assets/stylesheets/components/_page.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/classes';
2+@use 'components/content';
3+
14 //
25 // Page
36 //
assets/stylesheets/components/_path.scss+4−1
@@ -1,3 +1,6 @@
1+@use 'global/mixins' as m;
2+@use 'global/icons';
3+
14 ._path {
25 position: absolute;
36 z-index: var(--headerZ);
@@ -11,7 +14,7 @@ · 7 unmodified lines
1114 background: var(--pathBackground);
1215 box-shadow: inset 0 1px var(--pathBorder);
1316
14− @include mobile { left: var(--sidebarMediumWidth); }
17+ @include m.mobile { left: var(--sidebarMediumWidth); }
1518
1619 ._sidebar-hidden & { left: 0; }
1720
assets/stylesheets/components/_settings.scss+3−0
@@ -2,6 +2,9 @@ · 1 unmodified line
22 // Settings
33 //
44
5+@use 'global/classes';
6+@use 'global/icons';
7+
58 ._settings {
69 display: none;
710 position: absolute;
assets/stylesheets/components/_sidebar.scss+6−2
@@ -2,6 +2,10 @@ · 1 unmodified line
22 // Sidebar
33 //
44
5+@use 'global/classes';
6+@use 'global/icons';
7+@use 'global/mixins' as m;
8+
59 ._sidebar {
610 position: absolute;
711 z-index: var(--sidebarZ);
@@ -76,7 +80,7 @@ · 68 unmodified lines
7680 box-shadow: inset -1px 0 var(--sidebarBorder);
7781 @extend %border-box;
7882
79− @include mobile { width: var(--sidebarMediumWidth); }
83+ @include m.mobile { width: var(--sidebarMediumWidth); }
8084
8185 ._sidebar > & { min-height: 100%; }
8286
@@ -311,7 +315,7 @@ · 228 unmodified lines
311315 transform: translate3d(0, 0, 0);
312316 @extend %border-box;
313317
314− @include mobile { min-width: var(--sidebarMediumWidth); }
318+ @include m.mobile { min-width: var(--sidebarMediumWidth); }
315319
316320 > ._list-text { display: inline; }
317321
assets/stylesheets/global/_base.scss+7−3
@@ -1,13 +1,17 @@
1+@use 'global/classes';
2+@use 'global/mixins' as m;
3+@use 'global/variables' as *;
4+@use 'global/print';
5+
16 html {
27 height: 100%;
38 font-size: 100%;
49 background: #fff; // fallback to show the error message to browsers that don't support CSS variables.
510 background: var(--documentBackground);
611
7− @include mobile { font-size: 93.75%; }
12+ @include m.mobile { font-size: 93.75%; }
813
9− @include print { background: none; }
10− @import 'global/print';
14+ @include m.print { background: none; }
1115 }
1216
1317 html._theme-default {
assets/stylesheets/global/_print.scss+3−1
@@ -1,4 +1,6 @@
1−@include print {
1+@use 'global/mixins' as m;
2+
3+@include m.print {
24 ._header, ._sidebar, ._path, ._notif, ._toc, ._pre-clip, ._notice, ._links {
35 display: none !important;
46 }
assets/stylesheets/global/_variables-dark.scss+4−2
@@ -1,3 +1,5 @@
1+@use 'sass:color';
2+
13 html._theme-dark {
24 --absolute: white;
35
@@ -29,8 +31,8 @@ html._theme-dark { · 25 unmodified lines
2931
3032 --headerBackground: #1c1c1c;
3133 --headerBorder: #000;
32− --searchTagBackground: #{darken(#1c1c1c, 5%)};
33− --searchBorder: #{darken(#000, 2%)};
34+ --searchTagBackground: #{color.adjust(#1c1c1c, $lightness: -5%)};
35+ --searchBorder: #{color.adjust(#000, $lightness: -2%)};
3436
3537 --sidebarBackground: #24282a;
3638 --transparentSidebarBackground: #{rgba(#24282a, 0)};
assets/stylesheets/global/_variables-light.scss+4−2
@@ -1,3 +1,5 @@
1+@use 'sass:color';
2+
13 html._theme-default {
24 --absolute: black;
35
@@ -29,8 +31,8 @@ html._theme-default { · 25 unmodified lines
2931
3032 --headerBackground: #eee;
3133 --headerBorder: #d7d7d7;
32− --searchTagBackground: #{darken(#eee, 5%)};
33− --searchBorder: #{darken(#d7d7d7, 2%)};
34+ --searchTagBackground: #{color.adjust(#eee, $lightness: -5%)};
35+ --searchBorder: #{color.adjust(#d7d7d7, $lightness: -2%)};
3436
3537 --sidebarBackground: #f9f9f9;
3638 --transparentSidebarBackground: #{rgba(#f9f9f9, 0)};
assets/stylesheets/global/_variables.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/variables-light';
2+@use 'global/variables-dark';
3+
14 // Variables needed to style the error message for browsers that don't support CSS variables.
25 $baseFont: -apple-system, BlinkMacSystemFont, 'San Francisco', 'Segoe UI', Roboto, Ubuntu, 'Helvetica Neue', Arial, sans-serif;
36 $textColor: #333;
assets/stylesheets/pages/_angular.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/base';
2+@use 'pages/simple';
3+
14 ._angular {
25 @extend %simple;
36
assets/stylesheets/pages/_angularjs.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._angularjs {
24 h2 { @extend %block-heading; }
35
assets/stylesheets/pages/_apache.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._apache {
24 @extend %simple;
35
assets/stylesheets/pages/_async.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._async {
24 @extend %simple;
35
assets/stylesheets/pages/_bash.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._bash {
24 dl > dt > code,
35 dl > dt > kbd {
assets/stylesheets/pages/_bootstrap.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._bootstrap {
24 @extend %simple;
35
assets/stylesheets/pages/_cakephp.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._cakephp {
24 @extend %simple;
35
assets/stylesheets/pages/_chef.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._chef {
24 @extend %simple;
35
assets/stylesheets/pages/_clojure.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._clojure {
24 h2:not([id]) { @extend %block-heading; }
35 h2[id], h3 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_codeception.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._codeception {
24 @extend %simple;
35
assets/stylesheets/pages/_coffeescript.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'pages/simple';
2+
3+
14 ._coffeescript {
25 @extend %simple;
36
assets/stylesheets/pages/_cordova.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._cordova {
24 @extend %simple;
35
assets/stylesheets/pages/_cppref.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/base';
2+
13 ._cppref {
24 > h2, > h3 { @extend %block-heading; }
35 > h4 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_crystal.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/base';
2+@use 'pages/simple';
3+
14 ._crystal {
25 @extend %simple;
36
assets/stylesheets/pages/_cypress.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._cypress {
24 @extend %simple;
35
assets/stylesheets/pages/_d.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/base';
2+
13 ._d {
24 h2 { @extend %block-heading; }
35 h3, .d_decl { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_d3.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._d3 {
24 > h2 { @extend %block-heading; }
35 > h3 { @extend %block-label; }
assets/stylesheets/pages/_dart.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._dart {
24 @extend %simple;
35
assets/stylesheets/pages/_dojo.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._dojo {
24 @extend %simple;
35
assets/stylesheets/pages/_drupal.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._drupal {
24 h3 { @extend %block-heading; }
35 .signature { @extend %note, %note-blue; }
assets/stylesheets/pages/_elisp.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._elisp {
24 dl > dt {
35 @extend %block-label, %label-blue;
assets/stylesheets/pages/_elixir.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._elixir {
24 @extend %simple;
35
assets/stylesheets/pages/_ember.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._ember {
24 @extend %simple;
35
assets/stylesheets/pages/_erlang.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._erlang {
24 @extend %simple;
35
assets/stylesheets/pages/_express.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._express {
24 @extend %simple;
35
assets/stylesheets/pages/_fastapi.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._fastapi {
24 > h2 { @extend %block-heading; }
35 > h3 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_fluture.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._fluture {
24 @extend %simple;
35
assets/stylesheets/pages/_git.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._git {
24 padding-left: 1rem;
35
assets/stylesheets/pages/_github.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._github {
24 @extend %simple;
35
assets/stylesheets/pages/_gnu_make.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._gnu_make {
24 dl dt {
35 @extend %block-label, %label-blue;
assets/stylesheets/pages/_gnuplot.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._gnuplot {
24 .CENTER {
35 text-align: center;
assets/stylesheets/pages/_go.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._go {
24 @extend %simple;
35
assets/stylesheets/pages/_graphite.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._graphite {
24 @extend %simple;
35
assets/stylesheets/pages/_groovy.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._groovy {
24 padding-left: 1rem;
35
assets/stylesheets/pages/_gtk.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._gtk {
24 padding-left: 1rem;
35
assets/stylesheets/pages/_hapi.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._hapi {
24 @extend %simple;
35
assets/stylesheets/pages/_haproxy.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._haproxy {
24 padding-left: 1rem;
35
assets/stylesheets/pages/_haskell.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/base';
2+
13 ._haskell-api {
24 > h2 { @extend %block-heading; }
35 > h3 { @extend %block-label; }
assets/stylesheets/pages/_jasmine.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._jasmine {
24 .subsection-title, h2 { @extend %block-heading; }
35 h4 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_jekyll.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._jekyll {
24 @extend %simple;
35
assets/stylesheets/pages/_joi.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._joi {
24 @extend %simple;
35
assets/stylesheets/pages/_jq.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/base';
2+@use 'pages/simple';
3+
14 ._jq {
25 @extend %simple;
36
assets/stylesheets/pages/_jquery.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._jquery {
24 //
35 // Index page
assets/stylesheets/pages/_julia.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._julia {
24 @extend %simple;
35
assets/stylesheets/pages/_knockout.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._knockout {
24 > h2 { @extend %block-heading; }
35 > h3 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_kotlin.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._kotlin {
24 h2 { @extend %block-heading; }
35 h3 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_kubectl.scss+2−1
@@ -1,4 +1,5 @@
1+@use 'pages/simple';
2+
13 ._kubectl {
24 @extend %simple;
3−
45 }
assets/stylesheets/pages/_kubernetes.scss+2−1
@@ -1,4 +1,5 @@
1+@use 'pages/simple';
2+
13 ._kubernetes {
24 @extend %simple;
3−
45 }
assets/stylesheets/pages/_laravel.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._laravel {
24 h2 { @extend %block-heading; }
35 h3 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_liquid.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._liquid {
24 @extend %simple;
35
assets/stylesheets/pages/_lit.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._lit {
24 @extend %simple;
35
assets/stylesheets/pages/_love.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._love {
24 @extend %simple;
35
assets/stylesheets/pages/_lua.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._lua {
24 @extend %simple;
35
assets/stylesheets/pages/_mariadb.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._mariadb {
24 @extend %simple;
35
assets/stylesheets/pages/_mdn.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._mdn {
24 container-type: inline-size;
35
assets/stylesheets/pages/_meteor.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._meteor {
24 @extend %simple;
35
assets/stylesheets/pages/_mkdocs.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._mkdocs {
24 h2 { @extend %block-heading; }
35 h3 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_modernizr.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._modernizr {
24 h2 { @extend %block-heading; }
35 h3 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_moment.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._moment {
24 > h2 { @extend %block-heading; }
35 > h3 { @extend %block-label, %label-blue; }
assets/stylesheets/pages/_nginx.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._nginx {
24 h4 { @extend %block-heading; }
35 .note { @extend %note; }
assets/stylesheets/pages/_node.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._node {
24 // https://nodejs.org/api/documentation.html#stability-index
35 .api_stability { clear: both; }
assets/stylesheets/pages/_npm.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._npm {
24 @extend %simple;
35
assets/stylesheets/pages/_nushell.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._nushell {
24 @extend %simple;
35
assets/stylesheets/pages/_octave.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._octave {
24 @extend %simple;
35
assets/stylesheets/pages/_openjdk.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._openjdk {
24 @extend %simple;
35 > .inheritance { @extend %note; }
assets/stylesheets/pages/_openlayers.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/base';
2+@use 'pages/simple';
3+
14 ._openlayers {
25 @extend %simple;
36 .nameContainer {
assets/stylesheets/pages/_perl.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._perl {
24 @extend %simple;
35
assets/stylesheets/pages/_phalcon.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._phalcon {
24 @extend %simple;
35
assets/stylesheets/pages/_phaser.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._phaser {
24 @extend %simple;
35
assets/stylesheets/pages/_php.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/classes';
2+@use 'components/content';
3+
14 ._php {
25 h1 {
36 margin-top: 0;
assets/stylesheets/pages/_phpunit.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._phpunit {
24 @extend %simple;
35
assets/stylesheets/pages/_postgres.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._postgres {
24 padding-left: 1rem;
35
assets/stylesheets/pages/_pug.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._pug {
24 @extend %simple;
35
assets/stylesheets/pages/_pygame.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._pygame {
24 @extend %simple;
35
assets/stylesheets/pages/_python.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/sphinx';
2+
13 ._python {
24 @extend %sphinx;
35
assets/stylesheets/pages/_qt.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._qt {
24 @extend %simple;
35
assets/stylesheets/pages/_ramda.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/base';
2+@use 'pages/simple';
3+
14 ._ramda {
25 @extend %simple;
36
assets/stylesheets/pages/_rdoc.scss+4−1
@@ -1,3 +1,6 @@
1+@use 'global/classes';
2+@use 'global/mixins' as m;
3+
14 ._rdoc {
25 > .description, > .documentation-section { padding-left: 1rem; }
36 > .description > h2, header > h3, > h2 { @extend %block-heading; }
@@ -28,7 +31,7 @@ · 24 unmodified lines
2831
2932 &:hover { text-decoration: underline; }
3033
31− @include print {
34+ @include m.print {
3235 display: none;
3336 }
3437 }
assets/stylesheets/pages/_react.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._react {
24 @extend %simple;
35
assets/stylesheets/pages/_react_native.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._react_native {
24 @extend %simple;
35
assets/stylesheets/pages/_reactivex.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._reactivex {
24 @extend %simple;
35
assets/stylesheets/pages/_redis.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/base';
2+@use 'global/classes';
3+
14 ._redis {
25 padding-left: 1rem;
36
assets/stylesheets/pages/_rethinkdb.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._rethinkdb {
24 @extend %simple;
35
assets/stylesheets/pages/_rfc.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/base';
2+
13 ._rfc-pre {
24 font-size: .8125rem;
35 min-width: 38rem;
assets/stylesheets/pages/_rubydoc.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._rubydoc {
24 @extend %simple;
35
assets/stylesheets/pages/_rust.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/base';
2+@use 'pages/simple';
3+
14 ._rust {
25 @extend %simple;
36
assets/stylesheets/pages/_rxjs.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._rxjs {
24 @extend %simple;
35
assets/stylesheets/pages/_sanctuary.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._sanctuary {
24 @extend %simple;
35
assets/stylesheets/pages/_sanctuary_def.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._sanctuary_def {
24 @extend %simple;
35
assets/stylesheets/pages/_sanctuary_type_classes.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._sanctuary_type_classes {
24 @extend %simple;
35
assets/stylesheets/pages/_scala.scss+6−2
@@ -1,3 +1,7 @@
1+@use 'global/base';
2+@use 'global/mixins' as m;
3+@use 'pages/simple';
4+
15 ._scala {
26 @extend %simple;
37
@@ -22,7 +26,7 @@ · 18 unmodified lines
2226
2327 a { padding: .4em }
2428
25− @include print {
29+ @include m.print {
2630 display: none;
2731 }
2832 }
@@ -36,7 +40,7 @@ · 7 unmodified lines
3640
3741 &:hover { text-decoration: underline; }
3842
39− @include print {
43+ @include m.print {
4044 display: none;
4145 }
4246 }
assets/stylesheets/pages/_simple.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 %simple {
24 padding-left: 1rem;
35
assets/stylesheets/pages/_sinon.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._sinon {
24 @extend %simple;
35
assets/stylesheets/pages/_sphinx.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 %sphinx {
24 h2 { @extend %block-heading; }
35 h3 { @extend %block-label; }
assets/stylesheets/pages/_sphinx_simple.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._sphinx_simple {
24 @extend %simple;
35
assets/stylesheets/pages/_sqlite.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._sqlite {
24 @extend %simple;
35
assets/stylesheets/pages/_support_tables.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._support_tables {
24 h2 { @extend %block-heading; }
35 code { @extend %label; }
assets/stylesheets/pages/_tcl_tk.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._tcl_tk {
24 @extend %simple;
35
assets/stylesheets/pages/_tensorflow.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._tensorflow {
24 @extend %simple;
35
assets/stylesheets/pages/_terraform.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._terraform {
24 @extend %simple;
35 .note, .alert { @extend %note; }
assets/stylesheets/pages/_typescript.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._typescript {
24 @extend %simple;
35 .deprecated { @extend %label-red; }
assets/stylesheets/pages/_underscore.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'global/classes';
2+
13 ._underscore {
24 padding-left: 1rem;
35
assets/stylesheets/pages/_vue.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._vue {
24 @extend %simple;
35
assets/stylesheets/pages/_webpack.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._webpack {
24 @extend %simple;
35
assets/stylesheets/pages/_wordpress.scss+3−1
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._wordpress {
24 @extend %simple;
35
@@ -12,4 +14,4 @@ · 8 unmodified lines
1214 .callout-alert {
1315 @extend %note, %note-orange;
1416 }
15−}
17+}
assets/stylesheets/pages/_yard.scss+3−0
@@ -1,3 +1,6 @@
1+@use 'global/classes';
2+@use 'pages/simple';
3+
14 ._yard {
25 @extend %simple;
36
assets/stylesheets/pages/_yii.scss+2−0
@@ -1,3 +1,5 @@
1+@use 'pages/simple';
2+
13 ._yii {
24 @extend %simple;
35
lib/tasks/sprites.thor+15−0
@@ -56,6 +56,9 @@ class SpritesCLI < Thor · 55 unmodified lines
5656
5757 save_manifest(items, icons_per_row, 'assets/images/sprites/docs.json')
5858
59+ # SCSS wrapped in ERB templates must be compiled manually.
60+ compile_scss_erb
61+
5962 if options[:remove_public_icons]
6063 logger.info('Removing public/icons')
6164 FileUtils.rm_rf('public/icons')
@@ -213,6 +216,18 @@ class SpritesCLI < Thor · 151 unmodified lines
213216 "assets/images/sprites/docs#{size == 32 ? '@2x' : ''}.png"
214217 end
215218
219+ def compile_scss_erb
220+ scss_erb_files = Dir['assets/stylesheets/**/*.scss.erb']
221+
222+ scss_erb_files.each do |erb_path|
223+ scss_path = erb_path.gsub('.erb', '')
224+ File.open(scss_path, 'w') do |f|
225+ f.write(ERB.new(File.open(erb_path).read).result)
226+ logger.info("Compiling #{erb_path} to #{scss_path}")
227+ end
228+ end
229+ end
230+
216231 def image_optim
217232 @image_optim ||= ImageOptim.new(
218233 :config_paths => [],