/pykili.github.io

Сайт курса «Программирование и лингвистические данные»

Primary LanguageJupyter NotebookMIT LicenseMIT

Сайт курса "Программирование и лингвистические данные"

😎🤓💪

Как работает этот сайт?

Этот сайт генерируется с помощью GitHub Pages, который использует генератор статических файлов Jekyll.

Как только вы делаете коммит в ветку master изменения автоматически попадают на сайт pykili.github.io

Что означают папки в репозитории?

├── _data                - данные в формате yaml
│   ├── links.yml        - разные ссылки, которые потом встраиваются в сайт
│   ├── prog-lessons.yml - основной файл для управления конспектами
│   └── staff.yml        - данные о команде курса
├── _docs                - в этой папке хранятся все конспекты в формате markdown
│   ├── lingdata         - для лингвистических данных (сейчас скрыто)
│   └── prog             - для программирования
├── _includes            - системная папка с подключаемыми кусками html
├── _layouts             - системная папка, в которой хранятся шаблоны страниц сайта
├── _sass                - системная папка с файлами оформления
├── assets               - системна папка с разными сопроводительными файлами (стили, скрипты, шрифты)
├── content              - соппроводительные материалы курса (слайды, скрипты, заметки)
│   ├── notes
│   ├── slides
└── img                  - изображения для сайта
    ├── prog             - картинки для конспектов по программированию
    └── staff            - фотографии команды курса

Как обновить конспект?

В файле _data/prog-lessons.yml хранится список конспектов и настройки к каждому.

Пример настроке для 2 семинара:

- name: Условия и операторы сравнения
  link: /prog/02-if-and-comparison-ops
  when:
    group1: 14 окт 2019
    group2: 8 окт 2019
    group3: 11 окт 2019
    group4: 15 окт 2019
  hw:
    group1:
      classroom: https://classroom.github.com/a/AxABacqh
      deadline: 20 окт 2019 23:59
    group2:
      classroom: https://classroom.github.com/a/aAHD61KE
      deadline: 14 окт 2019 23:55
    group3:
      classroom: https://classroom.github.com/a/thZBW1nz
      deadline: 17 окт 2019 23:55
    group4:
      classroom:
      deadline:
  show: true
  staff:
    group1:
    group2: '[слайды](/content/slides/groups/2/seminar_2.pdf)'
    group3: '[слайды](/content/slides/groups/3/seminar_2.pdf)'
    group4:

Чтобы конспект появился в списке конспектов на главной странице и стал доступен, нужно сделать свойство show равным true. Если оно отсутствует или равно false, конспект не будет виден.

В этом файле можно задать ссылку на classroom и дедлайн для каждого семинара. Писать эти данные отдельное в markdown конспекта не нужно.

Свойство staff отвечает за место под датой семинара в таблице с расписанием. Это свойство поддерживает markdown, что удобно для публикации там любой информации (ссылок на слайды).

Сами конспекты лежат в папке _docs/prog.

Для вставки кода используйте markdown вместо картинок.

Куда класть картинки?

Все картинки проекта лежат в папке img. Кладите их туда и пытайтесь создать какую-то структуру. Например, все картинки для конспекта 2 семинара лежат в папке img/prog/02.

После добавления картинки в нужную папку можно использовать её в конспектах. Пусть стоит указывать без домена.

Например, так:

![пояснительный текст](/img/path/to/image.jpg)

Куда класть презентации и другие файлы?

Все файлы хранятся в папке content.

Слайды к семинарам лежат в папке content/slides.

При использовании в markdown путь к файлу стоит указывать без домена.

Например, так:

![второй семинар 2 группы](/content/slides/groups/2/seminar_2.pdf)

Как запустить сайта на своей машине?

Перед тем как запушить свои изменения на GitHub, неплохо бы узнать как они будут выглядеть.

jekyllrb.com/docs/quickstart - простая инструкции по запуску Jekyll. После того, как установите его к себе на компьютер нужно выполнить bundle exec jekyll serve в папке проекта и перейти на http://localhost:4000