├── doc ├── ppt │ ├── js │ │ ├── jquery-latest.min.map │ │ ├── styles │ │ │ ├── pojoaque.jpg │ │ │ ├── school_book.png │ │ │ ├── brown_papersq.png │ │ │ ├── ascetic.css │ │ │ ├── tomorrow.css │ │ │ ├── tomorrow-night-bright.css │ │ │ ├── tomorrow-night-eighties.css │ │ │ ├── tomorrow-night.css │ │ │ ├── tomorrow-night-blue.css │ │ │ ├── solarized_dark.css │ │ │ ├── solarized_light.css │ │ │ ├── ir_black.css │ │ │ ├── vs.css │ │ │ ├── pojoaque.css │ │ │ ├── dark.css │ │ │ ├── brown_paper.css │ │ │ ├── rainbow.css │ │ │ ├── idea.css │ │ │ ├── monokai.css │ │ │ ├── zenburn.css │ │ │ ├── github.css │ │ │ ├── far.css │ │ │ ├── school_book.css │ │ │ ├── magula.css │ │ │ ├── sunburst.css │ │ │ ├── googlecode.css │ │ │ └── xcode.css │ │ └── languages │ │ │ ├── ini.js │ │ │ ├── dos.js │ │ │ ├── http.js │ │ │ ├── parser3.js │ │ │ ├── json.js │ │ │ ├── smalltalk.js │ │ │ ├── profile.js │ │ │ ├── go.js │ │ │ ├── axapta.js │ │ │ ├── tex.js │ │ │ ├── java.js │ │ │ ├── erlang-repl.js │ │ │ ├── bash.js │ │ │ ├── diff.js │ │ │ ├── rsl.js │ │ │ ├── javascript.js │ │ │ ├── rib.js │ │ │ ├── rust.js │ │ │ ├── cs.js │ │ │ ├── scala.js │ │ │ ├── cpp.js │ │ │ ├── cmake.js │ │ │ ├── markdown.js │ │ │ ├── lua.js │ │ │ ├── vbscript.js │ │ │ ├── r.js │ │ │ ├── vhdl.js │ │ │ ├── vala.js │ │ │ ├── python.js │ │ │ ├── haskell.js │ │ │ ├── lisp.js │ │ │ ├── actionscript.js │ │ │ ├── matlab.js │ │ │ ├── avrasm.js │ │ │ ├── delphi.js │ │ │ └── nginx.js │ ├── jmpress.js-master │ │ ├── test │ │ │ ├── fixtures │ │ │ │ └── ajax.html │ │ │ ├── components │ │ │ │ ├── ajax.test.js │ │ │ │ └── templates.test.js │ │ │ └── index.html │ │ ├── examples │ │ │ ├── ajax │ │ │ │ ├── content.html │ │ │ │ ├── index.html │ │ │ │ └── ajax.css │ │ │ ├── cube │ │ │ │ ├── cube.css │ │ │ │ └── index.html │ │ │ ├── animation │ │ │ │ └── animation.css │ │ │ ├── zoomable │ │ │ │ └── zoomable.css │ │ │ ├── form-dynamic │ │ │ │ ├── style.css │ │ │ │ └── index.html │ │ │ ├── automatic-layout │ │ │ │ └── automatic.css │ │ │ ├── tab-control │ │ │ │ └── style.css │ │ │ ├── nested-templates │ │ │ │ └── nested-template.css │ │ │ ├── simple │ │ │ │ └── index.html │ │ │ └── vacation │ │ │ │ └── vacation.css │ │ ├── src │ │ │ ├── css │ │ │ │ ├── animations │ │ │ │ │ └── basic │ │ │ │ │ │ ├── appear.css │ │ │ │ │ │ ├── fade.css │ │ │ │ │ │ ├── drive.css │ │ │ │ │ │ ├── expand.css │ │ │ │ │ │ ├── zoom.css │ │ │ │ │ │ └── warp.css │ │ │ │ └── demo │ │ │ │ │ └── animations.css │ │ │ ├── banners │ │ │ │ ├── plugins.js │ │ │ │ └── dist.js │ │ │ ├── components │ │ │ │ ├── start.js │ │ │ │ ├── jqevents.js │ │ │ │ ├── active.js │ │ │ │ ├── mouse.js │ │ │ │ ├── circular.js │ │ │ │ ├── mobile.js │ │ │ │ ├── ways.js │ │ │ │ ├── near.js │ │ │ │ └── ajax.js │ │ │ └── plugins │ │ │ │ ├── toggle.js │ │ │ │ ├── secondary.js │ │ │ │ └── duration.js │ │ ├── AUTHORS │ │ ├── .jshintrc │ │ ├── README.md │ │ ├── package.json │ │ ├── index.notes.html │ │ └── presentation-screen.html │ ├── README.md │ ├── imgs │ │ └── struct.jpg │ ├── fancybox │ │ ├── sprite.psd │ │ ├── demo │ │ │ ├── 1_b.jpg │ │ │ ├── 1_s.jpg │ │ │ ├── 2_b.jpg │ │ │ ├── 2_s.jpg │ │ │ ├── 3_b.jpg │ │ │ ├── 3_s.jpg │ │ │ ├── 4_b.jpg │ │ │ ├── 4_s.jpg │ │ │ ├── 5_b.jpg │ │ │ ├── 5_s.jpg │ │ │ ├── iframe.html │ │ │ └── ajax.txt │ │ ├── source │ │ │ ├── blank.gif │ │ │ ├── fancybox_sprite.png │ │ │ ├── fancybox_loading.gif │ │ │ ├── fancybox_overlay.png │ │ │ ├── fancybox_sprite@2x.png │ │ │ ├── fancybox_loading@2x.gif │ │ │ └── helpers │ │ │ │ ├── fancybox_buttons.png │ │ │ │ ├── jquery.fancybox-thumbs.css │ │ │ │ └── jquery.fancybox-buttons.css │ │ ├── .gitattributes │ │ ├── bower.json │ │ ├── fancybox.jquery.json │ │ └── lib │ │ │ └── jquery.mousewheel.pack.js │ └── css │ │ ├── automatic.css │ │ └── highlight.min.css ├── dot │ ├── struct.jpg │ ├── Makefile │ ├── README.md │ ├── struct.dot │ └── struct_old.dot ├── images │ ├── android.png │ └── app_demo.jpg ├── nginx │ ├── README.md │ ├── 127.0.0.2.conf │ └── nginx.conf ├── 如何添加硬件.md ├── README.md ├── main.md └── How to start for IoT.md ├── hardware ├── arduino │ ├── README.md │ └── BareMinimum │ │ └── BareMinimum.ino └── README.md ├── python ├── get.py ├── post.py ├── iot.py ├── README.md └── raspberrypi.py ├── .gitmodules └── license.txt /doc/ppt/js/jquery-latest.min.map: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/test/fixtures/ajax.html: -------------------------------------------------------------------------------- 1 | foobar -------------------------------------------------------------------------------- /doc/ppt/README.md: -------------------------------------------------------------------------------- 1 | ##一个简要的ppt演示系统内容## 2 | 3 | ###jmpress### 4 | 5 | -------------------------------------------------------------------------------- /doc/dot/struct.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/dot/struct.jpg -------------------------------------------------------------------------------- /doc/images/android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/images/android.png -------------------------------------------------------------------------------- /doc/images/app_demo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/images/app_demo.jpg -------------------------------------------------------------------------------- /doc/ppt/imgs/struct.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/imgs/struct.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/sprite.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/sprite.psd -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/ajax/content.html: -------------------------------------------------------------------------------- 1 |

This was loaded via ajax.

-------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/1_b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/1_b.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/1_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/1_s.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/2_b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/2_b.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/2_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/2_s.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/3_b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/3_b.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/3_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/3_s.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/4_b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/4_b.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/4_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/4_s.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/5_b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/5_b.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/5_s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/demo/5_s.jpg -------------------------------------------------------------------------------- /doc/ppt/js/styles/pojoaque.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/js/styles/pojoaque.jpg -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/blank.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/source/blank.gif -------------------------------------------------------------------------------- /doc/ppt/js/styles/school_book.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/js/styles/school_book.png -------------------------------------------------------------------------------- /doc/ppt/js/styles/brown_papersq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/js/styles/brown_papersq.png -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/fancybox_sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/source/fancybox_sprite.png -------------------------------------------------------------------------------- /hardware/arduino/README.md: -------------------------------------------------------------------------------- 1 | ##Basic Arduino Serial Commucation## 2 | 3 | Read the data and use String to Int to bool for ON or OFF -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/fancybox_loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/source/fancybox_loading.gif -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/fancybox_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/source/fancybox_overlay.png -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/fancybox_sprite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/source/fancybox_sprite@2x.png -------------------------------------------------------------------------------- /hardware/README.md: -------------------------------------------------------------------------------- 1 | ##Hardware## 2 | Welcome to add you hardware to here. 3 | 4 | 5 | ##硬件部分## 6 | 这里可能没有那么多的硬件,现在正在扩充阶段,需要大家的贡献。 7 | -------------------------------------------------------------------------------- /doc/dot/Makefile: -------------------------------------------------------------------------------- 1 | default: 2 | @echo 'Generate system structure frame' 3 | dot struct.dot -Tjpg -o struct.jpg 4 | clean: 5 | rm *.jpg 6 | -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/fancybox_loading@2x.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/source/fancybox_loading@2x.gif -------------------------------------------------------------------------------- /python/get.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import requests 3 | 4 | url = "http://b.phodal.com/athome/1" 5 | r = requests.get(url) 6 | print r.text 7 | -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/helpers/fancybox_buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phodal/iot/HEAD/doc/ppt/fancybox/source/helpers/fancybox_buttons.png -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/css/animations/basic/appear.css: -------------------------------------------------------------------------------- 1 | .will-appear { 2 | opacity: 0; 3 | } 4 | 5 | .do-appear { 6 | opacity: 1; 7 | } 8 | 9 | -------------------------------------------------------------------------------- /doc/dot/README.md: -------------------------------------------------------------------------------- 1 | ##System Struct## 2 | To make the Struct just Run,if you install the graphviz 3 | 4 | make 5 | 6 | and 7 | 8 | make clean 9 | 10 | to remove the picture -------------------------------------------------------------------------------- /doc/ppt/fancybox/.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Denote all files that are truly binary and should not be modified. 5 | *.png binary 6 | *.jpg binary 7 | *.gif binary -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/AUTHORS: -------------------------------------------------------------------------------- 1 | project: jmpress.js 2 | commits: 396 3 | active : 83 days 4 | files : 143 5 | authors: 6 | 237 Tobias Koppers 59.8% 7 | 157 Kyle Robinson Young 39.6% 8 | 2 Marcus Lunzenauer 0.5% -------------------------------------------------------------------------------- /python/post.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import requests 3 | 4 | url = "http://b.phodal.com/athome/1" 5 | data = {"temperature": 19, "sensors1": 32, "sensors2": 7.5, "led1": 0, "method": "PUT"} 6 | r = requests.put(url, data) 7 | print r.text 8 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "android"] 2 | path = android 3 | url = https://github.com/gmszone/Home-Anywhere 4 | [submodule "rest"] 5 | path = rest 6 | url = https://github.com/gmszone/iot-rest.git 7 | [submodule "dashboard"] 8 | path = dashboard 9 | url = https://github.com/gmszone/iot-dashboard 10 | -------------------------------------------------------------------------------- /doc/ppt/fancybox/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fancybox", 3 | "version": "2.1.5", 4 | "main": ["source/jquery.fancybox.css","source/jquery.fancybox.js"], 5 | "ignore": [ 6 | "**/.*", 7 | "*.json", 8 | "demo" 9 | ], 10 | "dependencies": { 11 | "jquery": "~1.10", 12 | "jquery-mousewheel": "~3.1.3" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/banners/plugins.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * plugin for <%= pkg.name || pkg.title %> v<%= pkg.version %> 3 | * <%= pkg.homepage %> 4 | * 5 | * Copyright <%= grunt.template.today("yyyy") %> <%= pkg.author.name %> 6 | * Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> 7 | * <%= _.pluck(pkg.licenses, "url").join(", ") %> 8 | */ 9 | -------------------------------------------------------------------------------- /python/iot.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import json,urllib2,serial 3 | 4 | url="http://b.phodal.com/athome/1" 5 | while True: 6 | status=json.load(urllib2.urlopen(url))[0]['led1'] 7 | serialport=serial.Serial("/dev/ttyACM0",9600) 8 | if status==1 : 9 | serialport.write('1') 10 | elif status==0: 11 | serialport.write('0') 12 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/components/start.js: -------------------------------------------------------------------------------- 1 | /* 2 | * start.js 3 | * Set the first step to start on 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | 9 | /* HOOKS */ 10 | $.jmpress( 'selectInitialStep', function( nil, eventData ) { 11 | return eventData.settings.start; 12 | }); 13 | 14 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "curly": true, 3 | "eqeqeq": true, 4 | "immed": true, 5 | "latedef": true, 6 | "newcap": true, 7 | "noarg": true, 8 | "sub": true, 9 | "undef": true, 10 | "eqnull": true, 11 | "browser": true, 12 | "laxcomma": true, 13 | "smarttabs": true, 14 | "validthis": true, 15 | "globals": { 16 | "jQuery": true 17 | } 18 | } -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/banners/dist.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * <%= pkg.name || pkg.title %> v<%= pkg.version %> 3 | * <%= pkg.homepage %> 4 | * 5 | * <%= pkg.description %> 6 | * 7 | * Copyright <%= grunt.template.today("yyyy") %> <%= pkg.author.name %> 8 | * Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> 9 | * <%= _.pluck(pkg.licenses, "url").join(", ") %> 10 | * 11 | * Based on the foundation laid by Bartek Szopka @bartaz 12 | */ 13 | -------------------------------------------------------------------------------- /doc/dot/struct.dot: -------------------------------------------------------------------------------- 1 | digraph G{ 2 | compound=true; 3 | 4 | subgraph cluster0{ 5 | RaspberryPi->Hardware; 6 | Hardware->RaspberryPi[label="Serial Commucation"]; 7 | } 8 | subgraph cluster1{ 9 | Server->RaspberryPi [label="GET/POST"]; 10 | RaspberryPi->Server; 11 | Browser->Server [label="CRUD"]; 12 | Server->Browser [label="Ajax"]; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /doc/dot/struct_old.dot: -------------------------------------------------------------------------------- 1 | digraph G{ 2 | compound=true; 3 | 4 | subgraph cluster0{ 5 | RaspberryPi->Arduino; 6 | Arduino->RaspberryPi[label="Serial Commucation"]; 7 | } 8 | subgraph cluster1{ 9 | Server->RaspberryPi [label="GET/POST"]; 10 | RaspberryPi->Server; 11 | Browser->Server [label="CRUD"]; 12 | Server->Browser [label="Ajax"]; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /hardware/arduino/BareMinimum/BareMinimum.ino: -------------------------------------------------------------------------------- 1 | int ledPort=13; 2 | 3 | void setup() { 4 | Serial.begin(9600); 5 | pinMode(ledPort,OUTPUT); 6 | } 7 | 8 | int serialData; 9 | void loop() { 10 | String inString = ""; 11 | while (Serial.available()> 0) 12 | { 13 | int inChar = Serial.read(); 14 | if (isDigit(inChar)) { 15 | inString += (char)inChar; 16 | } 17 | serialData=inString.toInt(); 18 | Serial.print(serialData); 19 | } 20 | if(serialData==1){ 21 | digitalWrite(ledPort,HIGH); 22 | }else{ 23 | digitalWrite(ledPort,LOW); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /doc/nginx/README.md: -------------------------------------------------------------------------------- 1 | ##Example of Laravel Configure## 2 | Laravel与nginx使用的时候需要添加下面的重定向规则,供参考 。 3 | 4 | 127.0.0.2.conf 本地配置用的时候,nginx版本1.5.6 5 | nginx.conf 网上示例 6 | 7 | 8 | ##Need to add to you configure## 9 | # Enforce No WWW - I put this in an include: 10 | # include /etc/nginx/includes/enforce_non_www; 11 | if ($host ~* ^www\.(.*)) 12 | { 13 | set $host_without_www $1; 14 | rewrite ^/(.*)$ $scheme://$host_without_www/$1 permanent; 15 | } 16 | 17 | # Check if file exists 18 | if (!-e $request_filename) 19 | { 20 | rewrite ^/(.*)$ /index.php?/$1 last; 21 | break; 22 | } 23 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/cube/cube.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | pointer-events: none; 8 | } 9 | 10 | /** STEP STYLES **/ 11 | .step { 12 | width: 1000px; 13 | height: 1000px; 14 | 15 | display: block; 16 | padding: 100px; 17 | 18 | font-size: 200px; 19 | 20 | border: 10px solid black; 21 | 22 | -webkit-box-sizing: border-box; 23 | -moz-box-sizing: border-box; 24 | -ms-box-sizing: border-box; 25 | -o-box-sizing: border-box; 26 | box-sizing: border-box; 27 | } 28 | } -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/components/jqevents.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jqevents.js 3 | * Fires jQuery events 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | 9 | /* HOOKS */ 10 | // the events should not bubble up the tree 11 | // elsewise nested jmpress would cause buggy behavior 12 | $.jmpress("setActive", function( step, eventData ) { 13 | if(eventData.prevStep !== step) { 14 | $(step).triggerHandler("enterStep"); 15 | } 16 | }); 17 | $.jmpress("setInactive", function( step, eventData ) { 18 | if(eventData.nextStep !== step) { 19 | $(step).triggerHandler("leaveStep"); 20 | } 21 | }); 22 | 23 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/plugins/toggle.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jmpress.toggle plugin 3 | * For binding a key to toggle de/initialization of jmpress.js. 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 'use strict'; 7 | $.jmpress("register", "toggle", function( key, config, initial ) { 8 | var jmpress = this; 9 | $(document).bind("keydown", function( event ) { 10 | if ( event.keyCode === key ) { 11 | if ($(jmpress).jmpress("initialized")) { 12 | $(jmpress).jmpress("deinit"); 13 | } else { 14 | $(jmpress).jmpress(config); 15 | } 16 | } 17 | }); 18 | if ( initial ) { 19 | $(jmpress).jmpress(config); 20 | } 21 | }); 22 | }(jQuery, document, window)); 23 | -------------------------------------------------------------------------------- /python/README.md: -------------------------------------------------------------------------------- 1 | ##About## 2 | get Json data from [http://www.xianuniversity.com/athome/1][1] and communcation with Arduino use pyserial. 3 | 4 | ###curl 5 | 6 | 1.post 7 | 8 | curl --data "_method=PUT&led1=1&sensors1=22&sensors2=12&temperature=14" http://b.phodal.com/athome/1 9 | 10 | 2.get 11 | 12 | curl http://b.phodal.com/athome/1 13 | 14 | ###Python Module### 15 | - JSON 16 | - urllib2 17 | - serial 18 | 19 | ###HOW TO### 20 | pip install pyserial 21 | 22 | OR 23 | 24 | easy_install pyserial 25 | 26 | if Windows download from Internet 27 | ###!Not Work### 28 | Find which is you Arduino Serial Port 29 | if Linux is /dev/ttyACM* 30 | 31 | 32 | 33 | [1]:http://www.xianuniversity.com/athome/1 -------------------------------------------------------------------------------- /doc/ppt/js/languages/ini.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Ini 3 | */ 4 | 5 | function(hljs) { 6 | return { 7 | case_insensitive: true, 8 | illegal: '[^\\s]', 9 | contains: [ 10 | { 11 | className: 'comment', 12 | begin: ';', end: '$' 13 | }, 14 | { 15 | className: 'title', 16 | begin: '^\\[', end: '\\]' 17 | }, 18 | { 19 | className: 'setting', 20 | begin: '^[a-z0-9\\[\\]_-]+[ \\t]*=[ \\t]*', end: '$', 21 | contains: [ 22 | { 23 | className: 'value', 24 | endsWithParent: true, 25 | keywords: 'on off true false yes no', 26 | contains: [hljs.QUOTE_STRING_MODE, hljs.NUMBER_MODE] 27 | } 28 | ] 29 | } 30 | ] 31 | }; 32 | } 33 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/css/animations/basic/fade.css: -------------------------------------------------------------------------------- 1 | .will-fade { 2 | -webkit-transition: opacity 1s; 3 | -moz-transition: opacity 1s; 4 | -ms-transition: opacity 1s; 5 | -o-transition: opacity 1s; 6 | transition: opacity 1s; 7 | 8 | opacity: 0; 9 | } 10 | .will-fade-slow { 11 | -webkit-transition: opacity 2s; 12 | -moz-transition: opacity 2s; 13 | -ms-transition: opacity 2s; 14 | -o-transition: opacity 2s; 15 | transition: opacity 2s; 16 | 17 | opacity: 0; 18 | } 19 | .will-fade-fast { 20 | -webkit-transition: opacity 0.5s; 21 | -moz-transition: opacity 0.5s; 22 | -ms-transition: opacity 0.5s; 23 | -o-transition: opacity 0.5s; 24 | transition: opacity 0.5s; 25 | 26 | opacity: 0; 27 | } 28 | 29 | .do-fade, .do-fade-slow, .do-fade-fast { 30 | opacity: 1; 31 | } 32 | 33 | -------------------------------------------------------------------------------- /python/raspberrypi.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import json 4 | import urllib2 5 | import serial 6 | import time 7 | import RPi.GPIO as GPIO 8 | 9 | GPIO.setmode(GPIO.BOARD) 10 | GPIO.setup(18, GPIO.OUT) 11 | GPIO.setup(22, GPIO.OUT) 12 | 13 | 14 | url="http://b.phodal.com/athome/1" 15 | 16 | while 1: 17 | try: 18 | date=urllib2.urlopen(url) 19 | result=json.load(date) 20 | status=result[0]['led1'] 21 | print status 22 | ser=serial.Serial("/dev/ttyACM0",9600) 23 | if status==1 : 24 | ser.write('1') 25 | GPIO.output(18, GPIO.LOW) 26 | GPIO.output(22, GPIO.LOW) 27 | elif status==0: 28 | ser.write('0') 29 | GPIO.output(18, GPIO.HIGH) 30 | GPIO.output(22, GPIO.HIGH) 31 | time.sleep(1) 32 | except urllib2.URLError: 33 | print "Bad URL or timeout" -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/css/demo/animations.css: -------------------------------------------------------------------------------- 1 | /* ========================================================================== 2 | FLOATING 3 | ========================================================================== */ 4 | @-webkit-keyframes floater { 5 | 0% { margin-top: 0px; } 6 | 50% { margin-top: -20px; } 7 | 100% { margin-top: 0px; } 8 | } 9 | @-moz-keyframes floater { 10 | 0% { margin-top: 0px; } 11 | 50% { margin-top: -20px; } 12 | 100% { margin-top: 0px; } 13 | } 14 | @-ms-keyframes floater { 15 | 0% { margin-top: 0px; } 16 | 50% { margin-top: -20px; } 17 | 100% { margin-top: 0px; } 18 | } 19 | @-o-keyframes floater { 20 | 0% { margin-top: 0px; } 21 | 50% { margin-top: -20px; } 22 | 100% { margin-top: 0px; } 23 | } 24 | @keyframes floater { 25 | 0% { margin-top: 0px; } 26 | 50% { margin-top: -20px; } 27 | 100% { margin-top: 0px; } 28 | } -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/animation/animation.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #FFF; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | .step { 11 | width: 900px; 12 | height: 500px; 13 | 14 | display: block; 15 | padding: 40px 60px; 16 | border-radius: 10px; 17 | 18 | color: black; 19 | 20 | -webkit-box-sizing: border-box; 21 | -moz-box-sizing: border-box; 22 | -ms-box-sizing: border-box; 23 | -o-box-sizing: border-box; 24 | box-sizing: border-box; 25 | } 26 | 27 | /** ANIMATION **/ 28 | .will-fade { 29 | -webkit-transition: opacity 1s; 30 | -moz-transition: opacity 1s; 31 | -ms-transition: opacity 1s; 32 | -o-transition: opacity 1s; 33 | transition: opacity 1s; 34 | 35 | opacity: 0; 36 | } 37 | .fade, .not-supported .will-fade { 38 | opacity: 1; 39 | } 40 | -------------------------------------------------------------------------------- /doc/ppt/fancybox/fancybox.jquery.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fancybox", 3 | "title": "fancyBox", 4 | "description": "fancyBox offers an elegant way to present images, html content and multimedia for webpages", 5 | "keywords": [ 6 | "lightbox", 7 | "effect", 8 | "responsive", 9 | "modal", 10 | "window", 11 | "ui" 12 | ], 13 | "version": "2.1.5", 14 | "author": { 15 | "name": "Janis Skarnelis", 16 | "url": "http://fancyapps.com/contact/" 17 | }, 18 | "licenses": [ 19 | { 20 | "type": "fancyBox", 21 | "url": "http://fancyapps.com/fancybox/#license" 22 | } 23 | ], 24 | "homepage": "http://fancyapps.com/fancybox/", 25 | "docs": "http://fancyapps.com/fancybox/#docs", 26 | "download": "http://fancyapps.com/fancybox/#license", 27 | "bugs": "https://github.com/fancyapps/fancyBox/issues", 28 | "dependencies": { 29 | "jquery": ">=1.7" 30 | } 31 | } -------------------------------------------------------------------------------- /doc/ppt/js/languages/dos.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: DOS .bat 3 | Author: Alexander Makarov (http://rmcreative.ru/) 4 | */ 5 | 6 | function(hljs) { 7 | return { 8 | case_insensitive: true, 9 | keywords: { 10 | flow: 'if else goto for in do call exit not exist errorlevel defined equ neq lss leq gtr geq', 11 | keyword: 'shift cd dir echo setlocal endlocal set pause copy', 12 | stream: 'prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux', 13 | winutils: 'ping net ipconfig taskkill xcopy ren del' 14 | }, 15 | contains: [ 16 | { 17 | className: 'envvar', begin: '%%[^ ]' 18 | }, 19 | { 20 | className: 'envvar', begin: '%[^ ]+?%' 21 | }, 22 | { 23 | className: 'envvar', begin: '![^ ]+?!' 24 | }, 25 | { 26 | className: 'number', begin: '\\b\\d+', 27 | relevance: 0 28 | }, 29 | { 30 | className: 'comment', 31 | begin: '@?rem', end: '$' 32 | } 33 | ] 34 | }; 35 | } 36 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/ascetic.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Original style from softwaremaniacs.org (c) Ivan Sagalaev 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background: white; color: black; 10 | } 11 | 12 | pre .string, 13 | pre .tag .value, 14 | pre .filter .argument, 15 | pre .addition, 16 | pre .change, 17 | pre .apache .tag, 18 | pre .apache .cbracket, 19 | pre .nginx .built_in, 20 | pre .tex .formula { 21 | color: #888; 22 | } 23 | 24 | pre .comment, 25 | pre .template_comment, 26 | pre .shebang, 27 | pre .doctype, 28 | pre .pi, 29 | pre .javadoc, 30 | pre .deletion, 31 | pre .apache .sqbracket { 32 | color: #CCC; 33 | } 34 | 35 | pre .keyword, 36 | pre .tag .title, 37 | pre .ini .title, 38 | pre .lisp .title, 39 | pre .clojure .title, 40 | pre .http .title, 41 | pre .nginx .title, 42 | pre .css .tag, 43 | pre .winutils, 44 | pre .flow, 45 | pre .apache .tag, 46 | pre .tex .command, 47 | pre .request, 48 | pre .status { 49 | font-weight: bold; 50 | } 51 | -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/helpers/jquery.fancybox-thumbs.css: -------------------------------------------------------------------------------- 1 | #fancybox-thumbs { 2 | position: fixed; 3 | left: 0; 4 | width: 100%; 5 | overflow: hidden; 6 | z-index: 8050; 7 | } 8 | 9 | #fancybox-thumbs.bottom { 10 | bottom: 2px; 11 | } 12 | 13 | #fancybox-thumbs.top { 14 | top: 2px; 15 | } 16 | 17 | #fancybox-thumbs ul { 18 | position: relative; 19 | list-style: none; 20 | margin: 0; 21 | padding: 0; 22 | } 23 | 24 | #fancybox-thumbs ul li { 25 | float: left; 26 | padding: 1px; 27 | opacity: 0.5; 28 | } 29 | 30 | #fancybox-thumbs ul li.active { 31 | opacity: 0.75; 32 | padding: 0; 33 | border: 1px solid #fff; 34 | } 35 | 36 | #fancybox-thumbs ul li:hover { 37 | opacity: 1; 38 | } 39 | 40 | #fancybox-thumbs ul li a { 41 | display: block; 42 | position: relative; 43 | overflow: hidden; 44 | border: 1px solid #222; 45 | background: #111; 46 | outline: none; 47 | } 48 | 49 | #fancybox-thumbs ul li img { 50 | display: block; 51 | position: relative; 52 | border: 0; 53 | padding: 0; 54 | max-width: none; 55 | } -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/zoomable/zoomable.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | .step { 11 | width: 2000px; 12 | height: 2000px; 13 | font-size: 1.7em; 14 | background-color: white; 15 | 16 | display: block; 17 | padding: 40px 60px; 18 | border-radius: 10px; 19 | 20 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 21 | border: 1px solid rgba(0, 0, 0, .3); 22 | 23 | color: rgb(102, 102, 102); 24 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 25 | 26 | letter-spacing: -1px; 27 | 28 | -webkit-box-sizing: border-box; 29 | -moz-box-sizing: border-box; 30 | -ms-box-sizing: border-box; 31 | -o-box-sizing: border-box; 32 | box-sizing: border-box; 33 | 34 | -webkit-transition: opacity 1s; 35 | -moz-transition: opacity 1s; 36 | -ms-transition: opacity 1s; 37 | -o-transition: opacity 1s; 38 | transition: opacity 1s; 39 | } -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/css/animations/basic/drive.css: -------------------------------------------------------------------------------- 1 | .will-drive-right, .will-drive-left { 2 | position: relative; 3 | 4 | -webkit-transition: opacity 0.6s, left 1s; 5 | -moz-transition: opacity 0.6s, left 1s; 6 | -ms-transition: opacity 0.6s, left 1s; 7 | -o-transition: opacity 0.6s, left 1s; 8 | transition: opacity 0.6s, left 1s; 9 | 10 | opacity: 0; 11 | } 12 | .will-drive-right { 13 | left: -300px; 14 | } 15 | .will-drive-left { 16 | left: 300px; 17 | } 18 | .will-drive-down, .will-drive-up { 19 | position: relative; 20 | 21 | -webkit-transition: opacity 0.6s, top 1s; 22 | -moz-transition: opacity 0.6s, top 1s; 23 | -ms-transition: opacity 0.6s, top 1s; 24 | -o-transition: opacity 0.6s, top 1s; 25 | transition: opacity 0.6s, top 1s; 26 | 27 | opacity: 0; 28 | } 29 | .will-drive-down { 30 | top: -300px; 31 | } 32 | .will-drive-up { 33 | top: 300px; 34 | } 35 | 36 | .do-drive-up, .do-drive-down { 37 | opacity: 1; 38 | top: 0px; 39 | } 40 | .do-drive-right, .do-drive-left { 41 | opacity: 1; 42 | left: 0px; 43 | } 44 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/css/animations/basic/expand.css: -------------------------------------------------------------------------------- 1 | .will-expand { 2 | -webkit-transition: all 1s; 3 | -moz-transition: all 1s; 4 | -ms-transition: all 1s; 5 | -o-transition: all 1s; 6 | transition: all 1s; 7 | 8 | opacity: 0; 9 | 10 | -webkit-transform: translate3d(0,0,1px) scale(0.7,1); 11 | -moz-transform: translate3d(0,0,1px) scale(0.7,1); 12 | -ms-transform: translate3d(0,0,1px) scale(0.7,1); 13 | -o-transform: translate3d(0,0,1px) scale(0.7,1); 14 | transform: translate3d(0,0,1px) scale(0.7,1); 15 | } 16 | 17 | .do-expand { 18 | opacity: 1; 19 | 20 | -webkit-transform: translate3d(0,0,1px) scale(1,1); 21 | -moz-transform: translate3d(0,0,1px) scale(1,1); 22 | -ms-transform: translate3d(0,0,1px) scale(1,1); 23 | -o-transform: translate3d(0,0,1px) scale(1,1); 24 | transform: translate3d(0,0,1px) scale(1,1); 25 | } 26 | 27 | .has-expand { 28 | -webkit-transform: none; 29 | -moz-transform: none; 30 | -ms-transform: none; 31 | -o-transform: none; 32 | transform: none; 33 | } 34 | 35 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/test/components/ajax.test.js: -------------------------------------------------------------------------------- 1 | /* global QUnit, module, test, asyncTest, expect, start, stop, ok, equal, notEqual, deepEqual, notDeepEqual, strictEqual, notStrictEqual, raises */ 2 | (function($) { 3 | 4 | 'use strict'; 5 | 6 | QUnit.testStart = function(test) { 7 | window.location.hash = '#'; 8 | }; 9 | 10 | module('ajax', { 11 | setup: function() { 12 | this.fixture = '#qunit-fixture #jmpress'; 13 | } 14 | }); 15 | 16 | asyncTest('step was loaded via ajax', 1, function() { 17 | $(this.fixture).find('.step').first().attr('data-src', 'fixtures/ajax.html'); 18 | $(this.fixture).jmpress({ 19 | 'ajax:afterStepLoaded': function(el, e) { 20 | equal( $(el).html(), 'foobar' ); 21 | start(); 22 | } 23 | }); 24 | }); 25 | 26 | asyncTest('ajax:loadStep called', 1, function() { 27 | $(this.fixture).find('.step').first().attr('data-src', 'fixtures/ajax.html'); 28 | $(this.fixture).jmpress({ 29 | 'ajax:loadStep': function(el, e) { 30 | ok( $(el).hasClass('loaded') ); 31 | start(); 32 | } 33 | }); 34 | }); 35 | 36 | }(jQuery)); -------------------------------------------------------------------------------- /doc/如何添加硬件.md: -------------------------------------------------------------------------------- 1 | ##如何添加硬件## 2 | 3 | 对于一个有硬件需求的项目来说,足够多的硬件支持对于这个系统后期的扩展有着相当重要的意义。至于在这个最小物的物联网系统设计的过程中,一开始用的是Arduino只要是对于其他软件开发者来说是相对简单的,我们也需要足够多的硬件支持来支持硬件开发者。 4 | 5 | 通常在这里我们说的硬件是独立于RPI的硬件,也就是用串口通信来控制的部分,只是在这里我们也可以用其他的通信方式来替代串口通信。只是对应于这其他来说,串口通信是比较常用的,及简洁的。 6 | (ps:PRI指的是Raspberry PI,也就是其的缩写。) 7 | 8 | ###关于硬件### 9 | 10 | 硬件的种类比较繁多,可能有FPGA,51,STM32,AVR等等系列的芯片,至于ARM,如果有足够的网络支持我想可以替换掉RPI。 11 | 12 | - 在这里的硬件通常是指可以替换其他硬件,通过使用串口通信的方式进行控制的。 13 | - 硬件的串口通信为比较简洁的两部分,即由接收到的串口通信的1和0来实现简单的控制。 14 | - 这里说的简单的控制指的是我们可以用LED的亮和灭来充当一个状态控制显示。 15 | 16 | 你可以自由的添加硬件种类,不过请让源码simple,当你需要推送到github上面可以联系我。 17 | 18 | ###添加到github### 19 | 20 | ####如果你没有用过github#### 21 | 22 | - 注册一个github帐号 23 | - 建一个简单的项目及使用git版本管理工具来进行基本的操作熟悉 24 | - git clone 项目到你的工作目录。 25 | - 如果你不熟悉git的用法,那么请先clone 26 | - 将你修改完的代码放至指定的目录,hardware/硬件设备 27 | - 确认没有添加其他不必要的东西,如可执行的二进制文件也不是必需的。 28 | - git push 就这简单 29 | - 你还需要联系我或者其他项目成员获得push权限。 30 | 31 | ####注意事项#### 32 | 33 | - 不要push可执行的二进制文件 34 | - 仅工程及源码就足够了 35 | - 如果一个硬件下面有多个不同的源码库 36 | - 假设有lib1以及lib2,硬件为atmega16 37 | - 重新命名原来的项目名为atmega16-lib1,新的项目名为atmega16-lib2再进行push 38 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/css/animations/basic/zoom.css: -------------------------------------------------------------------------------- 1 | .will-zoom { 2 | -webkit-transition: all 1s ease-in-out; 3 | -moz-transition: all 1s ease-in-out; 4 | -ms-transition: all 1s ease-in-out; 5 | -o-transition: all 1s ease-in-out; 6 | transition: all 1s ease-in-out; 7 | 8 | opacity: 0; 9 | 10 | -webkit-transform: translate3d(0,0,1px) scale(10,10); 11 | -moz-transform: translate3d(0,0,1px) scale(10,10); 12 | -ms-transform: translate3d(0,0,1px) scale(10,10); 13 | -o-transform: translate3d(0,0,1px) scale(10,10); 14 | transform: translate3d(0,0,1px) scale(10,10); 15 | } 16 | 17 | .do-zoom { 18 | opacity: 1; 19 | 20 | -webkit-transform: translate3d(0,0,1px) scale(1,1); 21 | -moz-transform: translate3d(0,0,1px) scale(1,1); 22 | -ms-transform: translate3d(0,0,1px) scale(1,1); 23 | -o-transform: translate3d(0,0,1px) scale(1,1); 24 | transform: translate3d(0,0,1px) scale(1,1); 25 | } 26 | 27 | .has-zoom { 28 | -webkit-transform: none; 29 | -moz-transform: none; 30 | -ms-transform: none; 31 | -o-transform: none; 32 | transform: none; 33 | } 34 | 35 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/http.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: HTTP 3 | Description: HTTP request and response headers with automatic body highlighting 4 | Author: Ivan Sagalaev 5 | */ 6 | 7 | function(hljs) { 8 | return { 9 | illegal: '\\S', 10 | contains: [ 11 | { 12 | className: 'status', 13 | begin: '^HTTP/[0-9\\.]+', end: '$', 14 | contains: [{className: 'number', begin: '\\b\\d{3}\\b'}] 15 | }, 16 | { 17 | className: 'request', 18 | begin: '^[A-Z]+ (.*?) HTTP/[0-9\\.]+$', returnBegin: true, end: '$', 19 | contains: [ 20 | { 21 | className: 'string', 22 | begin: ' ', end: ' ', 23 | excludeBegin: true, excludeEnd: true 24 | } 25 | ] 26 | }, 27 | { 28 | className: 'attribute', 29 | begin: '^\\w', end: ': ', excludeEnd: true, 30 | illegal: '\\n', 31 | starts: {className: 'string', end: '$'} 32 | }, 33 | { 34 | begin: '\\n\\n', 35 | starts: {subLanguage: '', endsWithParent: true} 36 | } 37 | ] 38 | }; 39 | } 40 | -------------------------------------------------------------------------------- /license.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 Phodal Huang, http://www.phodal.com 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the 5 | "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, 7 | distribute, sublicense, and/or sell copies of the Software, and to 8 | permit persons to whom the Software is furnished to do so, subject to 9 | the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be 12 | included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /doc/ppt/css/automatic.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | section { 11 | width: 900px; 12 | height: 400px; 13 | font-size: 1em; 14 | min-height: 500px; 15 | background-color: white; 16 | 17 | display: block; 18 | padding: 40px 60px; 19 | border-radius: 10px; 20 | 21 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 22 | border: 1px solid rgba(0, 0, 0, .3); 23 | 24 | color: rgb(102, 102, 102); 25 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 26 | 27 | letter-spacing: -1px; 28 | 29 | -webkit-box-sizing: border-box; 30 | -moz-box-sizing: border-box; 31 | -ms-box-sizing: border-box; 32 | -o-box-sizing: border-box; 33 | box-sizing: border-box; 34 | 35 | -webkit-transition: opacity 1s; 36 | -moz-transition: opacity 1s; 37 | -ms-transition: opacity 1s; 38 | -o-transition: opacity 1s; 39 | transition: opacity 1s; 40 | } 41 | 42 | /** NOT SUPPORTED STYLES **/ 43 | .not-supported section { 44 | position: relative; 45 | opacity: 1; 46 | margin: 20px auto; 47 | } -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/css/animations/basic/warp.css: -------------------------------------------------------------------------------- 1 | .will-warp-right, .will-warp-left { 2 | position: relative; 3 | 4 | -webkit-transition: opacity 0.2s, left 0.5s ease-in-out; 5 | -moz-transition: opacity 0.2s, left 0.5s ease-in-out; 6 | -ms-transition: opacity 0.2s, left 0.5s ease-in-out; 7 | -o-transition: opacity 0.2s, left 0.5s ease-in-out; 8 | transition: opacity 0.2s, left 0.5s ease-in-out; 9 | 10 | opacity: 0; 11 | } 12 | .will-warp-right { 13 | left: -600px; 14 | } 15 | .will-warp-left { 16 | left: 600px; 17 | } 18 | .will-warp-down, .will-warp-up { 19 | position: relative; 20 | 21 | -webkit-transition: opacity 0.2s, top 0.5s ease-in-out; 22 | -moz-transition: opacity 0.2s, top 0.5s ease-in-out; 23 | -ms-transition: opacity 0.2s, top 0.5s ease-in-out; 24 | -o-transition: opacity 0.2s, top 0.5s ease-in-out; 25 | transition: opacity 0.2s, top 0.5s ease-in-out; 26 | 27 | opacity: 0; 28 | } 29 | .will-warp-down { 30 | top: -600px; 31 | } 32 | .will-warp-up { 33 | top: 600px; 34 | } 35 | 36 | .do-warp-up, .do-warp-down { 37 | opacity: 1; 38 | top: 0px; 39 | } 40 | .do-warp-right, .do-warp-left { 41 | opacity: 1; 42 | left: 0px; 43 | } 44 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/form-dynamic/style.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | .step:not(#container) { 11 | width: 900px; 12 | height: 400px; 13 | font-size: 1em; 14 | min-height: 500px; 15 | background-color: white; 16 | 17 | display: block; 18 | padding: 40px 60px; 19 | border-radius: 10px; 20 | 21 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 22 | border: 1px solid rgba(0, 0, 0, .3); 23 | 24 | color: rgb(102, 102, 102); 25 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 26 | 27 | letter-spacing: -1px; 28 | 29 | -webkit-box-sizing: border-box; 30 | -moz-box-sizing: border-box; 31 | -ms-box-sizing: border-box; 32 | -o-box-sizing: border-box; 33 | box-sizing: border-box; 34 | 35 | -webkit-transition: opacity 1s; 36 | -moz-transition: opacity 1s; 37 | -ms-transition: opacity 1s; 38 | -o-transition: opacity 1s; 39 | transition: opacity 1s; 40 | } 41 | 42 | /* fade out inactive slides */ 43 | .step:not(.active):not(.nested-active) { 44 | opacity: 0.3; 45 | } 46 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/automatic-layout/automatic.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | section { 11 | width: 900px; 12 | height: 400px; 13 | font-size: 1em; 14 | min-height: 500px; 15 | background-color: white; 16 | 17 | display: block; 18 | padding: 40px 60px; 19 | border-radius: 10px; 20 | 21 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 22 | border: 1px solid rgba(0, 0, 0, .3); 23 | 24 | color: rgb(102, 102, 102); 25 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 26 | 27 | letter-spacing: -1px; 28 | 29 | -webkit-box-sizing: border-box; 30 | -moz-box-sizing: border-box; 31 | -ms-box-sizing: border-box; 32 | -o-box-sizing: border-box; 33 | box-sizing: border-box; 34 | 35 | -webkit-transition: opacity 1s; 36 | -moz-transition: opacity 1s; 37 | -ms-transition: opacity 1s; 38 | -o-transition: opacity 1s; 39 | transition: opacity 1s; 40 | } 41 | 42 | /** NOT SUPPORTED STYLES **/ 43 | .not-supported section { 44 | position: relative; 45 | opacity: 1; 46 | margin: 20px auto; 47 | } -------------------------------------------------------------------------------- /doc/ppt/js/languages/parser3.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Parser3 3 | Requires: xml.js 4 | Author: Oleg Volchkov 5 | */ 6 | 7 | function(hljs) { 8 | return { 9 | subLanguage: 'xml', 10 | contains: [ 11 | { 12 | className: 'comment', 13 | begin: '^#', end: '$' 14 | }, 15 | { 16 | className: 'comment', 17 | begin: '\\^rem{', end: '}', 18 | relevance: 10, 19 | contains: [ 20 | { 21 | begin: '{', end: '}', 22 | contains: ['self'] 23 | } 24 | ] 25 | }, 26 | { 27 | className: 'preprocessor', 28 | begin: '^@(?:BASE|USE|CLASS|OPTIONS)$', 29 | relevance: 10 30 | }, 31 | { 32 | className: 'title', 33 | begin: '@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$' 34 | }, 35 | { 36 | className: 'variable', 37 | begin: '\\$\\{?[\\w\\-\\.\\:]+\\}?' 38 | }, 39 | { 40 | className: 'keyword', 41 | begin: '\\^[\\w\\-\\.\\:]+' 42 | }, 43 | { 44 | className: 'number', 45 | begin: '\\^#[0-9a-fA-F]+' 46 | }, 47 | hljs.C_NUMBER_MODE 48 | ] 49 | }; 50 | } 51 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/json.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: JSON 3 | Author: Ivan Sagalaev 4 | */ 5 | 6 | function(hljs) { 7 | var LITERALS = {literal: 'true false null'}; 8 | var TYPES = [ 9 | hljs.QUOTE_STRING_MODE, 10 | hljs.C_NUMBER_MODE 11 | ]; 12 | var VALUE_CONTAINER = { 13 | className: 'value', 14 | end: ',', endsWithParent: true, excludeEnd: true, 15 | contains: TYPES, 16 | keywords: LITERALS 17 | }; 18 | var OBJECT = { 19 | begin: '{', end: '}', 20 | contains: [ 21 | { 22 | className: 'attribute', 23 | begin: '\\s*"', end: '"\\s*:\\s*', excludeBegin: true, excludeEnd: true, 24 | contains: [hljs.BACKSLASH_ESCAPE], 25 | illegal: '\\n', 26 | starts: VALUE_CONTAINER 27 | } 28 | ], 29 | illegal: '\\S' 30 | }; 31 | var ARRAY = { 32 | begin: '\\[', end: '\\]', 33 | contains: [hljs.inherit(VALUE_CONTAINER, {className: null})], // inherit is also a workaround for a bug that makes shared modes with endsWithParent compile only the ending of one of the parents 34 | illegal: '\\S' 35 | }; 36 | TYPES.splice(TYPES.length, 0, OBJECT, ARRAY); 37 | return { 38 | contains: TYPES, 39 | keywords: LITERALS, 40 | illegal: '\\S' 41 | }; 42 | } 43 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/test/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | jmpress.js test suite 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |

