자주 쓰는 Hexo 명령어 및 기능 정리

공식 문서에 명령어가 잘 정리되어 있지만 오래 블로그를 안 하다가 다시 할 때 마다 까먹어서 찾아보게 되어 내가 자주 쓰는 명령어들을 정리해보았다.

Scaffolds & Source

  • Hexo를 초기화한 폴더 안에 글을 쓸 때 파일이 생기는 폴더는 source이고, 그 source가 생성되는 템플릿을 담아두는 폴더가 scaffolds이다.
  • 현재 내 scaffolds 폴더 안에는 draft.md, page.md, post.md 세 개의 파일이 있다.
  • 대부분 나는 글을 바로 post로 쓰지 않고 draft로 먼저 생성한 후 post로 옮기기 때문에 draft.md파일에 다음과 같이 템플릿을 담아 뒀다.
1
2
3
4
5
6
7
8
9
10
---
title: {{ title }}
date : {{ date }}
banner :
url : /img/banners/default_banner.jpg
width : 1280
height : 720
categories :
tags:
---
  • title은 처음에 터미널에서 draft를 생성할 때 입력하는 제목이지만 배포되는 글의 제목으로 들어가기 때문에 생성된 파일에서 변경해준다.
  • 단, 그 draft를 저장하는 파일명은 url이 되기 때문에 한국어로 작성하면 오류가 날 수도 있다.
  • 날짜는 저렇게 해두면 자동으로 입력이 된다. 수정할 수 있다.
  • banner는 내 경우 블로그 글마다 프리뷰 이미지가 들어가게 해 둔 테마여서 설정해 주었는데, 매번 배너를 만들기 귀찮아서 우선적으로 디폴트 이미지를 넣어 주고 나중에 수정을 해 주고 있다.
  • categoriestags는 우선 비워두고, 글을 작성할 때 아래와 같이 작성해주면 된다 .
1
2
3
4
5
categories:
- Hexo
tags:
- Hexo
- Blog
  • categories에 두 개를 작성하게 되면 하위 그룹으로 구분되어 카테고리 폴더가 생성된다. 예를 들어 다음 코드와 이 블로그의 카테고리 탭을 살펴보면 이해할 수 있다.
1
2
3
categories:
- Programming
- Fortran

draftpost 생성하기

  • 이제 scaffolds에 원하는 draft들을 생성하고 글을 쓰려고 한다면, 터미널에서 다음과 같이 입력한다.

    1
    hexo new [layout] <title>
  • [layout] 에는 draftpost를 쓰면 된다.

  • <title>에는 원하는 영문 제목을 쓰면 된다. (이 포스트의 url이 되는 부분)
  • 예를 들어
    1
    hexo new draft hexo-commands

라고 작성한다면, hexo-commands.md라는 파일이 scaffolds에 생성해둔 템플릿대로 source폴더의 _drafts폴더 안에 새롭게 생성된다.

  • 포스트로 바로 발행할 글을 작성하려고 한다면
    1
    hexo new post hexo-commands

라고 입력하면source폴더의 _posts안에 생성된다.

-

로컬에서 확인하기

  • 다음 명령어로 로컬에서 현재 블로그가 어떤 모습으로 보일지 볼 수 있다.
    1
    hexo server

아마 터미널에 나오겠지만 기본적으로 http://localhost:4000/에 들어가서 페이지를 볼 수 있다. Ctrl+C로 끌 수 있다.

  • draft를 포함한 상태를 확인하고 싶다면 다음과 같이 입력하면 된다.
    1
    hexo server --draft

draft에 있는 글을 post로 발행하기

  • 개발자 스럽지는 않지만 직관적으로 할 수 있는 방법은 드래그 앤 드롭으로 _drafts에 있는 .md파일을 _posts로 옮겨주면 된다.
  • 아니면 다음 명령어를 작성해도 된다.

    1
    hexo publish [draft] <title>
  • 예를 들어 hexo-commands.md라는 글을 _draft에서 _posts로 옮기고 싶으면 다음과 같이 입력하면 된다.

    1
    hexo publish draft hexo-commands

글 배포하기

  • 정적 파일을 생성한 후 deploy하기 위해 터미널에 다음 두 명령어를 입력한다
    1
    hexo generate
1
hexo deploy
  • 저 두 가지는 한번에 입력하거나 다음과 같이 줄여서 입력할 수 있다.
1
hexo generate deploy
1
hexo generate -d
1
hexo deploy -g
  • 가끔 수정한게 반영이 바로바로 안 되기도 하는데 캐시를 지우고 다시 해도 된다 .

    1
    hexo clean
  • 이렇게 해도 바로 깃헙 페이지에 반영이 안 될수도 있는데 그럴 때는 몇 분 기다리면 나온다.

  • 더 자세한 내용은 공식 문서를 참고하자! https://hexo.io/ko/docs/commands.html