All checks were successful
Deploy Pages / Generate-Pages (push) Successful in 38s
281 lines
5.6 KiB
Stylus
281 lines
5.6 KiB
Stylus
$highlight_theme = hexo-config('code_blocks.theme')
|
|
$highlight_macstyle = hexo-config('code_blocks.macStyle')
|
|
wordWrap = $highlight_enable && !$highlight_line_number && hexo-config('code_blocks.word_wrap')
|
|
|
|
@require 'theme'
|
|
|
|
:root
|
|
--hl-color: $highlight-foreground
|
|
--hl-bg: $highlight-background
|
|
--hltools-bg: $highlight-tools.bg-color
|
|
--hltools-color: $highlight-tools.color
|
|
--hlnumber-bg: $highlight-gutter.bg-color
|
|
--hlnumber-color: $highlight-gutter.color
|
|
--hlscrollbar-bg: $highlight-scrollbar
|
|
--hlexpand-bg: linear-gradient(180deg, rgba($highlight-background, .6), rgba($highlight-background, .9))
|
|
|
|
[data-theme='dark']
|
|
--hl-color: alpha(#FFFFFF, .7)
|
|
--hl-bg: lighten(#121212, 2)
|
|
--hltools-bg: lighten(#121212, 3)
|
|
--hltools-color: #90a4ae
|
|
--hlnumber-bg: lighten(#121212, 2)
|
|
--hlnumber-color: alpha(#FFFFFF, .4)
|
|
--hlscrollbar-bg: lighten(#121212, 5)
|
|
--hlexpand-bg: linear-gradient(180deg, rgba(lighten(#121212, 2), .6), rgba(lighten(#121212, 2), .9))
|
|
|
|
if $highlight_enable
|
|
@require 'highlight/index'
|
|
|
|
if $prismjs_enable
|
|
@require 'prismjs/index'
|
|
|
|
$code-block
|
|
overflow: auto
|
|
margin: 0 0 20px
|
|
padding: 0
|
|
background: var(--hl-bg)
|
|
color: var(--hl-color)
|
|
line-height: $line-height-code-block
|
|
|
|
if wordWrap
|
|
counter-reset: line
|
|
white-space: pre-wrap
|
|
|
|
#article-container
|
|
pre,
|
|
code
|
|
font-size: $code-font-size
|
|
font-family: $code-font-family !important
|
|
addBorderRadius()
|
|
|
|
code
|
|
padding: 2px 5px
|
|
background: $code-background
|
|
color: $code-foreground
|
|
|
|
pre
|
|
@extend $code-block
|
|
padding: 10px 20px
|
|
|
|
code
|
|
padding: 0
|
|
background: none
|
|
color: var(--hl-color)
|
|
text-shadow: none
|
|
|
|
figure.highlight
|
|
@extend $code-block
|
|
position: relative
|
|
addBorderRadius()
|
|
|
|
pre
|
|
margin: 0
|
|
padding: 8px 0
|
|
border: none
|
|
|
|
figcaption,
|
|
.caption
|
|
padding: 6px 0 2px 14px
|
|
font-size: $code-font-size
|
|
line-height: 1em
|
|
|
|
a
|
|
float: right
|
|
padding-right: 10px
|
|
color: var(--hl-color)
|
|
|
|
&:hover
|
|
border-bottom-color: var(--hl-color)
|
|
|
|
&.copy-true
|
|
user-select: all
|
|
-webkit-user-select: all
|
|
|
|
& > table,
|
|
& > pre
|
|
display: block !important
|
|
opacity: 0
|
|
|
|
.highlight-tools
|
|
display: flex
|
|
align-items: center
|
|
padding: 0 8px
|
|
min-height: 24px
|
|
height: 2.15em
|
|
background: var(--hltools-bg)
|
|
color: var(--hltools-color)
|
|
font-size: $code-font-size
|
|
overflow: hidden
|
|
|
|
& > *
|
|
padding: 5px
|
|
|
|
i
|
|
cursor: pointer
|
|
transition: all .3s
|
|
|
|
&:hover
|
|
color: $theme-color
|
|
|
|
&.closed
|
|
& ~ *
|
|
display: none
|
|
|
|
.expand
|
|
transform: rotate(-90deg)
|
|
|
|
if !$highlight_macstyle
|
|
& > .macStyle
|
|
padding: 0
|
|
|
|
.code-lang
|
|
flex: 1
|
|
text-transform: uppercase
|
|
font-weight: bold
|
|
font-size: 1.15em
|
|
user-select: none
|
|
-webkit-user-select: none
|
|
padding 2px
|
|
|
|
.copy-notice
|
|
padding-right: 2px
|
|
opacity: 0
|
|
transition: opacity .4s
|
|
|
|
if hexo-config('code_blocks.language')
|
|
.code-lang
|
|
flex: 1
|
|
else if (!$highlight_macstyle && hexo-config('code_blocks.shrink') != 'none')
|
|
& > div:nth-child(2)
|
|
flex: 1
|
|
else
|
|
.macStyle
|
|
flex: 1
|
|
|
|
.gutter
|
|
user-select: none
|
|
-webkit-user-select: none
|
|
|
|
.gist table
|
|
width: auto
|
|
|
|
td
|
|
border: none
|
|
|
|
if $highlight_macstyle
|
|
#article-container
|
|
figure.highlight
|
|
margin: 0 0 24px
|
|
border-radius: 7px
|
|
box-shadow: 0 5px 10px 0 $highlight-mac-border
|
|
-webkit-transform: translateZ(0)
|
|
|
|
.highlight-tools
|
|
.macStyle
|
|
display: flex
|
|
|
|
& > *
|
|
margin-right: 8px
|
|
width: 12px
|
|
height: 12px
|
|
border-radius: 50%
|
|
|
|
& > :last-child
|
|
margin-right: 5px
|
|
|
|
.mac-close
|
|
background: #fc625d
|
|
|
|
.mac-minimize
|
|
background: #fdbc40
|
|
|
|
.mac-maximize
|
|
background: #35cd4b
|
|
|
|
if hexo-config('code_blocks.shrink') != 'none'
|
|
& > :nth-child(2)
|
|
order: 8
|
|
|
|
&.closed
|
|
.expand
|
|
transform: rotate(90deg)
|
|
|
|
if hexo-config('code_blocks.height_limit')
|
|
#article-container
|
|
.code-expand-btn
|
|
position: absolute
|
|
bottom: 0
|
|
z-index: 10
|
|
width: 100%
|
|
background: var(--hlexpand-bg)
|
|
text-align: center
|
|
font-size: $code-font-size
|
|
cursor: pointer
|
|
|
|
i
|
|
padding: 6px 0
|
|
color: var(--hlnumber-color)
|
|
animation: code-expand-key 1.2s infinite
|
|
|
|
&.expand-done
|
|
& > i
|
|
transform: rotate(180deg)
|
|
|
|
& + table,
|
|
& + pre
|
|
margin-bottom: 1.8em
|
|
|
|
&:not(.expand-done)
|
|
& ~ table,
|
|
& ~ pre
|
|
overflow: hidden
|
|
height: unit(hexo-config('code_blocks.height_limit'), px)
|
|
|
|
@keyframes code-expand-key
|
|
0%
|
|
opacity: .6
|
|
|
|
50%
|
|
opacity: .1
|
|
|
|
100%
|
|
opacity: .6
|
|
|
|
if hexo-config('code_blocks.fullpage')
|
|
#article-container
|
|
figure.highlight.code-fullpage
|
|
position: fixed
|
|
top: 0
|
|
right: 0
|
|
bottom: 0
|
|
left: 0
|
|
z-index: 9999
|
|
margin: 0
|
|
border-radius: 0
|
|
animation: code-fullpage .3s
|
|
|
|
.code-expand-btn,
|
|
.expand
|
|
display: none
|
|
|
|
.highlight-tools
|
|
& ~ pre,
|
|
& ~ table
|
|
display: block
|
|
overflow: auto
|
|
height: calc(100vh - 2.15em)
|
|
margin-bottom: 0
|
|
|
|
@keyframes code-fullpage
|
|
0%,
|
|
100%
|
|
transform: translateX(0)
|
|
|
|
20%,
|
|
60%
|
|
transform: translateX(-5px)
|
|
|
|
40%,
|
|
80%
|
|
transform: translateX(5px) |