기본 콘텐츠로 건너뛰기

Featured Post

영어회화 빨리 느는 방법 3가지

블로그 포스트에 highlight 소스코드로 글 이쁘게 올리기

Highlight source code in Blogger and posting


 블로그 글에서 소스코드에 대해 알록달록하게 표시하려면 HTML편집에서 사용할 하이라이트 관련 소스를 입력하고 글을 작성할때 해당 하이라이트 코드를 입력하면 된다.


 블로그에 HTML이나 코드 관련된 내용을 넣을 때 보기 편하게 하기 위해 사용하는 여러 가지 툴들이 있다. Syntax Highlighter, SHJS, code-prettify, Rainbow, Prism, highlight.js 등이 있는데 Syntax Highlighter와 SHJS는 언어별로 별도의 파일을 로딩해야 하는 단점이 있고, code-prettify는 Blogger에서 사용하기에 잘 맞지 않았고, Rainbow는 너무 단조로운 느낌이 있었다. Prisme은 CDN 호스팅을 제공하지 않아 구글 블로그 사용자에게는 불편했기에 최종적으로 선택한 툴은 highlight.js였다. highlight.js는 셋팅 방법이 간단하고 다양한 언어와 설정 파일 형식을 지원하며 다양한 스타일을 제공하지만 코드 줄 번호를 지원하지 않는다. 본 저자는 줄번호에 대한 미련은 없기에 선택에 망설임은 없었다.




 블로그에 highlight.js를 설정하고 사용하는 방법은 아래와 같다.

1. Blogger에 템플릿에 highlight.js 셋팅하기
1.1. 블로거 관리자 로그인 ⇒ 템플릿(Theme) ⇒ HTML 편집으로 들어간다.


1.2. 그림처럼 아래 3줄의 코드를 <head> 끝부분에 입력한다.(highlight.js 사이트 설치 문서에 link 태그를 닫는 부분을 빠져있는데 이 부분을 주의해야 한다. link 태그를 닫지 않으면 Blogger 템플릿 저장할 때 에러가 출력되므로 </link>로 닫아준다.)
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css"></link>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>


1.3. 코드에 하이라이트 되는 부분을 사용자 스타일에 맞게 변경할 수 있다. (이 사이트 "Styles"항목에 목록을 선택하면 미리 보기 화면을 볼 수 있으며, 마음에 드는 스타일 이름을 해당 줄의 "default.min.css"에 default"를 지우고 입력함. 예를 들어 Agate 스타일로 하고 싶으면 agate.min.css로 바꿈.)

1.4. 저장 후 코드가 변경되었는지 확인한다.



2. highlight.js를 게시물에 적용하기
2.1. Post를 작성할 때 HTML 모드 상태에서 코드 종류에 맞게 pre와 code 태그로 아래와 같이 입력한다. highlight.js가 자동으로 언어를 잘 인식하지만 그렇지 않은 경우도 있기 때문에 class를 입력해준다.
<pre><code class="java">
public static void main(String[] args)
{
System.out.printf( "Hello world");
}</code></pre>

2.2. 저장하고 미리 보기로 확인한다. 아래와 보기 좋게 나온다.
public static void printOne() {
System.out.println("Hello World");
}


※참고※
▶ pre/code 태그 안에 아래와 같은 html 태그나 부등호 같은 기호가 들어가면 잘못 인식하기 때문에 이를 escape해 줘야 한다.
<pre><code class="html"><h2 style="color: red;">I am Red</h2>
<h2 style="color: blue;">I am Blue</h2></code></pre>
 Accessify라는 사이트에서 간편하게 바꿀 수 있으니 유용하게 활용할 수 있다. 사용할 코드를 위 서비스를 이용하여 escape한 뒤에 그것을 pre/code 태그 안에 넣어주면 작업은 손쉽게 끝난다.
<h2 style="color: red;">I am Red</h2>
<h2 style="color: blue;">I am Blue</h2>

▶ highlight의 폰트나 크기는 Blogger "템플릿" -> "맞춤 설정" -> "고급" -> "CSS 추가"로 가서 아래의 내용을 수정해서 추가할 수 있다.
pre {
margin: 0px 0px;
font-size: 80%;
line-height: 1.3em;
}


댓글

댓글 쓰기

이 블로그의 인기 게시물

스티브 잡스 명언 영어 세상에서 가장 감명 깊은 어록 25가지

"Sometimes Life is going to hit you in the head with a brick. Don't lose faith." "때때로 인생은 당신을 심하게 내두를 것이다. 스스로의 믿음을 잃지 마라."   대부분의 사람들은 적당히 즐기고, 적당히 게으르고, 어렵고 힘든 것은 피하고 싶어 한다. 그들이 무지함과 가난에서 벗어나지 못한 것이 그 이유이다. 반대로 큰 성공을 이룬 후에도 스티브잡스는 "내일 죽는다면"이라는 생각으로 극단적 이리만큼 스스로를 동기부여했다. 무엇인가 이룰 수 있는 사람은 그럴만한 자세가 있다.   스티브 잡스가 남긴 어록 중에 사람들이 가장 감명받은 25가지를 선별해 한글로 번역했다. 스티브 잡스 명언 영어  1  "The people who are crazy enough to think they can change the world are the ones who do." 세상을 바꿀수 있다고 생각하는 제대로 정신나간 사람들이 세상을 변화시킨다.  2  "I've always been attracted to the more revolutionary changes. I don't know why. Because they're harder. They're much more stressful emotionally. And you usually go through a period where everybody tells you that you’ve completely failed." 나는 항상 혁신적인 변화를 쫓아왔다. 그건 더 어려웠기 때문인지 모른다. 혁신은 감정적으로 굉장히 압박이 심하다. 그리고 모든사람들이 당신에게 완벽히 실패했다고 이야기 하는 시기를 이겨내야 한다.  3  "It's really hard to design products b

영어 8품사의 문장 구조를 예제로 쉽게 이해하자

1. 영어 8품사 정리  영어 8품사(The 8 parts of speech)란 명사, 대명사, 동사, 형용사, 부사, 전치사, 접속사, 감탄사 를 말하며, 동일한 의미나 기능을 하는 낱말들을 8가지로 분류한 것이다. ① 명사(NOUN) - 사물의 이름으로 사람, 장소, 생물/무생물, 추상적 개념 등 생각해 낼 수 있는 모든 것의 이름이다. 영어에서 명사는 셀 수 있는 명사와 셀 수 없는 명사로 나뉘는데, 셀 수 있는 명사는 단수, 복수에 따라 낱말이 달라지는데, 대게 단어 뒤에 "(e)s"가 붙는다. - 셀 수 있는 명사 ex) book → books, pen → pens, dog → dogs, table → tables, party → parties, woman → women ... - 셀 수 없는 명사 ex) coffee, computer, love, water, family, money, information ... ② 대명사(PRONOUN) - 문장에서 명사 대신 사용한다. 대화나 글에서 사람, 사물 등을 '그녀', '저것'등으로 대신 쓰는 것을 대명사라고 한다. ex) I, you, he, she, it, that, none ... ③ 동사(VERB) - 사람, 사물의 동작이나 상태를 나타내는 품사로 문장에서 필수로 들어간다. 현재시제 3인칭 단수면 동사 뒤에 대게 '(e)s'가 붙는데, 3인칭 단수란 I, You, We를 제외한 다른 인물이나 사물이다. 복수가 아닌 단수를 말하고 현재시제는 미래나 과거가 아닌 현재를 말한다. 또한, 표현하려는 문장이 과거면 동사 뒤에 대게 (e)d가 붙는다. - 현재시제 ex) agree, stay, find, ask, eat, access ... - 3인칭 단수 ex) agrees, stays, finds, asks, eats, accesses ... - 과거시제 ex) agreed, stayed, foun