jmpress.js test suite

21 |

22 |
23 |

24 |
    25 |
    26 |
    27 |
    28 | About Step 29 |
    30 |
    31 | Download Step 32 |
    33 |
    34 | Docs Step 35 |
    36 |
    37 |
    38 | 39 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/smalltalk.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Smalltalk 3 | Author: Vladimir Gubarkov 4 | */ 5 | 6 | function(hljs) { 7 | var VAR_IDENT_RE = '[a-z][a-zA-Z0-9_]*'; 8 | var CHAR = { 9 | className: 'char', 10 | begin: '\\$.{1}' 11 | }; 12 | var SYMBOL = { 13 | className: 'symbol', 14 | begin: '#' + hljs.UNDERSCORE_IDENT_RE 15 | }; 16 | return { 17 | keywords: 'self super nil true false thisContext', // only 6 18 | contains: [ 19 | { 20 | className: 'comment', 21 | begin: '"', end: '"', 22 | relevance: 0 23 | }, 24 | hljs.APOS_STRING_MODE, 25 | { 26 | className: 'class', 27 | begin: '\\b[A-Z][A-Za-z0-9_]*', 28 | relevance: 0 29 | }, 30 | { 31 | className: 'method', 32 | begin: VAR_IDENT_RE + ':' 33 | }, 34 | hljs.C_NUMBER_MODE, 35 | SYMBOL, 36 | CHAR, 37 | { 38 | className: 'localvars', 39 | begin: '\\|\\s*((' + VAR_IDENT_RE + ')\\s*)+\\|' 40 | }, 41 | { 42 | className: 'array', 43 | begin: '\\#\\(', end: '\\)', 44 | contains: [ 45 | hljs.APOS_STRING_MODE, 46 | CHAR, 47 | hljs.C_NUMBER_MODE, 48 | SYMBOL 49 | ] 50 | } 51 | ] 52 | }; 53 | } 54 | -------------------------------------------------------------------------------- /doc/nginx/127.0.0.2.conf: -------------------------------------------------------------------------------- 1 | log_format 127.0.0.2 '$remote_addr - $remote_user [$time_local] "$request" ' 2 | '$status $body_bytes_sent "$http_referer" ' 3 | '"$http_user_agent" $http_x_forwarded_for'; 4 | server 5 | { 6 | listen 80; 7 | server_name 127.0.0.2; 8 | index index.html index.htm index.php default.html default.htm default.php; 9 | root /home/wwwroot/default/laravel/public; 10 | 11 | include other.conf; 12 | # Enforce No WWW - I put this in an include: 13 | # include /etc/nginx/includes/enforce_non_www; 14 | if ($host ~* ^www\.(.*)) 15 | { 16 | set $host_without_www $1; 17 | rewrite ^/(.*)$ $scheme://$host_without_www/$1 permanent; 18 | } 19 | 20 | # Check if file exists 21 | if (!-e $request_filename) 22 | { 23 | rewrite ^/(.*)$ /index.php?/$1 last; 24 | break; 25 | } 26 | 27 | location ~ .*\.(php|php5)?$ 28 | { 29 | try_files $uri =404; 30 | fastcgi_pass unix:/tmp/php-cgi.sock; 31 | fastcgi_index index.php; 32 | include fcgi.conf; 33 | } 34 | 35 | location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ 36 | { 37 | expires 30d; 38 | } 39 | 40 | location ~ .*\.(js|css)?$ 41 | { 42 | expires 12h; 43 | } 44 | 45 | access_log /home/wwwlogs/127.0.0.2.log 127.0.0.2; 46 | } 47 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/tomorrow.css: -------------------------------------------------------------------------------- 1 | /* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ 2 | .tomorrow-comment, pre .comment, pre .title { 3 | color: #8e908c; 4 | } 5 | 6 | .tomorrow-red, pre .variable, pre .attribute, pre .tag, pre .regexp, pre .ruby .constant, pre .xml .tag .title, pre .xml .pi, pre .xml .doctype, pre .html .doctype, pre .css .id, pre .css .class, pre .css .pseudo { 7 | color: #c82829; 8 | } 9 | 10 | .tomorrow-orange, pre .number, pre .preprocessor, pre .built_in, pre .literal, pre .params, pre .constant { 11 | color: #f5871f; 12 | } 13 | 14 | .tomorrow-yellow, pre .class, pre .ruby .class .title, pre .css .rules .attribute { 15 | color: #eab700; 16 | } 17 | 18 | .tomorrow-green, pre .string, pre .value, pre .inheritance, pre .header, pre .ruby .symbol, pre .xml .cdata { 19 | color: #718c00; 20 | } 21 | 22 | .tomorrow-aqua, pre .css .hexcolor { 23 | color: #3e999f; 24 | } 25 | 26 | .tomorrow-blue, pre .function, pre .python .decorator, pre .python .title, pre .ruby .function .title, pre .ruby .title .keyword, pre .perl .sub, pre .javascript .title, pre .coffeescript .title { 27 | color: #4271ae; 28 | } 29 | 30 | .tomorrow-purple, pre .keyword, pre .javascript .function { 31 | color: #8959a8; 32 | } 33 | 34 | pre code { 35 | display: block; 36 | background: white; 37 | color: #4d4d4c; 38 | padding: 0.5em; 39 | } 40 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/ajax/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | jmpress.js | ajax example 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
    20 |
    21 |

    The next 3 slided load content via ajax.

    22 |
    23 |
    24 |
    25 |
    26 |
    27 | 28 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/profile.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Python profile 3 | Description: Python profiler results 4 | Author: Brian Beck 5 | */ 6 | 7 | function(hljs) { 8 | return { 9 | contains: [ 10 | hljs.C_NUMBER_MODE, 11 | { 12 | className: 'builtin', 13 | begin: '{', end: '}$', 14 | excludeBegin: true, excludeEnd: true, 15 | contains: [hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE], 16 | relevance: 0 17 | }, 18 | { 19 | className: 'filename', 20 | begin: '[a-zA-Z_][\\da-zA-Z_]+\\.[\\da-zA-Z_]{1,3}', end: ':', 21 | excludeEnd: true 22 | }, 23 | { 24 | className: 'header', 25 | begin: '(ncalls|tottime|cumtime)', end: '$', 26 | keywords: 'ncalls tottime|10 cumtime|10 filename', 27 | relevance: 10 28 | }, 29 | { 30 | className: 'summary', 31 | begin: 'function calls', end: '$', 32 | contains: [hljs.C_NUMBER_MODE], 33 | relevance: 10 34 | }, 35 | hljs.APOS_STRING_MODE, 36 | hljs.QUOTE_STRING_MODE, 37 | { 38 | className: 'function', 39 | begin: '\\(', end: '\\)$', 40 | contains: [{ 41 | className: 'title', 42 | begin: hljs.UNDERSCORE_IDENT_RE, 43 | relevance: 0 44 | }], 45 | relevance: 0 46 | } 47 | ] 48 | }; 49 | } 50 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/tab-control/style.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: Verdana, sans-serif; 3 | min-height: 740px; 4 | background-color: #ddd; 5 | -webkit-font-smoothing: antialiased; 6 | } 7 | 8 | .nav.jmpress { 9 | width: 600px; 10 | height: 400px; 11 | background: #F29E88; 12 | border: 5px solid #525855; 13 | border-radius: 5px; 14 | } 15 | 16 | .nav.jmpress section { 17 | width: 450px; 18 | height: 200px; 19 | padding: 25px; 20 | margin-bottom: 30px; 21 | 22 | -webkit-transition: 1s; 23 | -moz-transition: 1s; 24 | -ms-transition: 1s; 25 | -o-transition: 1s; 26 | transition: 1s; 27 | 28 | /*background-color: #B2342C;*/ 29 | background-color: #D55D5C; 30 | border: 2px solid #B2342C; 31 | border-radius: 5px; 32 | overflow: hidden; 33 | color: #1E0403; 34 | 35 | cursor: pointer; 36 | } 37 | 38 | .nav.jmpress section.active { 39 | color: #1E0403; 40 | 41 | cursor: inherit; 42 | } 43 | 44 | .nav.jmpress section p { 45 | -webkit-transition: 1s; 46 | -moz-transition: 1s; 47 | -ms-transition: 1s; 48 | -o-transition: 1s; 49 | transition: 1s; 50 | } 51 | 52 | .nav.jmpress section:not(.active) p { 53 | /*font-size: 6pt;*/ 54 | /*opacity: 0;*/ 55 | } 56 | 57 | .nav.jmpress section h1 { 58 | -webkit-transition: 1s; 59 | -moz-transition: 1s; 60 | -ms-transition: 1s; 61 | -o-transition: 1s; 62 | transition: 1s; 63 | } 64 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/nested-templates/nested-template.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | font-size: 20px; 8 | } 9 | 10 | /** STEP STYLES **/ 11 | .step { 12 | position: absolute; 13 | width: 900px; 14 | height: 400px; 15 | font-size: 1em; 16 | min-height: 500px; 17 | background-color: white; 18 | 19 | display: block; 20 | padding: 40px 60px; 21 | border-radius: 10px; 22 | 23 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 24 | border: 10px solid rgba(0, 0, 0, 1); 25 | 26 | color: rgb(102, 102, 102); 27 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 28 | 29 | letter-spacing: -1px; 30 | 31 | -webkit-box-sizing: border-box; 32 | -moz-box-sizing: border-box; 33 | -ms-box-sizing: border-box; 34 | -o-box-sizing: border-box; 35 | box-sizing: border-box; 36 | 37 | -webkit-transition: opacity 1s; 38 | -moz-transition: opacity 1s; 39 | -ms-transition: opacity 1s; 40 | -o-transition: opacity 1s; 41 | transition: opacity 1s; 42 | } 43 | 44 | /* fade out inactive slides */ 45 | .step:not(.active):not(.nested-active) { 46 | opacity: 0.3; 47 | } 48 | 49 | .step > .step { 50 | font-size: 70px; 51 | } 52 | 53 | /** NOT SUPPORTED STYLES **/ 54 | .not-supported .step { 55 | position: relative; 56 | opacity: 1; 57 | margin: 20px auto; 58 | } 59 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/tomorrow-night-bright.css: -------------------------------------------------------------------------------- 1 | /* Tomorrow Night Bright Theme */ 2 | /* Original theme - https://github.com/chriskempson/tomorrow-theme */ 3 | /* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ 4 | .tomorrow-comment, pre .comment, pre .title { 5 | color: #969896; 6 | } 7 | 8 | .tomorrow-red, pre .variable, pre .attribute, pre .tag, pre .regexp, pre .ruby .constant, pre .xml .tag .title, pre .xml .pi, pre .xml .doctype, pre .html .doctype, pre .css .id, pre .css .class, pre .css .pseudo { 9 | color: #d54e53; 10 | } 11 | 12 | .tomorrow-orange, pre .number, pre .preprocessor, pre .built_in, pre .literal, pre .params, pre .constant { 13 | color: #e78c45; 14 | } 15 | 16 | .tomorrow-yellow, pre .class, pre .ruby .class .title, pre .css .rules .attribute { 17 | color: #e7c547; 18 | } 19 | 20 | .tomorrow-green, pre .string, pre .value, pre .inheritance, pre .header, pre .ruby .symbol, pre .xml .cdata { 21 | color: #b9ca4a; 22 | } 23 | 24 | .tomorrow-aqua, pre .css .hexcolor { 25 | color: #70c0b1; 26 | } 27 | 28 | .tomorrow-blue, pre .function, pre .python .decorator, pre .python .title, pre .ruby .function .title, pre .ruby .title .keyword, pre .perl .sub, pre .javascript .title, pre .coffeescript .title { 29 | color: #7aa6da; 30 | } 31 | 32 | .tomorrow-purple, pre .keyword, pre .javascript .function { 33 | color: #c397d8; 34 | } 35 | 36 | pre code { 37 | display: block; 38 | background: black; 39 | color: #eaeaea; 40 | padding: 0.5em; 41 | } 42 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/tomorrow-night-eighties.css: -------------------------------------------------------------------------------- 1 | /* Tomorrow Night Eighties Theme */ 2 | /* Original theme - https://github.com/chriskempson/tomorrow-theme */ 3 | /* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ 4 | .tomorrow-comment, pre .comment, pre .title { 5 | color: #999999; 6 | } 7 | 8 | .tomorrow-red, pre .variable, pre .attribute, pre .tag, pre .regexp, pre .ruby .constant, pre .xml .tag .title, pre .xml .pi, pre .xml .doctype, pre .html .doctype, pre .css .id, pre .css .class, pre .css .pseudo { 9 | color: #f2777a; 10 | } 11 | 12 | .tomorrow-orange, pre .number, pre .preprocessor, pre .built_in, pre .literal, pre .params, pre .constant { 13 | color: #f99157; 14 | } 15 | 16 | .tomorrow-yellow, pre .class, pre .ruby .class .title, pre .css .rules .attribute { 17 | color: #ffcc66; 18 | } 19 | 20 | .tomorrow-green, pre .string, pre .value, pre .inheritance, pre .header, pre .ruby .symbol, pre .xml .cdata { 21 | color: #99cc99; 22 | } 23 | 24 | .tomorrow-aqua, pre .css .hexcolor { 25 | color: #66cccc; 26 | } 27 | 28 | .tomorrow-blue, pre .function, pre .python .decorator, pre .python .title, pre .ruby .function .title, pre .ruby .title .keyword, pre .perl .sub, pre .javascript .title, pre .coffeescript .title { 29 | color: #6699cc; 30 | } 31 | 32 | .tomorrow-purple, pre .keyword, pre .javascript .function { 33 | color: #cc99cc; 34 | } 35 | 36 | pre code { 37 | display: block; 38 | background: #2d2d2d; 39 | color: #cccccc; 40 | padding: 0.5em; 41 | } 42 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/simple/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | jmpress.js | simple example 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
    20 |
    21 |

    Hello! My name is jmpress.js...

    22 |
    23 |
    24 |

    and this is a really simple demo.

    25 |
    26 |
    27 |

    You might think it is boring...

    28 |
    29 |
    30 |

    but that is the point. This is a simple example.

    31 |
    32 |
    33 | 34 |
    35 |

    Use arrow keys to navigate

    36 |
    37 | 38 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/go.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Go 3 | Author: Stephan Kountso aka StepLg 4 | Contributors: Evgeny Stepanischev 5 | Description: Google go language (golang). For info about language see http://golang.org/ 6 | */ 7 | 8 | function(hljs) { 9 | var GO_KEYWORDS = { 10 | keyword: 11 | 'break default func interface select case map struct chan else goto package switch ' + 12 | 'const fallthrough if range type continue for import return var go defer', 13 | constant: 14 | 'true false iota nil', 15 | typename: 16 | 'bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 ' + 17 | 'uint16 uint32 uint64 int uint uintptr rune', 18 | built_in: 19 | 'append cap close complex copy imag len make new panic print println real recover delete' 20 | }; 21 | return { 22 | keywords: GO_KEYWORDS, 23 | illegal: ' 4 | */ 5 | 6 | function(hljs) { 7 | return { 8 | keywords: 'false int abstract private char interface boolean static null if for true ' + 9 | 'while long throw finally protected extends final implements return void enum else ' + 10 | 'break new catch byte super class case short default double public try this switch ' + 11 | 'continue reverse firstfast firstonly forupdate nofetch sum avg minof maxof count ' + 12 | 'order group by asc desc index hint like dispaly edit client server ttsbegin ' + 13 | 'ttscommit str real date container anytype common div mod', 14 | contains: [ 15 | hljs.C_LINE_COMMENT_MODE, 16 | hljs.C_BLOCK_COMMENT_MODE, 17 | hljs.APOS_STRING_MODE, 18 | hljs.QUOTE_STRING_MODE, 19 | hljs.C_NUMBER_MODE, 20 | { 21 | className: 'preprocessor', 22 | begin: '#', end: '$' 23 | }, 24 | { 25 | className: 'class', 26 | beginWithKeyword: true, end: '{', 27 | illegal: ':', 28 | keywords: 'class interface', 29 | contains: [ 30 | { 31 | className: 'inheritance', 32 | beginWithKeyword: true, 33 | keywords: 'extends implements', 34 | relevance: 10 35 | }, 36 | { 37 | className: 'title', 38 | begin: hljs.UNDERSCORE_IDENT_RE 39 | } 40 | ] 41 | } 42 | ] 43 | }; 44 | } 45 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jmpress.js", 3 | "version": "0.4.5", 4 | "title": "jQuery.jmpress()", 5 | "description": "A jQuery plugin to build a website on the infinite canvas.", 6 | "homepage": "http://jmpressjs.github.com/jmpress.js", 7 | "author": { 8 | "name": "Kyle Robinson Young @shama & Tobias Koppers @sokra", 9 | "url": "https://github.com/jmpressjs" 10 | }, 11 | "licenses": [ 12 | { 13 | "type": "MIT", 14 | "url": "http://www.opensource.org/licenses/mit-license.php" 15 | } 16 | ], 17 | "maintainers": [ 18 | { 19 | "name": "Kyle Robinson Young", 20 | "url": "https://github.com/shama" 21 | }, 22 | { 23 | "name": "Tobias Koppers", 24 | "url": "https://github.com/sokra" 25 | } 26 | ], 27 | "repository": { 28 | "type": "git", 29 | "url": "git://github.com/jmpressjs/jmpress.js.git" 30 | }, 31 | "bugs": { 32 | "url": "https://github.com/jmpressjs/jmpress.js/issues" 33 | }, 34 | "files": [ 35 | "dist/jmpress.js" 36 | ], 37 | "scripts": { 38 | "test": "grunt qunit" 39 | }, 40 | "dependencies": {}, 41 | "devDependencies": { 42 | "grunt": "~0.4.1", 43 | "grunt-contrib-cssmin": "~0.6.0", 44 | "grunt-contrib-jshint": "~0.5.4", 45 | "grunt-contrib-concat": "~0.3.0", 46 | "grunt-contrib-qunit": "~0.2.2", 47 | "grunt-contrib-watch": "~0.4.3", 48 | "grunt-contrib-uglify": "~0.2.1", 49 | "grunt-contrib-clean": "~0.4.1", 50 | "matchdep": "~0.1.2" 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/tex.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: TeX 3 | Author: Vladimir Moskva 4 | Website: http://fulc.ru/ 5 | */ 6 | 7 | function(hljs) { 8 | var COMMAND1 = { 9 | className: 'command', 10 | begin: '\\\\[a-zA-Zа-яА-я]+[\\*]?' 11 | }; 12 | var COMMAND2 = { 13 | className: 'command', 14 | begin: '\\\\[^a-zA-Zа-яА-я0-9]' 15 | }; 16 | var SPECIAL = { 17 | className: 'special', 18 | begin: '[{}\\[\\]\\&#~]', 19 | relevance: 0 20 | }; 21 | 22 | return { 23 | contains: [ 24 | { // parameter 25 | begin: '\\\\[a-zA-Zа-яА-я]+[\\*]? *= *-?\\d*\\.?\\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?', 26 | returnBegin: true, 27 | contains: [ 28 | COMMAND1, COMMAND2, 29 | { 30 | className: 'number', 31 | begin: ' *=', end: '-?\\d*\\.?\\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?', 32 | excludeBegin: true 33 | } 34 | ], 35 | relevance: 10 36 | }, 37 | COMMAND1, COMMAND2, 38 | SPECIAL, 39 | { 40 | className: 'formula', 41 | begin: '\\$\\$', end: '\\$\\$', 42 | contains: [COMMAND1, COMMAND2, SPECIAL], 43 | relevance: 0 44 | }, 45 | { 46 | className: 'formula', 47 | begin: '\\$', end: '\\$', 48 | contains: [COMMAND1, COMMAND2, SPECIAL], 49 | relevance: 0 50 | }, 51 | { 52 | className: 'comment', 53 | begin: '%', end: '$', 54 | relevance: 0 55 | } 56 | ] 57 | }; 58 | } 59 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/java.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Java 3 | Author: Vsevolod Solovyov 4 | */ 5 | 6 | function(hljs) { 7 | return { 8 | keywords: 9 | 'false synchronized int abstract float private char boolean static null if const ' + 10 | 'for true while long throw strictfp finally protected import native final return void ' + 11 | 'enum else break transient new catch instanceof byte super volatile case assert short ' + 12 | 'package default double public try this switch continue throws', 13 | contains: [ 14 | { 15 | className: 'javadoc', 16 | begin: '/\\*\\*', end: '\\*/', 17 | contains: [{ 18 | className: 'javadoctag', begin: '@[A-Za-z]+' 19 | }], 20 | relevance: 10 21 | }, 22 | hljs.C_LINE_COMMENT_MODE, 23 | hljs.C_BLOCK_COMMENT_MODE, 24 | hljs.APOS_STRING_MODE, 25 | hljs.QUOTE_STRING_MODE, 26 | { 27 | className: 'class', 28 | beginWithKeyword: true, end: '{', 29 | keywords: 'class interface', 30 | illegal: ':', 31 | contains: [ 32 | { 33 | beginWithKeyword: true, 34 | keywords: 'extends implements', 35 | relevance: 10 36 | }, 37 | { 38 | className: 'title', 39 | begin: hljs.UNDERSCORE_IDENT_RE 40 | } 41 | ] 42 | }, 43 | hljs.C_NUMBER_MODE, 44 | { 45 | className: 'annotation', begin: '@[A-Za-z]+' 46 | } 47 | ] 48 | }; 49 | } 50 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/tomorrow-night.css: -------------------------------------------------------------------------------- 1 | /* Tomorrow Night Theme */ 2 | /* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ 3 | /* Original theme - https://github.com/chriskempson/tomorrow-theme */ 4 | /* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ 5 | .tomorrow-comment, pre .comment, pre .title { 6 | color: #969896; 7 | } 8 | 9 | .tomorrow-red, pre .variable, pre .attribute, pre .tag, pre .regexp, pre .ruby .constant, pre .xml .tag .title, pre .xml .pi, pre .xml .doctype, pre .html .doctype, pre .css .id, pre .css .class, pre .css .pseudo { 10 | color: #cc6666; 11 | } 12 | 13 | .tomorrow-orange, pre .number, pre .preprocessor, pre .built_in, pre .literal, pre .params, pre .constant { 14 | color: #de935f; 15 | } 16 | 17 | .tomorrow-yellow, pre .class, pre .ruby .class .title, pre .css .rules .attribute { 18 | color: #f0c674; 19 | } 20 | 21 | .tomorrow-green, pre .string, pre .value, pre .inheritance, pre .header, pre .ruby .symbol, pre .xml .cdata { 22 | color: #b5bd68; 23 | } 24 | 25 | .tomorrow-aqua, pre .css .hexcolor { 26 | color: #8abeb7; 27 | } 28 | 29 | .tomorrow-blue, pre .function, pre .python .decorator, pre .python .title, pre .ruby .function .title, pre .ruby .title .keyword, pre .perl .sub, pre .javascript .title, pre .coffeescript .title { 30 | color: #81a2be; 31 | } 32 | 33 | .tomorrow-purple, pre .keyword, pre .javascript .function { 34 | color: #b294bb; 35 | } 36 | 37 | pre code { 38 | display: block; 39 | background: #1d1f21; 40 | color: #c5c8c6; 41 | padding: 0.5em; 42 | } 43 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/tomorrow-night-blue.css: -------------------------------------------------------------------------------- 1 | /* Tomorrow Night Blue Theme */ 2 | /* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ 3 | /* Original theme - https://github.com/chriskempson/tomorrow-theme */ 4 | /* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ 5 | .tomorrow-comment, pre .comment, pre .title { 6 | color: #7285b7; 7 | } 8 | 9 | .tomorrow-red, pre .variable, pre .attribute, pre .tag, pre .regexp, pre .ruby .constant, pre .xml .tag .title, pre .xml .pi, pre .xml .doctype, pre .html .doctype, pre .css .id, pre .css .class, pre .css .pseudo { 10 | color: #ff9da4; 11 | } 12 | 13 | .tomorrow-orange, pre .number, pre .preprocessor, pre .built_in, pre .literal, pre .params, pre .constant { 14 | color: #ffc58f; 15 | } 16 | 17 | .tomorrow-yellow, pre .class, pre .ruby .class .title, pre .css .rules .attribute { 18 | color: #ffeead; 19 | } 20 | 21 | .tomorrow-green, pre .string, pre .value, pre .inheritance, pre .header, pre .ruby .symbol, pre .xml .cdata { 22 | color: #d1f1a9; 23 | } 24 | 25 | .tomorrow-aqua, pre .css .hexcolor { 26 | color: #99ffff; 27 | } 28 | 29 | .tomorrow-blue, pre .function, pre .python .decorator, pre .python .title, pre .ruby .function .title, pre .ruby .title .keyword, pre .perl .sub, pre .javascript .title, pre .coffeescript .title { 30 | color: #bbdaff; 31 | } 32 | 33 | .tomorrow-purple, pre .keyword, pre .javascript .function { 34 | color: #ebbbff; 35 | } 36 | 37 | pre code { 38 | display: block; 39 | background: #002451; 40 | color: white; 41 | padding: 0.5em; 42 | } 43 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/erlang-repl.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Erlang REPL 3 | Author: Sergey Ignatov 4 | */ 5 | 6 | function(hljs) { 7 | return { 8 | keywords: { 9 | special_functions: 10 | 'spawn spawn_link self', 11 | reserved: 12 | 'after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if ' + 13 | 'let not of or orelse|10 query receive rem try when xor' 14 | }, 15 | contains: [ 16 | { 17 | className: 'input_number', begin: '^[0-9]+> ', 18 | relevance: 10 19 | }, 20 | { 21 | className: 'comment', 22 | begin: '%', end: '$' 23 | }, 24 | { 25 | className: 'number', 26 | begin: '\\b(\\d+#[a-fA-F0-9]+|\\d+(\\.\\d+)?([eE][-+]?\\d+)?)', 27 | relevance: 0 28 | }, 29 | hljs.APOS_STRING_MODE, 30 | hljs.QUOTE_STRING_MODE, 31 | { 32 | className: 'constant', begin: '\\?(::)?([A-Z]\\w*(::)?)+' 33 | }, 34 | { 35 | className: 'arrow', begin: '->' 36 | }, 37 | { 38 | className: 'ok', begin: 'ok' 39 | }, 40 | { 41 | className: 'exclamation_mark', begin: '!' 42 | }, 43 | { 44 | className: 'function_or_atom', 45 | begin: '(\\b[a-z\'][a-zA-Z0-9_\']*:[a-z\'][a-zA-Z0-9_\']*)|(\\b[a-z\'][a-zA-Z0-9_\']*)', 46 | relevance: 0 47 | }, 48 | { 49 | className: 'variable', 50 | begin: '[A-Z][a-zA-Z0-9_\']*', 51 | relevance: 0 52 | } 53 | ] 54 | }; 55 | } 56 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/bash.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Bash 3 | Author: vah 4 | */ 5 | 6 | function(hljs) { 7 | var BASH_LITERAL = 'true false'; 8 | var VAR1 = { 9 | className: 'variable', begin: '\\$[a-zA-Z0-9_]+\\b' 10 | }; 11 | var VAR2 = { 12 | className: 'variable', begin: '\\${([^}]|\\\\})+}' 13 | }; 14 | var QUOTE_STRING = { 15 | className: 'string', 16 | begin: '"', end: '"', 17 | illegal: '\\n', 18 | contains: [hljs.BACKSLASH_ESCAPE, VAR1, VAR2], 19 | relevance: 0 20 | }; 21 | var APOS_STRING = { 22 | className: 'string', 23 | begin: '\'', end: '\'', 24 | contains: [{begin: '\'\''}], 25 | relevance: 0 26 | }; 27 | var TEST_CONDITION = { 28 | className: 'test_condition', 29 | begin: '', end: '', 30 | contains: [QUOTE_STRING, APOS_STRING, VAR1, VAR2], 31 | keywords: { 32 | literal: BASH_LITERAL 33 | }, 34 | relevance: 0 35 | }; 36 | 37 | return { 38 | keywords: { 39 | keyword: 'if then else fi for break continue while in do done echo exit return set declare', 40 | literal: BASH_LITERAL 41 | }, 42 | contains: [ 43 | { 44 | className: 'shebang', 45 | begin: '(#!\\/bin\\/bash)|(#!\\/bin\\/sh)', 46 | relevance: 10 47 | }, 48 | VAR1, 49 | VAR2, 50 | hljs.HASH_COMMENT_MODE, 51 | QUOTE_STRING, 52 | APOS_STRING, 53 | hljs.inherit(TEST_CONDITION, {begin: '\\[ ', end: ' \\]', relevance: 0}), 54 | hljs.inherit(TEST_CONDITION, {begin: '\\[\\[ ', end: ' \\]\\]'}) 55 | ] 56 | }; 57 | } 58 | -------------------------------------------------------------------------------- /doc/nginx/nginx.conf: -------------------------------------------------------------------------------- 1 | server { 2 | listen 80; 3 | server_name www.example.com; 4 | 5 | root /var/www/vhosts/example.com/public/; 6 | 7 | location / 8 | { 9 | index index.php index.html index.htm; 10 | } 11 | 12 | # Enforce No WWW - I put this in an include: 13 | # include /etc/nginx/includes/enforce_non_www; 14 | if ($host ~* ^www\.(.*)) 15 | { 16 | set $host_without_www $1; 17 | rewrite ^/(.*)$ $scheme://$host_without_www/$1 permanent; 18 | } 19 | 20 | # Check if file exists 21 | if (!-e $request_filename) 22 | { 23 | rewrite ^/(.*)$ /index.php?/$1 last; 24 | break; 25 | } 26 | 27 | # catch all 28 | error_page 404 /index.php; 29 | 30 | # The PHP Inclusion Block 31 | # include /etc/nginx/includes/php; 32 | location ~ \..*/.*\.php$ 33 | { 34 | # I'm pretty sure this stops people trying to traverse your site to get to other PHP files 35 | return 403; 36 | } 37 | location ~ \.php(.*)$ 38 | { 39 | # Pass the PHP files to PHP FastCGI for processing 40 | try_files $uri = 404; 41 | fastcgi_split_path_info ^(.+\.php)(/.+)$; 42 | include /etc/nginx/fastcgi_params; 43 | fastcgi_pass 127.0.0.1:9000; 44 | fastcgi_index index.php; 45 | } 46 | 47 | # Deny Any Access to .htaccess Files That May Be Present (not usually in issue in Laravel) 48 | # include /etc/nginx/includes/deny_htaccess; 49 | location ~ /\.ht 50 | { 51 | deny all; 52 | } 53 | 54 | } 55 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/diff.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Diff 3 | Description: Unified and context diff 4 | Author: Vasily Polovnyov 5 | */ 6 | 7 | function(hljs) { 8 | return { 9 | case_insensitive: true, 10 | contains: [ 11 | { 12 | className: 'chunk', 13 | begin: '^\\@\\@ +\\-\\d+,\\d+ +\\+\\d+,\\d+ +\\@\\@$', 14 | relevance: 10 15 | }, 16 | { 17 | className: 'chunk', 18 | begin: '^\\*\\*\\* +\\d+,\\d+ +\\*\\*\\*\\*$', 19 | relevance: 10 20 | }, 21 | { 22 | className: 'chunk', 23 | begin: '^\\-\\-\\- +\\d+,\\d+ +\\-\\-\\-\\-$', 24 | relevance: 10 25 | }, 26 | { 27 | className: 'header', 28 | begin: 'Index: ', end: '$' 29 | }, 30 | { 31 | className: 'header', 32 | begin: '=====', end: '=====$' 33 | }, 34 | { 35 | className: 'header', 36 | begin: '^\\-\\-\\-', end: '$' 37 | }, 38 | { 39 | className: 'header', 40 | begin: '^\\*{3} ', end: '$' 41 | }, 42 | { 43 | className: 'header', 44 | begin: '^\\+\\+\\+', end: '$' 45 | }, 46 | { 47 | className: 'header', 48 | begin: '\\*{5}', end: '\\*{5}$' 49 | }, 50 | { 51 | className: 'addition', 52 | begin: '^\\+', end: '$' 53 | }, 54 | { 55 | className: 'deletion', 56 | begin: '^\\-', end: '$' 57 | }, 58 | { 59 | className: 'change', 60 | begin: '^\\!', end: '$' 61 | } 62 | ] 63 | }; 64 | } 65 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/components/circular.js: -------------------------------------------------------------------------------- 1 | /* 2 | * circular.js 3 | * Repeat from start after end 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | var $jmpress = $.jmpress; 9 | 10 | /* FUNCTIONS */ 11 | function firstSlide( step, eventData ) { 12 | return $(this).find(eventData.settings.stepSelector).first(); 13 | } 14 | function prevOrNext( jmpress, step, eventData, prev) { 15 | if (!step) { 16 | return false; 17 | } 18 | var stepSelector = eventData.settings.stepSelector; 19 | step = $(step); 20 | do { 21 | var item = step.near( stepSelector, prev ); 22 | if (item.length === 0 || item.closest(jmpress).length === 0) { 23 | item = $(jmpress).find(stepSelector)[prev?"last":"first"](); 24 | } 25 | if (!item.length) { 26 | return false; 27 | } 28 | step = item; 29 | } while( step.data("stepData").exclude ); 30 | return step; 31 | } 32 | 33 | /* HOOKS */ 34 | $jmpress( 'initStep', function( step, eventData ) { 35 | eventData.stepData.exclude = eventData.data.exclude && ["false", "no"].indexOf(eventData.data.exclude) === -1; 36 | }); 37 | $jmpress( 'selectInitialStep', firstSlide); 38 | $jmpress( 'selectHome', firstSlide); 39 | $jmpress( 'selectEnd', function( step, eventData ) { 40 | return $(this).find(eventData.settings.stepSelector).last(); 41 | }); 42 | $jmpress( 'selectPrev', function( step, eventData ) { 43 | return prevOrNext(this, step, eventData, true); 44 | }); 45 | $jmpress( 'selectNext', function( step, eventData ) { 46 | return prevOrNext(this, step, eventData); 47 | }); 48 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/vacation/vacation.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body, html { 3 | font-family: Verdana, sans-serif; 4 | background-color: #ddd; 5 | -webkit-font-smoothing: antialiased; 6 | 7 | background: url(http://farm8.staticflickr.com/7022/6832135787_d53ee5a487_o.jpg); 8 | pointer-events: none; 9 | } 10 | 11 | /** STEP STYLES **/ 12 | section { 13 | width: 900px; 14 | height: 400px; 15 | font-size: 20pt; 16 | min-height: 500px; 17 | 18 | display: block; 19 | padding: 40px 60px; 20 | 21 | text-align: center; 22 | 23 | color: rgb(102, 102, 102); 24 | z-index: 1; 25 | text-shadow: 1px 1px 3px rgb(102, 102, 102); 26 | 27 | letter-spacing: 1px; 28 | 29 | -webkit-box-sizing: border-box; 30 | -moz-box-sizing: border-box; 31 | -ms-box-sizing: border-box; 32 | -o-box-sizing: border-box; 33 | box-sizing: border-box; 34 | 35 | -webkit-transition: 1s; 36 | -moz-transition: 1s; 37 | -ms-transition: 1s; 38 | -o-transition: 1s; 39 | transition: 1s; 40 | 41 | pointer-events: auto; 42 | } 43 | 44 | .nextday { 45 | } 46 | .prevday { 47 | } 48 | .prevday, .nextday { 49 | border: 1px rgba(202, 102, 202, 0.5); 50 | border-radius: 5px; 51 | margin-top: 30px; 52 | padding: 5px; 53 | background: rgba(202, 202, 202, 0.5); 54 | box-shadow: 2px 2px rgba(0,0,0,0.5); 55 | color: black; 56 | text-decoration: none; 57 | opacity: 0; 58 | 59 | -webkit-transition: 1s; 60 | -moz-transition: 1s; 61 | -ms-transition: 1s; 62 | -o-transition: 1s; 63 | transition: 1s; 64 | } 65 | 66 | .active .prevday, .active .nextday { 67 | opacity: 1; 68 | } -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/iframe.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | fancyBox - iframe demo 5 | 6 | 7 | 8 |

    fancyBox - iframe demo

    9 | 10 |

    11 | Close iframe parent 12 | 13 | | 14 | 15 | Change content 16 |

    17 | 18 |

    19 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam scelerisque justo ac eros consectetur bibendum. In hac habitasse platea dictumst. Nulla aliquam turpis et tellus elementum luctus. Duis sit amet rhoncus velit. Duis nisl ligula, mattis interdum blandit laoreet, mattis id ante. Cras pulvinar lacus vitae nisi egestas non euismod neque bibendum. Vestibulum faucibus libero id ante molestie ultricies. Vestibulum quis nibh felis. Vestibulum libero nisl, vehicula vel ullamcorper sit amet, tristique sit amet augue. Etiam urna neque, porttitor sed sodales lacinia, posuere a nisl. Vestibulum blandit neque in sapien volutpat ac condimentum sapien auctor. Ut imperdiet venenatis ultricies. Phasellus accumsan, sem eu placerat commodo, felis purus commodo ipsum, sit amet vulputate orci est viverra est. 20 |

    21 | 22 |

    23 | Aenean velit est, condimentum ut iaculis ut, accumsan at mi. Maecenas velit mi, venenatis ut condimentum at, ultrices vel tortor. Curabitur pharetra ornare dapibus. Ut volutpat cursus semper. In hac habitasse platea dictumst. Donec eu iaculis ipsum. Morbi eu dolor velit, a semper nunc. 24 |

    25 | 26 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/test/components/templates.test.js: -------------------------------------------------------------------------------- 1 | /* global QUnit, module, test, asyncTest, expect, start, stop, ok, equal, notEqual, deepEqual, notDeepEqual, strictEqual, notStrictEqual, raises */ 2 | (function($) { 3 | 4 | 'use strict'; 5 | 6 | QUnit.testStart = function(test) { 7 | window.location.hash = '#'; 8 | }; 9 | 10 | module('templates', { 11 | setup: function() { 12 | this.fixture = '#qunit-fixture #jmpress'; 13 | $(this.fixture) 14 | .empty() 15 | .attr('data-template', 'test-template') 16 | .append($('
    ').text('One')) 17 | .append($('
    ').text('Two')) 18 | .append($('
    ').text('Three')) 19 | .append($('
    ').text('Four')); 20 | } 21 | }); 22 | 23 | test('basic', 8, function() { 24 | $.jmpress('template', 'test-template', { 25 | children: function (idx, child, children) { 26 | return { 27 | x: idx * 1000, 28 | y: idx * 1000, 29 | rotate: idx * 45 30 | }; 31 | } 32 | }); 33 | $(this.fixture).jmpress({stepSelector: 'section'}); 34 | var result = $(this.fixture + ' #step-1').attr('style'); 35 | ok( result.indexOf('translate3d(0px, 0px, 0px)') !== -1 ); 36 | ok( result.indexOf('rotateX(0deg)') !== -1 ); 37 | ok( result.indexOf('rotateY(0deg)') !== -1 ); 38 | ok( result.indexOf('rotateZ(0deg)') !== -1 ); 39 | result = $(this.fixture + ' #step-3').attr('style'); 40 | ok( result.indexOf('translate3d(2000px, 2000px, 0px)') !== -1 ); 41 | ok( result.indexOf('rotateX(0deg)') !== -1 ); 42 | ok( result.indexOf('rotateY(0deg)') !== -1 ); 43 | ok( result.indexOf('rotateZ(90deg)') !== -1 ); 44 | }); 45 | 46 | }(jQuery)); -------------------------------------------------------------------------------- /doc/ppt/js/styles/solarized_dark.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Orginal Style from ethanschoonover.com/solarized (c) Jeremy Hull 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background: #002b36; color: #839496; 10 | } 11 | 12 | pre .comment, 13 | pre .template_comment, 14 | pre .diff .header, 15 | pre .doctype, 16 | pre .pi, 17 | pre .lisp .string, 18 | pre .javadoc { 19 | color: #586e75; 20 | font-style: italic; 21 | } 22 | 23 | pre .keyword, 24 | pre .winutils, 25 | pre .method, 26 | pre .addition, 27 | pre .css .tag, 28 | pre .request, 29 | pre .status, 30 | pre .nginx .title { 31 | color: #859900; 32 | } 33 | 34 | pre .number, 35 | pre .command, 36 | pre .string, 37 | pre .tag .value, 38 | pre .phpdoc, 39 | pre .tex .formula, 40 | pre .regexp, 41 | pre .hexcolor { 42 | color: #2aa198; 43 | } 44 | 45 | pre .title, 46 | pre .localvars, 47 | pre .chunk, 48 | pre .decorator, 49 | pre .built_in, 50 | pre .identifier, 51 | pre .vhdl .literal, 52 | pre .id { 53 | color: #268bd2; 54 | } 55 | 56 | pre .attribute, 57 | pre .variable, 58 | pre .lisp .body, 59 | pre .smalltalk .number, 60 | pre .constant, 61 | pre .class .title, 62 | pre .parent, 63 | pre .haskell .type { 64 | color: #b58900; 65 | } 66 | 67 | pre .preprocessor, 68 | pre .preprocessor .keyword, 69 | pre .shebang, 70 | pre .symbol, 71 | pre .symbol .string, 72 | pre .diff .change, 73 | pre .special, 74 | pre .attr_selector, 75 | pre .important, 76 | pre .subst, 77 | pre .cdata, 78 | pre .clojure .title { 79 | color: #cb4b16; 80 | } 81 | 82 | pre .deletion { 83 | color: #dc322f; 84 | } 85 | 86 | pre .tex .formula { 87 | background: #073642; 88 | } 89 | -------------------------------------------------------------------------------- /doc/README.md: -------------------------------------------------------------------------------- 1 | #如何使用# 2 | 3 | ##目录说明## 4 | 这是一个简短的功能目录说明,而且还会不断地更新,当有足够的硬件,以及其他语言支持的时候。 5 | 6 | * android 目录下是android的程序 7 | * 构建工具 gradle 8 | * IDE android studio 9 | * 第三方库 RESTClient,Google GSON 10 | * hardware 硬件相关程序 11 | * Arduino Arduino开发板程序 12 | * python 脚本文件运行于Raspberry PI或者是你的PC 13 | * rest 用于构建RESTful 14 | * 语言PHP 15 | * 框架Laravel 16 | * doc 基础的一些文档说明 17 | * dot 构建框架图 18 | * images 图片放置目录 19 | * ppt jmpress.js做的ppt 20 | * nginx nginx配置示例以及说明 21 | 22 | ##使用说明## 23 | 需要在开机前用RPI连上硬件,RPI需要联网,在开机前做好准备。 24 | 25 | ###Raspberry PI### 26 | RPI主要运行获取数据以及与Arduino通讯,通过开头运行python脚本的方法。 27 | 28 | 修改rc.local 29 | 30 | sudo vim /etc/rc.local 31 | 32 | 添加信命令到exit 0之前 33 | 34 | sudo python /home/iot.py 35 | 36 | 需要将python目录下的iot.py复制到home目录下,访问/dev/ttyACM0需要root权限。 37 | 38 | ###Hardware### 39 | 40 | ####Arduino#### 41 | 烧写程序到Ardiuino 42 | 程序目录Hardware/Arduino/BareMinimum。。 43 | 44 | ###REST### 45 | 如果你有一个可以用于运行的服务器,当然你也可以用RPI去做一个服务器。 46 | 那么,请在开始之前配置好LNMP环境或者LAMP等等,即Linux+Nginx/Apache+MySQL/MaraiDB+PHP 47 | 需要创建一个名为iot的数据库,以及修改数据库密码,如果你了解此可以跳过这些步骤。 48 | 创建数据库步骤如下: 49 | 50 | mysql -uroot -p 51 | create database iot; 52 | 53 | 修改数据库密码的路径 54 | 55 | app/config/database.php 56 | 57 | 相关位置代码如下: 58 | 59 | 'mysql' => array( 60 | 'driver' => 'mysql', 61 | 'host' => 'localhost', 62 | 'database' => 'iot', 63 | 'username' => 'root', 64 | 'password' => '', 65 | 'charset' => 'utf8', 66 | 'collation' => 'utf8_unicode_ci', 67 | 'prefix' => '', 68 | ), 69 | 70 | 71 | ###Android### 72 | 构建了一个简单的获取JSON数据及解析的程序,在Android 4.0上运行正常,其他设备或平台暂未测试。 73 | 依赖于Google GSON 74 | 75 | 76 | 77 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/solarized_light.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Orginal Style from ethanschoonover.com/solarized (c) Jeremy Hull 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background: #fdf6e3; color: #657b83; 10 | } 11 | 12 | pre .comment, 13 | pre .template_comment, 14 | pre .diff .header, 15 | pre .doctype, 16 | pre .pi, 17 | pre .lisp .string, 18 | pre .javadoc { 19 | color: #93a1a1; 20 | font-style: italic; 21 | } 22 | 23 | pre .keyword, 24 | pre .winutils, 25 | pre .method, 26 | pre .addition, 27 | pre .css .tag, 28 | pre .request, 29 | pre .status, 30 | pre .nginx .title { 31 | color: #859900; 32 | } 33 | 34 | pre .number, 35 | pre .command, 36 | pre .string, 37 | pre .tag .value, 38 | pre .phpdoc, 39 | pre .tex .formula, 40 | pre .regexp, 41 | pre .hexcolor { 42 | color: #2aa198; 43 | } 44 | 45 | pre .title, 46 | pre .localvars, 47 | pre .chunk, 48 | pre .decorator, 49 | pre .built_in, 50 | pre .identifier, 51 | pre .vhdl .literal, 52 | pre .id { 53 | color: #268bd2; 54 | } 55 | 56 | pre .attribute, 57 | pre .variable, 58 | pre .lisp .body, 59 | pre .smalltalk .number, 60 | pre .constant, 61 | pre .class .title, 62 | pre .parent, 63 | pre .haskell .type { 64 | color: #b58900; 65 | } 66 | 67 | pre .preprocessor, 68 | pre .preprocessor .keyword, 69 | pre .shebang, 70 | pre .symbol, 71 | pre .symbol .string, 72 | pre .diff .change, 73 | pre .special, 74 | pre .attr_selector, 75 | pre .important, 76 | pre .subst, 77 | pre .cdata, 78 | pre .clojure .title { 79 | color: #cb4b16; 80 | } 81 | 82 | pre .deletion { 83 | color: #dc322f; 84 | } 85 | 86 | pre .tex .formula { 87 | background: #eee8d5; 88 | } 89 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/rsl.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: RenderMan RSL 3 | Author: Konstantin Evdokimenko 4 | Contributors: Shuen-Huei Guan 5 | */ 6 | 7 | function(hljs) { 8 | return { 9 | keywords: { 10 | keyword: 11 | 'float color point normal vector matrix while for if do return else break extern continue', 12 | built_in: 13 | 'abs acos ambient area asin atan atmosphere attribute calculatenormal ceil cellnoise ' + 14 | 'clamp comp concat cos degrees depth Deriv diffuse distance Du Dv environment exp ' + 15 | 'faceforward filterstep floor format fresnel incident length lightsource log match ' + 16 | 'max min mod noise normalize ntransform opposite option phong pnoise pow printf ' + 17 | 'ptlined radians random reflect refract renderinfo round setcomp setxcomp setycomp ' + 18 | 'setzcomp shadow sign sin smoothstep specular specularbrdf spline sqrt step tan ' + 19 | 'texture textureinfo trace transform vtransform xcomp ycomp zcomp' 20 | }, 21 | illegal: ' 3 | */ 4 | 5 | pre code { 6 | display: block; padding: 0.5em; 7 | background: #000; color: #f8f8f8; 8 | } 9 | 10 | pre .shebang, 11 | pre .comment, 12 | pre .template_comment, 13 | pre .javadoc { 14 | color: #7c7c7c; 15 | } 16 | 17 | pre .keyword, 18 | pre .tag, 19 | pre .tex .command, 20 | pre .request, 21 | pre .status, 22 | pre .clojure .attribute { 23 | color: #96CBFE; 24 | } 25 | 26 | pre .sub .keyword, 27 | pre .method, 28 | pre .list .title, 29 | pre .nginx .title { 30 | color: #FFFFB6; 31 | } 32 | 33 | pre .string, 34 | pre .tag .value, 35 | pre .cdata, 36 | pre .filter .argument, 37 | pre .attr_selector, 38 | pre .apache .cbracket, 39 | pre .date { 40 | color: #A8FF60; 41 | } 42 | 43 | pre .subst { 44 | color: #DAEFA3; 45 | } 46 | 47 | pre .regexp { 48 | color: #E9C062; 49 | } 50 | 51 | pre .title, 52 | pre .sub .identifier, 53 | pre .pi, 54 | pre .decorator, 55 | pre .tex .special, 56 | pre .haskell .type, 57 | pre .constant, 58 | pre .smalltalk .class, 59 | pre .javadoctag, 60 | pre .yardoctag, 61 | pre .phpdoc, 62 | pre .nginx .built_in { 63 | color: #FFFFB6; 64 | } 65 | 66 | pre .symbol, 67 | pre .ruby .symbol .string, 68 | pre .number, 69 | pre .variable, 70 | pre .vbscript, 71 | pre .literal { 72 | color: #C6C5FE; 73 | } 74 | 75 | pre .css .tag { 76 | color: #96CBFE; 77 | } 78 | 79 | pre .css .rules .property, 80 | pre .css .id { 81 | color: #FFFFB6; 82 | } 83 | 84 | pre .css .class { 85 | color: #FFF; 86 | } 87 | 88 | pre .hexcolor { 89 | color: #C6C5FE; 90 | } 91 | 92 | pre .number { 93 | color:#FF73FD; 94 | } 95 | 96 | pre .tex .formula { 97 | opacity: 0.7; 98 | } 99 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/javascript.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: JavaScript 3 | */ 4 | 5 | function(hljs) { 6 | return { 7 | keywords: { 8 | keyword: 9 | 'in if for while finally var new function do return void else break catch ' + 10 | 'instanceof with throw case default try this switch continue typeof delete ' + 11 | 'let yield', 12 | literal: 13 | 'true false null undefined NaN Infinity' 14 | }, 15 | contains: [ 16 | hljs.APOS_STRING_MODE, 17 | hljs.QUOTE_STRING_MODE, 18 | hljs.C_LINE_COMMENT_MODE, 19 | hljs.C_BLOCK_COMMENT_MODE, 20 | hljs.C_NUMBER_MODE, 21 | { // regexp container 22 | begin: '(' + hljs.RE_STARTERS_RE + '|\\b(case|return|throw)\\b)\\s*', 23 | keywords: 'return throw case', 24 | contains: [ 25 | hljs.C_LINE_COMMENT_MODE, 26 | hljs.C_BLOCK_COMMENT_MODE, 27 | { 28 | className: 'regexp', 29 | begin: '/', end: '/[gim]*', 30 | contains: [{begin: '\\\\/'}] 31 | } 32 | ], 33 | relevance: 0 34 | }, 35 | { 36 | className: 'function', 37 | beginWithKeyword: true, end: '{', 38 | keywords: 'function', 39 | contains: [ 40 | { 41 | className: 'title', begin: '[A-Za-z$_][0-9A-Za-z$_]*' 42 | }, 43 | { 44 | className: 'params', 45 | begin: '\\(', end: '\\)', 46 | contains: [ 47 | hljs.C_LINE_COMMENT_MODE, 48 | hljs.C_BLOCK_COMMENT_MODE 49 | ], 50 | illegal: '["\'\\(]' 51 | } 52 | ], 53 | illegal: '\\[|%' 54 | } 55 | ] 56 | }; 57 | } 58 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/rib.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: RenderMan RIB 3 | Author: Konstantin Evdokimenko 4 | Contributors: Shuen-Huei Guan 5 | */ 6 | 7 | function(hljs) { 8 | return { 9 | keywords: 10 | 'ArchiveRecord AreaLightSource Atmosphere Attribute AttributeBegin AttributeEnd Basis ' + 11 | 'Begin Blobby Bound Clipping ClippingPlane Color ColorSamples ConcatTransform Cone ' + 12 | 'CoordinateSystem CoordSysTransform CropWindow Curves Cylinder DepthOfField Detail ' + 13 | 'DetailRange Disk Displacement Display End ErrorHandler Exposure Exterior Format ' + 14 | 'FrameAspectRatio FrameBegin FrameEnd GeneralPolygon GeometricApproximation Geometry ' + 15 | 'Hider Hyperboloid Identity Illuminate Imager Interior LightSource ' + 16 | 'MakeCubeFaceEnvironment MakeLatLongEnvironment MakeShadow MakeTexture Matte ' + 17 | 'MotionBegin MotionEnd NuPatch ObjectBegin ObjectEnd ObjectInstance Opacity Option ' + 18 | 'Orientation Paraboloid Patch PatchMesh Perspective PixelFilter PixelSamples ' + 19 | 'PixelVariance Points PointsGeneralPolygons PointsPolygons Polygon Procedural Projection ' + 20 | 'Quantize ReadArchive RelativeDetail ReverseOrientation Rotate Scale ScreenWindow ' + 21 | 'ShadingInterpolation ShadingRate Shutter Sides Skew SolidBegin SolidEnd Sphere ' + 22 | 'SubdivisionMesh Surface TextureCoordinates Torus Transform TransformBegin TransformEnd ' + 23 | 'TransformPoints Translate TrimCurve WorldBegin WorldEnd', 24 | illegal: ' 50) { 37 | diff = Math.abs(diff[0]) > Math.abs(diff[1]) ? diff[0] : diff[1]; 38 | $(jmpress).jmpress(diff > 0 ? "prev" : "next"); 39 | event.preventDefault(); 40 | return false; 41 | } 42 | }); 43 | }); 44 | $jmpress('afterDeinit', function( nil, eventData ) { 45 | var settings = eventData.settings, 46 | current = eventData.current, 47 | jmpress = eventData.jmpress; 48 | $(settings.fullscreen ? document : jmpress).unbind(current.mobileNamespace); 49 | }); 50 | 51 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /doc/ppt/js/languages/rust.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Rust 3 | Author: Andrey Vlasovskikh 4 | */ 5 | 6 | function(hljs) { 7 | var TITLE = { 8 | className: 'title', 9 | begin: hljs.UNDERSCORE_IDENT_RE 10 | }; 11 | var QUOTE_STRING = { 12 | className: 'string', 13 | begin: '"', end: '"', 14 | contains: [hljs.BACKSLASH_ESCAPE], 15 | relevance: 0 16 | }; 17 | var NUMBER = { 18 | className: 'number', 19 | begin: '\\b(0[xb][A-Za-z0-9_]+|[0-9_]+(\\.[0-9_]+)?([uif](8|16|32|64)?)?)', 20 | relevance: 0 21 | }; 22 | var KEYWORDS = 23 | 'alt any as assert be bind block bool break char check claim const cont dir do else enum ' + 24 | 'export f32 f64 fail false float fn for i16 i32 i64 i8 if iface impl import in int let ' + 25 | 'log mod mutable native note of prove pure resource ret self str syntax true type u16 u32 ' + 26 | 'u64 u8 uint unchecked unsafe use vec while'; 27 | return { 28 | keywords: KEYWORDS, 29 | illegal: ' 4 | 5 | */ 6 | pre code { 7 | display: block; padding: 0.5em; 8 | } 9 | 10 | pre .comment, 11 | pre .annotation, 12 | pre .template_comment, 13 | pre .diff .header, 14 | pre .chunk, 15 | pre .apache .cbracket { 16 | color: rgb(0, 128, 0); 17 | } 18 | 19 | pre .keyword, 20 | pre .id, 21 | pre .built_in, 22 | pre .smalltalk .class, 23 | pre .winutils, 24 | pre .bash .variable, 25 | pre .tex .command, 26 | pre .request, 27 | pre .status, 28 | pre .nginx .title, 29 | pre .xml .tag { 30 | color: rgb(0, 0, 255); 31 | } 32 | 33 | pre .string, 34 | pre .title, 35 | pre .parent, 36 | pre .tag .value, 37 | pre .rules .value, 38 | pre .rules .value .number, 39 | pre .ruby .symbol, 40 | pre .ruby .symbol .string, 41 | pre .aggregate, 42 | pre .template_tag, 43 | pre .django .variable, 44 | pre .addition, 45 | pre .flow, 46 | pre .stream, 47 | pre .apache .tag, 48 | pre .date, 49 | pre .tex .formula { 50 | color: rgb(163, 21, 21); 51 | } 52 | 53 | pre .ruby .string, 54 | pre .decorator, 55 | pre .filter .argument, 56 | pre .localvars, 57 | pre .array, 58 | pre .attr_selector, 59 | pre .pseudo, 60 | pre .pi, 61 | pre .doctype, 62 | pre .deletion, 63 | pre .envvar, 64 | pre .shebang, 65 | pre .preprocessor, 66 | pre .userType, 67 | pre .apache .sqbracket, 68 | pre .nginx .built_in, 69 | pre .tex .special, 70 | pre .input_number { 71 | color: rgb(43, 145, 175); 72 | } 73 | 74 | pre .phpdoc, 75 | pre .javadoc, 76 | pre .xmlDocTag { 77 | color: rgb(128, 128, 128); 78 | } 79 | 80 | pre .vhdl .typename { font-weight: bold; } 81 | pre .vhdl .string { color: #666666; } 82 | pre .vhdl .literal { color: rgb(163, 21, 21); } 83 | pre .vhdl .attribute { color: #00B0E8; } 84 | 85 | pre .xml .attribute { color: rgb(255, 0, 0); } 86 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/cs.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: C# 3 | Author: Jason Diamond 4 | */ 5 | 6 | function(hljs) { 7 | return { 8 | keywords: 9 | // Normal keywords. 10 | 'abstract as base bool break byte case catch char checked class const continue decimal ' + 11 | 'default delegate do double else enum event explicit extern false finally fixed float ' + 12 | 'for foreach goto if implicit in int interface internal is lock long namespace new null ' + 13 | 'object operator out override params private protected public readonly ref return sbyte ' + 14 | 'sealed short sizeof stackalloc static string struct switch this throw true try typeof ' + 15 | 'uint ulong unchecked unsafe ushort using virtual volatile void while ' + 16 | // Contextual keywords. 17 | 'ascending descending from get group into join let orderby partial select set value var '+ 18 | 'where yield', 19 | contains: [ 20 | { 21 | className: 'comment', 22 | begin: '///', end: '$', returnBegin: true, 23 | contains: [ 24 | { 25 | className: 'xmlDocTag', 26 | begin: '///|' 27 | }, 28 | { 29 | className: 'xmlDocTag', 30 | begin: '' 31 | } 32 | ] 33 | }, 34 | hljs.C_LINE_COMMENT_MODE, 35 | hljs.C_BLOCK_COMMENT_MODE, 36 | { 37 | className: 'preprocessor', 38 | begin: '#', end: '$', 39 | keywords: 'if else elif endif define undef warning error line region endregion pragma checksum' 40 | }, 41 | { 42 | className: 'string', 43 | begin: '@"', end: '"', 44 | contains: [{begin: '""'}] 45 | }, 46 | hljs.APOS_STRING_MODE, 47 | hljs.QUOTE_STRING_MODE, 48 | hljs.C_NUMBER_MODE 49 | ] 50 | }; 51 | } 52 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/components/ways.js: -------------------------------------------------------------------------------- 1 | /* 2 | * ways.js 3 | * Control the flow of the steps 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | var $jmpress = $.jmpress; 9 | 10 | /* FUNCTIONS */ 11 | function routeFunc( jmpress, route, type ) { 12 | for(var i = 0; i < route.length - 1; i++) { 13 | var from = route[i]; 14 | var to = route[i+1]; 15 | if($(jmpress).jmpress("initialized")) { 16 | $(from, jmpress).data("stepData")[type] = to; 17 | } else { 18 | $(from, jmpress).attr('data-' + type, to); 19 | } 20 | } 21 | } 22 | function selectPrevOrNext( step, eventData, attr, prev ) { 23 | var stepData = eventData.stepData; 24 | if(stepData[attr]) { 25 | var near = $(step).near(stepData[attr], prev); 26 | if(near && near.length) { 27 | return near; 28 | } 29 | near = $(stepData[attr], this)[prev?"last":"first"](); 30 | if(near && near.length) { 31 | return near; 32 | } 33 | } 34 | } 35 | 36 | /* EXPORTED FUNCTIONS */ 37 | $jmpress( 'register', 'route', function( route, unidirectional, reversedRoute ) { 38 | if( typeof route === "string" ) { 39 | route = [route, route]; 40 | } 41 | routeFunc(this, route, reversedRoute ? "prev" : "next"); 42 | if (!unidirectional) { 43 | routeFunc(this, route.reverse(), reversedRoute ? "next" : "prev"); 44 | } 45 | }); 46 | 47 | /* HOOKS */ 48 | $jmpress( 'initStep', function( step, eventData ) { 49 | for(var attr in {next:1,prev:1}) { 50 | eventData.stepData[attr] = eventData.data[attr]; 51 | } 52 | }); 53 | $jmpress( 'selectNext', function( step, eventData ) { 54 | return selectPrevOrNext.call(this, step, eventData, "next"); 55 | }); 56 | $jmpress( 'selectPrev', function( step, eventData ) { 57 | return selectPrevOrNext.call(this, step, eventData, "prev", true); 58 | }); 59 | 60 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /doc/ppt/fancybox/lib/jquery.mousewheel.pack.js: -------------------------------------------------------------------------------- 1 | /*! Copyright (c) 2013 Brandon Aaron (http://brandonaaron.net) 2 | * Licensed under the MIT License (LICENSE.txt). 3 | * 4 | * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers. 5 | * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix. 6 | * Thanks to: Seamus Leahy for adding deltaX and deltaY 7 | * 8 | * Version: 3.1.3 9 | * 10 | * Requires: 1.2.2+ 11 | */ 12 | ;(function(c){"function"===typeof define&&define.amd?define(["jquery"],c):"object"===typeof exports?module.exports=c:c(jQuery)})(function(c){function l(b){var a=b||window.event,h=[].slice.call(arguments,1),d=0,e=0,f=0,g=0,g=0;b=c.event.fix(a);b.type="mousewheel";a.wheelDelta&&(d=a.wheelDelta);a.detail&&(d=-1*a.detail);a.deltaY&&(d=f=-1*a.deltaY);a.deltaX&&(e=a.deltaX,d=-1*e);void 0!==a.wheelDeltaY&&(f=a.wheelDeltaY);void 0!==a.wheelDeltaX&&(e=-1*a.wheelDeltaX);g=Math.abs(d);if(!m||g 2 | 3 | 4 | 5 | jmpress.js | form and dynamic 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
    20 |
    21 |
    22 |

    Slides:

    23 |

    24 |
    25 |
    26 | 27 |
    28 | 29 |
    30 |
    31 | 32 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/scala.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Scala 3 | Author: Jan Berkel 4 | */ 5 | 6 | function(hljs) { 7 | var ANNOTATION = { 8 | className: 'annotation', begin: '@[A-Za-z]+' 9 | }; 10 | var STRING = { 11 | className: 'string', 12 | begin: 'u?r?"""', end: '"""', 13 | relevance: 10 14 | }; 15 | return { 16 | keywords: 17 | 'type yield lazy override def with val var false true sealed abstract private trait ' + 18 | 'object null if for while throw finally protected extends import final return else ' + 19 | 'break new catch super class case package default try this match continue throws', 20 | contains: [ 21 | { 22 | className: 'javadoc', 23 | begin: '/\\*\\*', end: '\\*/', 24 | contains: [{ 25 | className: 'javadoctag', 26 | begin: '@[A-Za-z]+' 27 | }], 28 | relevance: 10 29 | }, 30 | hljs.C_LINE_COMMENT_MODE, hljs.C_BLOCK_COMMENT_MODE, 31 | hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE, STRING, 32 | { 33 | className: 'class', 34 | begin: '((case )?class |object |trait )', end: '({|$)', // beginWithKeyword won't work because a single "case" shouldn't start this mode 35 | illegal: ':', 36 | keywords: 'case class trait object', 37 | contains: [ 38 | { 39 | beginWithKeyword: true, 40 | keywords: 'extends with', 41 | relevance: 10 42 | }, 43 | { 44 | className: 'title', 45 | begin: hljs.UNDERSCORE_IDENT_RE 46 | }, 47 | { 48 | className: 'params', 49 | begin: '\\(', end: '\\)', 50 | contains: [ 51 | hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE, STRING, 52 | ANNOTATION 53 | ] 54 | } 55 | ] 56 | }, 57 | hljs.C_NUMBER_MODE, 58 | ANNOTATION 59 | ] 60 | }; 61 | } 62 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/ajax/ajax.css: -------------------------------------------------------------------------------- 1 | /** GENERAL **/ 2 | body { 3 | font-family: Verdana, sans-serif; 4 | min-height: 740px; 5 | background-color: #ddd; 6 | -webkit-font-smoothing: antialiased; 7 | } 8 | 9 | /** STEP STYLES **/ 10 | .step { 11 | width: 900px; 12 | height: 400px; 13 | font-size: 1em; 14 | min-height: 500px; 15 | background-color: white; 16 | 17 | display: block; 18 | padding: 40px 60px; 19 | border-radius: 10px; 20 | 21 | box-shadow: 0 2px 6px rgba(0, 0, 0, .1); 22 | border: 1px solid rgba(0, 0, 0, .3); 23 | 24 | color: rgb(102, 102, 102); 25 | text-shadow: 0 2px 2px rgba(0, 0, 0, .1); 26 | 27 | letter-spacing: -1px; 28 | 29 | -webkit-box-sizing: border-box; 30 | -moz-box-sizing: border-box; 31 | -ms-box-sizing: border-box; 32 | -o-box-sizing: border-box; 33 | box-sizing: border-box; 34 | 35 | -webkit-transition: opacity 1s; 36 | -moz-transition: opacity 1s; 37 | -ms-transition: opacity 1s; 38 | -o-transition: opacity 1s; 39 | transition: opacity 1s; 40 | } 41 | 42 | /* fade out inactive slides */ 43 | .step:not(.active) { 44 | opacity: 0.3; 45 | } 46 | 47 | /** NOT SUPPORTED STYLES **/ 48 | .not-supported .step { 49 | position: relative; 50 | opacity: 1; 51 | margin: 20px auto; 52 | } 53 | 54 | /** PRINT STYLE **/ 55 | @media print { 56 | body { 57 | background: white; 58 | } 59 | #jmpress { 60 | width: auto; 61 | margin: 0 5%; 62 | padding: 0; 63 | border: 0; 64 | float: none !important; 65 | color: black; 66 | background: transparent; 67 | } 68 | .step { 69 | page-break-after: always; 70 | opacity: 1; 71 | clear: both; 72 | display: block; 73 | float: none !important; 74 | position: relative; 75 | margin: 20px auto; 76 | 77 | -webkit-transition: rotate(0deg); 78 | -moz-transition: rotate(0deg); 79 | -ms-transition: rotate(0deg); 80 | -o-transition: rotate(0deg); 81 | transition: rotate(0deg); 82 | } 83 | .step:not(.active) { 84 | opacity: 1; 85 | } 86 | } -------------------------------------------------------------------------------- /doc/ppt/js/languages/cpp.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: C++ 3 | Contributors: Evgeny Stepanischev 4 | */ 5 | 6 | function(hljs) { 7 | var CPP_KEYWORDS = { 8 | keyword: 'false int float while private char catch export virtual operator sizeof ' + 9 | 'dynamic_cast|10 typedef const_cast|10 const struct for static_cast|10 union namespace ' + 10 | 'unsigned long throw volatile static protected bool template mutable if public friend ' + 11 | 'do return goto auto void enum else break new extern using true class asm case typeid ' + 12 | 'short reinterpret_cast|10 default double register explicit signed typename try this ' + 13 | 'switch continue wchar_t inline delete alignof char16_t char32_t constexpr decltype ' + 14 | 'noexcept nullptr static_assert thread_local restrict _Bool complex', 15 | built_in: 'std string cin cout cerr clog stringstream istringstream ostringstream ' + 16 | 'auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set ' + 17 | 'unordered_map unordered_multiset unordered_multimap array shared_ptr' 18 | }; 19 | return { 20 | keywords: CPP_KEYWORDS, 21 | illegal: '', 43 | keywords: CPP_KEYWORDS, 44 | relevance: 10, 45 | contains: ['self'] 46 | } 47 | ] 48 | }; 49 | } 50 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/cmake.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: CMake 3 | Description: CMake is an open-source cross-platform system for build automation. 4 | Author: Igor Kalnitsky 5 | Website: http://kalnitsky.org.ua/ 6 | */ 7 | 8 | function(hljs) { 9 | return { 10 | case_insensitive: true, 11 | keywords: 'add_custom_command add_custom_target add_definitions add_dependencies ' + 12 | 'add_executable add_library add_subdirectory add_test aux_source_directory ' + 13 | 'break build_command cmake_minimum_required cmake_policy configure_file ' + 14 | 'create_test_sourcelist define_property else elseif enable_language enable_testing ' + 15 | 'endforeach endfunction endif endmacro endwhile execute_process export find_file ' + 16 | 'find_library find_package find_path find_program fltk_wrap_ui foreach function ' + 17 | 'get_cmake_property get_directory_property get_filename_component get_property ' + 18 | 'get_source_file_property get_target_property get_test_property if include ' + 19 | 'include_directories include_external_msproject include_regular_expression install ' + 20 | 'link_directories load_cache load_command macro mark_as_advanced message option ' + 21 | 'output_required_files project qt_wrap_cpp qt_wrap_ui remove_definitions return ' + 22 | 'separate_arguments set set_directory_properties set_property ' + 23 | 'set_source_files_properties set_target_properties set_tests_properties site_name ' + 24 | 'source_group string target_link_libraries try_compile try_run unset variable_watch ' + 25 | 'while build_name exec_program export_library_dependencies install_files ' + 26 | 'install_programs install_targets link_libraries make_directory remove subdir_depends ' + 27 | 'subdirs use_mangled_mesa utility_source variable_requires write_file', 28 | contains: [ 29 | { 30 | className: 'envvar', 31 | begin: '\\${', end: '}' 32 | }, 33 | hljs.HASH_COMMENT_MODE, 34 | hljs.QUOTE_STRING_MODE, 35 | hljs.NUMBER_MODE 36 | ] 37 | }; 38 | } 39 | -------------------------------------------------------------------------------- /doc/main.md: -------------------------------------------------------------------------------- 1 | ##一个最小的物联网系统设计方案及源码## 2 | 3 | 或许这个可以当成是你的毕业设计又或者你可以用它来控制你想控制的东西,总之你可以用它来做一个最小的物联网系统。 4 | 5 | 不过,在这里可能没有那么复杂的功能,因为强调的是最小。BareMinimum,这也是为什么我没有改Arduino上面的工程名的原因,因为它是最小的,(PS:大家都懂的,如果玩硬件)。物联网,这个东西一直很复杂,也不是很复杂,只是从硬件到软件涉及到的东西过多了,不止一点点。当然写在本文的方案也有很多,不止这一个,只是这个算是基本的最小的,仅此而已。 6 | 7 | ###框架:### 8 | 9 | * PHP Laravel* jQuery (Javascript 主要用于Ajax) 10 | * jQuery Mobile(可选)(我觉得我有点懒,于是从原来做的项目直接拿了出来) 11 | * Bootstrap (可选) (其实没有多大实际用处,只是因为好看和jQuery Mobile一样) 12 | 13 | ###语言:### 14 | 15 | Processing/C/C++ Arduino用 16 | 17 | Python 如果你有Raspberry Pi或者与之相近的都可以,只要可以与Arduino串口通信 18 | 19 | PHP 我学得不是很好,因为Laravel没有让我学好,但是让我能做想做的事。 20 | 21 | ###相关文章### 22 | 23 | [一个最小的物联网系统设计方案及源码][2] 24 | 25 | [最小物联网系统(一)——系统组成][4] 26 | 27 | [最小物联网系统(二)——RESTful][5] 28 | 29 | [最小物联网系统(三)——创建RESTful][6] 30 | 31 | [最小物联网系统(四)——详解Laravel的RESTful][7] 32 | 33 | [最小物联网系统(五)——Laravel RESTful模板化][8] 34 | 35 | [最小物联网系统(六)——Ajax打造可视化][9] 36 | 37 | ### 38 | 相关知识 39 | 40 | #### 41 | 搞硬件的同学需要重点了解的知识 42 | 43 | * RESTful 44 | * Ajax 45 | * JSON 46 | 47 | #### 48 | 搞软件的同学需要重要了解的知识 49 | 50 | * 串口通信 51 | * 高低电平 52 | 53 | ### 54 | 关于服务器 55 | 56 | * Nginx 需要配置,具体配置可以参照github上面的代码 57 | * LNMP 直接用上面的会比较简单,但是可能也会遇到一些问题。 58 | * Phpmyadmin 最好需要有这个,如果不是很精通MYSQL 59 | 60 | ## 61 | 设计方案 62 | 63 | ### 64 | 系统框架图 65 | 66 | ![](http://img.blog.csdn.net/20131222115240562?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcGhvZGFs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast) 67 | 68 | 69 | [1]:http://b.phodal.com 70 | [2]:http://www.phodal.com/blog/bare-minimum-iot 71 | [3]:https://github.com/gmszone/iot/wiki 72 | [4]:http://www.phodal.com/blog/bare-minimum-iot-system-structure/ 73 | [5]:http://www.phodal.com/blog/bare-minimum-iot-system-restful/ 74 | [6]:http://www.phodal.com/blog/bare-minimum-iot-system-create-restful/ 75 | [7]:http://www.phodal.com/blog/bare-minimum-iot-system-about-restful/ 76 | [8]:http://www.phodal.com/blog/bare-minimum-iot-system-restful-template/ 77 | [9]:http://www.phodal.com/blog/bare-minimum-iot-system-ajax/ -------------------------------------------------------------------------------- /doc/ppt/js/languages/markdown.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Markdown 3 | Requires: xml.js 4 | Author: John Crepezzi 5 | Website: http://seejohncode.com/ 6 | */ 7 | 8 | function(hljs) { 9 | return { 10 | case_insensitive: true, 11 | contains: [ 12 | // highlight headers 13 | { 14 | className: 'header', 15 | begin: '^#{1,3}', end: '$' 16 | }, 17 | { 18 | className: 'header', 19 | begin: '^.+?\\n[=-]{2,}$' 20 | }, 21 | // inline html 22 | { 23 | begin: '<', end: '>', 24 | subLanguage: 'xml', 25 | relevance: 0 26 | }, 27 | // lists (indicators only) 28 | { 29 | className: 'bullet', 30 | begin: '^([*+-]|(\\d+\\.))\\s+' 31 | }, 32 | // strong segments 33 | { 34 | className: 'strong', 35 | begin: '[*_]{2}.+?[*_]{2}' 36 | }, 37 | // emphasis segments 38 | { 39 | className: 'emphasis', 40 | begin: '\\*.+?\\*' 41 | }, 42 | { 43 | className: 'emphasis', 44 | begin: '_.+?_', 45 | relevance: 0 46 | }, 47 | // blockquotes 48 | { 49 | className: 'blockquote', 50 | begin: '^>\\s+', end: '$' 51 | }, 52 | // code snippets 53 | { 54 | className: 'code', 55 | begin: '`.+?`' 56 | }, 57 | { 58 | className: 'code', 59 | begin: '^ ', end: '$', 60 | relevance: 0 61 | }, 62 | // horizontal rules 63 | { 64 | className: 'horizontal_rule', 65 | begin: '^-{3,}', end: '$' 66 | }, 67 | // using links - title and link 68 | { 69 | begin: '\\[.+?\\]\\(.+?\\)', 70 | returnBegin: true, 71 | contains: [ 72 | { 73 | className: 'link_label', 74 | begin: '\\[.+\\]' 75 | }, 76 | { 77 | className: 'link_url', 78 | begin: '\\(', end: '\\)', 79 | excludeBegin: true, excludeEnd: true 80 | } 81 | ] 82 | } 83 | ] 84 | }; 85 | } 86 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/lua.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Lua 3 | Author: Andrew Fedorov 4 | */ 5 | 6 | function(hljs) { 7 | var OPENING_LONG_BRACKET = '\\[=*\\['; 8 | var CLOSING_LONG_BRACKET = '\\]=*\\]'; 9 | var LONG_BRACKETS = { 10 | begin: OPENING_LONG_BRACKET, end: CLOSING_LONG_BRACKET, 11 | contains: ['self'] 12 | }; 13 | var COMMENTS = [ 14 | { 15 | className: 'comment', 16 | begin: '--(?!' + OPENING_LONG_BRACKET + ')', end: '$' 17 | }, 18 | { 19 | className: 'comment', 20 | begin: '--' + OPENING_LONG_BRACKET, end: CLOSING_LONG_BRACKET, 21 | contains: [LONG_BRACKETS], 22 | relevance: 10 23 | } 24 | ] 25 | return { 26 | lexems: hljs.UNDERSCORE_IDENT_RE, 27 | keywords: { 28 | keyword: 29 | 'and break do else elseif end false for if in local nil not or repeat return then ' + 30 | 'true until while', 31 | built_in: 32 | '_G _VERSION assert collectgarbage dofile error getfenv getmetatable ipairs load ' + 33 | 'loadfile loadstring module next pairs pcall print rawequal rawget rawset require ' + 34 | 'select setfenv setmetatable tonumber tostring type unpack xpcall coroutine debug ' + 35 | 'io math os package string table' 36 | }, 37 | contains: COMMENTS.concat([ 38 | { 39 | className: 'function', 40 | beginWithKeyword: true, end: '\\)', 41 | keywords: 'function', 42 | contains: [ 43 | { 44 | className: 'title', 45 | begin: '([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*' 46 | }, 47 | { 48 | className: 'params', 49 | begin: '\\(', endsWithParent: true, 50 | contains: COMMENTS 51 | } 52 | ].concat(COMMENTS) 53 | }, 54 | hljs.C_NUMBER_MODE, 55 | hljs.APOS_STRING_MODE, 56 | hljs.QUOTE_STRING_MODE, 57 | { 58 | className: 'string', 59 | begin: OPENING_LONG_BRACKET, end: CLOSING_LONG_BRACKET, 60 | contains: [LONG_BRACKETS], 61 | relevance: 10 62 | } 63 | ]) 64 | }; 65 | } 66 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/pojoaque.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Pojoaque Style by Jason Tate 4 | http://web-cms-designs.com/ftopict-10-pojoaque-style-for-highlight-js-code-highlighter.html 5 | Based on Solarized Style from http://ethanschoonover.com/solarized 6 | 7 | */ 8 | 9 | pre code { 10 | display: block; padding: 0.5em; 11 | color: #DCCF8F; 12 | background: url(./pojoaque.jpg) repeat scroll left top #181914; 13 | } 14 | 15 | pre .comment, 16 | pre .template_comment, 17 | pre .diff .header, 18 | pre .doctype, 19 | pre .lisp .string, 20 | pre .javadoc { 21 | color: #586e75; 22 | font-style: italic; 23 | } 24 | 25 | pre .keyword, 26 | pre .css .rule .keyword, 27 | pre .winutils, 28 | pre .javascript .title, 29 | pre .method, 30 | pre .addition, 31 | pre .css .tag, 32 | pre .clojure .title, 33 | pre .nginx .title { 34 | color: #B64926; 35 | } 36 | 37 | pre .number, 38 | pre .command, 39 | pre .string, 40 | pre .tag .value, 41 | pre .phpdoc, 42 | pre .tex .formula, 43 | pre .regexp, 44 | pre .hexcolor { 45 | color: #468966; 46 | } 47 | 48 | pre .title, 49 | pre .localvars, 50 | pre .function .title, 51 | pre .chunk, 52 | pre .decorator, 53 | pre .built_in, 54 | pre .lisp .title, 55 | pre .clojure .built_in, 56 | pre .identifier, 57 | pre .id { 58 | color: #FFB03B; 59 | } 60 | 61 | pre .attribute, 62 | pre .variable, 63 | pre .lisp .body, 64 | pre .smalltalk .number, 65 | pre .constant, 66 | pre .class .title, 67 | pre .parent, 68 | pre .haskell .type { 69 | color: #b58900; 70 | } 71 | 72 | pre .css .attribute { 73 | color: #b89859; 74 | } 75 | 76 | pre .css .number,pre .css .hexcolor{ 77 | color: #DCCF8F; 78 | } 79 | 80 | pre .css .class { 81 | color: #d3a60c; 82 | } 83 | 84 | pre .preprocessor, 85 | pre .pi, 86 | pre .shebang, 87 | pre .symbol, 88 | pre .symbol .string, 89 | pre .diff .change, 90 | pre .special, 91 | pre .attr_selector, 92 | pre .important, 93 | pre .subst, 94 | pre .cdata { 95 | color: #cb4b16; 96 | } 97 | 98 | pre .deletion { 99 | color: #dc322f; 100 | } 101 | 102 | pre .tex .formula { 103 | background: #073642; 104 | } 105 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/vbscript.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: VBScript 3 | Author: Nikita Ledyaev 4 | Contributors: Michal Gabrukiewicz 5 | */ 6 | 7 | function(hljs) { 8 | return { 9 | case_insensitive: true, 10 | keywords: { 11 | keyword: 12 | 'call class const dim do loop erase execute executeglobal exit for each next function ' + 13 | 'if then else on error option explicit new private property let get public randomize ' + 14 | 'redim rem select case set stop sub while wend with end to elseif is or xor and not ' + 15 | 'class_initialize class_terminate default preserve in me byval byref step resume goto', 16 | built_in: 17 | 'lcase month vartype instrrev ubound setlocale getobject rgb getref string ' + 18 | 'weekdayname rnd dateadd monthname now day minute isarray cbool round formatcurrency ' + 19 | 'conversions csng timevalue second year space abs clng timeserial fixs len asc ' + 20 | 'isempty maths dateserial atn timer isobject filter weekday datevalue ccur isdate ' + 21 | 'instr datediff formatdatetime replace isnull right sgn array snumeric log cdbl hex ' + 22 | 'chr lbound msgbox ucase getlocale cos cdate cbyte rtrim join hour oct typename trim ' + 23 | 'strcomp int createobject loadpicture tan formatnumber mid scriptenginebuildversion ' + 24 | 'scriptengine split scriptengineminorversion cint sin datepart ltrim sqr ' + 25 | 'scriptenginemajorversion time derived eval date formatpercent exp inputbox left ascw ' + 26 | 'chrw regexp server response request cstr err', 27 | literal: 28 | 'true false null nothing empty' 29 | }, 30 | illegal: '//', 31 | contains: [ 32 | { // can’t use standard QUOTE_STRING_MODE since it’s compiled with its own escape and doesn’t use the local one 33 | className: 'string', 34 | begin: '"', end: '"', 35 | illegal: '\\n', 36 | contains: [{begin: '""'}], 37 | relevance: 0 38 | }, 39 | { 40 | className: 'comment', 41 | begin: '\'', end: '$' 42 | }, 43 | hljs.C_NUMBER_MODE 44 | ] 45 | }; 46 | } 47 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/dark.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Dark style from softwaremaniacs.org (c) Ivan Sagalaev 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background: #444; 10 | } 11 | 12 | pre .keyword, 13 | pre .literal, 14 | pre .change, 15 | pre .winutils, 16 | pre .flow, 17 | pre .lisp .title, 18 | pre .clojure .built_in, 19 | pre .nginx .title, 20 | pre .tex .special { 21 | color: white; 22 | } 23 | 24 | pre code, 25 | pre .ruby .subst { 26 | color: #DDD; 27 | } 28 | 29 | pre .string, 30 | pre .title, 31 | pre .haskell .type, 32 | pre .ini .title, 33 | pre .tag .value, 34 | pre .css .rules .value, 35 | pre .preprocessor, 36 | pre .ruby .symbol, 37 | pre .ruby .symbol .string, 38 | pre .ruby .class .parent, 39 | pre .built_in, 40 | pre .sql .aggregate, 41 | pre .django .template_tag, 42 | pre .django .variable, 43 | pre .smalltalk .class, 44 | pre .javadoc, 45 | pre .ruby .string, 46 | pre .django .filter .argument, 47 | pre .smalltalk .localvars, 48 | pre .smalltalk .array, 49 | pre .attr_selector, 50 | pre .pseudo, 51 | pre .addition, 52 | pre .stream, 53 | pre .envvar, 54 | pre .apache .tag, 55 | pre .apache .cbracket, 56 | pre .tex .command, 57 | pre .input_number { 58 | color: #D88; 59 | } 60 | 61 | pre .comment, 62 | pre .java .annotation, 63 | pre .python .decorator, 64 | pre .template_comment, 65 | pre .pi, 66 | pre .doctype, 67 | pre .deletion, 68 | pre .shebang, 69 | pre .apache .sqbracket, 70 | pre .tex .formula { 71 | color: #777; 72 | } 73 | 74 | pre .keyword, 75 | pre .literal, 76 | pre .title, 77 | pre .css .id, 78 | pre .phpdoc, 79 | pre .haskell .type, 80 | pre .vbscript .built_in, 81 | pre .sql .aggregate, 82 | pre .rsl .built_in, 83 | pre .smalltalk .class, 84 | pre .diff .header, 85 | pre .chunk, 86 | pre .winutils, 87 | pre .bash .variable, 88 | pre .apache .tag, 89 | pre .tex .special, 90 | pre .request, 91 | pre .status { 92 | font-weight: bold; 93 | } 94 | 95 | pre .coffeescript .javascript, 96 | pre .xml .css, 97 | pre .xml .javascript, 98 | pre .xml .vbscript, 99 | pre .tex .formula { 100 | opacity: 0.5; 101 | } 102 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/components/near.js: -------------------------------------------------------------------------------- 1 | /* 2 | * near.js 3 | * Find steps near each other 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | 9 | // add near( selector, backwards = false) to jquery 10 | 11 | 12 | function checkAndGo( elements, func, selector, backwards ) { 13 | var next; 14 | elements.each(function(idx, element) { 15 | if(backwards) { 16 | next = func(element, selector, backwards); 17 | if (next) { 18 | return false; 19 | } 20 | } 21 | if( $(element).is(selector) ) { 22 | next = element; 23 | return false; 24 | } 25 | if(!backwards) { 26 | next = func(element, selector, backwards); 27 | if (next) { 28 | return false; 29 | } 30 | } 31 | }); 32 | return next; 33 | } 34 | function findNextInChildren(item, selector, backwards) { 35 | var children = $(item).children(); 36 | if(backwards) { 37 | children = $(children.get().reverse()); 38 | } 39 | return checkAndGo( children, findNextInChildren, selector, backwards ); 40 | } 41 | function findNextInSiblings(item, selector, backwards) { 42 | return checkAndGo( 43 | $(item)[backwards ? "prevAll" : "nextAll"](), 44 | findNextInChildren, selector, backwards ); 45 | } 46 | function findNextInParents(item, selector, backwards) { 47 | var next; 48 | var parents = $(item).parents(); 49 | parents = $(parents.get()); 50 | $.each(parents.get(), function(idx, element) { 51 | if( backwards && $(element).is(selector) ) { 52 | next = element; 53 | return false; 54 | } 55 | next = findNextInSiblings(element, selector, backwards); 56 | if(next) { 57 | return false; 58 | } 59 | }); 60 | return next; 61 | } 62 | 63 | $.fn.near = function( selector, backwards ) { 64 | var array = []; 65 | $(this).each(function(idx, element) { 66 | var near = (backwards ? 67 | false : 68 | findNextInChildren( element, selector, backwards )) || 69 | findNextInSiblings( element, selector, backwards ) || 70 | findNextInParents( element, selector, backwards ); 71 | if( near ) { 72 | array.push(near); 73 | } 74 | }); 75 | return $(array); 76 | }; 77 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /doc/ppt/js/languages/r.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: R 3 | Author: Joe Cheng 4 | */ 5 | 6 | function(hljs) { 7 | var IDENT_RE = '([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*'; 8 | 9 | return { 10 | contains: [ 11 | hljs.HASH_COMMENT_MODE, 12 | { 13 | begin: IDENT_RE, 14 | lexems: IDENT_RE, 15 | keywords: { 16 | keyword: 17 | 'function if in break next repeat else for return switch while try tryCatch|10 ' + 18 | 'stop warning require library attach detach source setMethod setGeneric ' + 19 | 'setGroupGeneric setClass ...|10', 20 | literal: 21 | 'NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 ' + 22 | 'NA_complex_|10' 23 | }, 24 | relevance: 0 25 | }, 26 | { 27 | // hex value 28 | className: 'number', 29 | begin: "0[xX][0-9a-fA-F]+[Li]?\\b", 30 | relevance: 0 31 | }, 32 | { 33 | // explicit integer 34 | className: 'number', 35 | begin: "\\d+(?:[eE][+\\-]?\\d*)?L\\b", 36 | relevance: 0 37 | }, 38 | { 39 | // number with trailing decimal 40 | className: 'number', 41 | begin: "\\d+\\.(?!\\d)(?:i\\b)?", 42 | relevance: 0 43 | }, 44 | { 45 | // number 46 | className: 'number', 47 | begin: "\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b", 48 | relevance: 0 49 | }, 50 | { 51 | // number with leading decimal 52 | className: 'number', 53 | begin: "\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b", 54 | relevance: 0 55 | }, 56 | 57 | { 58 | // escaped identifier 59 | begin: '`', 60 | end: '`', 61 | relevance: 0 62 | }, 63 | 64 | { 65 | className: 'string', 66 | begin: '"', 67 | end: '"', 68 | contains: [hljs.BACKSLASH_ESCAPE], 69 | relevance: 0 70 | }, 71 | { 72 | className: 'string', 73 | begin: "'", 74 | end: "'", 75 | contains: [hljs.BACKSLASH_ESCAPE], 76 | relevance: 0 77 | } 78 | ] 79 | }; 80 | } 81 | -------------------------------------------------------------------------------- /doc/ppt/css/highlight.min.css: -------------------------------------------------------------------------------- 1 | pre code{display:block;padding:.5em;background:#f0f0f0}pre code,pre .subst,pre .tag .title,pre .lisp .title,pre .clojure .built_in,pre .nginx .title{color:black}pre .string,pre .title,pre .constant,pre .parent,pre .tag .value,pre .rules .value,pre .rules .value .number,pre .preprocessor,pre .pragma,pre .haml .symbol,pre .ruby .symbol,pre .ruby .symbol .string,pre .aggregate,pre .template_tag,pre .django .variable,pre .smalltalk .class,pre .addition,pre .flow,pre .stream,pre .bash .variable,pre .apache .tag,pre .apache .cbracket,pre .tex .command,pre .tex .special,pre .erlang_repl .function_or_atom,pre .asciidoc .header,pre .markdown .header,pre .coffeescript .attribute{color:#800}pre .smartquote,pre .comment,pre .annotation,pre .template_comment,pre .diff .header,pre .chunk,pre .asciidoc .blockquote,pre .markdown .blockquote{color:#888}pre .number,pre .date,pre .regexp,pre .literal,pre .hexcolor,pre .smalltalk .symbol,pre .smalltalk .char,pre .go .constant,pre .change,pre .lasso .variable,pre .makefile .variable,pre .asciidoc .bullet,pre .markdown .bullet,pre .asciidoc .link_url,pre .markdown .link_url{color:#080}pre .label,pre .javadoc,pre .ruby .string,pre .decorator,pre .filter .argument,pre .localvars,pre .array,pre .attr_selector,pre .important,pre .pseudo,pre .pi,pre .haml .bullet,pre .doctype,pre .deletion,pre .envvar,pre .shebang,pre .apache .sqbracket,pre .nginx .built_in,pre .tex .formula,pre .erlang_repl .reserved,pre .prompt,pre .asciidoc .link_label,pre .markdown .link_label,pre .vhdl .attribute,pre .clojure .attribute,pre .asciidoc .attribute,pre .lasso .attribute,pre .coffeescript .property,pre .makefile .phony{color:#88F}pre .keyword,pre .id,pre .title,pre .built_in,pre .aggregate,pre .css .tag,pre .javadoctag,pre .phpdoc,pre .yardoctag,pre .smalltalk .class,pre .winutils,pre .bash .variable,pre .apache .tag,pre .go .typename,pre .tex .command,pre .asciidoc .strong,pre .markdown .strong,pre .request,pre .status{font-weight:bold}pre .asciidoc .emphasis,pre .markdown .emphasis{font-style:italic}pre .nginx .built_in{font-weight:normal}pre .coffeescript .javascript,pre .javascript .xml,pre .lasso .markup,pre .tex .formula,pre .xml .javascript,pre .xml .vbscript,pre .xml .css,pre .xml .cdata{opacity:.5} -------------------------------------------------------------------------------- /doc/ppt/js/languages/vhdl.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: VHDL 3 | Author: Igor Kalnitsky 4 | Contributors: Daniel C.K. Kho 5 | Description: VHDL is a hardware description language used in electronic design automation to describe digital and mixed-signal systems. 6 | */ 7 | 8 | function(hljs) { 9 | return { 10 | case_insensitive: true, 11 | keywords: { 12 | keyword: 13 | 'abs access after alias all and architecture array assert attribute begin block ' + 14 | 'body buffer bus case component configuration constant context cover disconnect ' + 15 | 'downto default else elsif end entity exit fairness file for force function generate ' + 16 | 'generic group guarded if impure in inertial inout is label library linkage literal ' + 17 | 'loop map mod nand new next nor not null of on open or others out package port ' + 18 | 'postponed procedure process property protected pure range record register reject ' + 19 | 'release rem report restrict restrict_guarantee return rol ror select sequence ' + 20 | 'severity shared signal sla sll sra srl strong subtype then to transport type ' + 21 | 'unaffected units until use variable vmode vprop vunit wait when while with xnor xor', 22 | typename: 23 | 'boolean bit character severity_level integer time delay_length natural positive ' + 24 | 'string bit_vector file_open_kind file_open_status std_ulogic std_ulogic_vector ' + 25 | 'std_logic std_logic_vector unsigned signed boolean_vector integer_vector ' + 26 | 'real_vector time_vector' 27 | }, 28 | illegal: '{', 29 | contains: [ 30 | hljs.C_BLOCK_COMMENT_MODE, // VHDL-2008 block commenting. 31 | { 32 | className: 'comment', 33 | begin: '--', end: '$' 34 | }, 35 | hljs.QUOTE_STRING_MODE, 36 | hljs.C_NUMBER_MODE, 37 | { 38 | className: 'literal', 39 | begin: '\'(U|X|0|1|Z|W|L|H|-)\'', 40 | contains: [hljs.BACKSLASH_ESCAPE] 41 | }, 42 | { 43 | className: 'attribute', 44 | begin: '\'[A-Za-z](_?[A-Za-z0-9])*', 45 | contains: [hljs.BACKSLASH_ESCAPE] 46 | } 47 | ] 48 | }; // return 49 | } 50 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/vala.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Vala 3 | Author: Antono Vasiljev 4 | Description: Vala is a new programming language that aims to bring modern programming language features to GNOME developers without imposing any additional runtime requirements and without using a different ABI compared to applications and libraries written in C. 5 | */ 6 | 7 | function(hljs) { 8 | return { 9 | keywords: { 10 | keyword: 11 | // Value types 12 | 'char uchar unichar int uint long ulong short ushort int8 int16 int32 int64 uint8 ' + 13 | 'uint16 uint32 uint64 float double bool struct enum string void ' + 14 | // Reference types 15 | 'weak unowned owned ' + 16 | // Modifiers 17 | 'async signal static abstract interface override ' + 18 | // Control Structures 19 | 'while do for foreach else switch case break default return try catch ' + 20 | // Visibility 21 | 'public private protected internal ' + 22 | // Other 23 | 'using new this get set const stdout stdin stderr var', 24 | built_in: 25 | 'DBus GLib CCode Gee Object', 26 | literal: 27 | 'false true null' 28 | }, 29 | contains: [ 30 | { 31 | className: 'class', 32 | beginWithKeyword: true, end: '{', 33 | keywords: 'class interface delegate namespace', 34 | contains: [ 35 | { 36 | beginWithKeyword: true, 37 | keywords: 'extends implements' 38 | }, 39 | { 40 | className: 'title', 41 | begin: hljs.UNDERSCORE_IDENT_RE 42 | } 43 | ] 44 | }, 45 | hljs.C_LINE_COMMENT_MODE, 46 | hljs.C_BLOCK_COMMENT_MODE, 47 | { 48 | className: 'string', 49 | begin: '"""', end: '"""', 50 | relevance: 5 51 | }, 52 | hljs.APOS_STRING_MODE, 53 | hljs.QUOTE_STRING_MODE, 54 | hljs.C_NUMBER_MODE, 55 | { 56 | className: 'preprocessor', 57 | begin: '^#', end: '$', 58 | relevance: 2 59 | }, 60 | { 61 | className: 'constant', 62 | begin: ' [A-Z_]+ ', 63 | relevance: 0 64 | } 65 | ] 66 | }; 67 | } 68 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/brown_paper.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Brown Paper style from goldblog.com.ua (c) Zaripov Yura 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background:#b7a68e url(./brown_papersq.png); 10 | } 11 | 12 | pre .keyword, 13 | pre .literal, 14 | pre .change, 15 | pre .winutils, 16 | pre .flow, 17 | pre .lisp .title, 18 | pre .clojure .built_in, 19 | pre .nginx .title, 20 | pre .tex .special, 21 | pre .request, 22 | pre .status { 23 | color:#005599; 24 | font-weight:bold; 25 | } 26 | 27 | pre code, 28 | pre .ruby .subst, 29 | pre .tag .keyword { 30 | color: #363C69; 31 | } 32 | 33 | pre .string, 34 | pre .title, 35 | pre .haskell .type, 36 | pre .tag .value, 37 | pre .css .rules .value, 38 | pre .preprocessor, 39 | pre .ruby .symbol, 40 | pre .ruby .symbol .string, 41 | pre .ruby .class .parent, 42 | pre .built_in, 43 | pre .sql .aggregate, 44 | pre .django .template_tag, 45 | pre .django .variable, 46 | pre .smalltalk .class, 47 | pre .javadoc, 48 | pre .ruby .string, 49 | pre .django .filter .argument, 50 | pre .smalltalk .localvars, 51 | pre .smalltalk .array, 52 | pre .attr_selector, 53 | pre .pseudo, 54 | pre .addition, 55 | pre .stream, 56 | pre .envvar, 57 | pre .apache .tag, 58 | pre .apache .cbracket, 59 | pre .tex .number { 60 | color: #2C009F; 61 | } 62 | 63 | pre .comment, 64 | pre .java .annotation, 65 | pre .python .decorator, 66 | pre .template_comment, 67 | pre .pi, 68 | pre .doctype, 69 | pre .deletion, 70 | pre .shebang, 71 | pre .apache .sqbracket, 72 | pre .nginx .built_in, 73 | pre .tex .formula { 74 | color: #802022; 75 | } 76 | 77 | pre .keyword, 78 | pre .literal, 79 | pre .css .id, 80 | pre .phpdoc, 81 | pre .title, 82 | pre .haskell .type, 83 | pre .vbscript .built_in, 84 | pre .sql .aggregate, 85 | pre .rsl .built_in, 86 | pre .smalltalk .class, 87 | pre .diff .header, 88 | pre .chunk, 89 | pre .winutils, 90 | pre .bash .variable, 91 | pre .apache .tag, 92 | pre .tex .command { 93 | font-weight: bold; 94 | } 95 | 96 | pre .coffeescript .javascript, 97 | pre .xml .css, 98 | pre .xml .javascript, 99 | pre .xml .vbscript, 100 | pre .tex .formula { 101 | opacity: 0.8; 102 | } 103 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/rainbow.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Style with support for rainbow parens 4 | 5 | */ 6 | 7 | pre ::-moz-selection{ background: #FF5E99; color:#fff; text-shadow: none; } 8 | pre ::selection { background:#FF5E99; color:#fff; text-shadow: none; } 9 | 10 | pre code { 11 | display: block; padding: 0.5em; 12 | background: #474949; color: #D1D9E1; 13 | } 14 | 15 | 16 | pre .body, 17 | pre .collection { 18 | color: #D1D9E1; 19 | } 20 | 21 | pre .comment, 22 | pre .template_comment, 23 | pre .diff .header, 24 | pre .doctype, 25 | pre .lisp .string, 26 | pre .javadoc { 27 | color: #969896; 28 | font-style: italic; 29 | } 30 | 31 | pre .keyword, 32 | pre .clojure .attribute, 33 | pre .winutils, 34 | pre .javascript .title, 35 | pre .addition, 36 | pre .css .tag { 37 | color: #cc99cc; 38 | } 39 | 40 | pre .number { color: #f99157; } 41 | 42 | pre .command, 43 | pre .string, 44 | pre .tag .value, 45 | pre .phpdoc, 46 | pre .tex .formula, 47 | pre .regexp, 48 | pre .hexcolor { 49 | color: #8abeb7; 50 | } 51 | 52 | pre .title, 53 | pre .localvars, 54 | pre .function .title, 55 | pre .chunk, 56 | pre .decorator, 57 | pre .built_in, 58 | pre .lisp .title, 59 | pre .identifier 60 | { 61 | color: #b5bd68; 62 | } 63 | 64 | pre .class .keyword 65 | { 66 | color: #f2777a; 67 | } 68 | 69 | pre .variable, 70 | pre .lisp .body, 71 | pre .smalltalk .number, 72 | pre .constant, 73 | pre .class .title, 74 | pre .parent, 75 | pre .haskell .label, 76 | pre .id, 77 | pre .lisp .title, 78 | pre .clojure .title .built_in { 79 | color: #ffcc66; 80 | } 81 | 82 | pre .tag .title, 83 | pre .rules .property, 84 | pre .django .tag .keyword, 85 | pre .clojure .title .built_in { 86 | font-weight: bold; 87 | } 88 | 89 | pre .attribute, 90 | pre .clojure .title { 91 | color: #81a2be; 92 | } 93 | 94 | pre .preprocessor, 95 | pre .pi, 96 | pre .shebang, 97 | pre .symbol, 98 | pre .symbol .string, 99 | pre .diff .change, 100 | pre .special, 101 | pre .attr_selector, 102 | pre .important, 103 | pre .subst, 104 | pre .cdata { 105 | color: #f99157; 106 | } 107 | 108 | pre .deletion { 109 | color: #dc322f; 110 | } 111 | 112 | pre .tex .formula { 113 | background: #eee8d5; 114 | } 115 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/idea.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Intellij Idea-like styling (c) Vasily Polovnyov 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | color: #000; 10 | background: #fff; 11 | } 12 | 13 | pre .subst, 14 | pre .title { 15 | font-weight: normal; 16 | color: #000; 17 | } 18 | 19 | pre .comment, 20 | pre .template_comment, 21 | pre .javadoc, 22 | pre .diff .header { 23 | color: #808080; 24 | font-style: italic; 25 | } 26 | 27 | pre .annotation, 28 | pre .decorator, 29 | pre .preprocessor, 30 | pre .doctype, 31 | pre .pi, 32 | pre .chunk, 33 | pre .shebang, 34 | pre .apache .cbracket, 35 | pre .input_number, 36 | pre .http .title { 37 | color: #808000; 38 | } 39 | 40 | pre .tag, 41 | pre .pi { 42 | background: #efefef; 43 | } 44 | 45 | pre .tag .title, 46 | pre .id, 47 | pre .attr_selector, 48 | pre .pseudo, 49 | pre .literal, 50 | pre .keyword, 51 | pre .hexcolor, 52 | pre .css .function, 53 | pre .ini .title, 54 | pre .css .class, 55 | pre .list .title, 56 | pre .clojure .title, 57 | pre .nginx .title, 58 | pre .tex .command, 59 | pre .request, 60 | pre .status { 61 | font-weight: bold; 62 | color: #000080; 63 | } 64 | 65 | pre .attribute, 66 | pre .rules .keyword, 67 | pre .number, 68 | pre .date, 69 | pre .regexp, 70 | pre .tex .special { 71 | font-weight: bold; 72 | color: #0000ff; 73 | } 74 | 75 | pre .number, 76 | pre .regexp { 77 | font-weight: normal; 78 | } 79 | 80 | pre .string, 81 | pre .value, 82 | pre .filter .argument, 83 | pre .css .function .params, 84 | pre .apache .tag { 85 | color: #008000; 86 | font-weight: bold; 87 | } 88 | 89 | pre .symbol, 90 | pre .ruby .symbol .string, 91 | pre .char, 92 | pre .tex .formula { 93 | color: #000; 94 | background: #d0eded; 95 | font-style: italic; 96 | } 97 | 98 | pre .phpdoc, 99 | pre .yardoctag, 100 | pre .javadoctag { 101 | text-decoration: underline; 102 | } 103 | 104 | pre .variable, 105 | pre .envvar, 106 | pre .apache .sqbracket, 107 | pre .nginx .built_in { 108 | color: #660e7a; 109 | } 110 | 111 | pre .addition { 112 | background: #baeeba; 113 | } 114 | 115 | pre .deletion { 116 | background: #ffc8bd; 117 | } 118 | 119 | pre .diff .change { 120 | background: #bccff9; 121 | } 122 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/monokai.css: -------------------------------------------------------------------------------- 1 | /* 2 | Monokai style - ported by Luigi Maselli - http://grigio.org 3 | */ 4 | 5 | pre code { 6 | display: block; padding: 0.5em; 7 | background: #272822; 8 | } 9 | 10 | pre .tag, 11 | pre .tag .title, 12 | pre .keyword, 13 | pre .literal, 14 | pre .change, 15 | pre .winutils, 16 | pre .flow, 17 | pre .lisp .title, 18 | pre .clojure .built_in, 19 | pre .nginx .title, 20 | pre .tex .special { 21 | color: #F92672; 22 | } 23 | 24 | pre code { 25 | color: #DDD; 26 | } 27 | 28 | pre code .constant { 29 | color: #66D9EF; 30 | } 31 | 32 | pre .class .title { 33 | color: white; 34 | } 35 | 36 | pre .attribute, 37 | pre .symbol, 38 | pre .symbol .string, 39 | pre .value, 40 | pre .regexp { 41 | color: #BF79DB; 42 | } 43 | 44 | pre .tag .value, 45 | pre .string, 46 | pre .ruby .subst, 47 | pre .title, 48 | pre .haskell .type, 49 | pre .preprocessor, 50 | pre .ruby .class .parent, 51 | pre .built_in, 52 | pre .sql .aggregate, 53 | pre .django .template_tag, 54 | pre .django .variable, 55 | pre .smalltalk .class, 56 | pre .javadoc, 57 | pre .django .filter .argument, 58 | pre .smalltalk .localvars, 59 | pre .smalltalk .array, 60 | pre .attr_selector, 61 | pre .pseudo, 62 | pre .addition, 63 | pre .stream, 64 | pre .envvar, 65 | pre .apache .tag, 66 | pre .apache .cbracket, 67 | pre .tex .command, 68 | pre .input_number { 69 | color: #A6E22E; 70 | } 71 | 72 | pre .comment, 73 | pre .java .annotation, 74 | pre .python .decorator, 75 | pre .template_comment, 76 | pre .pi, 77 | pre .doctype, 78 | pre .deletion, 79 | pre .shebang, 80 | pre .apache .sqbracket, 81 | pre .tex .formula { 82 | color: #75715E; 83 | } 84 | 85 | pre .keyword, 86 | pre .literal, 87 | pre .css .id, 88 | pre .phpdoc, 89 | pre .title, 90 | pre .haskell .type, 91 | pre .vbscript .built_in, 92 | pre .sql .aggregate, 93 | pre .rsl .built_in, 94 | pre .smalltalk .class, 95 | pre .diff .header, 96 | pre .chunk, 97 | pre .winutils, 98 | pre .bash .variable, 99 | pre .apache .tag, 100 | pre .tex .special, 101 | pre .request, 102 | pre .status { 103 | font-weight: bold; 104 | } 105 | 106 | pre .coffeescript .javascript, 107 | pre .xml .css, 108 | pre .xml .javascript, 109 | pre .xml .vbscript, 110 | pre .tex .formula { 111 | opacity: 0.5; 112 | } 113 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/zenburn.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Zenburn style from voldmar.ru (c) Vladimir Epifanov 4 | based on dark.css by Ivan Sagalaev 5 | 6 | */ 7 | 8 | pre code { 9 | display: block; padding: 0.5em; 10 | background: #3F3F3F; 11 | color: #DCDCDC; 12 | } 13 | 14 | pre .keyword, 15 | pre .tag, 16 | pre .css .class, 17 | pre .css .id, 18 | pre .lisp .title, 19 | pre .nginx .title, 20 | pre .request, 21 | pre .status, 22 | pre .clojure .attribute { 23 | color: #E3CEAB; 24 | } 25 | 26 | pre .django .template_tag, 27 | pre .django .variable, 28 | pre .django .filter .argument { 29 | color: #DCDCDC; 30 | } 31 | 32 | pre .number, 33 | pre .date { 34 | color: #8CD0D3; 35 | } 36 | 37 | pre .dos .envvar, 38 | pre .dos .stream, 39 | pre .variable, 40 | pre .apache .sqbracket { 41 | color: #EFDCBC; 42 | } 43 | 44 | pre .dos .flow, 45 | pre .diff .change, 46 | pre .python .exception, 47 | pre .python .built_in, 48 | pre .literal, 49 | pre .tex .special { 50 | color: #EFEFAF; 51 | } 52 | 53 | pre .diff .chunk, 54 | pre .ruby .subst { 55 | color: #8F8F8F; 56 | } 57 | 58 | pre .dos .keyword, 59 | pre .python .decorator, 60 | pre .title, 61 | pre .haskell .type, 62 | pre .diff .header, 63 | pre .ruby .class .parent, 64 | pre .apache .tag, 65 | pre .nginx .built_in, 66 | pre .tex .command, 67 | pre .input_number { 68 | color: #efef8f; 69 | } 70 | 71 | pre .dos .winutils, 72 | pre .ruby .symbol, 73 | pre .ruby .symbol .string, 74 | pre .ruby .string { 75 | color: #DCA3A3; 76 | } 77 | 78 | pre .diff .deletion, 79 | pre .string, 80 | pre .tag .value, 81 | pre .preprocessor, 82 | pre .built_in, 83 | pre .sql .aggregate, 84 | pre .javadoc, 85 | pre .smalltalk .class, 86 | pre .smalltalk .localvars, 87 | pre .smalltalk .array, 88 | pre .css .rules .value, 89 | pre .attr_selector, 90 | pre .pseudo, 91 | pre .apache .cbracket, 92 | pre .tex .formula { 93 | color: #CC9393; 94 | } 95 | 96 | pre .shebang, 97 | pre .diff .addition, 98 | pre .comment, 99 | pre .java .annotation, 100 | pre .template_comment, 101 | pre .pi, 102 | pre .doctype { 103 | color: #7F9F7F; 104 | } 105 | 106 | pre .coffeescript .javascript, 107 | pre .xml .css, 108 | pre .xml .javascript, 109 | pre .xml .vbscript, 110 | pre .tex .formula { 111 | opacity: 0.5; 112 | } 113 | 114 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/python.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Python 3 | */ 4 | 5 | function(hljs) { 6 | var STRINGS = [ 7 | { 8 | className: 'string', 9 | begin: '(u|b)?r?\'\'\'', end: '\'\'\'', 10 | relevance: 10 11 | }, 12 | { 13 | className: 'string', 14 | begin: '(u|b)?r?"""', end: '"""', 15 | relevance: 10 16 | }, 17 | { 18 | className: 'string', 19 | begin: '(u|r|ur)\'', end: '\'', 20 | contains: [hljs.BACKSLASH_ESCAPE], 21 | relevance: 10 22 | }, 23 | { 24 | className: 'string', 25 | begin: '(u|r|ur)"', end: '"', 26 | contains: [hljs.BACKSLASH_ESCAPE], 27 | relevance: 10 28 | }, 29 | { 30 | className: 'string', 31 | begin: '(b|br)\'', end: '\'', 32 | contains: [hljs.BACKSLASH_ESCAPE] 33 | }, 34 | { 35 | className: 'string', 36 | begin: '(b|br)"', end: '"', 37 | contains: [hljs.BACKSLASH_ESCAPE] 38 | } 39 | ].concat([ 40 | hljs.APOS_STRING_MODE, 41 | hljs.QUOTE_STRING_MODE 42 | ]); 43 | var TITLE = { 44 | className: 'title', begin: hljs.UNDERSCORE_IDENT_RE 45 | }; 46 | var PARAMS = { 47 | className: 'params', 48 | begin: '\\(', end: '\\)', 49 | contains: ['self', hljs.C_NUMBER_MODE].concat(STRINGS) 50 | }; 51 | var FUNC_CLASS_PROTO = { 52 | beginWithKeyword: true, end: ':', 53 | illegal: '[${=;\\n]', 54 | contains: [TITLE, PARAMS], 55 | relevance: 10 56 | }; 57 | 58 | return { 59 | keywords: { 60 | keyword: 61 | 'and elif is global as in if from raise for except finally print import pass return ' + 62 | 'exec else break not with class assert yield try while continue del or def lambda ' + 63 | 'nonlocal|10', 64 | built_in: 65 | 'None True False Ellipsis NotImplemented' 66 | }, 67 | illegal: '(|\\?)', 68 | contains: STRINGS.concat([ 69 | hljs.HASH_COMMENT_MODE, 70 | hljs.inherit(FUNC_CLASS_PROTO, {className: 'function', keywords: 'def'}), 71 | hljs.inherit(FUNC_CLASS_PROTO, {className: 'class', keywords: 'class'}), 72 | hljs.C_NUMBER_MODE, 73 | { 74 | className: 'decorator', 75 | begin: '@', end: '$' 76 | }, 77 | { 78 | begin: '\\b(print|exec)\\(' // don’t highlight keywords-turned-functions in Python 3 79 | } 80 | ]) 81 | }; 82 | } 83 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/github.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | github.com style (c) Vasily Polovnyov 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | color: #333; 10 | background: #f8f8ff 11 | } 12 | 13 | pre .comment, 14 | pre .template_comment, 15 | pre .diff .header, 16 | pre .javadoc { 17 | color: #998; 18 | font-style: italic 19 | } 20 | 21 | pre .keyword, 22 | pre .css .rule .keyword, 23 | pre .winutils, 24 | pre .javascript .title, 25 | pre .nginx .title, 26 | pre .subst, 27 | pre .request, 28 | pre .status { 29 | color: #333; 30 | font-weight: bold 31 | } 32 | 33 | pre .number, 34 | pre .hexcolor, 35 | pre .ruby .constant { 36 | color: #099; 37 | } 38 | 39 | pre .string, 40 | pre .tag .value, 41 | pre .phpdoc, 42 | pre .tex .formula { 43 | color: #d14 44 | } 45 | 46 | pre .title, 47 | pre .id { 48 | color: #900; 49 | font-weight: bold 50 | } 51 | 52 | pre .javascript .title, 53 | pre .lisp .title, 54 | pre .clojure .title, 55 | pre .subst { 56 | font-weight: normal 57 | } 58 | 59 | pre .class .title, 60 | pre .haskell .type, 61 | pre .vhdl .literal, 62 | pre .tex .command { 63 | color: #458; 64 | font-weight: bold 65 | } 66 | 67 | pre .tag, 68 | pre .tag .title, 69 | pre .rules .property, 70 | pre .django .tag .keyword { 71 | color: #000080; 72 | font-weight: normal 73 | } 74 | 75 | pre .attribute, 76 | pre .variable, 77 | pre .lisp .body { 78 | color: #008080 79 | } 80 | 81 | pre .regexp { 82 | color: #009926 83 | } 84 | 85 | pre .class { 86 | color: #458; 87 | font-weight: bold 88 | } 89 | 90 | pre .symbol, 91 | pre .ruby .symbol .string, 92 | pre .lisp .keyword, 93 | pre .tex .special, 94 | pre .input_number { 95 | color: #990073 96 | } 97 | 98 | pre .built_in, 99 | pre .lisp .title, 100 | pre .clojure .built_in { 101 | color: #0086b3 102 | } 103 | 104 | pre .preprocessor, 105 | pre .pi, 106 | pre .doctype, 107 | pre .shebang, 108 | pre .cdata { 109 | color: #999; 110 | font-weight: bold 111 | } 112 | 113 | pre .deletion { 114 | background: #fdd 115 | } 116 | 117 | pre .addition { 118 | background: #dfd 119 | } 120 | 121 | pre .diff .change { 122 | background: #0086b3 123 | } 124 | 125 | pre .chunk { 126 | color: #aaa 127 | } 128 | 129 | pre .tex .formula { 130 | opacity: 0.5; 131 | } 132 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/far.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | FAR Style (c) MajestiC 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background: #000080; 10 | } 11 | 12 | pre code, 13 | .ruby .subst { 14 | color: #0FF; 15 | } 16 | 17 | pre .string, 18 | pre .ruby .string, 19 | pre .haskell .type, 20 | pre .tag .value, 21 | pre .css .rules .value, 22 | pre .css .rules .value .number, 23 | pre .preprocessor, 24 | pre .ruby .symbol, 25 | pre .ruby .symbol .string, 26 | pre .built_in, 27 | pre .sql .aggregate, 28 | pre .django .template_tag, 29 | pre .django .variable, 30 | pre .smalltalk .class, 31 | pre .addition, 32 | pre .apache .tag, 33 | pre .apache .cbracket, 34 | pre .tex .command, 35 | pre .clojure .title { 36 | color: #FF0; 37 | } 38 | 39 | pre .keyword, 40 | pre .css .id, 41 | pre .title, 42 | pre .haskell .type, 43 | pre .vbscript .built_in, 44 | pre .sql .aggregate, 45 | pre .rsl .built_in, 46 | pre .smalltalk .class, 47 | pre .xml .tag .title, 48 | pre .winutils, 49 | pre .flow, 50 | pre .change, 51 | pre .envvar, 52 | pre .bash .variable, 53 | pre .tex .special, 54 | pre .clojure .built_in { 55 | color: #FFF; 56 | } 57 | 58 | pre .comment, 59 | pre .phpdoc, 60 | pre .javadoc, 61 | pre .java .annotation, 62 | pre .template_comment, 63 | pre .deletion, 64 | pre .apache .sqbracket, 65 | pre .tex .formula { 66 | color: #888; 67 | } 68 | 69 | pre .number, 70 | pre .date, 71 | pre .regexp, 72 | pre .literal, 73 | pre .smalltalk .symbol, 74 | pre .smalltalk .char, 75 | pre .clojure .attribute { 76 | color: #0F0; 77 | } 78 | 79 | pre .python .decorator, 80 | pre .django .filter .argument, 81 | pre .smalltalk .localvars, 82 | pre .smalltalk .array, 83 | pre .attr_selector, 84 | pre .pseudo, 85 | pre .xml .pi, 86 | pre .diff .header, 87 | pre .chunk, 88 | pre .shebang, 89 | pre .nginx .built_in, 90 | pre .input_number { 91 | color: #008080; 92 | } 93 | 94 | pre .keyword, 95 | pre .css .id, 96 | pre .title, 97 | pre .haskell .type, 98 | pre .vbscript .built_in, 99 | pre .sql .aggregate, 100 | pre .rsl .built_in, 101 | pre .smalltalk .class, 102 | pre .winutils, 103 | pre .flow, 104 | pre .apache .tag, 105 | pre .nginx .built_in, 106 | pre .tex .command, 107 | pre .tex .special, 108 | pre .request, 109 | pre .status { 110 | font-weight: bold; 111 | } 112 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/school_book.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | School Book style from goldblog.com.ua (c) Zaripov Yura 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 15px 0.5em 0.5em 30px; 9 | font-size: 11px !important; 10 | line-height:16px !important; 11 | } 12 | 13 | pre{ 14 | background:#f6f6ae url(./school_book.png); 15 | border-top: solid 2px #d2e8b9; 16 | border-bottom: solid 1px #d2e8b9; 17 | } 18 | 19 | pre .keyword, 20 | pre .literal, 21 | pre .change, 22 | pre .winutils, 23 | pre .flow, 24 | pre .lisp .title, 25 | pre .clojure .built_in, 26 | pre .nginx .title, 27 | pre .tex .special { 28 | color:#005599; 29 | font-weight:bold; 30 | } 31 | 32 | pre code, 33 | pre .ruby .subst, 34 | pre .tag .keyword { 35 | color: #3E5915; 36 | } 37 | 38 | pre .string, 39 | pre .title, 40 | pre .haskell .type, 41 | pre .tag .value, 42 | pre .css .rules .value, 43 | pre .preprocessor, 44 | pre .ruby .symbol, 45 | pre .ruby .symbol .string, 46 | pre .ruby .class .parent, 47 | pre .built_in, 48 | pre .sql .aggregate, 49 | pre .django .template_tag, 50 | pre .django .variable, 51 | pre .smalltalk .class, 52 | pre .javadoc, 53 | pre .ruby .string, 54 | pre .django .filter .argument, 55 | pre .smalltalk .localvars, 56 | pre .smalltalk .array, 57 | pre .attr_selector, 58 | pre .pseudo, 59 | pre .addition, 60 | pre .stream, 61 | pre .envvar, 62 | pre .apache .tag, 63 | pre .apache .cbracket, 64 | pre .nginx .built_in, 65 | pre .tex .command { 66 | color: #2C009F; 67 | } 68 | 69 | pre .comment, 70 | pre .java .annotation, 71 | pre .python .decorator, 72 | pre .template_comment, 73 | pre .pi, 74 | pre .doctype, 75 | pre .deletion, 76 | pre .shebang, 77 | pre .apache .sqbracket { 78 | color: #E60415; 79 | } 80 | 81 | pre .keyword, 82 | pre .literal, 83 | pre .css .id, 84 | pre .phpdoc, 85 | pre .title, 86 | pre .haskell .type, 87 | pre .vbscript .built_in, 88 | pre .sql .aggregate, 89 | pre .rsl .built_in, 90 | pre .smalltalk .class, 91 | pre .xml .tag .title, 92 | pre .diff .header, 93 | pre .chunk, 94 | pre .winutils, 95 | pre .bash .variable, 96 | pre .apache .tag, 97 | pre .tex .command, 98 | pre .request, 99 | pre .status { 100 | font-weight: bold; 101 | } 102 | 103 | pre .coffeescript .javascript, 104 | pre .xml .css, 105 | pre .xml .javascript, 106 | pre .xml .vbscript, 107 | pre .tex .formula { 108 | opacity: 0.5; 109 | } 110 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/magula.css: -------------------------------------------------------------------------------- 1 | /* 2 | Description: Magula style for highligh.js 3 | Author: Ruslan Keba 4 | Website: http://rukeba.com/ 5 | Version: 1.0 6 | Date: 2009-01-03 7 | Music: Aphex Twin / Xtal 8 | */ 9 | 10 | pre code { 11 | display: block; padding: 0.5em; 12 | background-color: #f4f4f4; 13 | } 14 | 15 | pre code, 16 | pre .ruby .subst, 17 | pre .lisp .title, 18 | pre .clojure .built_in { 19 | color: black; 20 | } 21 | 22 | pre .string, 23 | pre .title, 24 | pre .parent, 25 | pre .tag .value, 26 | pre .rules .value, 27 | pre .rules .value .number, 28 | pre .preprocessor, 29 | pre .ruby .symbol, 30 | pre .ruby .symbol .string, 31 | pre .aggregate, 32 | pre .template_tag, 33 | pre .django .variable, 34 | pre .smalltalk .class, 35 | pre .addition, 36 | pre .flow, 37 | pre .stream, 38 | pre .bash .variable, 39 | pre .apache .cbracket { 40 | color: #050; 41 | } 42 | 43 | pre .comment, 44 | pre .annotation, 45 | pre .template_comment, 46 | pre .diff .header, 47 | pre .chunk { 48 | color: #777; 49 | } 50 | 51 | pre .number, 52 | pre .date, 53 | pre .regexp, 54 | pre .literal, 55 | pre .smalltalk .symbol, 56 | pre .smalltalk .char, 57 | pre .change, 58 | pre .tex .special { 59 | color: #800; 60 | } 61 | 62 | pre .label, 63 | pre .javadoc, 64 | pre .ruby .string, 65 | pre .decorator, 66 | pre .filter .argument, 67 | pre .localvars, 68 | pre .array, 69 | pre .attr_selector, 70 | pre .pseudo, 71 | pre .pi, 72 | pre .doctype, 73 | pre .deletion, 74 | pre .envvar, 75 | pre .shebang, 76 | pre .apache .sqbracket, 77 | pre .nginx .built_in, 78 | pre .tex .formula, 79 | pre .input_number, 80 | pre .clojure .attribute { 81 | color: #00e; 82 | } 83 | 84 | pre .keyword, 85 | pre .id, 86 | pre .phpdoc, 87 | pre .title, 88 | pre .built_in, 89 | pre .aggregate, 90 | pre .smalltalk .class, 91 | pre .winutils, 92 | pre .bash .variable, 93 | pre .apache .tag, 94 | pre .xml .tag, 95 | pre .tex .command, 96 | pre .request, 97 | pre .status { 98 | font-weight: bold; 99 | color: navy; 100 | } 101 | 102 | pre .nginx .built_in { 103 | font-weight: normal; 104 | } 105 | 106 | pre .coffeescript .javascript, 107 | pre .xml .css, 108 | pre .xml .javascript, 109 | pre .xml .vbscript, 110 | pre .tex .formula { 111 | opacity: 0.5; 112 | } 113 | 114 | /* --- */ 115 | pre .apache .tag { 116 | font-weight: bold; 117 | color: blue; 118 | } 119 | 120 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/components/ajax.js: -------------------------------------------------------------------------------- 1 | /* 2 | * ajax.js 3 | * Load steps via ajax 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 7 | 'use strict'; 8 | var $jmpress = $.jmpress; 9 | 10 | /* DEFINES */ 11 | var afterStepLoaded = 'ajax:afterStepLoaded', 12 | loadStep = 'ajax:loadStep'; 13 | 14 | /* REGISTER EVENTS */ 15 | $jmpress('register', loadStep); 16 | $jmpress('register', afterStepLoaded); 17 | 18 | /* DEFAULTS */ 19 | $jmpress('defaults').ajaxLoadedClass = "loaded"; 20 | 21 | /* HOOKS */ 22 | $jmpress('initStep', function( step, eventData ) { 23 | eventData.stepData.src = $(step).attr('href') || eventData.data.src || false; 24 | eventData.stepData.srcLoaded = false; 25 | }); 26 | $jmpress(loadStep, function( step, eventData ) { 27 | var stepData = eventData.stepData, 28 | href = stepData && stepData.src, 29 | settings = eventData.settings; 30 | if ( href ) { 31 | $(step).addClass( settings.ajaxLoadedClass ); 32 | stepData.srcLoaded = true; 33 | $(step).load(href, function(response, status, xhr) { 34 | $(eventData.jmpress).jmpress('fire', afterStepLoaded, step, $.extend({}, eventData, { 35 | response: response 36 | ,status: status 37 | ,xhr: xhr 38 | })); 39 | }); 40 | } 41 | }); 42 | $jmpress('idle', function( step, eventData ) { 43 | if (!step) { 44 | return; 45 | } 46 | var settings = eventData.settings, 47 | jmpress = $(this), 48 | stepData = eventData.stepData; 49 | var siblings = $(step) 50 | .add( $(step).near( settings.stepSelector ) ) 51 | .add( $(step).near( settings.stepSelector, true) ) 52 | .add( jmpress.jmpress('fire', 'selectPrev', step, { 53 | stepData: $(step).data('stepData') 54 | })) 55 | .add( jmpress.jmpress('fire', 'selectNext', step, { 56 | stepData: $(step).data('stepData') 57 | })); 58 | siblings.each(function() { 59 | var step = this, 60 | stepData = $(step).data("stepData"); 61 | if(!stepData.src || stepData.srcLoaded) { 62 | return; 63 | } 64 | jmpress.jmpress('fire', loadStep, step, { 65 | stepData: $(step).data('stepData') 66 | }); 67 | }); 68 | }); 69 | $jmpress("setActive", function(step, eventData) { 70 | var stepData = $(step).data("stepData"); 71 | if(!stepData.src || stepData.srcLoaded) { 72 | return; 73 | } 74 | $(this).jmpress('fire', loadStep, step, { 75 | stepData: $(step).data('stepData') 76 | }); 77 | }); 78 | 79 | }(jQuery, document, window)); -------------------------------------------------------------------------------- /doc/ppt/js/languages/haskell.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Haskell 3 | Author: Jeremy Hull 4 | */ 5 | 6 | function(hljs) { 7 | var TYPE = { 8 | className: 'type', 9 | begin: '\\b[A-Z][\\w\']*', 10 | relevance: 0 11 | }; 12 | var CONTAINER = { 13 | className: 'container', 14 | begin: '\\(', end: '\\)', 15 | contains: [ 16 | {className: 'type', begin: '\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?'}, 17 | {className: 'title', begin: '[_a-z][\\w\']*'} 18 | ] 19 | }; 20 | var CONTAINER2 = { 21 | className: 'container', 22 | begin: '{', end: '}', 23 | contains: CONTAINER.contains 24 | } 25 | 26 | return { 27 | keywords: 28 | 'let in if then else case of where do module import hiding qualified type data ' + 29 | 'newtype deriving class instance not as foreign ccall safe unsafe', 30 | contains: [ 31 | { 32 | className: 'comment', 33 | begin: '--', end: '$' 34 | }, 35 | { 36 | className: 'preprocessor', 37 | begin: '{-#', end: '#-}' 38 | }, 39 | { 40 | className: 'comment', 41 | contains: ['self'], 42 | begin: '{-', end: '-}' 43 | }, 44 | { 45 | className: 'string', 46 | begin: '\\s+\'', end: '\'', 47 | contains: [hljs.BACKSLASH_ESCAPE], 48 | relevance: 0 49 | }, 50 | hljs.QUOTE_STRING_MODE, 51 | { 52 | className: 'import', 53 | begin: '\\bimport', end: '$', 54 | keywords: 'import qualified as hiding', 55 | contains: [CONTAINER], 56 | illegal: '\\W\\.|;' 57 | }, 58 | { 59 | className: 'module', 60 | begin: '\\bmodule', end: 'where', 61 | keywords: 'module where', 62 | contains: [CONTAINER], 63 | illegal: '\\W\\.|;' 64 | }, 65 | { 66 | className: 'class', 67 | begin: '\\b(class|instance)', end: 'where', 68 | keywords: 'class where instance', 69 | contains: [TYPE] 70 | }, 71 | { 72 | className: 'typedef', 73 | begin: '\\b(data|(new)?type)', end: '$', 74 | keywords: 'data type newtype deriving', 75 | contains: [TYPE, CONTAINER, CONTAINER2] 76 | }, 77 | hljs.C_NUMBER_MODE, 78 | { 79 | className: 'shebang', 80 | begin: '#!\\/usr\\/bin\\/env\ runhaskell', end: '$' 81 | }, 82 | TYPE, 83 | { 84 | className: 'title', begin: '^[_a-z][\\w\']*' 85 | } 86 | ] 87 | }; 88 | } 89 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/lisp.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Lisp 3 | Description: Generic lisp syntax 4 | Author: Vasily Polovnyov 5 | */ 6 | 7 | function(hljs) { 8 | var LISP_IDENT_RE = '[a-zA-Z_\\-\\+\\*\\/\\<\\=\\>\\&\\#][a-zA-Z0-9_\\-\\+\\*\\/\\<\\=\\>\\&\\#]*'; 9 | var LISP_SIMPLE_NUMBER_RE = '(\\-|\\+)?\\d+(\\.\\d+|\\/\\d+)?((d|e|f|l|s)(\\+|\\-)?\\d+)?'; 10 | var LITERAL = { 11 | className: 'literal', 12 | begin: '\\b(t{1}|nil)\\b' 13 | }; 14 | var NUMBERS = [ 15 | { 16 | className: 'number', begin: LISP_SIMPLE_NUMBER_RE 17 | }, 18 | { 19 | className: 'number', begin: '#b[0-1]+(/[0-1]+)?' 20 | }, 21 | { 22 | className: 'number', begin: '#o[0-7]+(/[0-7]+)?' 23 | }, 24 | { 25 | className: 'number', begin: '#x[0-9a-f]+(/[0-9a-f]+)?' 26 | }, 27 | { 28 | className: 'number', begin: '#c\\(' + LISP_SIMPLE_NUMBER_RE + ' +' + LISP_SIMPLE_NUMBER_RE, end: '\\)' 29 | } 30 | ] 31 | var STRING = { 32 | className: 'string', 33 | begin: '"', end: '"', 34 | contains: [hljs.BACKSLASH_ESCAPE], 35 | relevance: 0 36 | }; 37 | var COMMENT = { 38 | className: 'comment', 39 | begin: ';', end: '$' 40 | }; 41 | var VARIABLE = { 42 | className: 'variable', 43 | begin: '\\*', end: '\\*' 44 | }; 45 | var KEYWORD = { 46 | className: 'keyword', 47 | begin: '[:&]' + LISP_IDENT_RE 48 | }; 49 | var QUOTED_LIST = { 50 | begin: '\\(', end: '\\)', 51 | contains: ['self', LITERAL, STRING].concat(NUMBERS) 52 | }; 53 | var QUOTED1 = { 54 | className: 'quoted', 55 | begin: '[\'`]\\(', end: '\\)', 56 | contains: NUMBERS.concat([STRING, VARIABLE, KEYWORD, QUOTED_LIST]) 57 | }; 58 | var QUOTED2 = { 59 | className: 'quoted', 60 | begin: '\\(quote ', end: '\\)', 61 | keywords: {title: 'quote'}, 62 | contains: NUMBERS.concat([STRING, VARIABLE, KEYWORD, QUOTED_LIST]) 63 | }; 64 | var LIST = { 65 | className: 'list', 66 | begin: '\\(', end: '\\)' 67 | }; 68 | var BODY = { 69 | className: 'body', 70 | endsWithParent: true, excludeEnd: true 71 | }; 72 | LIST.contains = [{className: 'title', begin: LISP_IDENT_RE}, BODY]; 73 | BODY.contains = [QUOTED1, QUOTED2, LIST, LITERAL].concat(NUMBERS).concat([STRING, COMMENT, VARIABLE, KEYWORD]); 74 | 75 | return { 76 | case_insensitive: true, 77 | illegal: '[^\\s]', 78 | contains: NUMBERS.concat([ 79 | LITERAL, 80 | STRING, 81 | COMMENT, 82 | QUOTED1, QUOTED2, 83 | LIST 84 | ]) 85 | }; 86 | } 87 | -------------------------------------------------------------------------------- /doc/ppt/fancybox/demo/ajax.txt: -------------------------------------------------------------------------------- 1 |
    2 |

    Lorem ipsum dolor sit amet3

    3 |

    4 | Close me 5 |

    6 |

    7 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas fermentum ante et sapien dignissim in viverra magna feugiat. Donec tempus ipsum nec neque dignissim quis eleifend eros gravida. Praesent nisi massa, sodales quis tincidunt ac, semper quis risus. In suscipit nisl sed leo aliquet consequat. Integer vitae augue in risus porttitor pellentesque eu eget odio. Fusce ut sagittis quam. Morbi aliquam interdum blandit. Integer pharetra tempor velit, aliquam dictum justo tempus sed. Morbi congue fringilla justo a feugiat. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent quis metus et nisl consectetur pharetra. Nam bibendum turpis eu metus luctus eu volutpat sem molestie. Nam sollicitudin porttitor lorem, ac ultricies est venenatis eu. Ut dignissim elit et orci feugiat ac placerat purus euismod. Ut mi lorem, cursus et sagittis elementum, luctus ac massa. 8 |

    9 |

    10 | Phasellus et ligula vel diam ullamcorper volutpat. Integer rhoncus rhoncus aliquam. Aliquam erat volutpat. Aenean luctus vestibulum placerat. Quisque quam neque, lacinia aliquet eleifend ac, aliquet blandit felis. Curabitur porta ultricies dui, sit amet mattis quam euismod a. Ut eleifend scelerisque neque, sit amet accumsan odio consequat ut. Proin facilisis auctor elit sed accumsan. Cras dapibus nisl in nisi rhoncus laoreet. Nullam pellentesque tortor libero, eget facilisis ipsum. Donec ultricies tellus tellus, in tincidunt purus. Nullam in est aliquam velit scelerisque blandit. In tincidunt, magna a dapibus imperdiet, quam urna elementum leo, vitae rhoncus nisl velit cursus velit. In dignissim sem ac mauris rhoncus ornare. 11 |

    12 |

    13 | Duis imperdiet velit vel quam malesuada suscipit imperdiet tellus hendrerit. Mauris vestibulum odio mauris, ut placerat leo. Mauris quis neque at tellus feugiat congue id non enim. Nam vehicula posuere nulla eget vehicula. Donec pretium purus nec ligula porta eu laoreet sapien venenatis. Nulla facilisi. Phasellus eget mi enim. Phasellus molestie tincidunt ultrices. Aenean id sem a tellus lobortis tincidunt. Nam laoreet nulla vel velit tincidunt ac rutrum libero malesuada. Nulla consequat dolor quis nisl tempor fermentum. Integer sodales pretium varius. Aenean a leo vitae odio dictum dignissim malesuada nec dolor. Phasellus adipiscing viverra est, ac sagittis libero sagittis quis. Sed interdum dapibus nunc et fringilla. Nunc vel velit et urna laoreet bibendum. 14 |

    15 |
    -------------------------------------------------------------------------------- /doc/ppt/js/languages/actionscript.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: ActionScript 3 | Author: Alexander Myadzel 4 | */ 5 | 6 | function(hljs) { 7 | var IDENT_RE = '[a-zA-Z_$][a-zA-Z0-9_$]*'; 8 | var IDENT_FUNC_RETURN_TYPE_RE = '([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)'; 9 | 10 | var AS3_REST_ARG_MODE = { 11 | className: 'rest_arg', 12 | begin: '[.]{3}', end: IDENT_RE, 13 | relevance: 10 14 | }; 15 | var TITLE_MODE = {className: 'title', begin: IDENT_RE}; 16 | 17 | return { 18 | keywords: { 19 | keyword: 'as break case catch class const continue default delete do dynamic each ' + 20 | 'else extends final finally for function get if implements import in include ' + 21 | 'instanceof interface internal is namespace native new override package private ' + 22 | 'protected public return set static super switch this throw try typeof use var void ' + 23 | 'while with', 24 | literal: 'true false null undefined' 25 | }, 26 | contains: [ 27 | hljs.APOS_STRING_MODE, 28 | hljs.QUOTE_STRING_MODE, 29 | hljs.C_LINE_COMMENT_MODE, 30 | hljs.C_BLOCK_COMMENT_MODE, 31 | hljs.C_NUMBER_MODE, 32 | { 33 | className: 'package', 34 | beginWithKeyword: true, end: '{', 35 | keywords: 'package', 36 | contains: [TITLE_MODE] 37 | }, 38 | { 39 | className: 'class', 40 | beginWithKeyword: true, end: '{', 41 | keywords: 'class interface', 42 | contains: [ 43 | { 44 | beginWithKeyword: true, 45 | keywords: 'extends implements' 46 | }, 47 | TITLE_MODE 48 | ] 49 | }, 50 | { 51 | className: 'preprocessor', 52 | beginWithKeyword: true, end: ';', 53 | keywords: 'import include' 54 | }, 55 | { 56 | className: 'function', 57 | beginWithKeyword: true, end: '[{;]', 58 | keywords: 'function', 59 | illegal: '\\S', 60 | contains: [ 61 | TITLE_MODE, 62 | { 63 | className: 'params', 64 | begin: '\\(', end: '\\)', 65 | contains: [ 66 | hljs.APOS_STRING_MODE, 67 | hljs.QUOTE_STRING_MODE, 68 | hljs.C_LINE_COMMENT_MODE, 69 | hljs.C_BLOCK_COMMENT_MODE, 70 | AS3_REST_ARG_MODE 71 | ] 72 | }, 73 | { 74 | className: 'type', 75 | begin: ':', 76 | end: IDENT_FUNC_RETURN_TYPE_RE, 77 | relevance: 10 78 | } 79 | ] 80 | } 81 | ] 82 | }; 83 | } 84 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/plugins/secondary.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jmpress.secondary plugin 3 | * Apply a secondary animation when step is selected. 4 | */ 5 | (function( $, document, window, undefined ) { 6 | 'use strict'; 7 | $.jmpress("initStep", function( step, eventData ) { 8 | for(var name in eventData.data) { 9 | if(name.indexOf("secondary") === 0) { 10 | eventData.stepData[name] = eventData.data[name]; 11 | } 12 | } 13 | }); 14 | function exchangeIf(childStepData, condition, step) { 15 | if(childStepData.secondary && 16 | childStepData.secondary.split(" ").indexOf(condition) !== -1) { 17 | for(var name in childStepData) { 18 | if(name.length > 9 && name.indexOf("secondary") === 0) { 19 | var tmp = childStepData[name]; 20 | var normal = name.substr(9); 21 | normal = normal.substr(0, 1).toLowerCase() + normal.substr(1); 22 | childStepData[name] = childStepData[normal]; 23 | childStepData[normal] = tmp; 24 | } 25 | } 26 | $(this).jmpress("reapply", $(step)); 27 | } 28 | } 29 | $.jmpress("beforeActive", function( step, eventData ) { 30 | exchangeIf.call(eventData.jmpress, $(step).data("stepData"), "self", step); 31 | var parent = $(step).parent(); 32 | $(parent) 33 | .children(eventData.settings.stepSelector) 34 | .each(function(idx, child) { 35 | var childStepData = $(child).data("stepData"); 36 | exchangeIf.call(eventData.jmpress, childStepData, "siblings", child); 37 | }); 38 | function grandchildrenFunc(idx, child) { 39 | var childStepData = $(child).data("stepData"); 40 | exchangeIf.call(eventData.jmpress, childStepData, "grandchildren", child); 41 | } 42 | for(var i = 1; i < eventData.parents.length; i++) { 43 | $(eventData.parents[i]) 44 | .children(eventData.settings.stepSelector) 45 | .each(); 46 | } 47 | }); 48 | $.jmpress("setInactive", function( step, eventData ) { 49 | exchangeIf.call(eventData.jmpress, $(step).data("stepData"), "self", step); 50 | var parent = $(step).parent(); 51 | $(parent) 52 | .children(eventData.settings.stepSelector) 53 | .each(function(idx, child) { 54 | var childStepData = $(child).data("stepData"); 55 | exchangeIf.call(eventData.jmpress, childStepData, "siblings", child); 56 | }); 57 | function grandchildrenFunc(idx, child) { 58 | var childStepData = $(child).data("stepData"); 59 | exchangeIf.call(eventData.jmpress, childStepData, "grandchildren", child); 60 | } 61 | for(var i = 1; i < eventData.parents.length; i++) { 62 | $(eventData.parents[i]) 63 | .children(eventData.settings.stepSelector) 64 | .each(grandchildrenFunc); 65 | } 66 | }); 67 | }(jQuery, document, window)); 68 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/matlab.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Matlab 3 | Author: Denis Bardadym 4 | */ 5 | 6 | function(hljs) { 7 | return { 8 | keywords: { 9 | keyword: 10 | 'break case catch classdef continue else elseif end enumerated events for function ' + 11 | 'global if methods otherwise parfor persistent properties return spmd switch try while', 12 | built_in: 13 | 'sin sind sinh asin asind asinh cos cosd cosh acos acosd acosh tan tand tanh atan ' + 14 | 'atand atan2 atanh sec secd sech asec asecd asech csc cscd csch acsc acscd acsch cot ' + 15 | 'cotd coth acot acotd acoth hypot exp expm1 log log1p log10 log2 pow2 realpow reallog ' + 16 | 'realsqrt sqrt nthroot nextpow2 abs angle complex conj imag real unwrap isreal ' + 17 | 'cplxpair fix floor ceil round mod rem sign airy besselj bessely besselh besseli ' + 18 | 'besselk beta betainc betaln ellipj ellipke erf erfc erfcx erfinv expint gamma ' + 19 | 'gammainc gammaln psi legendre cross dot factor isprime primes gcd lcm rat rats perms ' + 20 | 'nchoosek factorial cart2sph cart2pol pol2cart sph2cart hsv2rgb rgb2hsv zeros ones ' + 21 | 'eye repmat rand randn linspace logspace freqspace meshgrid accumarray size length ' + 22 | 'ndims numel disp isempty isequal isequalwithequalnans cat reshape diag blkdiag tril ' + 23 | 'triu fliplr flipud flipdim rot90 find sub2ind ind2sub bsxfun ndgrid permute ipermute ' + 24 | 'shiftdim circshift squeeze isscalar isvector ans eps realmax realmin pi i inf nan ' + 25 | 'isnan isinf isfinite j why compan gallery hadamard hankel hilb invhilb magic pascal ' + 26 | 'rosser toeplitz vander wilkinson' 27 | }, 28 | illegal: '(//|"|#|/\\*|\\s+/\\w+)', 29 | contains: [ 30 | { 31 | className: 'function', 32 | beginWithKeyword: true, end: '$', 33 | keywords: 'function', 34 | contains: [ 35 | { 36 | className: 'title', 37 | begin: hljs.UNDERSCORE_IDENT_RE 38 | }, 39 | { 40 | className: 'params', 41 | begin: '\\(', end: '\\)' 42 | }, 43 | { 44 | className: 'params', 45 | begin: '\\[', end: '\\]' 46 | } 47 | ] 48 | }, 49 | { 50 | className: 'string', 51 | begin: '\'', end: '\'', 52 | contains: [hljs.BACKSLASH_ESCAPE, {begin: '\'\''}], 53 | relevance: 0 54 | }, 55 | { 56 | className: 'comment', 57 | begin: '\\%', end: '$' 58 | }, 59 | hljs.C_NUMBER_MODE 60 | ] 61 | }; 62 | } 63 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/index.notes.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | jmpress.js | a jQuery plugin to build a website on the infinite canvas 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
    17 |

    introducing jmpress.js

    18 |

    build a website on the infinite canvas by sokra & shama

    19 |
    20 | 21 |
    22 |

    About

    23 |

    I am pure <html>, .css {} and function javascript() {} and use CSS3 transitions and transformations.

    24 |

    I can pan,

    25 |

    rotate

    26 |

    and scale between elements on an infinite canvas.

    27 |
    28 | 29 |
    30 |

    Support

    31 |

    I currently work with most modern web browsers and fallback to simpler transitions with unsupported browsers.

    32 |
    33 | 34 |
    35 |

    jQuery port of impress.js

    36 |

    but I have become much, much more.

    37 |
    38 | 39 |
    40 |

    Features

    41 |
      42 |
    • custom animations 43 |
    • nested steps 44 |
    • printable 45 |
    • ajax loaded steps 46 |
    • presenter notes 47 |
    • templating 48 |
    • routing 49 |
    • keyboard controls 50 |
    • zoomable steps 51 |
    • plugins 52 |
    53 |
    54 | 55 |
    56 |

    get started quickly

    57 |

    by using one of our pre-made presentation templates

    58 |
    59 | 60 |
    61 |

    Presenter notes

    62 |

    :)

    63 |
    64 | 65 |
    66 |

    De-init jmpress

    67 |

    allowing your presentation to be printed.

    68 |
    69 | 70 |
    71 |

    Zooming

    72 |

    Yes it also works in presentation mode.

    73 |
    74 | 75 |
    76 |

    Custom animations

    77 |

    using the data-jmpress attribute.

    78 |
    79 | 80 |
    81 |

    TODO: add more stupid text in presentation notes

    82 |
    83 | 84 |
    85 | 86 | 87 | 88 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/sunburst.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Sunburst-like style (c) Vasily Polovnyov 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background: #000; color: #f8f8f8; 10 | } 11 | 12 | pre .comment, 13 | pre .template_comment, 14 | pre .javadoc { 15 | color: #aeaeae; 16 | font-style: italic; 17 | } 18 | 19 | pre .keyword, 20 | pre .ruby .function .keyword, 21 | pre .request, 22 | pre .status, 23 | pre .nginx .title { 24 | color: #E28964; 25 | } 26 | 27 | pre .function .keyword, 28 | pre .sub .keyword, 29 | pre .method, 30 | pre .list .title { 31 | color: #99CF50; 32 | } 33 | 34 | pre .string, 35 | pre .tag .value, 36 | pre .cdata, 37 | pre .filter .argument, 38 | pre .attr_selector, 39 | pre .apache .cbracket, 40 | pre .date, 41 | pre .tex .command { 42 | color: #65B042; 43 | } 44 | 45 | pre .subst { 46 | color: #DAEFA3; 47 | } 48 | 49 | pre .regexp { 50 | color: #E9C062; 51 | } 52 | 53 | pre .title, 54 | pre .sub .identifier, 55 | pre .pi, 56 | pre .tag, 57 | pre .tag .keyword, 58 | pre .decorator, 59 | pre .shebang, 60 | pre .input_number { 61 | color: #89BDFF; 62 | } 63 | 64 | pre .class .title, 65 | pre .haskell .type, 66 | pre .smalltalk .class, 67 | pre .javadoctag, 68 | pre .yardoctag, 69 | pre .phpdoc { 70 | text-decoration: underline; 71 | } 72 | 73 | pre .symbol, 74 | pre .ruby .symbol .string, 75 | pre .number { 76 | color: #3387CC; 77 | } 78 | 79 | pre .params, 80 | pre .variable, 81 | pre .clojure .attribute { 82 | color: #3E87E3; 83 | } 84 | 85 | pre .css .tag, 86 | pre .rules .property, 87 | pre .pseudo, 88 | pre .tex .special { 89 | color: #CDA869; 90 | } 91 | 92 | pre .css .class { 93 | color: #9B703F; 94 | } 95 | 96 | pre .rules .keyword { 97 | color: #C5AF75; 98 | } 99 | 100 | pre .rules .value { 101 | color: #CF6A4C; 102 | } 103 | 104 | pre .css .id { 105 | color: #8B98AB; 106 | } 107 | 108 | pre .annotation, 109 | pre .apache .sqbracket, 110 | pre .nginx .built_in { 111 | color: #9B859D; 112 | } 113 | 114 | pre .preprocessor { 115 | color: #8996A8; 116 | } 117 | 118 | pre .hexcolor, 119 | pre .css .value .number { 120 | color: #DD7B3B; 121 | } 122 | 123 | pre .css .function { 124 | color: #DAD085; 125 | } 126 | 127 | pre .diff .header, 128 | pre .chunk, 129 | pre .tex .formula { 130 | background-color: #0E2231; 131 | color: #F8F8F8; 132 | font-style: italic; 133 | } 134 | 135 | pre .diff .change { 136 | background-color: #4A410D; 137 | color: #F8F8F8; 138 | } 139 | 140 | pre .addition { 141 | background-color: #253B22; 142 | color: #F8F8F8; 143 | } 144 | 145 | pre .deletion { 146 | background-color: #420E09; 147 | color: #F8F8F8; 148 | } 149 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/presentation-screen.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | jmpress.js | presentation screen 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 42 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | -------------------------------------------------------------------------------- /doc/ppt/js/styles/googlecode.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Google Code style (c) Aahan Krish 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background: white; color: black; 10 | } 11 | 12 | pre .comment, 13 | pre .template_comment, 14 | pre .javadoc, 15 | pre .comment * { 16 | color: #800; 17 | } 18 | 19 | pre .keyword, 20 | pre .method, 21 | pre .list .title, 22 | pre .clojure .built_in, 23 | pre .nginx .title, 24 | pre .tag .title, 25 | pre .setting .value, 26 | pre .winutils, 27 | pre .tex .command, 28 | pre .http .title, 29 | pre .request, 30 | pre .status { 31 | color: #008; 32 | } 33 | 34 | pre .envvar, 35 | pre .tex .special { 36 | color: #660; 37 | } 38 | 39 | pre .string, 40 | pre .tag .value, 41 | pre .cdata, 42 | pre .filter .argument, 43 | pre .attr_selector, 44 | pre .apache .cbracket, 45 | pre .date, 46 | pre .regexp { 47 | color: #080; 48 | } 49 | 50 | pre .sub .identifier, 51 | pre .pi, 52 | pre .tag, 53 | pre .tag .keyword, 54 | pre .decorator, 55 | pre .ini .title, 56 | pre .shebang, 57 | pre .input_number, 58 | pre .hexcolor, 59 | pre .rules .value, 60 | pre .css .value .number, 61 | pre .literal, 62 | pre .symbol, 63 | pre .ruby .symbol .string, 64 | pre .number, 65 | pre .css .function, 66 | pre .clojure .attribute { 67 | color: #066; 68 | } 69 | 70 | pre .class .title, 71 | pre .haskell .type, 72 | pre .smalltalk .class, 73 | pre .javadoctag, 74 | pre .yardoctag, 75 | pre .phpdoc, 76 | pre .typename, 77 | pre .tag .attribute, 78 | pre .doctype, 79 | pre .class .id, 80 | pre .built_in, 81 | pre .setting, 82 | pre .params, 83 | pre .variable, 84 | pre .clojure .title { 85 | color: #606; 86 | } 87 | 88 | pre .css .tag, 89 | pre .rules .property, 90 | pre .pseudo, 91 | pre .subst { 92 | color: #000; 93 | } 94 | 95 | pre .css .class, pre .css .id { 96 | color: #9B703F; 97 | } 98 | 99 | pre .value .important { 100 | color: #ff7700; 101 | font-weight: bold; 102 | } 103 | 104 | pre .rules .keyword { 105 | color: #C5AF75; 106 | } 107 | 108 | pre .annotation, 109 | pre .apache .sqbracket, 110 | pre .nginx .built_in { 111 | color: #9B859D; 112 | } 113 | 114 | pre .preprocessor, 115 | pre .preprocessor * { 116 | color: #444; 117 | } 118 | 119 | pre .tex .formula { 120 | background-color: #EEE; 121 | font-style: italic; 122 | } 123 | 124 | pre .diff .header, 125 | pre .chunk { 126 | color: #808080; 127 | font-weight: bold; 128 | } 129 | 130 | pre .diff .change { 131 | background-color: #BCCFF9; 132 | } 133 | 134 | pre .addition { 135 | background-color: #BAEEBA; 136 | } 137 | 138 | pre .deletion { 139 | background-color: #FFC8BD; 140 | } 141 | 142 | pre .comment .yardoctag { 143 | font-weight: bold; 144 | } 145 | -------------------------------------------------------------------------------- /doc/How to start for IoT.md: -------------------------------------------------------------------------------- 1 | ## 最小物联网系统 - 入门指南 ## 2 | 3 | 本指南参考了群主Phodal的IoT框架(第一版)的知识结构,在此基础上进行各个内容的规划学习,指南中描述了构建IoT所需要的大部分知识,但**不包含该框架的部署**。指南中还讲述了本人的学习顺序和各个学习阶段的耗时,给大家作为参考,希望对大家有帮助。 4 | 5 | ### 1、下载软件Dreamweaver (1 天) ### 6 | 7 | 自行搜索,下载Dreamweaver,具体细节不赘述。 8 | 9 | **原因:**不管你是准备在Win环境下开发,还是在Linux环境下开发,先用一个好的IDE可以省掉很多麻烦,代码提示功能简直是新手的福音。过早地脱离代码提示,有好有坏,建议使用。 10 | 11 | ### 2、[上w3school学习](http://www.w3school.com.cn/index.html) ### 12 | 13 | **HTML基本知识 (1 - 2天)、CSS、CSS3基本知识 (1 - 2天)** 14 | 15 | 这两天的HTML 与 CSS的代码,尽量每一个都点进“试一试”里面看过代码,当然,如果在Dreamweaver上面敲过一遍就更好了,这里的知识后面得经常查,如果记住了,就没那么多事了。 16 | 17 | (CSS3的边框阴影看起来简单,但是用得好可以实现立体设计,画面凸显感强。选择平面化设计还是选择立体化设计,看个人喜好了) 18 | 19 | ### 3、学习JavaScript、HTML DOM(2天) ### 20 | 21 | 还是在[w3school](http://www.w3school.com.cn/index.html)上面学,这些知识在w3school上面贵在有很多例子,把例子过一遍,既可以学到知识,又可以强化案例,等自己脑海突然想到某个实现方法的时候,往往可以回这里找找类似的案例实现,稍加更改就可以了 22 | 23 | ### 4、JQuery (4天) ### 24 | 25 | jQuery这部分花的四天,只有一天是在花在w3school上面,后面的时间都花在折腾jQuery插件上了。 26 | 27 | 其实到这里,大家已经可以对自己的页面进行规划了。我怕是在学了CSS之后就开始设计自己的页面的,每学一部分内容,就改进一下设计。 28 | 29 | JavaScript可以将网页上的动作进行即使响应,常用的按键响应都是挺简单的。假如我们有时候突然想到了一个比较复杂的展现方式,用JavaScript的话,得自己做很多设计,实现很长的代码,令人头大。这时候可以用上jQuery插件了,比如 我想做一个“弹框页面”,按下按键后,弹出高一层的窗口,这时候初学者的我们比较难马上做出来。所以百度、Google一下关键词“jQuery 弹框插件”,就有挺多别人实现好的案例,根据他提供的API进行调用就可以了。 30 | 31 | 有时候用不起来,我常常是到他的demo页,按F12,直接查看他的页面代码。这个方法虽然有点笨,但是可以实打实地了解到他的页面布置方法。 32 | 33 | 34 | 经过了上面部分的学习,我们已经可以将页面设计得有模有样了。但是页面只是一部分,作为IoT,最核心的其实是数据的传输问题(个人观点)。 35 | 36 | 接下来就到了进阶学习的时候了。 37 | 38 | ### 5、配置LNMP(Linux + Nginx + Mysql + Php) (2-4天) ### 39 | 这里先姑且认为你们已经熟悉Linux的使用了,具体的布置细节可以参考以下的链接: 40 | 41 | [为小内存低配置LNMP服务器设置nginx+mysql+php](http://geekpi.cn/blog/2012/10/1908) 42 | 43 | [Raspberry Pi(树莓派)托管WordPress](http://www.guokr.com/post/332043/) 44 | 45 | 当你可以在局域网内浏览树莓派上的Nginx欢迎界面的时候就成功了。 46 | 47 | 这里多讲一点,LNMP主要是 平台+服务器+数据库+后端程序,不使用LNMP也有其他的架构,LAMP,WAMP都有,具体自查。 48 | 49 | ### 6、学习Mysql(1 – 2天) ### 50 | 这部分学习我们常用的**插入,删除,查询**就差不多了。 51 | 52 | Mysql的创建用户及权限问题可自行百度。 53 | 54 | 具体操作Mysql时,我们一般用其他语言来进行操作,但是用到的语句也与内部语言基本相同。 55 | 56 | ### 7、学习Php/ASP(4天) ## 57 | 单纯学习Php/ASP没太多用处。 58 | 59 | Php相对而言更跨平台一些,而且与Nginx搭配使用也不错。 60 | 61 | ASP是Win平台的产物,如果想搭建WAM(Win + Apache + Mysql)也是可以的。 62 | 63 | JavaScript与Php是相对而言的,Js是前台动作(将页面上的操作即时反应),Php是后台动作(将动作所涉及的内容提取出来) 64 | 65 | ### 8、学习前后台数据交换 AJAX、JSON (2 – 4 天) ### 66 | 还是在w3shool上面学,具体情况具体百度(百度未必不必谷歌好,在谷歌上部分资料是未经过整理的,在百度上往往能查到关键词匹配度比较高的内容,很多人也遇到了与你相同的情况)。 67 | ### 9、发布网站 ### 68 | 我使用的是新花生壳。 69 | 70 | 这里有一个坑,一般我们家庭分到的ip很多都不是专线ip,而是网络运营商NAT分配的,意思就是我们分到的ip是网络运营商那边路由器分配的ip。具体可以百度关键词“我的ip”,然后查看路由器192.168.1.1里面的ip,两个不对应就是NAT过的。NAT过的ip是无法直接用花生壳进行网页发布的,使用新花生壳来直接映射局域网端口则可以实现,不过需要申请账号,一天一抽,看手气了,也可以等公测版。 71 | 72 | **总结:基本知识学习顺序就是这样了,每个人学习的快慢不同,后面的时间仅作参考。主要还是大家心中有一个目标设计方向,然后针对性地找资料就很快了。相信大家也能尽快制作出自己满意的网页。当然这些知识只是这样学过,只是到能用的程度而已,大家如果想要往前端发展,每一个部分都有很长的路,我是走底层路线的,所以只能浅尝则止了。 73 | 共勉:)** 74 | 75 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/examples/cube/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | jmpress.js | cube example 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
    20 |
    21 | FRONT 22 |
    23 | 26 |
    27 | BACK 28 |
    29 |
    30 | LEFT 31 |
    32 |
    33 | TOP 34 |
    35 |
    36 | BOTTOM 37 |
    38 |
    39 | 40 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/avrasm.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: AVR Assembler 3 | Author: Vladimir Ermakov 4 | */ 5 | 6 | function(hljs) { 7 | return { 8 | case_insensitive: true, 9 | keywords: { 10 | keyword: 11 | /* mnemonic */ 12 | 'adc add adiw and andi asr bclr bld brbc brbs brcc brcs break breq brge brhc brhs ' + 13 | 'brid brie brlo brlt brmi brne brpl brsh brtc brts brvc brvs bset bst call cbi cbr ' + 14 | 'clc clh cli cln clr cls clt clv clz com cp cpc cpi cpse dec eicall eijmp elpm eor ' + 15 | 'fmul fmuls fmulsu icall ijmp in inc jmp ld ldd ldi lds lpm lsl lsr mov movw mul ' + 16 | 'muls mulsu neg nop or ori out pop push rcall ret reti rjmp rol ror sbc sbr sbrc sbrs ' + 17 | 'sec seh sbi sbci sbic sbis sbiw sei sen ser ses set sev sez sleep spm st std sts sub ' + 18 | 'subi swap tst wdr', 19 | built_in: 20 | /* general purpose registers */ 21 | 'r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 r17 r18 r19 r20 r21 r22 ' + 22 | 'r23 r24 r25 r26 r27 r28 r29 r30 r31 x|0 xh xl y|0 yh yl z|0 zh zl ' + 23 | /* IO Registers (ATMega128) */ 24 | 'ucsr1c udr1 ucsr1a ucsr1b ubrr1l ubrr1h ucsr0c ubrr0h tccr3c tccr3a tccr3b tcnt3h ' + 25 | 'tcnt3l ocr3ah ocr3al ocr3bh ocr3bl ocr3ch ocr3cl icr3h icr3l etimsk etifr tccr1c ' + 26 | 'ocr1ch ocr1cl twcr twdr twar twsr twbr osccal xmcra xmcrb eicra spmcsr spmcr portg ' + 27 | 'ddrg ping portf ddrf sreg sph spl xdiv rampz eicrb eimsk gimsk gicr eifr gifr timsk ' + 28 | 'tifr mcucr mcucsr tccr0 tcnt0 ocr0 assr tccr1a tccr1b tcnt1h tcnt1l ocr1ah ocr1al ' + 29 | 'ocr1bh ocr1bl icr1h icr1l tccr2 tcnt2 ocr2 ocdr wdtcr sfior eearh eearl eedr eecr ' + 30 | 'porta ddra pina portb ddrb pinb portc ddrc pinc portd ddrd pind spdr spsr spcr udr0 ' + 31 | 'ucsr0a ucsr0b ubrr0l acsr admux adcsr adch adcl porte ddre pine pinf' 32 | }, 33 | contains: [ 34 | hljs.C_BLOCK_COMMENT_MODE, 35 | {className: 'comment', begin: ';', end: '$'}, 36 | hljs.C_NUMBER_MODE, // 0x..., decimal, float 37 | hljs.BINARY_NUMBER_MODE, // 0b... 38 | { 39 | className: 'number', 40 | begin: '\\b(\\$[a-zA-Z0-9]+|0o[0-7]+)' // $..., 0o... 41 | }, 42 | hljs.QUOTE_STRING_MODE, 43 | { 44 | className: 'string', 45 | begin: '\'', end: '[^\\\\]\'', 46 | illegal: '[^\\\\][^\']' 47 | }, 48 | {className: 'label', begin: '^[A-Za-z0-9_.$]+:'}, 49 | {className: 'preprocessor', begin: '#', end: '$'}, 50 | { // директивы «.include» «.macro» и т.д. 51 | className: 'preprocessor', 52 | begin: '\\.[a-zA-Z]+' 53 | }, 54 | { // подстановка в «.macro» 55 | className: 'localvars', 56 | begin: '@[0-9]+' 57 | } 58 | ] 59 | }; 60 | } 61 | -------------------------------------------------------------------------------- /doc/ppt/fancybox/source/helpers/jquery.fancybox-buttons.css: -------------------------------------------------------------------------------- 1 | #fancybox-buttons { 2 | position: fixed; 3 | left: 0; 4 | width: 100%; 5 | z-index: 8050; 6 | } 7 | 8 | #fancybox-buttons.top { 9 | top: 10px; 10 | } 11 | 12 | #fancybox-buttons.bottom { 13 | bottom: 10px; 14 | } 15 | 16 | #fancybox-buttons ul { 17 | display: block; 18 | width: 166px; 19 | height: 30px; 20 | margin: 0 auto; 21 | padding: 0; 22 | list-style: none; 23 | border: 1px solid #111; 24 | border-radius: 3px; 25 | -webkit-box-shadow: inset 0 0 0 1px rgba(255,255,255,.05); 26 | -moz-box-shadow: inset 0 0 0 1px rgba(255,255,255,.05); 27 | box-shadow: inset 0 0 0 1px rgba(255,255,255,.05); 28 | background: rgb(50,50,50); 29 | background: -moz-linear-gradient(top, rgb(68,68,68) 0%, rgb(52,52,52) 50%, rgb(41,41,41) 50%, rgb(51,51,51) 100%); 30 | background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(68,68,68)), color-stop(50%,rgb(52,52,52)), color-stop(50%,rgb(41,41,41)), color-stop(100%,rgb(51,51,51))); 31 | background: -webkit-linear-gradient(top, rgb(68,68,68) 0%,rgb(52,52,52) 50%,rgb(41,41,41) 50%,rgb(51,51,51) 100%); 32 | background: -o-linear-gradient(top, rgb(68,68,68) 0%,rgb(52,52,52) 50%,rgb(41,41,41) 50%,rgb(51,51,51) 100%); 33 | background: -ms-linear-gradient(top, rgb(68,68,68) 0%,rgb(52,52,52) 50%,rgb(41,41,41) 50%,rgb(51,51,51) 100%); 34 | background: linear-gradient(top, rgb(68,68,68) 0%,rgb(52,52,52) 50%,rgb(41,41,41) 50%,rgb(51,51,51) 100%); 35 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#444444', endColorstr='#222222',GradientType=0 ); 36 | } 37 | 38 | #fancybox-buttons ul li { 39 | float: left; 40 | margin: 0; 41 | padding: 0; 42 | } 43 | 44 | #fancybox-buttons a { 45 | display: block; 46 | width: 30px; 47 | height: 30px; 48 | text-indent: -9999px; 49 | background-color: transparent; 50 | background-image: url('fancybox_buttons.png'); 51 | background-repeat: no-repeat; 52 | outline: none; 53 | opacity: 0.8; 54 | } 55 | 56 | #fancybox-buttons a:hover { 57 | opacity: 1; 58 | } 59 | 60 | #fancybox-buttons a.btnPrev { 61 | background-position: 5px 0; 62 | } 63 | 64 | #fancybox-buttons a.btnNext { 65 | background-position: -33px 0; 66 | border-right: 1px solid #3e3e3e; 67 | } 68 | 69 | #fancybox-buttons a.btnPlay { 70 | background-position: 0 -30px; 71 | } 72 | 73 | #fancybox-buttons a.btnPlayOn { 74 | background-position: -30px -30px; 75 | } 76 | 77 | #fancybox-buttons a.btnToggle { 78 | background-position: 3px -60px; 79 | border-left: 1px solid #111; 80 | border-right: 1px solid #3e3e3e; 81 | width: 35px 82 | } 83 | 84 | #fancybox-buttons a.btnToggleOn { 85 | background-position: -27px -60px; 86 | } 87 | 88 | #fancybox-buttons a.btnClose { 89 | border-left: 1px solid #111; 90 | width: 35px; 91 | background-position: -56px 0px; 92 | } 93 | 94 | #fancybox-buttons a.btnDisabled { 95 | opacity : 0.4; 96 | cursor: default; 97 | } -------------------------------------------------------------------------------- /doc/ppt/js/styles/xcode.css: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | XCode style (c) Angel Garcia 4 | 5 | */ 6 | 7 | pre code { 8 | display: block; padding: 0.5em; 9 | background: #fff; color: black; 10 | } 11 | 12 | pre .comment, 13 | pre .template_comment, 14 | pre .javadoc, 15 | pre .comment * { 16 | color: rgb(0,106,0); 17 | } 18 | 19 | pre .keyword, 20 | pre .literal, 21 | pre .nginx .title { 22 | color: rgb(170,13,145); 23 | } 24 | pre .method, 25 | pre .list .title, 26 | pre .tag .title, 27 | pre .setting .value, 28 | pre .winutils, 29 | pre .tex .command, 30 | pre .http .title, 31 | pre .request, 32 | pre .status { 33 | color: #008; 34 | } 35 | 36 | pre .envvar, 37 | pre .tex .special { 38 | color: #660; 39 | } 40 | 41 | pre .string { 42 | color: rgb(196,26,22); 43 | } 44 | pre .tag .value, 45 | pre .cdata, 46 | pre .filter .argument, 47 | pre .attr_selector, 48 | pre .apache .cbracket, 49 | pre .date, 50 | pre .regexp { 51 | color: #080; 52 | } 53 | 54 | pre .sub .identifier, 55 | pre .pi, 56 | pre .tag, 57 | pre .tag .keyword, 58 | pre .decorator, 59 | pre .ini .title, 60 | pre .shebang, 61 | pre .input_number, 62 | pre .hexcolor, 63 | pre .rules .value, 64 | pre .css .value .number, 65 | pre .symbol, 66 | pre .symbol .string, 67 | pre .number, 68 | pre .css .function, 69 | pre .clojure .title, 70 | pre .clojure .built_in { 71 | color: rgb(28,0,207); 72 | } 73 | 74 | pre .class .title, 75 | pre .haskell .type, 76 | pre .smalltalk .class, 77 | pre .javadoctag, 78 | pre .yardoctag, 79 | pre .phpdoc, 80 | pre .typename, 81 | pre .tag .attribute, 82 | pre .doctype, 83 | pre .class .id, 84 | pre .built_in, 85 | pre .setting, 86 | pre .params, 87 | pre .clojure .attribute { 88 | color: rgb(92,38,153); 89 | } 90 | 91 | pre .variable { 92 | color: rgb(63,110,116); 93 | } 94 | pre .css .tag, 95 | pre .rules .property, 96 | pre .pseudo, 97 | pre .subst { 98 | color: #000; 99 | } 100 | 101 | pre .css .class, pre .css .id { 102 | color: #9B703F; 103 | } 104 | 105 | pre .value .important { 106 | color: #ff7700; 107 | font-weight: bold; 108 | } 109 | 110 | pre .rules .keyword { 111 | color: #C5AF75; 112 | } 113 | 114 | pre .annotation, 115 | pre .apache .sqbracket, 116 | pre .nginx .built_in { 117 | color: #9B859D; 118 | } 119 | 120 | pre .preprocessor, 121 | pre .preprocessor * { 122 | color: rgb(100,56,32); 123 | } 124 | 125 | pre .tex .formula { 126 | background-color: #EEE; 127 | font-style: italic; 128 | } 129 | 130 | pre .diff .header, 131 | pre .chunk { 132 | color: #808080; 133 | font-weight: bold; 134 | } 135 | 136 | pre .diff .change { 137 | background-color: #BCCFF9; 138 | } 139 | 140 | pre .addition { 141 | background-color: #BAEEBA; 142 | } 143 | 144 | pre .deletion { 145 | background-color: #FFC8BD; 146 | } 147 | 148 | pre .comment .yardoctag { 149 | font-weight: bold; 150 | } 151 | 152 | pre .method .id { 153 | color: #000; 154 | } 155 | -------------------------------------------------------------------------------- /doc/ppt/js/languages/delphi.js: -------------------------------------------------------------------------------- 1 | /* 2 | Language: Delphi 3 | */ 4 | 5 | function(hljs) { 6 | var DELPHI_KEYWORDS = 'and safecall cdecl then string exports library not pascal set ' + 7 | 'virtual file in array label packed end. index while const raise for to implementation ' + 8 | 'with except overload destructor downto finally program exit unit inherited override if ' + 9 | 'type until function do begin repeat goto nil far initialization object else var uses ' + 10 | 'external resourcestring interface end finalization class asm mod case on shr shl of ' + 11 | 'register xorwrite threadvar try record near stored constructor stdcall inline div out or ' + 12 | 'procedure'; 13 | var DELPHI_CLASS_KEYWORDS = 'safecall stdcall pascal stored const implementation ' + 14 | 'finalization except to finally program inherited override then exports string read not ' + 15 | 'mod shr try div shl set library message packed index for near overload label downto exit ' + 16 | 'public goto interface asm on of constructor or private array unit raise destructor var ' + 17 | 'type until function else external with case default record while protected property ' + 18 | 'procedure published and cdecl do threadvar file in if end virtual write far out begin ' + 19 | 'repeat nil initialization object uses resourcestring class register xorwrite inline static'; 20 | var CURLY_COMMENT = { 21 | className: 'comment', 22 | begin: '{', end: '}', 23 | relevance: 0 24 | }; 25 | var PAREN_COMMENT = { 26 | className: 'comment', 27 | begin: '\\(\\*', end: '\\*\\)', 28 | relevance: 10 29 | }; 30 | var STRING = { 31 | className: 'string', 32 | begin: '\'', end: '\'', 33 | contains: [{begin: '\'\''}], 34 | relevance: 0 35 | }; 36 | var CHAR_STRING = { 37 | className: 'string', begin: '(#\\d+)+' 38 | }; 39 | var FUNCTION = { 40 | className: 'function', 41 | beginWithKeyword: true, end: '[:;]', 42 | keywords: 'function constructor|10 destructor|10 procedure|10', 43 | contains: [ 44 | { 45 | className: 'title', begin: hljs.IDENT_RE 46 | }, 47 | { 48 | className: 'params', 49 | begin: '\\(', end: '\\)', 50 | keywords: DELPHI_KEYWORDS, 51 | contains: [STRING, CHAR_STRING] 52 | }, 53 | CURLY_COMMENT, PAREN_COMMENT 54 | ] 55 | }; 56 | return { 57 | case_insensitive: true, 58 | keywords: DELPHI_KEYWORDS, 59 | illegal: '("|\\$[G-Zg-z]|\\/\\*| 4 | Contributors: Ivan Sagalaev 5 | */ 6 | 7 | function(hljs) { 8 | var VARS = [ 9 | { 10 | className: 'variable', begin: '\\$\\d+' 11 | }, 12 | { 13 | className: 'variable', begin: '\\${', end: '}' 14 | }, 15 | { 16 | className: 'variable', begin: '[\\$\\@]' + hljs.UNDERSCORE_IDENT_RE 17 | } 18 | ]; 19 | var DEFAULT = { 20 | endsWithParent: true, 21 | lexems: '[a-z/_]+', 22 | keywords: { 23 | built_in: 24 | 'on off yes no true false none blocked debug info notice warn error crit ' + 25 | 'select break last permanent redirect kqueue rtsig epoll poll /dev/poll' 26 | }, 27 | relevance: 0, 28 | illegal: '=>', 29 | contains: [ 30 | hljs.HASH_COMMENT_MODE, 31 | { 32 | className: 'string', 33 | begin: '"', end: '"', 34 | contains: [hljs.BACKSLASH_ESCAPE].concat(VARS), 35 | relevance: 0 36 | }, 37 | { 38 | className: 'string', 39 | begin: "'", end: "'", 40 | contains: [hljs.BACKSLASH_ESCAPE].concat(VARS), 41 | relevance: 0 42 | }, 43 | { 44 | className: 'url', 45 | begin: '([a-z]+):/', end: '\\s', endsWithParent: true, excludeEnd: true 46 | }, 47 | { 48 | className: 'regexp', 49 | begin: "\\s\\^", end: "\\s|{|;", returnEnd: true, 50 | contains: [hljs.BACKSLASH_ESCAPE].concat(VARS) 51 | }, 52 | // regexp locations (~, ~*) 53 | { 54 | className: 'regexp', 55 | begin: "~\\*?\\s+", end: "\\s|{|;", returnEnd: true, 56 | contains: [hljs.BACKSLASH_ESCAPE].concat(VARS) 57 | }, 58 | // *.example.com 59 | { 60 | className: 'regexp', 61 | begin: "\\*(\\.[a-z\\-]+)+", 62 | contains: [hljs.BACKSLASH_ESCAPE].concat(VARS) 63 | }, 64 | // sub.example.* 65 | { 66 | className: 'regexp', 67 | begin: "([a-z\\-]+\\.)+\\*", 68 | contains: [hljs.BACKSLASH_ESCAPE].concat(VARS) 69 | }, 70 | // IP 71 | { 72 | className: 'number', 73 | begin: '\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b' 74 | }, 75 | // units 76 | { 77 | className: 'number', 78 | begin: '\\b\\d+[kKmMgGdshdwy]*\\b', 79 | relevance: 0 80 | } 81 | ].concat(VARS) 82 | }; 83 | 84 | return { 85 | contains: [ 86 | hljs.HASH_COMMENT_MODE, 87 | { 88 | begin: hljs.UNDERSCORE_IDENT_RE + '\\s', end: ';|{', returnBegin: true, 89 | contains: [ 90 | { 91 | className: 'title', 92 | begin: hljs.UNDERSCORE_IDENT_RE, 93 | starts: DEFAULT 94 | } 95 | ] 96 | } 97 | ], 98 | illegal: '[^\\s\\}]' 99 | }; 100 | } 101 | -------------------------------------------------------------------------------- /doc/ppt/jmpress.js-master/src/plugins/duration.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jmpress.duration plugin 3 | * For auto advancing steps after a given duration and optionally displaying a 4 | * progress bar. 5 | */ 6 | (function( $, document, window, undefined ) { 7 | 'use strict'; 8 | 9 | $.jmpress("defaults").duration = { 10 | defaultValue: -1 11 | ,defaultAction: "next" 12 | ,barSelector: undefined 13 | ,barProperty: "width" 14 | ,barPropertyStart: "0" 15 | ,barPropertyEnd: "100%" 16 | }; 17 | $.jmpress("initStep", function( step, eventData ) { 18 | eventData.stepData.duration = eventData.data.duration && parseInt(eventData.data.duration, 10); 19 | eventData.stepData.durationAction = eventData.data.durationAction; 20 | }); 21 | $.jmpress("setInactive", function( step, eventData ) { 22 | var settings = eventData.settings, 23 | durationSettings = settings.duration, 24 | current = eventData.current; 25 | var dur = eventData.stepData.duration || durationSettings.defaultValue; 26 | if( current.durationTimeout ) { 27 | if( durationSettings.barSelector ) { 28 | var css = { 29 | transitionProperty: durationSettings.barProperty 30 | ,transitionDuration: '0' 31 | ,transitionDelay: '0' 32 | ,transitionTimingFunction: 'linear' 33 | }; 34 | css[durationSettings.barProperty] = durationSettings.barPropertyStart; 35 | var bars = $(durationSettings.barSelector); 36 | $.jmpress("css", bars, css); 37 | bars.each(function(idx, element) { 38 | var next = $(element).next(); 39 | var parent = $(element).parent(); 40 | $(element).detach(); 41 | if(next.length) { 42 | next.insertBefore(element); 43 | } else { 44 | parent.append(element); 45 | } 46 | }); 47 | } 48 | clearTimeout(current.durationTimeout); 49 | delete current.durationTimeout; 50 | } 51 | }); 52 | $.jmpress("setActive", function( step, eventData ) { 53 | var settings = eventData.settings, 54 | durationSettings = settings.duration, 55 | current = eventData.current; 56 | var dur = eventData.stepData.duration || durationSettings.defaultValue; 57 | if( dur && dur > 0 ) { 58 | if( durationSettings.barSelector ) { 59 | var css = { 60 | transitionProperty: durationSettings.barProperty 61 | ,transitionDuration: (dur-settings.transitionDuration*2/3-100)+"ms" 62 | ,transitionDelay: (settings.transitionDuration*2/3)+'ms' 63 | ,transitionTimingFunction: 'linear' 64 | }; 65 | css[durationSettings.barProperty] = durationSettings.barPropertyEnd; 66 | $.jmpress("css", $(durationSettings.barSelector), css); 67 | } 68 | var jmpress = this; 69 | if(current.durationTimeout) { 70 | clearTimeout(current.durationTimeout); 71 | current.durationTimeout = undefined; 72 | } 73 | current.durationTimeout = setTimeout(function() { 74 | var action = eventData.stepData.durationAction || durationSettings.defaultAction; 75 | $(jmpress).jmpress(action); 76 | }, dur); 77 | } 78 | }); 79 | }(jQuery, document, window)); 80 | --------------------------------------------------------------------------------