Увод¶
Пајтон заједница је је покренула пројекат Сфинкс (Sphinx) као генератор техничке документације из изворног кода. Сфинкс користи једноставан језик за означавање, који се зове reStructuredText (RST, ReST, или reST), и конвертује фајлове писане на овом језику у HTML. Током времена је употреба Сфинкса проширена на писање разних врста текстова у којима се поред програмског кода појављују линкови, слике, табеле, итд. Изворни кôд текста који читате је такође писан у reST формату.
Пројекат PetljaDoc се надовезује на Сфинкс и тако проширује синтаксу језика reST за потребе писања курсева и приручника који се објављују на сајту https://petlja.org.
Овде ће бити приказан избор из синтаксе језика reST (са проширењима PetljaDoc), која се до сада показала довољном за писање едукативних садржаја у организацији Фондације Петља. Тамо где се исти ефекат може постићи на више начина, често је изложен само један, и то онај који је одомаћен у Петљи.
Намена и структура овог курса¶
Курс је намењен пре свега ауторима Петљиних курсева и приручника, а може да буде од користи свима који пишу сличне документе у reST формату. Осим курсева и приручника, Петља објављује и збирке алгоритамских задатака и збирке кратких питања, али њихов формат је другачији и (бар за сада) није део овог упутства.
Курс треба схватити као референтни приручник, па га у складу са тиме и користити. Врло је вероватно да ће вам за писање свог курса или приручника бити довољан мали део онога што је овде описано (такав је случај са свим до сада објављеним Петљиним материјалима за учење). Зато нема смисла унапред се детаљно упознавати са свим описаним могућностима. Препоручени начин употребе овог курса је:
У првом читању се само летимично упознајте са садржајем овог курса, да бисте стекли основну представу о могућностима које су вам на располагању.
Касније, када вам затреба нека од описаних функционалности, лако можете да се вратите на опис, прекопирате кôд из примера и прилагодите га свом документу.
Још касније, када стекнете одређено искуство у писању reST кода, овај курс ћете вероватно користити као подсетник за синтаксу коју сте већ упознали али је не знате напамет, или када вам је потребан неки детаљ који раније нисте користили.
Било би добро да с времена на време поновите уводно, летимично читање курса, јер ће се повремено појављивати нове функционалности.
У поглављу Основе је детаљније описано основно форматирање текста, стављање текста у табеле и разне оквире, употреба сличица мале висине као делова текста, прављење питања у текстуалним активностима, прављење квизова (питања у текстуалним активностима и квизови имају различиту функционалност, тј. не пишу се и не понашају се исто). Укратко, у поглављу Основе је описана функционалност општег типа, која може да буде потребна у великом броју пројеката.
У поглављу Програми који се извршавају у веб странама је описано како се у документ додају компоненте, у оквиру којих могу да се извршавају скриптови. За такве компоненте описана су и разна подешавања, нпр. да ли корисник може да мења и пише кôд, да ли је омогућено извршавање корак по корак, да ли је предвиђена помоћ у кодирању (делимично решен задатак), да ли корисник може да види жељено понашање скрипта који треба да напише, да ли може да аутоматски тестира свој скрипт итд. Функционалност описана у овом поглављу се користи углавном у програмерским или мештовитим (интердисциплинарним) курсевима, и то различити делови ове функционалности у различитим курсевима.
У поглављу Друге активне компоненте описане су директиве које се користе у уско специфичним областима, као што су учење регуларних израза или учење упитног језика SQL за релационе базе података. Ове директиве омогућавају извршавање регуларног израза или SQL упта који корисник унесе, приказивање добијеног резултата, приказивање очекиваног резултата, као поређење добијеног са очекиваним резултатом.
Опште препоруке¶
У језику reST је, као и у Пајтону, важна индентација (увлачење). Увлачење за један (карактер) таб није исто као увлачење за одговарајући број размака. Да би се избегла збрка при раду више људи на истом фајлу, препорука Петље је да се таб карактер уопште не користи у RST фајловима (иако reST синтакса то дозвољава). Многи едитори могу да се подесе тако да притисак на тастер Таб интерпретирају као потребан број размака. Подешавањем свог едитора на овај начин, обезбеђујете да нећете унети таб карактер у RST фајл на коме радите.
Увлачење за било који број размака је довољно да се следећи параграф сматра увученим, а сви следећи параграфи који су део исте целине треба да буду увучени за исти број размака (исто као и у Пајтон програмима). Ради конзистентности, лакше читљивости и лакшег премештања делова изворног кода, препорука Петље је да свако увлачење буде за 4 размака. Изузетак су хијерархијске листе, у којима ћемо користити увлачење за по два размака.