File tree Expand file tree Collapse file tree 3 files changed +16
-3
lines changed
Expand file tree Collapse file tree 3 files changed +16
-3
lines changed Original file line number Diff line number Diff line change 1010 <script src =" //code.jquery.com/jquery-3.6.4.min.js" defer></script >
1111 <script src =" {{ asset " dist/app.js" }} " defer></script >
1212
13+ {{!-- Prism syntax highlighting --}}
14+ <script src =" https://cdn.jsdelivr.net/npm/prismjs@1/prism.min.js" defer></script >
15+ <script src =" https://cdn.jsdelivr.net/npm/prismjs@1/plugins/autoloader/prism-autoloader.min.js" defer></script >
16+
1317 {{!-- contentFor/block scripts - use with defer --}}
1418 {{{ block " scripts" }}}
1519
Original file line number Diff line number Diff line change @@ -40,12 +40,12 @@ pre.wrap {
4040 overflow-x : visible;
4141}
4242
43- /* Language label — Prism adds language-* class to <pre> */
44- pre [class *= "language-" ]::before {
43+ /* Language label — set via JS from Prism's language-* class */
44+ pre [data-language ]::before {
4545 background-color : var (--color-yellow );
4646 border-radius : 0 0 4px 4px ;
4747 color : var (--color-navy );
48- content : attr (class );
48+ content : attr (data-language );
4949 font-family : 'Inter' , sans-serif;
5050 font-size : 0.7rem ;
5151 font-weight : 600 ;
Original file line number Diff line number Diff line change 11// Ship JS only active on post pages for better performance
22import tocbot from 'tocbot' ;
33
4+ // Set data-language on <pre> elements so CSS can display a clean label.
5+ // Runs on load to ensure Prism's autoloader has finished highlighting.
6+ window . addEventListener ( 'load' , ( ) => {
7+ document . querySelectorAll ( 'pre > code[class*="language-"]' ) . forEach ( ( code ) => {
8+ const match = code . className . match ( / \b l a n g u a g e - ( \w + ) \b / ) ;
9+ if ( match ) code . closest ( 'pre' ) . dataset . language = match [ 1 ] ;
10+ } ) ;
11+ } ) ;
12+
413// Apply .wrap class to any <pre> immediately following a <!--wrap--> HTML card
514document . querySelectorAll ( 'pre' ) . forEach ( ( pre ) => {
615 let node = pre . closest ( '.kg-code-card' ) ?? pre ;
You can’t perform that action at this time.
0 commit comments