Post

팟캐스트 Jekyll 블로그에서 한 글을 여러 형식으로 출력하는 방법

팟캐스트 Jekyll 블로그에서 한 글을 여러 형식으로 출력하는 방법

🎙️ 오늘의 팟캐스트

Jekyll 블로그에서 한 글을 여러 형식으로 출력하는 방법

 

📌 에피소드 주요 내용

  • Jekyll에서 하나의 마크다운 파일로 HTML, iCal, PDF 등 여러 형식 동시 생성
  • 플러그인 활용, 조건부 렌더링, 빌드 후처리 스크립트 등 세 가지 실무 해결 방법
  • 정적 사이트 생성기의 한계를 창의적으로 극복하는 것의 중요성

 

 

🎧 전체 대본

지혜: 안녕하세요, 팟캐스트 ‘기술 이야기’입니다! 오늘은 노교수님과 함께 Jekyll 블로그의 흥미로운 활용법에 대해 얘기해볼 텐데요. 교수님, 대학원 홈페이지를 구축하면서 정말 독특한 문제를 마주치셨다고요?

박교수: 그렇소. 퇴임 후 모교의 학술 네트워크 프로젝트에 참여하게 되었는데, 세미나 일정을 공지하는 과정에서 뜻밖의 과제가 생겼네. 학생들이 HTML 페이지뿐만 아니라 스마트폰 달력 앱에 자동으로 입력할 수 있는 iCal 파일을 요청했던 것이오. Jekyll로 블로그를 운영해본 경험이 있었기에, 문제의 본질을 빠르게 파악할 수 있었소.

지혜: 아, 그래서 하나의 파일로 여러 형식을 만들어야 하는 상황이군요! 그런데 Jekyll이 그걸 바로 할 수 없다고 하셨어요?

박교수: 정확히 그렇지. Jekyll의 기본 구조상 하나의 마크다운 파일은 보통 하나의 출력 형식만 생성하게 되어 있네. 레이아웃을 지정하면 그에 맞는 HTML 파일 하나만 나온다는 뜻이오. 이 문제는 GitHub의 Jekyll 공식 저장소에서도 오래전부터 제기되어 온 것이었소.

지혜: 그럼 교수님은 어떻게 해결하셨어요? 정말 궁금한데요!

박교수: 여러 방법을 시도했는데, 세 가지가 가장 실용적이었네. 첫째는 플러그인을 활용하는 방법이오. jekyll-multiple-outputs 같은 커뮤니티 플러그인을 쓰거나 직접 Ruby 플러그인을 만들어서, 프론트매터에 output_format: [html, ical] 같이 명시하면 자동으로 여러 형식이 생성되지. 둘째는 레이아웃 내부에서 조건부 렌더링을 하는 것이오. 추가 플러그인 없이도 가능하다는 장점이 있네.

지혜: 그리고 세 번째 방법도 있으셨다고요?

박교수: 그렇지. 가장 실용적인 것은 주 콘텐츠는 HTML로 유지하되, 빌드 후 처리 스크립트로 추가 형식을 생성하는 방식이오. Python이나 Node.js 스크립트로 생성된 HTML을 파싱해서 iCal 형식으로 변환하는 식이지. Jekyll이 종료된 후 실행되는 훅을 이용하면 완전히 자동화할 수 있네. 실제로 이 방법들을 적용한 후 학생들의 반응은 매우 긍정적이었소. 한 번의 포스팅으로 웹페이지와 달력 앱이 동시에 업데이트되니 유지보수 부담도 크게 줄었네.

지혜: 와, 정말 효율적이네요! 정적 사이트 생성기가 이렇게 유연할 수 있다니요!

박교수: 맞네. 이 경험을 통해 배운 가장 중요한 교훈은 도구의 한계를 미리 인식하고, 필요에 따라 창의적으로 극복하는 것의 중요성이었네. Jekyll은 완벽하지 않을지 몰라도, 약간의 노력으로 복잡한 요구사항을 충족시킬 수 있는 유연성이 있다네.

지혜: 정말 유익한 이야기 고마워요, 교수님! 더 자세한 내용과 구체적인 코드 예시는 블로그 원문에서 확인하실 수 있으니까, 관심 있으신 분들은 꼭 들어가봐 주세요. 함께해주셔서 고마웠습니다!

 

🔑 핵심 키워드

Jekyll, 다중출력형식, 플러그인, iCal, 자동화

 

🔗 관련 링크

This post is licensed under CC BY 4.0 by the author.