Переход блога на hexo

Блог на Jekyll вести не получилось. Попробовал перейти на Hexo. Он попроще, но зато всё, что нужно, работает сразу.

Установка Hexo

  • Установил Hexo (глобально):

    1npm install -g hexo-cli
    
  • Инициализировал каталог блога:

    1hexo init .
    2npm install
    
  • Установил плагин для выкладывания на 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
    

No notes link to this note

Дмитрий Сергеевич Кулябов
Дмитрий Сергеевич Кулябов
Профессор кафедры теории вероятностей и кибербезопасности

Мои научные интересы включают физику, администрирование Unix и сетей.

Похожие