Go to file
Matt Mascarenhas 6f751dd2b2 cinera.c: Add support for alternative URL prefixes
This is hardcoded for now, for ease of use, pending the config system

Also add Medium to the ProjectInfo array, to save users having to set
this with -m (which option remains available to them)

Reorganise the CSS, Images and JS files back to their location in the
same directory, since a default invocation of the program assumes they
are in the same directory as the Root Directory, to hopefully alleviate
some potential user frustration thanks to the requirement to set their
locations (with -c, -i and -j) before any usable output is produced
2017-12-07 21:07:36 +00:00
cinera cinera.c: Add support for alternative URL prefixes 2017-12-07 21:07:36 +00:00
hmml_to_youtube hmml_to_*.c: Multiple annotators/co-hosts/guests 2017-06-21 16:12:40 +01:00
hmmlconv hmmlconv.c: Convert to new [video] format 2017-06-23 15:47:48 +01:00
hmmlib add hmml_version variable 2017-11-06 21:07:40 +00:00
hmmlib-js hmmlib-js: multiple guests/annotators/co-hosts update 2017-06-20 21:15:26 +01:00
source_recorder added logging for switching emacs buffers 2017-06-11 18:02:28 +03:00
README.md Add -s flag, project info and CINERA_PROJECT tag 2017-12-07 01:15:13 +00:00

README.md

Fair warning: This is all under development and not yet packaged up for easy deployment

Cinera

Download, and prepare the parser

  1. git clone git@gitssh.handmade.network:Annotation-Pushers/Annotation-System.git
  2. cd Annotation-System/hmmlib
  3. make
  4. cp hmml.a hmmlib.h ../cinera/
  5. cd ../cinera/

Note: For each parser update, remember to make and copy it into place

Install Dependencies

  1. curl

Build

  1. $SHELL cinera.c

Run

Single Edition operation

cinera test.hmml

This simply generates an HTML file (and updates cinera_topics.css if needed) from test.hmml and outputs to out.html

Project Edition operation

cinera -p ProjectID

Setting the ProjectID with the -p flag triggers Project Edition. In this edition cinera monitors the Project Input Directory for new, edited and deleted .hmml files, and generates one table of contents / search page and a player page each for valid sets of annotations (or removes them, if needed).

By default all directories - input and output - are set to the current working directory. Typical operation will involve setting these flags:

-d Project Input Directory, the directory where the .hmml files reside
-r Root Directory, path shallower than or equal to the CSS, Images and JS
   directories
-u Root URL, corresponding to the Root Directory (optional if the Output
   Base Directory resides in the Root Directory)
-b Output Base Directory, location of the table of contents / search page
-t Player Template Location
-x Index Template Location

Integration

CINERA_MODE=INTEGRATE cinera test.hmml

This will integrate into template_player.html (configurable with -t) the player and related elements generated from test.hmml and output to out_integrated.html

Feel free to play with template_player.html to your heart's content. If you do anything invalid, cinera will tell you what's wrong

Templates

Valid tags:

  • <!-- __CINERA_PROJECT__ --> the project's full name
  • <!-- __CINERA_TITLE__ --> the day / episode name, intended to be used inside your own <title> element, but may be used wherever and as many times as you want on your page

Index Template

  • <!-- __CINERA_INCLUDES__ --> the necessary .css and .js files
  • <!-- __CINERA_INDEX__ --> the table of contents, and search functionality

Player Template

  • <!-- __CINERA_INCLUDES__ --> the necessary .css and .js files, and charset setting
  • <!-- __CINERA_MENUS__ --> _ the menu bar that typically appears above the player in my samples
  • <!-- __CINERA_PLAYER__ --> the player
  • <!-- __CINERA_SCRIPT__ --> the filter state objects and .js file, which must come after both the MENUS and PLAYER tags

Arguments

Usage: ./cinera [option(s)] filename(s)

Options:
    Paths:
        -r <root directory>
            Override default root directory (".")
        -u <root URL>
            Override default root URL ("")
        -b <base output directory>
            Override project's default base output directory (".")
        -c <CSS directory path>
            Override default CSS directory (""), relative to root
        -i <images directory path>
            Override default images directory (""), relative to root
        -j <JS directory path>
            Override default JS directory (""), relative to root
        -t <player template location>
            Override default player template location ("template_player.html"), relative to root
            and automatically enable integration
        -x <index template location>
            Override default index template location ("template_index.html"), relative to root
            and automatically enable integration

        -o <output location>
            Override default output player location for SINGLE_EDITION ("out.html")
        -d <project directory>
            Override default project directory (".")

    -f
        Force integration with an incomplete template
    -p <project ID>
        Set the project ID, corresponding to the "project" field in the HMML files
    -s <style>
        Set the style / theme, corresponding to a cinera__*.css file
        This is equal to the "project" field in the HMML files by default
    -l <n>
        Override default log level (0), where n is from 0 (terse) to 7 (verbose)
    -m <default medium>
        Override default default medium ("programming")
    -U <seconds>
        Override default update interval ("4")
    -v
        display version and exit
    -h
        display this help

Environment Variables

CINERA_MODE=INTEGRATE
	Enable integration