최대 1 분 소요

jekyll 블로그에서 liquid 문법 예외처리

이번에 블로그 글을 포스팅 하던 도중 포스틴이 되지 않는 오류가 발생했다.

마침 구글 서치 콘솔을 위해 sitemap.xml 을 세팅하고 댓글을 추가하기 위해 config.yml 의 몇몇 설정사항을 수정했을 때라 이것들이 원인인 줄 알았다.

잘못 생각해도 한참 잘못 생각해서 몇 시간을 헤매다가 결국 원인을 찾아냈다.

이유는 설정을 바꾸고 포스팅 했던 블로그 글이 원인이었다.

해당 글에는 django에 대한 포스팅을 하기 위해 내부 코드블럭에서 탬플릿 태그를 사요했다.

그런데 jekyll 은 마크다운에서 코드블럭안에 쓰인 코드더라두 {{ ... }} 이나 {% ... %} 태그가 존재한다면 jekyll 의 리퀴드 태그라고 판단하여 해당 코드를 읽는다.

그래서 오류가 발생했던 것이다.

이를 해결하기 위해선 아주 간단히 리퀴드 태그가 아니라 아무 의미 없다. 라고 jekyll 에게 알려주면 된다.

코드 블럭안에 {% 로우 %} {% 엔드로우 %} 태그를 작성한 코드 시작과 끝 부분에 사용함으로서 해당 태그들에 대하여 리퀴드 문법이 아니라는 예외처리를 해줄 수 있다.

댓글남기기