PK18A»`æ=/=/ tutorus-latest/installation.html Installation — TutorUs 0.1 documentation

Installation¶

Clone the repo¶

git clone git://github.com/reinbach/tutorus.git

Create VirtualEnv¶

mkvirtualenv tutorus

Install requirements¶

pip install -r requirements.txt

Configure settings¶

Configure your settings settings/<env>.py and then create symlink back to <env>.py called currentenv.py

ln -s settings/prod.py settings/currentenv.py

Sync Database¶

python manage.py syncdb

Run migrations¶

python manage.py migrate

Collect Static Media¶

python manage.py collectstatic

Start Server¶

Start server <dev mode>

python manage.py collectstatic

Running the unit tests¶

./manage test –settings=settings.test

Making the Docs¶

cd docs make html

Project Versions

Table Of Contents

Previous topic

Welcome to TutorUs’s documentation!

Next topic

Usage

This Page

PK18A&#˹î'î'tutorus-latest/index.html Welcome to TutorUs’s documentation! — TutorUs 0.1 documentation

Project Versions

Table Of Contents

Next topic

Installation

This Page

PK18A™({º33tutorus-latest/usage.html Usage — TutorUs 0.1 documentation

Usage¶

  • TODO

Project Versions

Previous topic

Installation

This Page

PK18A9W]¥ÔÔtutorus-latest/searchindex.jsSearch.setIndex({objects:{},terms:{set:[1,2],creat:[1,2],modul:1,sync:[1,2],indic:1,"static":[1,2],tabl:1,pip:2,syncdb:2,txt:2,todo:0,your:2,unit:[1,2],page:1,virtualenv:[1,2],index:1,git:2,welcom:1,databas:[1,2],make:[1,2],configur:[1,2],content:1,start:[1,2],html:2,call:2,env:2,test:[1,2],prod:2,instal:[1,2],run:[1,2],currentenv:2,python:2,usag:[0,1],clone:[1,2],migrat:[1,2],symlink:2,back:2,repo:[1,2],github:2,document:1,requir:[1,2],search:1,collectstat:2,reinbach:2,doc:[1,2],dev:2,tutoru:[1,2],collect:[1,2],mkvirtualenv:2,mode:2,media:[1,2],server:[1,2],com:2,manag:2},objtypes:{},titles:["Usage","Welcome to TutorUs’s documentation!","Installation"],objnames:{},filenames:["usage","index","installation"]})PK18ADi4oËËtutorus-latest/objects.inv# Sphinx inventory version 2 # Project: TutorUs # Version: 0.1 # The remainder of this file is compressed using zlib. xÚËÍOÉÌKI­P(.I±ÊILJÍQÐ5T(¨ÔÍ…Jèe”äæ(+ø槔æ¤*x‚„¸ÒSó°h‚‰Bu@”§&%g *„ˆA•C$¦§rßæ1PK18A8p¬ÙÆÆtutorus-latest/search.html Search — TutorUs 0.1 documentation

Search

Please activate JavaScript to enable the search functionality.

From here you can search these documents. Enter your search words into the box below and click "search". Note that the search function will automatically search for all of the words. Pages containing fewer words won't appear in the result list.

Project Versions

PK18Aœô52TTtutorus-latest/genindex.html Index — TutorUs 0.1 documentation

Index

Project Versions

PK18AU¨æætutorus-latest/.buildinfo# Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. config: 3cd8549c16da29e976256224f46e7d05 tags: fbb0d17656682115ca4d033fb2f83ba1 PK18A:>«>«>%tutorus-latest/_static/searchtools.js/* * searchtools.js_t * ~~~~~~~~~~~~~~~~ * * Sphinx JavaScript utilties for the full-text search. * * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ /** * helper function to return a node containing the * search summary for a given text. keywords is a list * of stemmed words, hlwords is the list of normal, unstemmed * words. the first one is used to find the occurance, the * latter for highlighting it. */ jQuery.makeSearchSummary = function(text, keywords, hlwords) { var textLower = text.toLowerCase(); var start = 0; $.each(keywords, function() { var i = textLower.indexOf(this.toLowerCase()); if (i > -1) start = i; }); start = Math.max(start - 120, 0); var excerpt = ((start > 0) ? '...' : '') + $.trim(text.substr(start, 240)) + ((start + 240 - text.length) ? '...' : ''); var rv = $('
').text(excerpt); $.each(hlwords, function() { rv = rv.highlightText(this, 'highlighted'); }); return rv; } /** * Porter Stemmer */ var Stemmer = function() { var step2list = { ational: 'ate', tional: 'tion', enci: 'ence', anci: 'ance', izer: 'ize', bli: 'ble', alli: 'al', entli: 'ent', eli: 'e', ousli: 'ous', ization: 'ize', ation: 'ate', ator: 'ate', alism: 'al', iveness: 'ive', fulness: 'ful', ousness: 'ous', aliti: 'al', iviti: 'ive', biliti: 'ble', logi: 'log' }; var step3list = { icate: 'ic', ative: '', alize: 'al', iciti: 'ic', ical: 'ic', ful: '', ness: '' }; var c = "[^aeiou]"; // consonant var v = "[aeiouy]"; // vowel var C = c + "[^aeiouy]*"; // consonant sequence var V = v + "[aeiou]*"; // vowel sequence var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 var s_v = "^(" + C + ")?" + v; // vowel in stem this.stemWord = function (w) { var stem; var suffix; var firstch; var origword = w; if (w.length < 3) return w; var re; var re2; var re3; var re4; firstch = w.substr(0,1); if (firstch == "y") w = firstch.toUpperCase() + w.substr(1); // Step 1a re = /^(.+?)(ss|i)es$/; re2 = /^(.+?)([^s])s$/; if (re.test(w)) w = w.replace(re,"$1$2"); else if (re2.test(w)) w = w.replace(re2,"$1$2"); // Step 1b re = /^(.+?)eed$/; re2 = /^(.+?)(ed|ing)$/; if (re.test(w)) { var fp = re.exec(w); re = new RegExp(mgr0); if (re.test(fp[1])) { re = /.$/; w = w.replace(re,""); } } else if (re2.test(w)) { var fp = re2.exec(w); stem = fp[1]; re2 = new RegExp(s_v); if (re2.test(stem)) { w = stem; re2 = /(at|bl|iz)$/; re3 = new RegExp("([^aeiouylsz])\\1$"); re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); if (re2.test(w)) w = w + "e"; else if (re3.test(w)) { re = /.$/; w = w.replace(re,""); } else if (re4.test(w)) w = w + "e"; } } // Step 1c re = /^(.+?)y$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; re = new RegExp(s_v); if (re.test(stem)) w = stem + "i"; } // Step 2 re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; suffix = fp[2]; re = new RegExp(mgr0); if (re.test(stem)) w = stem + step2list[suffix]; } // Step 3 re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; suffix = fp[2]; re = new RegExp(mgr0); if (re.test(stem)) w = stem + step3list[suffix]; } // Step 4 re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; re2 = /^(.+?)(s|t)(ion)$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; re = new RegExp(mgr1); if (re.test(stem)) w = stem; } else if (re2.test(w)) { var fp = re2.exec(w); stem = fp[1] + fp[2]; re2 = new RegExp(mgr1); if (re2.test(stem)) w = stem; } // Step 5 re = /^(.+?)e$/; if (re.test(w)) { var fp = re.exec(w); stem = fp[1]; re = new RegExp(mgr1); re2 = new RegExp(meq1); re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) w = stem; } re = /ll$/; re2 = new RegExp(mgr1); if (re.test(w) && re2.test(w)) { re = /.$/; w = w.replace(re,""); } // and turn initial Y back to y if (firstch == "y") w = firstch.toLowerCase() + w.substr(1); return w; } } /** * Search Module */ var Search = { _index : null, _queued_query : null, _pulse_status : -1, init : function() { var params = $.getQueryParameters(); if (params.q) { var query = params.q[0]; $('input[name="q"]')[0].value = query; this.performSearch(query); } }, loadIndex : function(url) { $.ajax({type: "GET", url: url, data: null, success: null, dataType: "script", cache: true}); }, setIndex : function(index) { var q; this._index = index; if ((q = this._queued_query) !== null) { this._queued_query = null; Search.query(q); } }, hasIndex : function() { return this._index !== null; }, deferQuery : function(query) { this._queued_query = query; }, stopPulse : function() { this._pulse_status = 0; }, startPulse : function() { if (this._pulse_status >= 0) return; function pulse() { Search._pulse_status = (Search._pulse_status + 1) % 4; var dotString = ''; for (var i = 0; i < Search._pulse_status; i++) dotString += '.'; Search.dots.text(dotString); if (Search._pulse_status > -1) window.setTimeout(pulse, 500); }; pulse(); }, /** * perform a search for something */ performSearch : function(query) { // create the required interface elements this.out = $('#search-results'); this.title = $('

' + _('Searching') + '

').appendTo(this.out); this.dots = $('').appendTo(this.title); this.status = $('

').appendTo(this.out); this.output = $('