Как создать сайт Jekyll?

Подскажите, пожалуйста, как создать базовый сайт на Jekyll. Меня особенно смущает файл _config.yml и передний план YAML.


person Deepak Lamichhane    schedule 28.07.2011    source источник
comment
Я не понимаю, что вы спрашиваете. YAML — это просто средство кодирования простых структур данных в текстовом файле. Jekyll использует его для настройки; Что ты пытаешься сделать?   -  person Jeremy Roman    schedule 28.07.2011


Ответы (1)


Я не совсем понимаю формулировки ваших вопросов, но я попробую. Я предполагаю, что вы имеете в виду одну из двух вещей. Либо файл конфигурации, либо передний план YAML. Какой бы ни был, см. ниже базовое руководство по запуску и запуску сайта jekyll. Это показывает использование обоих в контексте.

В пустом каталоге создайте следующее:

  1. Новый каталог с именем _layouts.

  2. Новый каталог с именем _posts.

  3. Новый каталог с именем _site.

  4. Файл с именем index.md со следующим содержимым:

    ---
    layout: default
    ---
    
    # My Jekyll site
    
    Welcome to my Jekyll site
    

    (Примечание: «макет: по умолчанию», окруженный двумя линиями тире, представляет собой начальную часть YAML. Указание «по умолчанию» означает, что jekyll будет использовать файл «default.html» в каталоге _layouts, указанном ниже.)

  5. Файл с именем _config.yml со следующим содержимым по умолчанию:

    safe:        false
    auto:        false
    server:      false
    server_port: 4000
    base-url:    /
    
    source:      .
    destination: ./_site
    plugins:     ./_plugins
    
    future:      true
    lsi:         false
    pygments:    false
    markdown:    maruku
    permalink:   date
    
    maruku:
      use_tex:    false
      use_divs:   false
      png_engine: blahtex
      png_dir:    images/latex
      png_url:    /images/latex
    
    rdiscount:
      extensions: []
    
    kramdown:
      auto_ids: true,
      footnote_nr: 1
      entity_output: as_char
      toc_levels: 1..6
      use_coderay: false
    
      coderay:
        coderay_wrap: div
        coderay_line_numbers: inline
        coderay_line_numbers_start: 1
        coderay_tab_width: 4
        coderay_bold_every: 10
        coderay_css: style
    

Есть еще два файла, которые вы хотите создать для примера,

  1. Внутри каталога «_layouts» файл с именем default.html со следующим:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html lang="en">
    <head>
        <meta charset="utf-8">
        <title>My Jekyll Site</title>
    </head>
    <body>
    
        <!-- This will be replaced with your content -->
        {{ content }}
    
    
    </body>
    </html>
    
  2. Внутри каталога «_posts» файл с именем 2011-07-29-my-first-jekyll-post.md со следующим:

    ---
    layout: default
    ---
    
    # My First Jekyll Post
    
    The quick brown fox jumps over the lazy dog. 
    

    (Примечание. Опять же, «макет: по умолчанию», окруженный двумя линиями тире, представляет собой переднюю часть YAML и указывает, что для шаблона будет использоваться «default.html».)


На этом этапе структура каталогов должна выглядеть так:

./_config.yml
./_layouts
./_posts
./_posts/2011-07-29-my-first-jekyll-post.md
./_site
./index.md

После того, как все это настроено, из командной строки перейдите в каталог, в котором находится файл index.md, и запустите jekyll. Вы должны увидеть быстрый отчет, например:

Configuration from /some-path/_config.yml
Building site: . -> ./_site
Successfully generated site: . -> ./_site

Будет создано два выходных файла:

  • ./_сайт/index.html
  • ./_site/2011/07/29/my-first-jekyll-post.html

Эти файлы соответствуют двум файлам уценки после того, как они были преобразованы в HTML и помещены в оболочку default.html, заменив строку «{{ content }}».

Это должно помочь вам начать с основ.

person Alan W. Smith    schedule 30.07.2011
comment
Имя config.yml должно начинаться с символа подчеркивания: _config.yml. Для тестирования сервера вы можете использовать jekyll --server - person felixgaal; 12.07.2012
comment
Спасибо, @FèlixGalindoAllué - я исправил опечатку, где пропустил подчеркивание. - person Alan W. Smith; 12.07.2012
comment
Ты звезда. - person zkilnbqi; 09.09.2016