Post

팟캐스트 한 가지 포스트로 여러 파일 형식을 만들 수 있다면? Jekyll의 숨겨진 가능성

팟캐스트 한 가지 포스트로 여러 파일 형식을 만들 수 있다면? Jekyll의 숨겨진 가능성

🎙️ 오늘의 팟캐스트

한 가지 포스트로 여러 파일 형식을 만들 수 있다면? Jekyll의 숨겨진 가능성

 

📌 에피소드 주요 내용

  • Jekyll에서 하나의 포스트로 HTML, iCal, PDF 등 여러 파일 형식을 동시에 생성하는 방법
  • 커스텀 플러그인, GitHub Actions 자동화, JavaScript 동적 생성 등 세 가지 실제 해결책 소개
  • 상황에 맞게 여러 방법을 조합하는 것이 가장 실용적인 해결책

 

 

🎧 전체 대본

지혜: 안녕하세요, 여러분! 오늘은 특별한 분을 모셨어요. 은퇴 후 Jekyll로 블로그를 운영하고 계신 노교수님을 만났는데, 정말 흥미로운 기술 이야기를 들었거든요. 교수님, 안녕하세요!

박교수: 안녕하세요. 은퇴 후 예상치 못한 기술적 문제들을 마주했는데, 지혜님이 이렇게 관심 가져주니 고맙습니다. 제가 강의 자료들을 정리하려고 GitHub Pages와 Jekyll을 선택했거든요.

지혜: 그런데 어떤 문제가 생겼다고요?

박교수: 네, 매주 올리는 세미나 포스트를 보는 분들이 자신의 캘린더 앱에 추가하고 싶다는 요청이 들어왔습니다. 즉, iCal 형식의 파일이 필요했던 거죠. 처음엔 간단하게 생각했는데, 같은 내용을 여러 형식으로 유지보수하는 것은 실수를 초래하기 쉬웠습니다.

지혜: 아, 정말 그럴 것 같아요. 그럼 Jekyll로는 불가능한 건가요?

박교수: Jekyll은 기본적으로 하나의 마크다운 파일에서 한 가지 형식, 주로 HTML만 생성하도록 설계되었습니다. 저 같은 경우 HTML 페이지, iCal 파일, PDF 세 가지가 모두 필요했거든요. 이 문제를 해결하기 위해 여러 방법을 시도했습니다.

지혜: 정확히 어떤 방법들을 시도하셨어요?

박교수: 첫 번째는 커스텀 Jekyll 플러그인을 만드는 것이었습니다. Ruby로 플러그인을 작성해서 하나의 파일로부터 여러 형식을 생성했는데, 로컬에서는 잘 작동했지만 GitHub Pages에서는 보안 정책 때문에 차단되었습니다. 두 번째 방법은 GitHub Actions와 Python 스크립트를 활용해 seminar.yml이라는 데이터 파일을 중앙에서 관리하고 자동으로 여러 형식을 생성하는 것이었습니다.

지혜: 그건 잘 작동했어요?

박교수: 네, 그렇습니다. 그 파일만 업데이트하면 HTML과 iCal 파일이 모두 자동 생성됐거든요. 하지만 세 번째 방법이 가장 깔끔했습니다. JavaScript를 이용해 클라이언트 측에서 동적으로 파일을 생성하는 거죠. 방문자가 페이지의 버튼을 클릭하면 브라우저에서 즉시 iCal 파일을 만드는 겁니다.

지혜: 와, 정말 영리한 방법이네요!

박교수: 결국 1년 반의 시행착오를 거쳐 세 가지를 상황에 맞게 조합하는 것이 최적이라는 결론에 도달했습니다. 대부분의 콘텐츠는 표준 Jekyll로, 특정 콘텐츠만 동적 생성 방식을 적용하는 거죠. 혹시 비슷한 문제를 겪고 계신 분들이 있다면 도움이 될 것 같습니다.

지혜: 정말 유익한 이야기 감사합니다, 교수님! 더 자세한 내용은 블로그 원문에서 확인하실 수 있어요. 들어주셔서 감사합니다!

 

🔑 핵심 키워드

Jekyll, GitHub Pages, 다중 파일 형식 생성

 

🔗 관련 링크

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