Code Blocks Highlight 및 줄 수 표시
minimal-mistakes 테마 기준으로 작성된 글입니다.
Code Blocks 적용
포스팅 내용에서 코드 블럭을 적용하는 방법은 3개의 백틱 ``` 혹은 3개의 물결포 ~~~ 로 코드를 감싼다.
랜더링 되면 다음과 같이 표시된다.
Highlight 적용
코드 블록에 대한 구문 강조를 표시한다. 구문 강조를 추가하기 위해서는 코드블록의 백틱 우측에 언어를 지정한다.
랜더링 되면 다음과 같이 표시된다.
라인 줄 표시 - Code Blocks별 적용
Highlight에 라인의 번호를 표시한다. Highlight에 라인을 표시하기 위해서는 liquid 태그로 Highlight를 지정 하여야 한다.
linenos 옵션을 추가하여 라인을 표시한다.
1
2
3
4
5
{% highlight go linenos %}
func main() {
fmt.Println("Hello World!")
}
{% endhighlight %}
라인 줄 표시 - 전체 적용
모든 Code blocks에 라인줄 수 표시를 기본으로 설정한다.
수정 파일: _config.yml
1
2
3
4
5
6
markdown: kramdown
kramdown:
syntax_highlighter: rouge
syntax_highlighter_opts:
block:
line_numbers: true
라인 줄 복사 방지
Highlight에 표시된 라인은 기본적으로 Drag복사시 같이 선택 할 수 있으므로 라인줄 수는 선택되지 않도록 sass파일을 수정한다.
수정 파일: _sass/minimal-mistakes/_syntax.scss
35번째 줄 쯤에 있는 rouge-gutter에 다음을 추가한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* line numbers*/
&.gutter,
&.rouge-gutter {
padding-right: 1em;
width: 1em;
color: $base04;
border-right: 1px solid $base04;
text-align: right;
// 라인이 복사되지 않게 한다.
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
댓글남기기