From: Guillaume Pellerin Date: Thu, 16 Mar 2017 12:41:13 +0000 (+0100) Subject: Add remark slide sources X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=d016c576003bed40045cdbbcff8b9f6b2edf1507;p=mezzo.git Add remark slide sources --- diff --git a/doc/project/wp3-m3/.csscomb.json b/doc/project/wp3-m3/.csscomb.json new file mode 100644 index 00000000..5bed90e4 --- /dev/null +++ b/doc/project/wp3-m3/.csscomb.json @@ -0,0 +1,317 @@ +{ + "always-semicolon": true, + "block-indent": 2, + "color-case": "lower", + "color-shorthand": true, + "element-case": "lower", + "eof-newline": true, + "leading-zero": false, + "quotes": "double", + "remove-empty-rulesets": true, + "space-after-colon": " ", + "space-after-combinator": " ", + "space-after-opening-brace": "\n", + "space-after-selector-delimiter": "\n", + "space-before-closing-brace": "\n", + "space-before-colon": "", + "space-before-combinator": " ", + "space-before-opening-brace": " ", + "space-before-selector-delimiter": "", + "space-between-declarations": "\n", + "strip-spaces": true, + "tab-size": 2, + "unitless-zero": true, + "vendor-prefix-align": true, + "sort-order": [ + "position", + "z-index", + "top", + "right", + "bottom", + "left", + + "display", + "visibility", + "float", + "clear", + "overflow", + "overflow-x", + "overflow-y", + "-ms-overflow-x", + "-ms-overflow-y", + "clip", + "zoom", + "flex-direction", + "flex-order", + "flex-pack", + "flex-align", + + "-webkit-box-sizing", + "-moz-box-sizing", + "box-sizing", + "width", + "min-width", + "max-width", + "height", + "min-height", + "max-height", + "margin", + "margin-top", + "margin-right", + "margin-bottom", + "margin-left", + "padding", + "padding-top", + "padding-right", + "padding-bottom", + "padding-left", + + "font", + "font-family", + "font-size", + "font-weight", + "font-style", + "font-variant", + "font-size-adjust", + "font-stretch", + "font-effect", + "font-emphasize", + "font-emphasize-position", + "font-emphasize-style", + "font-smooth", + "line-height", + + "table-layout", + "empty-cells", + "caption-side", + "border-spacing", + "border-collapse", + "list-style", + "list-style-position", + "list-style-type", + "list-style-image", + + "opacity", + "filter:progid:DXImageTransform.Microsoft.Alpha(Opacity", + "-ms-filter:\\'progid:DXImageTransform.Microsoft.Alpha", + "-ms-interpolation-mode", + "color", + "border", + "border-width", + "border-style", + "border-color", + "border-top", + "border-top-width", + "border-top-style", + "border-top-color", + "border-right", + "border-right-width", + "border-right-style", + "border-right-color", + "border-bottom", + "border-bottom-width", + "border-bottom-style", + "border-bottom-color", + "border-left", + "border-left-width", + "border-left-style", + "border-left-color", + "-webkit-border-radius", + "-moz-border-radius", + "border-radius", + "-webkit-border-top-left-radius", + "-moz-border-radius-topleft", + "border-top-left-radius", + "-webkit-border-top-right-radius", + "-moz-border-radius-topright", + "border-top-right-radius", + "-webkit-border-bottom-right-radius", + "-moz-border-radius-bottomright", + "border-bottom-right-radius", + "-webkit-border-bottom-left-radius", + "-moz-border-radius-bottomleft", + "border-bottom-left-radius", + "-webkit-border-image", + "-moz-border-image", + "-o-border-image", + "border-image", + "-webkit-border-image-source", + "-moz-border-image-source", + "-o-border-image-source", + "border-image-source", + "-webkit-border-image-slice", + "-moz-border-image-slice", + "-o-border-image-slice", + "border-image-slice", + "-webkit-border-image-width", + "-moz-border-image-width", + "-o-border-image-width", + "border-image-width", + "-webkit-border-image-outset", + "-moz-border-image-outset", + "-o-border-image-outset", + "border-image-outset", + "-webkit-border-image-repeat", + "-moz-border-image-repeat", + "-o-border-image-repeat", + "border-image-repeat", + "outline", + "outline-width", + "outline-style", + "outline-color", + "outline-offset", + "background", + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader", + "background-color", + "background-image", + "background-repeat", + "background-attachment", + "background-position", + "background-position-x", + "-ms-background-position-x", + "background-position-y", + "-ms-background-position-y", + "-webkit-background-clip", + "-moz-background-clip", + "background-clip", + "background-origin", + "-webkit-background-size", + "-moz-background-size", + "-o-background-size", + "background-size", + "box-decoration-break", + "-webkit-box-shadow", + "-moz-box-shadow", + "box-shadow", + "filter:progid:DXImageTransform.Microsoft.gradient", + "-ms-filter:\\'progid:DXImageTransform.Microsoft.gradient", + "text-shadow", + + "content", + "quotes", + "counter-reset", + "counter-increment", + "resize", + "cursor", + "-webkit-user-select", + "-moz-user-select", + "-ms-user-select", + "user-select", + "nav-index", + "nav-up", + "nav-right", + "nav-down", + "nav-left", + "-webkit-transition", + "-moz-transition", + "-ms-transition", + "-o-transition", + "transition", + "-webkit-transition-delay", + "-moz-transition-delay", + "-ms-transition-delay", + "-o-transition-delay", + "transition-delay", + "-webkit-transition-timing-function", + "-moz-transition-timing-function", + "-ms-transition-timing-function", + "-o-transition-timing-function", + "transition-timing-function", + "-webkit-transition-duration", + "-moz-transition-duration", + "-ms-transition-duration", + "-o-transition-duration", + "transition-duration", + "-webkit-transition-property", + "-moz-transition-property", + "-ms-transition-property", + "-o-transition-property", + "transition-property", + "-webkit-transform", + "-moz-transform", + "-ms-transform", + "-o-transform", + "transform", + "-webkit-transform-origin", + "-moz-transform-origin", + "-ms-transform-origin", + "-o-transform-origin", + "transform-origin", + "-webkit-animation", + "-moz-animation", + "-ms-animation", + "-o-animation", + "animation", + "-webkit-animation-name", + "-moz-animation-name", + "-ms-animation-name", + "-o-animation-name", + "animation-name", + "-webkit-animation-duration", + "-moz-animation-duration", + "-ms-animation-duration", + "-o-animation-duration", + "animation-duration", + "-webkit-animation-play-state", + "-moz-animation-play-state", + "-ms-animation-play-state", + "-o-animation-play-state", + "animation-play-state", + "-webkit-animation-timing-function", + "-moz-animation-timing-function", + "-ms-animation-timing-function", + "-o-animation-timing-function", + "animation-timing-function", + "-webkit-animation-delay", + "-moz-animation-delay", + "-ms-animation-delay", + "-o-animation-delay", + "animation-delay", + "-webkit-animation-iteration-count", + "-moz-animation-iteration-count", + "-ms-animation-iteration-count", + "-o-animation-iteration-count", + "animation-iteration-count", + "-webkit-animation-direction", + "-moz-animation-direction", + "-ms-animation-direction", + "-o-animation-direction", + "animation-direction", + "text-align", + "-webkit-text-align-last", + "-moz-text-align-last", + "-ms-text-align-last", + "text-align-last", + "vertical-align", + "white-space", + "text-decoration", + "text-emphasis", + "text-emphasis-color", + "text-emphasis-style", + "text-emphasis-position", + "text-indent", + "-ms-text-justify", + "text-justify", + "letter-spacing", + "word-spacing", + "-ms-writing-mode", + "text-outline", + "text-transform", + "text-wrap", + "text-overflow", + "-ms-text-overflow", + "text-overflow-ellipsis", + "text-overflow-mode", + "-ms-word-wrap", + "word-wrap", + "word-break", + "-ms-word-break", + "-moz-tab-size", + "-o-tab-size", + "tab-size", + "-webkit-hyphens", + "-moz-hyphens", + "hyphens", + "pointer-events" + ] +} diff --git a/doc/project/wp3-m3/.editorconfig b/doc/project/wp3-m3/.editorconfig new file mode 100644 index 00000000..d2f1a986 --- /dev/null +++ b/doc/project/wp3-m3/.editorconfig @@ -0,0 +1,17 @@ +# EditorConfig helps developers define and maintain consistent +# coding styles between different editors and IDEs +# http://editorconfig.org + +root = true + +[*] +indent_style = space +indent_size = 2 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +max_line_length = 80 + +[*.md] +trim_trailing_whitespace = false diff --git a/doc/project/wp3-m3/.gitignore b/doc/project/wp3-m3/.gitignore new file mode 100644 index 00000000..4b23b0f5 --- /dev/null +++ b/doc/project/wp3-m3/.gitignore @@ -0,0 +1,3 @@ +node_modules/ +build/ +.publish diff --git a/doc/project/wp3-m3/CONTRIBUTING.md b/doc/project/wp3-m3/CONTRIBUTING.md new file mode 100644 index 00000000..0f6b2f83 --- /dev/null +++ b/doc/project/wp3-m3/CONTRIBUTING.md @@ -0,0 +1,9 @@ +# Contributing + +1. Fork it! +2. Create your feature branch: `git checkout -b my-new-feature` +3. Commit your changes: `git commit -m "Add some feature"` +4. Push to the branch: `git push origin my-new-feature` +5. Submit a pull request :) + +English is the universal language nowadays, so please don't create or comment on issues using another language. diff --git a/doc/project/wp3-m3/README.md b/doc/project/wp3-m3/README.md new file mode 100755 index 00000000..19ccc86f --- /dev/null +++ b/doc/project/wp3-m3/README.md @@ -0,0 +1,163 @@ +``` +______ _ ______ _ _ _ _ +| ___ \ | | | ___ \ (_) | | | | | +| |_/ /___ _ __ ___ __ _ _ __| | __ | |_/ / ___ _| | ___ _ __ _ __ | | __ _| |_ ___ +| // _ \ '_ ` _ \ / _` | '__| |/ / | ___ \/ _ \| | |/ _ \ '__| '_ \| |/ _` | __/ _ \ +| |\ \ __/ | | | | | (_| | | | < | |_/ / (_) | | | __/ | | |_) | | (_| | || __/ +\_| \_\___|_| |_| |_|\__,_|_| |_|\_\ \____/ \___/|_|_|\___|_| | .__/|_|\__,_|\__\___| + | | + |_| + +``` + +This is a boilerplate to use [remark](https://github.com/gnab/remark) easily with [Gulp](http://gulpjs.com/), [Jade](http://jade-lang.com/) and [Stylus](http://learnboost.github.io/stylus/). + +To know more about remark and how to use, [read the docs here](https://github.com/gnab/remark/wiki). + +## Getting Started + +### Installation + +First of all, install the dependencies to run this boilerplate. + +- [NodeJS](http://nodejs.org/) +- [GulpJS](http://gulpjs.com/) + +```sh +# Clone this repository +$ git clone git@github.com:brenopolanski/remark-boilerplate.git my-presentation +$ cd my-presentation + +# install dependencies +$ npm install +# run tasks and serve +$ gulp +``` +With the commands above, you have everything to start. + +``` +. +├── build +│   ├── css +│   │   └── main.css +│   ├── index.html +│   └── js +│   ├── main.js +│   └── vendor +│   ├── remark-fallback.js +│   ├── remark-language.js +│   └── remark.min.js +├── gulp +│   ├── index.js +│   ├── paths.js +│   └── tasks +│   ├── browser-sync.js +│   ├── default.js +│   ├── deploy-pages.js +│   ├── imagemin.js +│   ├── jade.js +│   ├── js.js +│   ├── stylus.js +│   └── watch.js +├── gulpfile.js +├── package.json +├── README.md +└── src + ├── js + │   ├── main.js + │   └── vendor + │   ├── remark-fallback.js + │   ├── remark-language.js + │   └── remark.min.js + ├── slides + │   ├── slide-1.md + │   ├── slide-2.md + │   └── slide-3.md + ├── styl + │   ├── main.styl + │   ├── remark-themes + │   │   └── default.styl + │   └── vendor + │   └── remark.styl + └── templates + ├── inc + │   ├── head.jade + │   └── scripts.jade + └── index.jade + +``` + +### How to Use + +- Write your slides in `src/slides` folder in separated files using the [Markdown syntax](https://github.com/gnab/remark/wiki/Markdown) and add them on `templates/index.jade`. + +- If you want to add another scripts and css use the `templates/inc/` folder and call them in the `templates/index.jade`. + +- Look for different themes on [src/styl/remark-themes](https://github.com/brenopolanski/remark-boilerplate/tree/master/src/styl/remark-themes) and call them on [src/styl/main.styl](https://github.com/brenopolanski/remark-boilerplate/blob/master/src/styl/main.styl). + +- For highlight themes you can see in [remark Wiki](https://github.com/gnab/remark/wiki/Configuration#highlighting). + +### How to use with git and deploy to Github Pages + +When you clone this repo, every git information will be downloaded to. So, you have to remove all my git stuff to create yours. + +```sh +# Inside of your project runs to remove git folder. +rm -Rf .git +``` + +Next, initialize your git repository: + +```sh +# init the repo +git init +``` + +Commit all files: + +```sh +# add all files to commit +git add . +# create a commit +git commit -m "Initial commit" +``` + +The first deploy needs to be manual: + +```sh +# creates a gh-pages branch +git checkout -b gh-pages + +# push and track the gh-pages branch +git push --set-upstream origin gh-pages +``` + +To do next deploys, you just have to run with gulp: + +```sh +# will create a .publish folder with build content +# and push to gh-pages branch. +gulp deploy-pages +``` + +### Tasks + +- `gulp`: Initialize watch for changes and a server (localhost:3000); +- `gulp js`: Execute js files; +- `gulp stylus`: Compile stylus files; +- `gulp imagemin`: Compress image files; +- `gulp watch`: Call for watch files; +- `gulp jade`: Compile jade files; +- `gulp deploy-pages`: Deploy compiled files at `build` to `github` on branch `gh-pages`. + +## Contributing + +If you want to help, please read the [Contributing](https://github.com/brenopolanski/remark-boilerplate/blob/master/CONTRIBUTING.md) guide. + +## History + +For detailed changelog, see [Releases](https://github.com/brenopolanski/remark-boilerplate/releases). + +## License + +[MIT License](http://brenopolanski.mit-license.org/) © Breno Polanski diff --git a/doc/project/wp3-m3/gulp/index.js b/doc/project/wp3-m3/gulp/index.js new file mode 100644 index 00000000..e5e23dd8 --- /dev/null +++ b/doc/project/wp3-m3/gulp/index.js @@ -0,0 +1,10 @@ +'use strict'; + +var gulp = require('gulp'); +var fs = require('fs'); +var path = require('path'); +var tasks = fs.readdirSync('./gulp/tasks'); + +tasks.forEach(function(task) { + require(path.join(__dirname, 'tasks', task)); +}); diff --git a/doc/project/wp3-m3/gulp/paths.js b/doc/project/wp3-m3/gulp/paths.js new file mode 100644 index 00000000..f88446be --- /dev/null +++ b/doc/project/wp3-m3/gulp/paths.js @@ -0,0 +1,33 @@ +'use strict'; + +module.exports = { + source: { + templates: './src/templates/**/*.jade', + slides: './src/slides/*.md', + js: './src/js/**/*.js', + styl: './src/styl/**/*.styl', + img: './src/img/**/*', + files: { + jade: './src/templates/index.jade', + styl: './src/styl/main.styl' + } + }, + + browserSync: { + html: './build/**/*.html', + css: './build/css/**/*.css', + js: './build/js/**/*.js', + img: './build/img/**/*' + }, + + build: { + html: './build/', + css: './build/css', + js: './build/js', + img: './build/img', + }, + + deploy: { + pages: './build/**/*' + } +}; diff --git a/doc/project/wp3-m3/gulp/tasks/browser-sync.js b/doc/project/wp3-m3/gulp/tasks/browser-sync.js new file mode 100644 index 00000000..f2e79a15 --- /dev/null +++ b/doc/project/wp3-m3/gulp/tasks/browser-sync.js @@ -0,0 +1,22 @@ +'use strict'; + +// Necessary Plugins +var gulp = require('gulp'); +var browserSync = require('browser-sync'); +var paths = require('../paths'); + +// Serve files from /www/ +module.exports = gulp.task('browser-sync', function() { + var files = [ + paths.browserSync.html, + paths.browserSync.js, + paths.browserSync.css, + paths.browserSync.img, + ]; + + browserSync.init(files, { + server: { + baseDir: paths.build.html + } + }); +}); diff --git a/doc/project/wp3-m3/gulp/tasks/default.js b/doc/project/wp3-m3/gulp/tasks/default.js new file mode 100644 index 00000000..9e572ef3 --- /dev/null +++ b/doc/project/wp3-m3/gulp/tasks/default.js @@ -0,0 +1,8 @@ +'use strict'; + +// Necessary Plugins +var gulp = require('gulp'); + +// Default task +module.exports = gulp.task('default', ['js', 'jade', 'stylus', 'imagemin', + 'watch', 'browser-sync']); diff --git a/doc/project/wp3-m3/gulp/tasks/deploy-pages.js b/doc/project/wp3-m3/gulp/tasks/deploy-pages.js new file mode 100644 index 00000000..2fb77525 --- /dev/null +++ b/doc/project/wp3-m3/gulp/tasks/deploy-pages.js @@ -0,0 +1,12 @@ +'use strict'; + +// Necessary Plugins +var gulp = require('gulp'); +var deploy = require('gulp-gh-pages'); +var paths = require('../paths'); + +// Deploy to GitHub pages +module.exports = gulp.task('deploy-pages', function() { + return gulp.src(paths.deploy.pages) + .pipe(deploy()); +}); diff --git a/doc/project/wp3-m3/gulp/tasks/imagemin.js b/doc/project/wp3-m3/gulp/tasks/imagemin.js new file mode 100644 index 00000000..6576ccb6 --- /dev/null +++ b/doc/project/wp3-m3/gulp/tasks/imagemin.js @@ -0,0 +1,20 @@ +'use strict'; + +// Necessary Plugins +var gulp = require('gulp'); +var plumber = require('gulp-plumber'); +var cache = require('gulp-cache'); +var imagemin = require('gulp-imagemin'); +var paths = require('../paths'); + +// Call Imagemin +module.exports = gulp.task('imagemin', function() { + return gulp.src(paths.source.img) + .pipe(plumber()) + .pipe(cache(imagemin({ + optimizationLevel: 3, + progressive: true, + interlaced: true + }))) + .pipe(gulp.dest(paths.build.img)); +}); diff --git a/doc/project/wp3-m3/gulp/tasks/jade.js b/doc/project/wp3-m3/gulp/tasks/jade.js new file mode 100644 index 00000000..c6fa7468 --- /dev/null +++ b/doc/project/wp3-m3/gulp/tasks/jade.js @@ -0,0 +1,17 @@ +'use strict'; + +// Necessary Plugins +var gulp = require('gulp'); +var plumber = require('gulp-plumber'); +var jade = require('gulp-jade'); +var paths = require('../paths'); + +// Call Jade to compile templates +module.exports = gulp.task('jade', function() { + return gulp.src(paths.source.files.jade) + .pipe(plumber()) + .pipe(jade({ + pretty: true + })) + .pipe(gulp.dest(paths.build.html)); +}); diff --git a/doc/project/wp3-m3/gulp/tasks/js.js b/doc/project/wp3-m3/gulp/tasks/js.js new file mode 100644 index 00000000..30586f4e --- /dev/null +++ b/doc/project/wp3-m3/gulp/tasks/js.js @@ -0,0 +1,15 @@ +'use strict'; + +// Necessary Plugins +var gulp = require('gulp'); +var plumber = require('gulp-plumber'); +var uglify = require('gulp-uglify'); +var paths = require('../paths'); + +// Call Uglify and concat JS +module.exports = gulp.task('js', function() { + return gulp.src(paths.source.js) + .pipe(plumber()) + .pipe(uglify()) + .pipe(gulp.dest(paths.build.js)); +}); diff --git a/doc/project/wp3-m3/gulp/tasks/stylus.js b/doc/project/wp3-m3/gulp/tasks/stylus.js new file mode 100644 index 00000000..2883b053 --- /dev/null +++ b/doc/project/wp3-m3/gulp/tasks/stylus.js @@ -0,0 +1,27 @@ +'use strict'; + +// Necessary Plugins +var gulp = require('gulp'); +var plumber = require('gulp-plumber'); +var stylus = require('gulp-stylus'); +var poststylus = require('poststylus'); +var autoprefixer = require('autoprefixer'); +var csscomb = require('gulp-csscomb'); +var paths = require('../paths'); + +// Call Stylus +module.exports = gulp.task('stylus', function() { + var processors = [ + autoprefixer + ]; + return gulp.src(paths.source.files.styl) + .pipe(plumber()) + .pipe(stylus({ + compress: false, + use: [ + poststylus(processors) + ] + })) + .pipe(csscomb()) + .pipe(gulp.dest(paths.build.css)); +}); diff --git a/doc/project/wp3-m3/gulp/tasks/watch.js b/doc/project/wp3-m3/gulp/tasks/watch.js new file mode 100644 index 00000000..baff5845 --- /dev/null +++ b/doc/project/wp3-m3/gulp/tasks/watch.js @@ -0,0 +1,13 @@ +'use strict'; + +// Necessary Plugins +var gulp = require('gulp'); +var paths = require('../paths'); + +// Call Watch +module.exports = gulp.task('watch', function() { + gulp.watch([paths.source.slides, paths.source.templates], ['jade']); + gulp.watch(paths.source.js, ['js']); + gulp.watch(paths.source.styl, ['stylus']); + gulp.watch(paths.source.img, ['imagemin']); +}); diff --git a/doc/project/wp3-m3/gulpfile.js b/doc/project/wp3-m3/gulpfile.js new file mode 100644 index 00000000..f60b303e --- /dev/null +++ b/doc/project/wp3-m3/gulpfile.js @@ -0,0 +1,3 @@ +'use strict'; + +require('./gulp'); diff --git a/doc/project/wp3-m3/package.json b/doc/project/wp3-m3/package.json new file mode 100644 index 00000000..997a771b --- /dev/null +++ b/doc/project/wp3-m3/package.json @@ -0,0 +1,48 @@ +{ + "name": "remark-boilerplate", + "version": "0.1.0", + "description": "A boilerplate to create presentations using remark, Gulp, Stylus and more", + "homepage": "https://github.com/brenopolanski/remark-boilerplate#readme", + "repository": { + "type": "git", + "url": "git+https://github.com/brenopolanski/remark-boilerplate.git" + }, + "keywords": [ + "remark", + "markdown", + "presentation", + "gulp", + "stylus", + "jade", + "highlight" + ], + "author": { + "name": "Breno Polanski", + "email": "breno.polanski@gmail.com", + "web": "http://brenopolanski.com", + "twitter": "brenopolanski" + }, + "license": "MIT", + "bugs": { + "url": "https://github.com/brenopolanski/remark-boilerplate/issues" + }, + "scripts": { + "clean": "rm -r node_modules/; rm -r build/" + }, + "devDependencies": { + "autoprefixer": "^6.3.3", + "browser-sync": "^2.11.1", + "gulp": "^3.9.1", + "gulp-cache": "^0.4.2", + "gulp-concat": "^2.6.0", + "gulp-csscomb": "^3.0.6", + "gulp-gh-pages": "^0.5.4", + "gulp-imagemin": "^2.4.0", + "gulp-jade": "^1.1.0", + "gulp-plumber": "^1.1.0", + "gulp-stylus": "^2.3.1", + "gulp-uglify": "^1.5.3", + "gulp-util": "^3.0.7", + "poststylus": "^0.2.3" + } +} diff --git a/doc/project/wp3-m3/push.sh b/doc/project/wp3-m3/push.sh new file mode 100755 index 00000000..f1b47829 --- /dev/null +++ b/doc/project/wp3-m3/push.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +rsync -a -e "ssh -p 2232" build/ cri@localhost:/srv/vertigo/doc/build/html/wp3-m3/ diff --git a/doc/project/wp3-m3/src/img/vertigo_logo1.png b/doc/project/wp3-m3/src/img/vertigo_logo1.png new file mode 100644 index 00000000..d75a9daa Binary files /dev/null and b/doc/project/wp3-m3/src/img/vertigo_logo1.png differ diff --git a/doc/project/wp3-m3/src/js/main.js b/doc/project/wp3-m3/src/js/main.js new file mode 100644 index 00000000..35bdd821 --- /dev/null +++ b/doc/project/wp3-m3/src/js/main.js @@ -0,0 +1,45 @@ +/** + * For more information on using remark, please check out the wiki pages: + * https://github.com/gnab/remark/wiki + */ +var slideShow = remark.create({ + // Set the slideshow display ratio + // Default: '4:3' + // Alternatives: '16:9', ... + ratio: '16:9', + + // Navigation options + navigation: { + // Enable or disable navigating using scroll + // Default: true + // Alternatives: false + scroll: true, + + // Enable or disable navigation using touch + // Default: true + // Alternatives: false + touch: true, + + // Enable or disable navigation using click + // Default: false + // Alternatives: true + click: false + }, + + // Customize slide number label, either using a format string.. + slideNumberFormat: 'Slide %current% of %total%', + // .. or by using a format function + slideNumberFormat: function (current, total) { + return current + ' / ' + total; + }, + + // Enable or disable counting of incremental slides in the slide counting + countIncrementalSlides: true, + + // For more options see: + // https://github.com/gnab/remark/wiki/Configuration#highlighting + highlightLanguage: 'remark', + highlightStyle: 'monokai', + highlightLines: true, + highlightSpans: false +}); diff --git a/doc/project/wp3-m3/src/js/vendor/remark-fallback.js b/doc/project/wp3-m3/src/js/vendor/remark-fallback.js new file mode 100644 index 00000000..11b6d474 --- /dev/null +++ b/doc/project/wp3-m3/src/js/vendor/remark-fallback.js @@ -0,0 +1,3 @@ +window.remark || document.write( + '",returnEnd:!0,subLanguage:["actionscript","javascript","handlebars","xml"]}},r,{className:"meta",begin:/<\?\w+/,end:/\?>/,relevance:10},{className:"tag",begin:"",contains:[{className:"name",begin:/[^\/><\s]+/,relevance:0},a]}]}}},{name:"xquery",create:function(){var e="for let if while then else return where group by xquery encoding versionmodule namespace boundary-space preserve strip default collation base-uri orderingcopy-namespaces order declare import schema namespace function option in allowing emptyat tumbling window sliding window start when only end when previous next stable ascendingdescending empty greatest least some every satisfies switch case typeswitch try catch andor to union intersect instance of treat as castable cast map array delete insert intoreplace value rename copy modify update",t="false true xs:string xs:integer element item xs:date xs:datetime xs:float xs:double xs:decimal QName xs:anyURI xs:long xs:int xs:short xs:byte attribute",r={begin:/\$[a-zA-Z0-9\-]+/,relevance:5},a={className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},i={className:"string",variants:[{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]},n={className:"meta",begin:"%\\w+"},s={className:"comment",begin:"\\(:",end:":\\)",relevance:10,contains:[{className:"doctag",begin:"@\\w+"}]},l={begin:"{",end:"}"},o=[r,i,a,s,n,l];return l.contains=o,{aliases:["xpath","xq"],case_insensitive:!1,lexemes:/[a-zA-Z\$][a-zA-Z0-9_:\-]*/,illegal:/(proc)|(abstract)|(extends)|(until)|(#)/,keywords:{keyword:e,literal:t},contains:o}}},{name:"yaml",create:function(e){var t={literal:"{ } true false yes no Yes No True False null"},r="^[ \\-]*",a="[a-zA-Z_][\\w\\-]*",i={className:"attr",variants:[{begin:r+a+":"},{begin:r+'"'+a+'"'+":"},{begin:r+"'"+a+"'"+":"}]},n={className:"template-variable",variants:[{begin:"{{",end:"}}"},{begin:"%{",end:"}"}]},s={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/}],contains:[e.BACKSLASH_ESCAPE,n]};return{case_insensitive:!0,aliases:["yml","YAML","yaml"],contains:[i,{className:"meta",begin:"^---s*$",relevance:10},{className:"string",begin:"[\\|>] *$",returnEnd:!0,contains:s.contains,end:i.variants[0].begin},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!!"+e.UNDERSCORE_IDENT_RE},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"^ *-",relevance:0},s,e.HASH_COMMENT_MODE,e.C_NUMBER_MODE],keywords:t}}},{name:"zephir",create:function(e){var t={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:'b"',end:'"'},{begin:"b'",end:"'"},e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},r={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{aliases:["zep"],case_insensitive:!0,keywords:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var let while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally int uint long ulong char uchar double float bool boolean stringlikely unlikely",contains:[e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler",lexemes:e.UNDERSCORE_IDENT_RE}),{className:"string",begin:"<<<['\"]?\\w+['\"]?$",end:"^\\w+;",contains:[e.BACKSLASH_ESCAPE]},{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"function",end:/[;{]/,excludeEnd:!0,illegal:"\\$|\\[|%",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",contains:["self",e.C_BLOCK_COMMENT_MODE,t,r]}]},{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,illegal:/[:\(\$"]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",end:";",illegal:/[\.']/,contains:[e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",end:";",contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"=>"},t,r]}}}],a=0;a"}),e=e.replace(/&/g,"&"),e=e.replace(/"/g,'"')}var n=e("events").EventEmitter,s=e("./highlighter"),l=e("./converter"),o=e("./resources"),c=e("./parser"),d=e("./models/slideshow"),m=e("./views/slideshowView"),u=e("./controllers/defaultController"),h=e("./dom"),p=e("./macros");t.exports=r,r.prototype.highlighter=s,r.prototype.convert=function(e){var t=new c,r=t.parse(e||"",p)[0].content;return l.convertMarkdown(r,{},!0)},r.prototype.create=function(e){var t,r,i,s;return e=a(this.dom,e),t=new n,t.setMaxListeners(0),r=new d(t,e),i=new m(t,this.dom,e.container,r),s=e.controller||new u(t,this.dom,i,e.navigation),r}},{events:1,"./highlighter":7,"./converter":9,"./resources":6,"./parser":10,"./models/slideshow":11,"./views/slideshowView":12,"./controllers/defaultController":13,"./dom":14,"./macros":15}],14:[function(e,t){function r(){}t.exports=r,r.prototype.XMLHttpRequest=XMLHttpRequest,r.prototype.getHTMLElement=function(){return document.getElementsByTagName("html")[0]},r.prototype.getBodyElement=function(){return document.body},r.prototype.getElementById=function(e){return document.getElementById(e)},r.prototype.getLocationHash=function(){return window.location.hash},r.prototype.setLocationHash=function(e){"function"==typeof window.history.replaceState&&"null"!==document.origin?window.history.replaceState(void 0,void 0,e):window.location.hash=e}},{}],15:[function(e,t){var r=t.exports={};r.hello=function(){return"hello!"}},{}],10:[function(e,t){!function(){function r(){}function a(){return{content:[],properties:{continued:"false"},links:{}}}function i(e){return{"class":e.classes.join(" "),block:e.block,content:[]}}function n(e,t){var r=e.content;void 0!==e.notes&&(r=e.notes);var a=r.length-1;"string"==typeof r[a]&&"string"==typeof t?r[a]+=t:r.push(t)}function s(e,t){for(var r,a=/^\n*([-\w]+):([^$\n]*)|\n*(?:)/i;null!==(r=a.exec(e));)e=e.substr(0,r.index)+e.substr(r.index+r[0].length),void 0!==r[1]?t[r[1].trim()]=r[2].trim():t[r[3].trim()]=r[4].trim(),a.lastIndex=r.index;return e}function l(e){var t=function(e,t){for(var r,a=[];null!==(r=t.exec(e));)a.push(r[1]);return a},r=/^([ \t]*)[^ \t\n]/gm,a=t(e,r).map(function(e){return e.length}),i=Math.min.apply(Math,a),n=new RegExp("^[ \\t]{0,"+i+"}","gm");return e.replace(n,"")}var o=e("./lexer");t.exports=r,r.prototype.parse=function(e,t){var r=this,c=new o,d=c.lex(l(e)),m=[],u=[a()];return t=t||{},d.forEach(function(e){switch(e.type){case"text":case"code":case"fences":n(u[u.length-1],e.text);break;case"def":u[0].links[e.id]={href:e.href,title:e.title};break;case"macro":var s=t[e.name];if("function"!=typeof s)throw new Error('Macro "'+e.name+'" not found. '+"You need to define macro using remark.macros['"+e.name+"'] = function () { ... };");var l=s.apply(e.obj,e.args);"string"==typeof l?(l=r.parse(l,t),n(u[u.length-1],l[0].content[0])):n(u[u.length-1],void 0===l?"":l.toString());break;case"content_start":u.push(i(e));break;case"content_end":n(u[u.length-2],u[u.length-1]),u.pop();break;case"separator":m.push(u[0]),u=[a()],u[0].properties.continued=("--"===e.text).toString();break;case"notes_separator":u[0].notes=[]}}),m.push(u[0]),m.forEach(function(e){e.content[0]=s(e.content[0]||"",e.properties)}),m.filter(function(e){var t=(e.properties.exclude||"").toLowerCase();return"true"===t?!1:!0})}}()},{"./lexer":16}],11:[function(e,t){function r(e,t){function r(r){r=r||"",v=a(r,t),i(v),y={},v.forEach(function(e){for(var t in e.links)e.links.hasOwnProperty(t)&&(y[t]=e.links[t])}),e.emit("slidesChanged")}function l(){e.emit("resize")}function o(){return y}function c(){return v.map(function(e){return e})}function d(){return v.length}function m(e){return v.byName[e]}function u(){e.emit("togglePresenterMode")}function h(){e.emit("toggleHelp")}function p(){e.emit("toggleBlackout")}function g(){e.emit("toggleMirrored")}function b(){e.emit("toggleFullscreen")}function _(){e.emit("createClone")}function f(){e.emit("resetTimer")}function I(e,r){return function(){return void 0===t[e]?r:t[e]}}var C=this,v=[],y={};t=t||{},s.call(C,e),n.call(C,e),C.loadFromString=r,C.update=l,C.getLinks=o,C.getSlides=c,C.getSlideCount=d,C.getSlideByName=m,C.togglePresenterMode=u,C.toggleHelp=h,C.toggleBlackout=p,C.toggleMirrored=g,C.toggleFullscreen=b,C.createClone=_,C.resetTimer=f,C.getRatio=I("ratio","4:3"),C.getHighlightStyle=I("highlightStyle","default"),C.getHighlightLines=I("highlightLines",!1),C.getHighlightSpans=I("highlightSpans",!1),C.getHighlightLanguage=I("highlightLanguage",""),C.getSlideNumberFormat=I("slideNumberFormat","%current% / %total%"),r(t.source),e.on("toggleBlackout",function(){C.clone&&!C.clone.closed&&C.clone.postMessage("toggleBlackout","*")})}function a(e,t){var r,a=new o,i=a.parse(e,c),n=[],s={};return n.byName={},i.forEach(function(e,a){var i,o;"true"===e.properties.continued&&a>0?i=n[n.length-1]:s[e.properties.template]?i=s[e.properties.template]:"false"===e.properties.layout?r=void 0:r&&"true"!==e.properties.layout&&(i=r),"true"===e.properties.continued&&t.countIncrementalSlides===!1&&void 0===e.properties.count&&(e.properties.count="false"),o=new l(n.length,e,i),"true"===e.properties.layout&&(r=o),e.properties.name&&(s[e.properties.name]=o),"true"!==e.properties.layout&&(n.push(o),e.properties.name&&(n.byName[e.properties.name]=o))}),n}function i(e){e.forEach(function(e){e.expandVariables()})}var n=e("./slideshow/navigation"),s=e("./slideshow/events"),l=(e("../utils"),e("./slide")),o=e("../parser"),c=e("../macros");t.exports=r},{"./slideshow/navigation":17,"../utils":8,"./slide":18,"./slideshow/events":19,"../parser":10,"../macros":15}],12:[function(e,t){function r(e,t,r,i){var n=this;n.events=e,n.dom=t,n.slideshow=i,n.scaler=new o(e,i),n.slideViews=[],n.configureContainerElement(r),n.configureChildElements(),n.updateDimensions(),n.scaleElements(),n.updateSlideViews(),n.timer=new s(e,n.timerElement),e.on("slidesChanged",function(){n.updateSlideViews()}),e.on("hideSlide",function(e){n.elementArea.getElementsByClassName("remark-fading").forEach(function(e){d.removeClass(e,"remark-fading")}),n.hideSlide(e)}),e.on("showSlide",function(e){n.showSlide(e)}),e.on("forcePresenterMode",function(){d.hasClass(n.containerElement,"remark-presenter-mode")||(d.toggleClass(n.containerElement,"remark-presenter-mode"),n.scaleElements(),m.setPageOrientation("landscape"))}),e.on("togglePresenterMode",function(){d.toggleClass(n.containerElement,"remark-presenter-mode"),n.scaleElements(),e.emit("toggledPresenter",n.slideshow.getCurrentSlideIndex()+1),d.hasClass(n.containerElement,"remark-presenter-mode")?m.setPageOrientation("portrait"):m.setPageOrientation("landscape")}),e.on("toggleHelp",function(){d.toggleClass(n.containerElement,"remark-help-mode")}),e.on("toggleBlackout",function(){d.toggleClass(n.containerElement,"remark-blackout-mode")}),e.on("toggleMirrored",function(){d.toggleClass(n.containerElement,"remark-mirrored-mode")}),e.on("hideOverlay",function(){d.removeClass(n.containerElement,"remark-blackout-mode"),d.removeClass(n.containerElement,"remark-help-mode")}),e.on("pause",function(){d.toggleClass(n.containerElement,"remark-pause-mode")}),e.on("resume",function(){d.toggleClass(n.containerElement,"remark-pause-mode")}),a(n)}function a(e){var t=d.getPrefixedProperty(e.containerElement,"requestFullScreen"),r=d.getPrefixedProperty(document,"cancelFullScreen");e.events.on("toggleFullscreen",function(){var a=d.getPrefixedProperty(document,"fullscreenElement")||d.getPrefixedProperty(document,"fullScreenElement");!a&&t?t.call(e.containerElement,Element.ALLOW_KEYBOARD_INPUT):r&&r.call(document),e.scaleElements()})}function i(e,t,r){r.forEach(function(r){t.addEventListener(r,function(){var t=Array.prototype.slice.call(arguments);e.emit.apply(e,[r].concat(t))})})}var n=e("./slideView"),s=e("components/timer"),l=e("./notesView"),o=e("../scaler"),c=e("../resources"),d=e("../utils"),m=e("components/printing");t.exports=r,r.prototype.isEmbedded=function(){return this.containerElement!==this.dom.getBodyElement()},r.prototype.configureContainerElement=function(e){var t=this;t.containerElement=e,d.addClass(e,"remark-container"),e===t.dom.getBodyElement()?(d.addClass(t.dom.getHTMLElement(),"remark-container"),i(t.events,window,["hashchange","resize","keydown","keypress","mousewheel","message","DOMMouseScroll"]),i(t.events,t.containerElement,["touchstart","touchmove","touchend","click","contextmenu"])):(e.style.position="absolute",e.tabIndex=-1,i(t.events,window,["resize"]),i(t.events,e,["keydown","keypress","mousewheel","touchstart","touchmove","touchend"])),t.events.on("tap",function(e){e-1&&e.showSlide(e.slideshow.getCurrentSlideIndex())},r.prototype.scaleSlideBackgroundImages=function(e){var t=this;t.slideViews.forEach(function(t){t.scaleBackgroundImage(e)})},r.prototype.showSlide=function(e){var t=this,r=t.slideViews[e],a=t.slideViews[e+1];t.events.emit("beforeShowSlide",e),r.show(),t.previewArea.innerHTML=a?a.containerElement.outerHTML:"",t.events.emit("afterShowSlide",e)},r.prototype.hideSlide=function(e){var t=this,r=t.slideViews[e];t.events.emit("beforeHideSlide",e),r.hide(),t.events.emit("afterHideSlide",e)},r.prototype.updateDimensions=function(){var e=this,t=e.scaler.dimensions;e.helpElement.style.width=t.width+"px",e.helpElement.style.height=t.height+"px",e.scaleSlideBackgroundImages(t),e.scaleElements()},r.prototype.scaleElements=function(){var e=this;e.slideViews.forEach(function(t){t.scale(e.elementArea)}),e.previewArea.children.length&&e.scaler.scaleToFit(e.previewArea.children[0].children[0],e.previewArea),e.scaler.scaleToFit(e.helpElement,e.containerElement),e.scaler.scaleToFit(e.pauseElement,e.containerElement)}},{"components/timer":"GFo1Ae","components/printing":"yoGRCZ","./slideView":20,"./notesView":21,"../scaler":22,"../resources":6,"../utils":8}],13:[function(e,t){!function(){function r(e,t,r,c){c=c||{},l.register(e),o.register(e,t,r),i.register(e),n.register(e,c),s.register(e,c),a(e,r,c)}function a(e,t,r){e.on("pause",function(){i.unregister(e),n.unregister(e),s.unregister(e)}),e.on("resume",function(){i.register(e),n.register(e,r),s.register(e,r)})}t.exports=r;var i=e("./inputs/keyboard"),n=e("./inputs/mouse"),s=e("./inputs/touch"),l=e("./inputs/message"),o=e("./inputs/location")}()},{"./inputs/keyboard":23,"./inputs/mouse":24,"./inputs/touch":25,"./inputs/message":26,"./inputs/location":27}],16:[function(e,t){function r(){}function a(e,t,r){var i,I;for(r=r||[];null!==(i=t.exec(e));)i.index>0&&r.push({type:"text",text:e.substring(0,i.index)}),i[l]?r.push({type:"code",text:i[0]}):i[o]?r.push({type:"text",text:i[0]}):i[d]?r.push({type:"fences",text:i[0]}):i[m]?r.push({type:"def",id:i[m],href:i[u],title:i[h]}):i[p]?r.push({type:"macro",name:i[p],args:(i[g]||"").split(",").map(n),obj:i[b]}):i[_]?r.push({type:"separator",text:i[_]}):i[f]?r.push({type:"notes_separator",text:i[f]}):i[c]&&(I=s(e,i.index+i[0].length),void 0!==I?(e=e.substring(I.length+1),"\\"!==i[0][0]?(r.push({type:"content_start",classes:i[c].substring(1).split("."),block:-1!==I.indexOf("\n")}),a(I,v,r),r.push({type:"content_end",block:-1!==I.indexOf("\n")})):r.push({type:"text",text:i[0].substring(1)+I+"]"})):r.push({type:"text",text:i[0]})),e=e.substring(i.index+i[0].length);return(e||!e&&0===r.length)&&r.push({type:"text",text:e}),r}function i(e,t){return new RegExp(e.source.replace(/\w{2,}/g,function(e){return t[e].source}))}function n(e){return"string"==typeof e?e.trim():e}function s(e,t){for(var r,a=1,i=t;a>0&&i]+)>?(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,MACRO:/!\[:([^\] ]+)([^\]]*)\](?:\(([^\)]*)\))?/,SEPARATOR:/(?:^|\n)(---?)(?:\n|$)/,NOTES_SEPARATOR:/(?:^|\n)(\?{3})(?:\n|$)/},C=i(/CODE|INLINE_CODE|CONTENT|FENCES|DEF|MACRO|SEPARATOR|NOTES_SEPARATOR/,I),v=i(/CODE|INLINE_CODE|CONTENT|FENCES|DEF|MACRO/,I);r.prototype.lex=function(e){var t,r=a(e,C);for(t=r.length-2;t>=0;t--)"text"===r[t].type&&"text"===r[t+1].type&&(r[t].text+=r[t+1].text,r.splice(t+1,1));return r}},{}],17:[function(e,t){function r(e){function t(){e.emit("pause")}function r(){e.emit("resume")}function a(){return u}function i(t,r){var a=t===u,i=0>t||t>m.getSlideCount()-1;void 0===r&&(r=!1),a||i||(-1!==u&&e.emit("hideSlide",u,!1),null===h?h=!1:h===!1&&(e.emit("start"),h=!0),e.emit("showSlide",t),u=t,e.emit("slideChanged",t+1),r||(m.clone&&!m.clone.closed&&m.clone.postMessage("gotoSlide:"+(u+1),"*"),window.opener&&window.opener.postMessage("gotoSlide:"+(u+1),"*")))}function n(e,t){var r=d(e);i(r,t)}function s(){i(u-1)}function l(){i(u+1)}function o(){i(0)}function c(){i(m.getSlideCount()-1)}function d(t){var r,a;return"number"==typeof t?t-1:(r=parseInt(t,10),r.toString()===t?r-1:t.match(/^p\d+$/)?(e.emit("forcePresenterMode"),parseInt(t.substr(1),10)-1):(a=m.getSlideByName(t),a?a.getSlideIndex():0))}var m=this,u=-1,h=null;m.getCurrentSlideIndex=a,m.gotoSlide=n,m.gotoPreviousSlide=s,m.gotoNextSlide=l,m.gotoFirstSlide=o,m.gotoLastSlide=c,m.pause=t,m.resume=r,e.on("gotoSlide",n),e.on("gotoPreviousSlide",s),e.on("gotoNextSlide",l),e.on("gotoFirstSlide",o),e.on("gotoLastSlide",c),e.on("slidesChanged",function(){u>m.getSlideCount()&&(u=m.getSlideCount())}),e.on("createClone",function(){!m.clone||m.clone.closed?m.clone=window.open(location.href,"_blank","location=no"):m.clone.focus()}),e.on("resetTimer",function(){h=!1})}t.exports=r},{}],18:[function(e,t){function r(e,t,r){var i=this;i.properties=t.properties||{},i.links=t.links||{},i.content=t.content||[],i.notes=t.notes||"",i.getSlideIndex=function(){return e},r&&a(i,r)}function a(e,t){i(e,t),s(e,t),l(e,t)}function i(e,t){var r,a;for(r in t.properties)t.properties.hasOwnProperty(r)&&!n(r)&&(a=[t.properties[r]],"class"===r&&e.properties[r]&&a.push(e.properties[r]),("class"===r||void 0===e.properties[r])&&(e.properties[r]=a.join(", ")))}function n(e){return"name"===e||"layout"===e||"count"===e}function s(e,t){var r;e.properties.content=e.content.slice(),e.content=t.content.slice(),r=e.expandVariables(!0),void 0===r.content&&(e.content=e.content.concat(e.properties.content)),delete e.properties.content}function l(e,t){t.notes&&(e.notes=t.notes+"\n\n"+e.notes)}t.exports=r,r.prototype.expandVariables=function(e,t,r){function a(t,a,i,s){var l,o=s.trim();return a?e?t[0]:i:e&&"content"!==o?t:(l=n[o],void 0!==l?(r[o]=l,l):"content"===o?"":i)}var i,n=this.properties;for(t=void 0!==t?t:this.content,r=r||{},i=0;io/d.height?o/m.height:c/m.width,a=m.width*r,i=m.height*r,n=(c-a)/2,s=(o-i)/2,e.style["-webkit-transform"]="scale("+r+")",e.style.MozTransform="scale("+r+")",e.style.left=Math.max(n,0)+"px",e.style.top=Math.max(s,0)+"px"}},{}],23:[function(e,t,r){function a(e){e.on("keydown",function(t){if(!t.metaKey&&!t.ctrlKey)switch(t.keyCode){case 33:case 37:case 38:e.emit("gotoPreviousSlide");break;case 32:case 34:case 39:case 40:e.emit("gotoNextSlide");break;case 36:e.emit("gotoFirstSlide");break;case 35:e.emit("gotoLastSlide");break;case 27:e.emit("hideOverlay")}}),e.on("keypress",function(t){if(!t.metaKey&&!t.ctrlKey)switch(String.fromCharCode(t.which).toLowerCase()){case"j":e.emit("gotoNextSlide");break;case"k":e.emit("gotoPreviousSlide");break;case"b":e.emit("toggleBlackout");break;case"m":e.emit("toggleMirrored");break;case"c":e.emit("createClone");break;case"p":e.emit("togglePresenterMode");break;case"f":e.emit("toggleFullscreen");break;case"t":e.emit("resetTimer");break;case"h":case"?":e.emit("toggleHelp")}})}function i(e){e.removeAllListeners("keydown"),e.removeAllListeners("keypress")}r.register=function(e){a(e)},r.unregister=function(e){i(e)}},{}],24:[function(e,t,r){function a(e,t){if(t.click&&(e.on("click",function(t){"A"!==t.target.nodeName&&0===t.button&&e.emit("gotoNextSlide")}),e.on("contextmenu",function(t){"A"!==t.target.nodeName&&(t.preventDefault(),e.emit("gotoPreviousSlide"))})),t.scroll!==!1){var r=function(t){t.wheelDeltaY>0||t.detail<0?e.emit("gotoPreviousSlide"):(t.wheelDeltaY<0||t.detail>0)&&e.emit("gotoNextSlide")};e.on("mousewheel",r),e.on("DOMMouseScroll",r)}}function i(e){e.removeAllListeners("click"),e.removeAllListeners("contextmenu"),e.removeAllListeners("mousewheel")}r.register=function(e,t){a(e,t)},r.unregister=function(e){i(e)}},{}],25:[function(e,t,r){function a(e,t){var r,a,i;if(t.touch!==!1){var n=function(){return Math.abs(a-i)<10},s=function(){e.emit("tap",i)},l=function(){a>i?e.emit("gotoNextSlide"):e.emit("gotoPreviousSlide")};e.on("touchstart",function(e){r=e.touches[0],a=r.clientX}),e.on("touchend",function(e){"A"!==e.target.nodeName.toUpperCase()&&(r=e.changedTouches[0],i=r.clientX,n()?s():l())}),e.on("touchmove",function(e){e.preventDefault()})}}function i(e){e.removeAllListeners("touchstart"),e.removeAllListeners("touchend"),e.removeAllListeners("touchmove")}r.register=function(e,t){a(e,t)},r.unregister=function(e){i(e)}},{}],26:[function(e,t,r){function a(e){function t(t){var r;null!==(r=/^gotoSlide:(\d+)$/.exec(t.data))?e.emit("gotoSlide",parseInt(r[1],10),!0):"toggleBlackout"===t.data&&e.emit("toggleBlackout")}e.on("message",t)}r.register=function(e){a(e)}},{}],20:[function(e,t){function r(e,t,r,a){var i=this;i.events=e,i.slideshow=t,i.scaler=r,i.slide=a,i.slideNumber=new p(a,t),i.configureElements(),i.updateDimensions(),i.events.on("propertiesChanged",function(e){e.hasOwnProperty("ratio")&&i.updateDimensions()})}function a(e,t,r){var a=document.createElement("div");return r.properties.name&&(a.id="slide-"+r.properties.name),i(t,a,r.properties),a.innerHTML=g.convertMarkdown(r.content,t.getLinks()),c(a,t),a}function i(e,t,r){t.className="",o(t,r),l(t,r,e),s(t,r)}function n(e,t){var r=document.createElement("div");return r.className="remark-slide-notes",r.innerHTML=g.convertMarkdown(t),c(r,e),r}function s(e,t){var r=t["background-image"],a=t["background-color"];r&&(e.style.backgroundImage=r),a&&(e.style.backgroundColor=a)}function l(e,t,r){var a=t["highlight-style"]||r.getHighlightStyle();a&&_.addClass(e,"hljs-"+a)}function o(e,t){_.addClass(e,"remark-slide-content"),(t["class"]||"").split(/,| /).filter(function(e){return""!==e}).forEach(function(t){_.addClass(e,t)})}function c(e,t){var r,a=e.getElementsByTagName("code"),i=t.getHighlightLines(),n=t.getHighlightSpans();a.forEach(function(e){return"PRE"!==e.parentElement.tagName?(_.addClass(e,"remark-inline-code"),void 0):(""===e.className&&(e.className=t.getHighlightLanguage()),i&&(r=d(e)),""!==e.className&&b.engine.highlightBlock(e," "),m(e),i&&u(e,r.highlightedLines),n&&h(e),_.addClass(e,"remark-code"),void 0)})}function d(e){var t=[];return e.innerHTML=e.innerHTML.split(/\r?\n/).map(function(e,r){return 0===e.indexOf("*")?(t.push(r),e.replace(/^\*( )?/,"$1$1")):e}).join("\n"),{highlightedLines:t}}function m(e){var t=e.innerHTML.split(/\r?\n/).map(function(e){return'
'+e+"
"});t.length&&-1!==t[t.length-1].indexOf("><")&&t.pop(),e.innerHTML=t.join("")}function u(e,t){t.forEach(function(t){_.addClass(e.childNodes[t],"remark-code-line-highlighted")})}function h(e){var t=/([^`])`([^`]+?)`/g;e.childNodes.forEach(function(e){e.innerHTML=e.innerHTML.replace(t,function(e,t,r){return"\\"===t?e.substr(1):t+''+r+""})})}var p=e("components/slide-number"),g=e("../converter"),b=e("../highlighter"),_=e("../utils");t.exports=r,r.prototype.updateDimensions=function(){var e=this,t=e.scaler.dimensions;e.scalingElement.style.width=t.width+"px",e.scalingElement.style.height=t.height+"px"},r.prototype.scale=function(e){var t=this;t.scaler.scaleToFit(t.scalingElement,e)},r.prototype.show=function(){_.addClass(this.containerElement,"remark-visible"),_.removeClass(this.containerElement,"remark-fading")},r.prototype.hide=function(){var e=this;_.removeClass(this.containerElement,"remark-visible"),_.addClass(this.containerElement,"remark-fading"),setTimeout(function(){_.removeClass(e.containerElement,"remark-fading")},1e3)},r.prototype.configureElements=function(){var e=this;e.containerElement=document.createElement("div"),e.containerElement.className="remark-slide-container",e.scalingElement=document.createElement("div"),e.scalingElement.className="remark-slide-scaler",e.element=document.createElement("div"),e.element.className="remark-slide",e.contentElement=a(e.events,e.slideshow,e.slide),e.notesElement=n(e.slideshow,e.slide.notes),e.contentElement.appendChild(e.slideNumber.element),e.element.appendChild(e.contentElement),e.scalingElement.appendChild(e.element),e.containerElement.appendChild(e.scalingElement),e.containerElement.appendChild(e.notesElement)},r.prototype.scaleBackgroundImage=function(e){var t,r,a,i=this,n=window.getComputedStyle(this.contentElement),s=n.backgroundImage;null!==(t=/^url\(("?)([^\)]+?)\1\)/.exec(s))&&(r=new Image,r.onload=function(){r.width>e.width||r.height>e.height?i.originalBackgroundSize||(i.originalBackgroundSize=i.contentElement.style.backgroundSize,i.originalBackgroundPosition=i.contentElement.style.backgroundPosition,i.backgroundSizeSet=!0,a=e.width/r.width',c+=r(e[s].content,t,!0),c+="");var d=a.Lexer.lex(c.replace(/^\s+/,""));return d.links=t,o=a.Parser.parse(d),i&&(n.innerHTML=o,1===n.children.length&&"P"===n.children[0].tagName&&(o=n.children[0].innerHTML)),o}var a=e("marked"),i=t.exports={},n=document.createElement("div");a.setOptions({gfm:!0,tables:!0,breaks:!1,pedantic:!0,sanitize:!1,smartLists:!0,langPrefix:""}),i.convertMarkdown=function(e,t,a){return n.innerHTML=r(e,t||{},a),n.innerHTML=n.innerHTML.replace(/

\s*<\/p>/g,""),n.innerHTML.replace(/\n\r?$/,"")}},{marked:28}],28:[function(e,t,r){!function(e){!function(){function e(e){this.tokens=[],this.tokens.links={},this.options=e||m.defaults,this.rules=u.normal,this.options.gfm&&(this.rules=this.options.tables?u.tables:u.gfm)}function a(e,t){if(this.options=t||m.defaults,this.links=e,this.rules=h.normal,this.renderer=this.options.renderer||new i,this.renderer.options=this.options,!this.links)throw new Error("Tokens array requires a `links` property.");this.options.gfm?this.rules=this.options.breaks?h.breaks:h.gfm:this.options.pedantic&&(this.rules=h.pedantic)}function i(e){this.options=e||{}}function n(e){this.tokens=[],this.token=null,this.options=e||m.defaults,this.options.renderer=this.options.renderer||new i,this.renderer=this.options.renderer,this.renderer.options=this.options}function s(e,t){return e.replace(t?/&/g:/&(?!#?\w+;)/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function l(e){return e.replace(/&([#\w]+);/g,function(e,t){return t=t.toLowerCase(),"colon"===t?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""})}function o(e,t){return e=e.source,t=t||"",function r(a,i){return a?(i=i.source||i,i=i.replace(/(^|[^\[])\^/g,"$1"),e=e.replace(a,i),r):new RegExp(e,t)}}function c(){}function d(e){for(var t,r,a=1;aAn error occured:

"+s(u.message+"",!0)+"
";throw u}}var u={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:c,hr:/^( *[-*_]){3,} *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *#* *(?:\n+|$)/,nptable:c,lheading:/^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,blockquote:/^( *>[^\n]+(\n[^\n]+)*\n*)+/,list:/^( *)(bull) [\s\S]+?(?:hr|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:/^ *(?:comment|closed|closing) *(?:\n{2,}|\s*$)/,def:/^ *\[([^\]]+)\]: *]+)>?(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,table:c,paragraph:/^((?:[^\n]+\n?(?!hr|heading|lheading|blockquote|tag|def))+)\n*/,text:/^[^\n]+/};u.bullet=/(?:[*+-]|\d+\.)/,u.item=/^( *)(bull) [^\n]*(?:\n(?!\1bull )[^\n]*)*/,u.item=o(u.item,"gm")(/bull/g,u.bullet)(),u.list=o(u.list)(/bull/g,u.bullet)("hr",/\n+(?=(?: *[-*_]){3,} *(?:\n+|$))/)(),u._tag="(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:/|[^\\w\\s@]*@)\\b",u.html=o(u.html)("comment",//)("closed",/<(tag)[\s\S]+?<\/\1>/)("closing",/])*?>/)(/tag/g,u._tag)(),u.paragraph=o(u.paragraph)("hr",u.hr)("heading",u.heading)("lheading",u.lheading)("blockquote",u.blockquote)("tag","<"+u._tag)("def",u.def)(),u.normal=d({},u),u.gfm=d({},u.normal,{fences:/^ *(`{3,}|~{3,}) *(\S+)? *\n([\s\S]+?)\s*\1 *(?:\n+|$)/,paragraph:/^/}),u.gfm.paragraph=o(u.paragraph)("(?!","(?!"+u.gfm.fences.source.replace("\\1","\\2")+"|"+u.list.source.replace("\\1","\\3")+"|")(),u.tables=d({},u.gfm,{nptable:/^ *(\S.*\|.*)\n *([-:]+ *\|[-| :]*)\n((?:.*\|.*(?:\n|$))*)\n*/,table:/^ *\|(.+)\n *\|( *[-:]+[-| :]*)\n((?: *\|.*(?:\n|$))*)\n*/}),e.rules=u,e.lex=function(t,r){var a=new e(r);return a.lex(t)},e.prototype.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," ").replace(/\u00a0/g," ").replace(/\u2424/g,"\n"),this.token(e,!0) +},e.prototype.token=function(e,t){for(var r,a,i,n,s,l,o,c,d,e=e.replace(/^ +$/gm,"");e;)if((i=this.rules.newline.exec(e))&&(e=e.substring(i[0].length),i[0].length>1&&this.tokens.push({type:"space"})),i=this.rules.code.exec(e))e=e.substring(i[0].length),i=i[0].replace(/^ {4}/gm,""),this.tokens.push({type:"code",text:this.options.pedantic?i:i.replace(/\n+$/,"")});else if(i=this.rules.fences.exec(e))e=e.substring(i[0].length),this.tokens.push({type:"code",lang:i[2],text:i[3]});else if(i=this.rules.heading.exec(e))e=e.substring(i[0].length),this.tokens.push({type:"heading",depth:i[1].length,text:i[2]});else if(t&&(i=this.rules.nptable.exec(e))){for(e=e.substring(i[0].length),l={type:"table",header:i[1].replace(/^ *| *\| *$/g,"").split(/ *\| */),align:i[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:i[3].replace(/\n$/,"").split("\n")},c=0;c ?/gm,""),this.token(i,t),this.tokens.push({type:"blockquote_end"});else if(i=this.rules.list.exec(e)){for(e=e.substring(i[0].length),n=i[2],this.tokens.push({type:"list_start",ordered:n.length>1}),i=i[0].match(this.rules.item),r=!1,d=i.length,c=0;d>c;c++)l=i[c],o=l.length,l=l.replace(/^ *([*+-]|\d+\.) +/,""),~l.indexOf("\n ")&&(o-=l.length,l=this.options.pedantic?l.replace(/^ {1,4}/gm,""):l.replace(new RegExp("^ {1,"+o+"}","gm"),"")),this.options.smartLists&&c!==d-1&&(s=u.bullet.exec(i[c+1])[0],n===s||n.length>1&&s.length>1||(e=i.slice(c+1).join("\n")+e,c=d-1)),a=r||/\n\n(?!\s*$)/.test(l),c!==d-1&&(r="\n"===l.charAt(l.length-1),a||(a=r)),this.tokens.push({type:a?"loose_item_start":"list_item_start"}),this.token(l,!1),this.tokens.push({type:"list_item_end"});this.tokens.push({type:"list_end"})}else if(i=this.rules.html.exec(e))e=e.substring(i[0].length),this.tokens.push({type:this.options.sanitize?"paragraph":"html",pre:"pre"===i[1]||"script"===i[1]||"style"===i[1],text:i[0]});else if(t&&(i=this.rules.def.exec(e)))e=e.substring(i[0].length),this.tokens.links[i[1].toLowerCase()]={href:i[2],title:i[3]};else if(t&&(i=this.rules.table.exec(e))){for(e=e.substring(i[0].length),l={type:"table",header:i[1].replace(/^ *| *\| *$/g,"").split(/ *\| */),align:i[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:i[3].replace(/(?: *\| *)?\n$/,"").split("\n")},c=0;c])/,autolink:/^<([^ >]+(@|:\/)[^ >]+)>/,url:c,tag:/^|^<\/?\w+(?:"[^"]*"|'[^']*'|[^'">])*?>/,link:/^!?\[(inside)\]\(href\)/,reflink:/^!?\[(inside)\]\s*\[([^\]]*)\]/,nolink:/^!?\[((?:\[[^\]]*\]|[^\[\]])*)\]/,strong:/^__([\s\S]+?)__(?!_)|^\*\*([\s\S]+?)\*\*(?!\*)/,em:/^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,code:/^(`+)\s*([\s\S]*?[^`])\s*\1(?!`)/,br:/^ {2,}\n(?!\s*$)/,del:c,text:/^[\s\S]+?(?=[\\?(?:\s+['"]([\s\S]*?)['"])?\s*/,h.link=o(h.link)("inside",h._inside)("href",h._href)(),h.reflink=o(h.reflink)("inside",h._inside)(),h.normal=d({},h),h.pedantic=d({},h.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/}),h.gfm=d({},h.normal,{escape:o(h.escape)("])","~|])")(),url:/^(https?:\/\/[^\s<]+[^<.,:;"')\]\s])/,del:/^~~(?=\S)([\s\S]*?\S)~~/,text:o(h.text)("]|","~]|")("|","|https?://|")()}),h.breaks=d({},h.gfm,{br:o(h.br)("{2,}","*")(),text:o(h.gfm.text)("{2,}","*")()}),a.rules=h,a.output=function(e,t,r){var i=new a(t,r);return i.output(e)},a.prototype.output=function(e){for(var t,r,a,i,n="";e;)if(i=this.rules.escape.exec(e))e=e.substring(i[0].length),n+=i[1];else if(i=this.rules.autolink.exec(e))e=e.substring(i[0].length),"@"===i[2]?(r=":"===i[1].charAt(6)?this.mangle(i[1].substring(7)):this.mangle(i[1]),a=this.mangle("mailto:")+r):(r=s(i[1]),a=r),n+=this.renderer.link(a,null,r);else if(i=this.rules.url.exec(e))e=e.substring(i[0].length),r=s(i[1]),a=r,n+=this.renderer.link(a,null,r);else if(i=this.rules.tag.exec(e))e=e.substring(i[0].length),n+=this.options.sanitize?s(i[0]):i[0];else if(i=this.rules.link.exec(e))e=e.substring(i[0].length),n+=this.outputLink(i,{href:i[2],title:i[3]});else if((i=this.rules.reflink.exec(e))||(i=this.rules.nolink.exec(e))){if(e=e.substring(i[0].length),t=(i[2]||i[1]).replace(/\s+/g," "),t=this.links[t.toLowerCase()],!t||!t.href){n+=i[0].charAt(0),e=i[0].substring(1)+e;continue}n+=this.outputLink(i,t)}else if(i=this.rules.strong.exec(e))e=e.substring(i[0].length),n+=this.renderer.strong(this.output(i[2]||i[1]));else if(i=this.rules.em.exec(e))e=e.substring(i[0].length),n+=this.renderer.em(this.output(i[2]||i[1]));else if(i=this.rules.code.exec(e))e=e.substring(i[0].length),n+=this.renderer.codespan(s(i[2],!0));else if(i=this.rules.br.exec(e))e=e.substring(i[0].length),n+=this.renderer.br();else if(i=this.rules.del.exec(e))e=e.substring(i[0].length),n+=this.renderer.del(this.output(i[1]));else if(i=this.rules.text.exec(e))e=e.substring(i[0].length),n+=s(this.smartypants(i[0]));else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0));return n},a.prototype.outputLink=function(e,t){var r=s(t.href),a=t.title?s(t.title):null;return"!"!==e[0].charAt(0)?this.renderer.link(r,a,this.output(e[1])):this.renderer.image(r,a,s(e[1]))},a.prototype.smartypants=function(e){return this.options.smartypants?e.replace(/--/g,"—").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…"):e},a.prototype.mangle=function(e){for(var t,r="",a=e.length,i=0;a>i;i++)t=e.charCodeAt(i),Math.random()>.5&&(t="x"+t.toString(16)),r+="&#"+t+";";return r},i.prototype.code=function(e,t,r){if(this.options.highlight){var a=this.options.highlight(e,t);null!=a&&a!==e&&(r=!0,e=a)}return t?'
'+(r?e:s(e,!0))+"\n
\n":"
"+(r?e:s(e,!0))+"\n
"},i.prototype.blockquote=function(e){return"
\n"+e+"
\n"},i.prototype.html=function(e){return e},i.prototype.heading=function(e,t,r){return"'+e+"\n"},i.prototype.hr=function(){return"
\n"},i.prototype.list=function(e,t){var r=t?"ol":"ul";return"<"+r+">\n"+e+"\n"},i.prototype.listitem=function(e){return"
  • "+e+"
  • \n"},i.prototype.paragraph=function(e){return"

    "+e+"

    \n"},i.prototype.table=function(e,t){return"\n\n"+e+"\n"+"\n"+t+"\n"+"
    \n"},i.prototype.tablerow=function(e){return"\n"+e+"\n"},i.prototype.tablecell=function(e,t){var r=t.header?"th":"td",a=t.align?"<"+r+' style="text-align:'+t.align+'">':"<"+r+">";return a+e+"\n"},i.prototype.strong=function(e){return""+e+""},i.prototype.em=function(e){return""+e+""},i.prototype.codespan=function(e){return""+e+""},i.prototype.br=function(){return"
    "},i.prototype.del=function(e){return""+e+""},i.prototype.link=function(e,t,r){if(this.options.sanitize){try{var a=decodeURIComponent(l(e)).replace(/[^\w:]/g,"").toLowerCase()}catch(i){return""}if(0===a.indexOf("javascript:"))return""}var n='"},i.prototype.image=function(e,t,r){var a=''+r+' +### Plenary Meeting - 16/03/2017 - IRCAM + + +--- +class: vertigo + +# D3.1 (M3) Ircam + +https://taiga.ircam.fr/project/yomguy-vertigo/us/2?milestone=40 + +- Dec 2016 + + - definition of the strategy: 3 sites to build in 3 months! >> 1 app only + data sharing + - finalization of mezzanine-organization packaging (coming from https://www.ircam.fr) + +- Jan 2017 + + - first tasks initialized on taiga + - release of the Vertigo code as a fork of mezzanine-organization + - setup and deployement of the app (dev side with Libelium, auto backup, etc...) + - account initialization + - first specifications of preliminary platform (project call, form, etc) + +--- +class: vertigo + +# D3.1 (M3) Ircam + +- Feb 2017 + + - definition of the basic process, workflow and pipelines (with Ulysses) + - input analysis of D2.1 "Co-creation methodology" + - multi-host based theme setup (hard time) + - co-development of http://vertigo.ircam.fr + +- Mar 2017 + + - development of the Project and ProjectCall class + - development of the ProjectForm, views and templates + - coordination of data input (pages, forms, etc) + +--- +class: vertigo + +# D3.1 (M3) Libelium + +https://taiga.ircam.fr/project/yomguy-vertigo/us/2?milestone=40 + +- ... + +--- +class: vertigo + +# Presentation of the preliminary VERTIGO / STARTS platform + +### Web sites + +http://vertigo.ircam.fr + +http://vertigo.starts.eu + +http://www.starts.eu (sorry for yesterday bug!!) + +### Backoffice (admin) + +http://vertigo.starts.eu/admin/ + +--- +class: vertigo + +# D3.2 Web Platform Functional, Technical Specification and Development Plan (M6) + +https://taiga.ircam.fr/project/yomguy-vertigo/us/3?milestone=41 + +### TODO + +- full functional (social) workflow specifications (input needed) +- a complete flowchart including all pipelines : who is doing what? (workshops needed) +- full modelization of linked objects : ProjectCall, Producer, Residency, ResidencyData?, etc... +- include Ulysses2 module concepts http://ulysses2-dev.ircam.fr/web/home/ +- ergonomy design, wireframing, etc +- implementation testing + +--- +class: vertigo + +# T.7.1 Coordination and reporting (Ircam) + +https://taiga.ircam.fr/project/yomguy-vertigo/us/79?no-milestone=1 + +### Tools (self hosted) + +- Project management : Taiga https://taiga.ircam.fr (taiga) +- Online meetup : https://meet.jit.si/yomguyvertigo (appearin > jitsi > hangout or skype ?) +- File repo : https://vertigo-cloud.ircam.fr (owncloud) + +###TODO + +- Chat : https://social.ircam.fr (mattermost) +- Collaborative pad : https://etherpad.ircam.fr/ (etherpad) +- Collaborative document editing : on the cloud (owncloud) + +Everything on the wiki! diff --git a/doc/project/wp3-m3/src/styl/main.styl b/doc/project/wp3-m3/src/styl/main.styl new file mode 100644 index 00000000..57ba1ac0 --- /dev/null +++ b/doc/project/wp3-m3/src/styl/main.styl @@ -0,0 +1,5 @@ +// CSS file to create the generic presentation +@import "vendor/remark" + +// Use your favorite theme +@import "remark-themes/default" diff --git a/doc/project/wp3-m3/src/styl/remark-themes/default.styl b/doc/project/wp3-m3/src/styl/remark-themes/default.styl new file mode 100644 index 00000000..f23039d4 --- /dev/null +++ b/doc/project/wp3-m3/src/styl/remark-themes/default.styl @@ -0,0 +1,157 @@ +body + font-family "Droid Serif" + +h1 +h2 +h3 + margin-bottom 0 + font-family "Yanone Kaffeesatz" + font-weight 400 + +.remark-slide-content + h1 + font-size 3em + h2 + font-size 2em + h3 + font-size 1.6em + +.footnote + position absolute + bottom 3em + +li + line-height 1.75em + p + line-height 1.25em + +.red + color #fa0000 + +.large + font-size 2em + +a, a > code + // color rgb(249, 38, 114) + color rgb(110, 198, 179) + text-decoration none + +code + border-radius 5px + background #e7e8e2 + +.remark-code +.remark-inline-code + font-family "Ubuntu Mono" + +.remark-code-line-highlighted + background-color #373832 + +.pull-left + float left + width 47% + +.pull-right + float right + width 47% + +.pull-right ~ p + clear both + +#slideshow + .slide + .content + code + font-size 0.8em + pre + code + padding 15px + font-size 0.9em + +.telemeta + color white + background #6A0307 + text-shadow 0 0 20px #333 + +.vertigo + color white + background #000f24 + text-shadow 0 0 20px #333 + +.inverse + color #777872 + background #272822 + text-shadow 0 0 20px #333 + +.inverse h1 +.inverse h2 + line-height 0.8em + color #f3f3f3 + +/* Slide-specific styling */ + +#slide-inverse + .footnote + bottom 12px + left 20px + +#slide-how + .slides + position absolute + top 151px + right 140px + font-size 0.9em + +#slide-how + .slides + h3 + margin-top 0.2em + +#slide-how + .slides + .first + .second + width 120px + height 90px + padding 1px 20px + box-shadow 0 0 10px #777 + +#slide-how + .slides + .first + position absolute + z-index 1 + top 20% + left 20% + background #fff + +#slide-how + .slides + .second + position relative + z-index 0 + background #fff + +/* Two-column layout */ + +.left-column + float left + width 20% + height 92% + color #777 + +.left-column + h2:last-of-type + h3:last-child + color #000 + +.right-column + float right + width 75% + padding-top 1em + +.tight + li + line-height 1.25em + p + line-height 1.25em diff --git a/doc/project/wp3-m3/src/styl/vendor/remark.styl b/doc/project/wp3-m3/src/styl/vendor/remark.styl new file mode 100644 index 00000000..6f3e79f8 --- /dev/null +++ b/doc/project/wp3-m3/src/styl/vendor/remark.styl @@ -0,0 +1,16 @@ +@import url("https://fonts.googleapis.com/css?family=Yanone+Kaffeesatz"); +@import url("https://fonts.googleapis.com/css?family=Droid+Serif:400,700,400italic"); +@import url("https://fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic"); + +body + font-family "Droid Serif" + +h1 +h2 +h3 + font-family "Yanone Kaffeesatz" + font-weight normal + +.remark-code +.remark-inline-code + font-family "Ubuntu Mono" diff --git a/doc/project/wp3-m3/src/templates/inc/head.jade b/doc/project/wp3-m3/src/templates/inc/head.jade new file mode 100644 index 00000000..019b83d0 --- /dev/null +++ b/doc/project/wp3-m3/src/templates/inc/head.jade @@ -0,0 +1,8 @@ +head + meta(charset="UTF-8") + meta(http-equiv="X-UA-Compatible" content="IE=edge") + meta(name="viewport" content="width=device-width, initial-scale=1") + title="Telemeta 2.0" + meta(name="description" content="Some description about the slides") + meta(name="author" content="You") + link(rel="stylesheet", href="css/main.css") diff --git a/doc/project/wp3-m3/src/templates/inc/scripts.jade b/doc/project/wp3-m3/src/templates/inc/scripts.jade new file mode 100644 index 00000000..76418312 --- /dev/null +++ b/doc/project/wp3-m3/src/templates/inc/scripts.jade @@ -0,0 +1,5 @@ +script(src="https://gnab.github.io/remark/downloads/remark-latest.min.js") +script + include ../../js/vendor/remark-fallback.js +script(src="js/vendor/remark-language.js") +script(src="js/main.js") diff --git a/doc/project/wp3-m3/src/templates/index.jade b/doc/project/wp3-m3/src/templates/index.jade new file mode 100644 index 00000000..813df053 --- /dev/null +++ b/doc/project/wp3-m3/src/templates/index.jade @@ -0,0 +1,7 @@ +doctype html +html + include inc/head + body + textarea#source + include ../slides/slide-1.md + include inc/scripts