가산명사 불가산명사를 예제로 쉽게 이해하자

What are the singular and plural noun?  개수를 셀 수 있는 사물을 가산명사라고 하고, 개수를 셀 수 없는 사물을 불가산명사라고 한다. 영어에서는 셀 수 있고 없고에 따라 분류하며, 명사와 동사의 형태가 달라지고 상황에 따라서 한정사도 다르게 사용해야 한다. 한국인, 일본인 등을 포함한 한자문화권에서는 이 부분을 따지지 않는 데 영어는 이걸 굉장히 철저하게 따지며 셀 수 있나 없나에 따라 문법적인 요소가 굉장히 갈리기 때문에 영어를 배울 때 상당히 난항을 겪는 부분이다. TOEIC 등 영어 시험에서도 단골 파트 영역을 차지하고 있다. 예를 들어, 'water'는 셀 수 없지만 물병에 담겨 있는 'a bottle of water'는 셀 수 있는 가산명사이다. 하지만 실제 영어 회화에서는 Native Speaker가 편의상 '2 water'라고 쓰는 경우도 있다. 이를 틀렸다고 말할 수는 없지만 영어 학습지나 시험과 같은 공식적인 영어에서는 삼가야 한다. 아래 링크를 클릭하면 가산명사와 불가산명사에 대한 더 많은 단어를 다뤄서 참고하기 좋다. https://koonhous.tistory.com/entry/countable-and-uncountable-noun 1 가산명사(셀 수 있는 명사)  1개, 2개, 3개 이런 식으로 셀 수 있다는 걸 말하는데 한글이나 영어나 셀 수 있는 종류에는 많은 차이가 없기에 큰 문제가 되지는 않는다. 가산명사가 훨씬 더 많아서 불가산명사 빼고 다 가산명사라고 생각해도 무방하다. 영어권 원어민 강사들은 사고방식으로 이를 간단하게 구분하는 방법은 대상을 반으로 잘라보면 된다. 그다음 대상이 가진 기능이나 모양이 망가진다면 가산 명사이며, 그 기능이나 모양이 망가지지 않거나 나누기 애매한 것이라면 불가산 명사라고 보면 된다. 가산명사에만 단수·복수의 구분이 있고 단수일 때는 반드시 부정관사(a/an)와 같은 한정사(the, my, this)가 필요