Переход блога на hexo
Блог на Jekyll вести не получилось. Попробовал перейти на Hexo. Он попроще, но зато всё, что нужно, работает сразу.
Установка Hexo
Установил Hexo (глобально):
1npm install -g hexo-cli
Инициализировал каталог блога:
Установил плагин для выкладывания на git (это делается в каталоге блога):
1npm install hexo-deployer-git --save
Установил плагин для генерации RSS (такая опция есть в теме):
1npm install hexo-generator-feed --save
Задал конфигурацию
_config.yml
:
1# Site
2title: В борьбе обретёшь ты право своё
3subtitle: Делай, что должен, и будь, что будет
4description:
5keywords:
6author: Дмитрий Кулябов
7language: ru
8timezone:
9
10# URL
11# If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
12url: https://yamadharma.bitbucket.io/
13root: /
14permalink: :lang/:year/:month/:day/:title/
15permalink_defaults:
16 lang: ru
17
18# Directory
19source_dir: source
20public_dir: public
21tag_dir: tags
22archive_dir: archives
23category_dir: categories
24code_dir: downloads/code
25i18n_dir: :lang
26skip_render:
27
28# Writing
29new_post_name: :lang/:year-:month-:day-:title.md # File name of new posts
30default_layout: post
31titlecase: false # Transform title into titlecase
32external_link: true # Open external links in new tab
33filename_case: 0
34render_drafts: false
35post_asset_folder: false
36relative_link: false
37future: true
38highlight:
39 enable: true
40 line_number: true
41 auto_detect: false
42 tab_replace:
43
44# Home page setting
45# path: Root path for your blogs index page. (default = '')
46# per_page: Posts displayed per page. (0 = disable pagination)
47# order_by: Posts order. (Order by date descending by default)
48index_generator:
49 path: ''
50 per_page: 10
51 order_by: -date
52
53# Category & Tag
54default_category: uncategorized
55category_map:
56tag_map:
57
58# Date / Time format
59# Hexo uses Moment.js to parse and display date
60# You can customize the date format as defined in
61# http://momentjs.com/docs/#/displaying/format/
62date_format: YYYY-MM-DD
63time_format: HH:mm:ss
64
65# Pagination
66# Set per_page to 0 to disable pagination
67per_page: 10
68pagination_dir: page
69
70# Extensions
71# Plugins: https://hexo.io/plugins/
72# Themes: https://hexo.io/themes/
73theme: landscape
74
75# Deployment
76# Docs: https://hexo.io/docs/deployment.html
77deploy:
78 type: git
79 repo: git@bitbucket.org:yamadharma/yamadharma.bitbucket.org.git
80 branch: master
81
82# Feed
83# https://github.com/hexojs/hexo-generator-feed
84feed:
85 type: atom
86 path: atom.xml
87 limit: 20
88 hub:
89 content:
90 content_limit: 600
91 content_limit_delim: ' '
Таким образом, без настройки, получена работающая конфигурация.
Порядок работы следующий
- Создаём новый файл для поста:
1hexo new <title>
- Радактируем пост.
- Генерим страницы:или
1hexo generate
1hexo g
- Выкладываем страницы на сайт:или
1hexo deploy
1hexo d
- Очищаем каталог:
1hexo clean