티스토리 뷰
언제 어디서 시작됐는지, 또 얼마나 지속될지 모르겠지만 정적 사이트 생성 방식의 CMS(?)가 대유행이다.
IFAIK, 이 방식의 원조는 21세기 초(!) 펄로 만들어진 blosxom이었고, 널리 쓰이기 시작한 것은 파이썬으로 만든 클론 pyblosxom이었다. 지금도 blosxom과 그 친구들은 여전히 명맥을 유지하고 있지만...
그로부터 십수년이 지나고... 유행은 돌고 돌아...
prologue
이 포스트에서 소개할 것은 Hexo라는 정적 사이트 생성도구다. 수많은 정적 사이트 생성도구들 중에서 굳이 Hexo를 선택한 이유는:
- nodejs로 만들어졌다. 내가 필요한게 있으면 뜯어고칠 수 있어야 하므로...
- github flavoured markdown, jade, less 를 지원한다. 기본 설정은 [ejs], [stylus]지만 설정이나 코딩없이 바꿀 수 있다.
- 외부 의존성이 적다. pygments 하나 때문에 파이썬 의존성을 갖는다거나... kramdown 하나 때문에 루비 의존성을 갖는다거나...
- 내 취향에 맞는... 단순한/이미지없는/반응형 테마가 있다.
- 소스 코드 문법 강조!
HEXO+: Your Autonomous Aerial Camera - Drone
출처: http://hexoplus.com 사진은 이 포스트와 아무~ 관계 없음.
hexo 설치
사이트 초기화
미리보기용 서버 실행
서버를 실행하는 동안 source
디렉토리에 파일을 변경/추가/삭제하면 알아서 처리된다. 말하자면 watch 하고 있다.
테마 변경
다른 정적사이트 생성기에서는 테마와 레이아웃의 개념이 오락가락하는 경우가 많은데... Hexo에서는 레이아웃은 테마의 일부다. 장단점이 있겠지만, 내 경우엔 백만배 편하다.
문서를 보고 직접 만들어도 되지만... I don't care~
기본 테마는 landscape인데, 공식 테마 목록에서 맘에 드는 테마를 골라보자.
내가 고른 테마는 light다.
(대부분의 테마들과 마찬가지로) 이 테마는 github 프로젝트이므로 git
명령으로 쉽게 설치할 수 있다.
설정 파일의 theme: landscape
를 theme: light
로 바꾸자:
이제 안쓰는 landscape 테마는 지우자:
설정 변경
앞에서 테마를 변경하면서 봤던 \_config.yml
이 유일한 설정 파일이며,
익숙한(익숙하지 않다면 곤란하다!) yaml 형식이다.
매우 훌륭한 문서가 있으니 뻔한 설명은 생략.
내가 변경한 건 이런 정도다:
새 포스트 만들기
- 주의: 제목에 한글을 써봐야 무시되므로 파일이름이 될 문자열을 입력하고, 뒤에 파일을 편집해서 제목을 입력하는게 속편하다.
포스트 글쓰기
다른 정적 사이트 생성도구들과 마찬가지로 Hexo도 YAML Front-matter라는 걸 사용한다. 개인적으로는 맘에 안드는 부분이지만, 대세를 따르는 걸로...
- 주의: Jekyll을 비롯한 대부분의 정적 사이트 생성도구들과 달리 파일 첫줄에는
---
를 쓰지 않는 다는 것. 제사한 설명은 문서을 참조하시길...
미리보기용 서버로 확인해보자:
이미지 첨부
이미지를 첨부하는 방법은 좀 더 실험을 해봐야 할 듯...
문서의 맨뒤에 나오는 post\_asset\_folder
를 true
로 설정하고 상대경로를 사용하는 방식은 문제가 좀 있고...
내가 사용한 쉬운 방법은:
본문에서는 이렇게 쓰면 된다:
글 지우기
자동으로 만들어준 hello-world.md 가 눈에 거슬린다 지워버리자!
글을 지우는 명령 따위는 없다. 그냥:
배포
앞에서 변경했던 \_config.yml
이 다시 등장한다.
hexo는 github, heroku 외에 다양한 배포 방식을 지원하는데, 자세한 내용은 문서를 참조하시길...
나는 github 으로 배포했다:
이제 배포하고, 결과를 확인해보자:
eplilogue
어차피, 정적 사이트 생성도구라는게... 거기서 거기~ 결국은 개인의 취향이 중요한 듯...
정적 사이트 생성도구 목록을 보고 입맞에 맞는 녀석을 찾아서 시험해 보시길...
지금 당장은 hexo로 이것 저것 시험해보고 있지만... 결론은 안알랴줌.
이 포스트의 꼬라지를 iolo.github.io와 비교해보삼~ 내가 고민안하게 생겼나~ Orz
may the CLI be with you...
'hacking' 카테고리의 다른 글
가내수공업 hyperlapse: ffmpeg으로 동영상 재생 속도 바꿔서 인코딩하기 (0) | 2014.09.27 |
---|---|
mysql에서 create_at/updated_at 컬럼 사용하기 (0) | 2014.09.26 |
맥에서 터미널만으로 docker 사용하기: macox + vmware/vmrun + docker (0) | 2014.07.30 |
docker getting started: 왕초보를 위한 docker 입문 (1) | 2014.07.26 |
도커 클라이언트(macosx)에서 도커 컨테이너(maybe ubuntu?)에 터미널로 접속하기 (0) | 2014.07.25 |
- Total
- Today
- Yesterday
- 영화
- 노래
- JavaScript
- web
- nodejs
- ***
- **
- 땅끝마을
- jQuery
- 자바스크립트
- Ajax
- maven
- DeveloperWorks
- Prototype
- ***1/2
- 여행
- 자전거
- webapp
- HTML5
- Eclipse
- 장필순
- 독후감
- Java
- 책
- docker
- 해남
- CSS
- ****
- Dojo
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |