1. Брзи старт¶
Овде су дати примери писања појединих делова документа. Примери су често довољни да направите случну ствар. У случају да оно што вама треба не постоји у примерима или желите више детаља, погледајте следећа поглавља, у којима ћете вероватно наћи више информација.
Садржај
1.1. Основе форматирања текста¶
За детљанији увид у форматирање погледајте овде
1.1.1. Форматирање текста¶
Примери форматираног текста: подебљан текст, искошен текст, истакнут текст
,
текст у експоненту и текст у индексу.
.rst кôд за форматирање текста
Примери форматираног текста: **подебљан текст**, *искошен текст*, ``истакнут текст``,
текст :sup:`у експоненту` и текст :sub:`у индексу`.
1.1.2. Формуле у тексту¶
Множење вектора и бројева \(\overrightarrow{i} \times \overrightarrow{j} = \overrightarrow{k}\), \(\overrightarrow{OA} \times \overrightarrow{OB} = \overrightarrow{OC}\), \(2 \cdot 3 = 6\)
Експоненти \(2^{10} = 1024\)
Индекси \(H_2SO_4\)
Грчка слова, количник, степен \(\alpha = {\pi \over 2} = 90^{\circ} \Rightarrow \Delta ABC \text{ је правоугли} \Rightarrow A_1A = A_1B = A_1C\)
Разлика између малих и великих слова, неједнакост \(\Sigma \neq \sigma\)
функције, приближна једнакост \(\sin{\pi} \approx 3.14159\), \(\sqrt{2} \approx 1.4142\),
Сложенија формула \(\sqrt{(x - x_0)^2 + (y - y_0)^2} \leq r\)
.rst кôд за формуле у тексту
- Множење вектора и бројева
:math:`\overrightarrow{i} \times \overrightarrow{j} = \overrightarrow{k}`,
:math:`\overrightarrow{OA} \times \overrightarrow{OB} = \overrightarrow{OC}`,
:math:`2 \cdot 3 = 6`
- Експоненти :math:`2^{10} = 1024`
- Индекси :math:`H_2SO_4`
- Грчка слова, количник, степен :math:`\alpha = {\pi \over 2} = 90^{\circ} \Rightarrow \Delta ABC \text{ је правоугли} \Rightarrow A_1A = A_1B = A_1C`
- Разлика између малих и великих слова, неједнакост :math:`\Sigma \neq \sigma`
- функције, приближна једнакост :math:`\sin{\pi} \approx 3.14159`, :math:`\sqrt{2} \approx 1.4142`,
- Сложенија формула :math:`\sqrt{(x - x_0)^2 + (y - y_0)^2} \leq r`
1.1.3. Издвојене формуле¶
Формула у једном реду
Формула у више редова, са поравнањем знака =
:
Ако знамо да је \(x+y=3, xy=5\), онда је
.rst кôд за издвојене формуле
Формула у једном реду
.. math::
R = \sqrt{(x - x_0)^2 + (y - y_0)^2}
Формула у више редова, са поравнањем знака ``=``:
Ако знамо да је :math:`x+y=3, xy=5`, онда је
.. math::
\begin{align} \\
n &= x^2 y + x y^2\\
&= xy (x+y)\\
&= 5 \cdot 3\\
&= 15\\
\end{align}
1.1.4. Наслови¶
.rst кôд за наслове
Наслов првог реда
=================
Наслов другог реда
------------------
Наслов трећег реда
''''''''''''''''''
Ниво наслова је одређен редоследом првих појављивања ознака (прва ознака је наслов првог нивоа; не може се ставити наслов трећег реда у наслов првог реда)
Број карактера којима подвлачимо наслове мора бити једнак или већи броју карактера у наслову
За форматирање наслова могу се користити и карактери
......
,~~~~~~
,******
,++++++
,^^^^^^
,#######
1.1.5. Листе¶
Листа нумерисана бројевима
Први елемент листе
Други елемент листе
Трећи елемент листе
Листа нумерисана словима
Први елемент листе
Други елемент листе настављен (пазити на индентацију)
Други пасус другог елемента
Трећи елемент листе
.rst кôд за листе
Листа нумерисана бројевима
#. Први елемент листе
#. Други елемент листе
#. Трећи елемент листе
Листа нумерисана словима
a. Први елемент листе
#. Други елемент листе
настављен (пазити на индентацију)
Други пасус другог елемента
#. Трећи елемент листе
1.1.6. Угнежђене листе¶
Први елемент нумерисане листе
Други елемент нумерисане листе
први елемент угнежђене нумерисане листе
други елемент угнежђене нумерисане листе
трећи елемент
листа трећег нивоа
следећи елемент
друга листа трећег нивоа, ненумерисана
следећи елемент ненумерисане листе
Трећи елемент нумерисане листе (експлицитно нумерисан, у противном почиње бројање поново од 1)
Други пасус трећег елемента.
Четврти елемент
.rst кôд за угнежђене листе
#. Први елемент нумерисане листе
#. Други елемент нумерисане листе
a. први елемент угнежђене нумерисане листе
#. други елемент угнежђене нумерисане листе
#. трећи елемент
i. листа трећег нивоа
#. следећи елемент
- друга листа трећег нивоа, ненумерисана
- следећи елемент ненумерисане листе
3. Трећи елемент нумерисане листе (експлицитно
нумерисан, у противном почиње бројање поново од 1)
Други пасус трећег елемента.
#. Четврти елемент
1.1.7. Дефиниционе листе¶
Дефинициона листа је списак појмова и њихових дефиниција.
- Појам 1
Дефиниција 1.
- Појам 2
Дефиниција 2, параграф 1.
Дефиниција 2, параграф 2.
- Појам 3ближе одређење
Дефиниција 3.
- Појам 4ближе одређење 1ближе одређење 2
Дефиниција 4.
.rst за дефиниционе листе
Појам 1
Дефиниција 1.
Појам 2
Дефиниција 2, параграф 1.
Дефиниција 2, параграф 2.
Појам 3 : ближе одређење
Дефиниција 3.
Појам 4 : ближе одређење 1 : ближе одређење 2
Дефиниција 4.
1.1.8. Линкови¶
Примери разних врста линкова:
.rst за линкове
Примери разних врста линкова:
.. _разне_врсте_линкова:
| Екстерни релативан линк: `<../02_basics/01_formatting.html>`_
| Екстерни релативан линк са текстом: `Форматирање <../02_basics/01_formatting.html>`_
| Екстерни апсолутан линк: `<https://petlja.org/>`_
| Екстерни апсолутан линк са текстом: `Петља <https://petlja.org/>`_
| Имплицитан интерни линк (ка наслову): `Линкови`_
| Експлицитан интерни линк (ка лабели): разне_врсте_линкова_
1.1.9. Табеле¶
Табела помоћу графичких симбола:
Ред \ Колона |
Колона |
Колона |
Колона |
---|---|---|---|
Ред 1 |
Поље |
Поље |
Поље |
Ред 2 |
Поље |
Поље |
Поље |
Ред 3 |
Поље |
Поље |
Поље |
Ред 4 |
Поље |
Поље |
Поље |
.rst кôд за „нацртану” табелу
Табела помоћу графичких симбола:
.. table::
:align: left
:widths: 10, 20, 20, 20
====================== ============== ============== ==============
Ред \\ Колона Колона ``A`` Колона ``B`` Колона ``C``
====================== ============== ============== ==============
**Ред 1** Поље ``A1`` Поље ``B1`` Поље ``C1``
**Ред 2** Поље ``A2`` Поље ``B2`` Поље ``C2``
**Ред 3** Поље ``A3`` Поље ``B3`` Поље ``C3``
**Ред 4** Поље ``A4`` Поље ``B4`` Поље ``C4``
====================== ============== ============== ==============
Табела као вредности раздвојене зарезима (csv)
Ред Колона |
Колона |
Колона |
Колона |
---|---|---|---|
Ред 1 |
Поље |
Поље |
Поље |
Ред 2 |
Поље |
Поље |
Поље |
Ред 3 |
Поље |
Поље |
Поље |
Ред 4 |
Поље |
Поље |
Поље |
.rst кôд за CSV табелу
Табела као вредности раздвојене зарезима (*csv*)
.. csv-table:: CSV Табела
:header: Ред \\ Колона, Колона ``A``, Колона ``B``, Колона ``C``
:widths: 10, 20, 20, 20
:align: left
**Ред 1**, Поље ``A1``, Поље ``B1``, Поље ``C1``
**Ред 2**, Поље ``A2``, Поље ``B2``, Поље ``C2``
**Ред 3**, Поље ``A3``, Поље ``B3``, Поље ``C3``
**Ред 4**, Поље ``A4``, Поље ``B4``, Поље ``C4``
1.2. Посебни параграфи¶
1.2.1. Директива topic¶
Директивом topic уоквирујемо део документа.
Директива topic
Овако изгледа директива topic
. У њу стављамо дефиницију појма, или други важан текст.
Кôд за директиву topic
.. topic:: Директива topic
Овако изгледа директива ``topic``. У њу стављамо дефиницију појма, или други важан текст.
1.2.2. Директива infonote¶
Директивом infonote уоквирујемо део документа.
Директива infonote
Овако изгледа директива infonote
. У њу стављамо напомену, резиме лекције или сличан текст
који треба да буде истакнут.
.. infonote:: Директива infonote Напомена, резиме лекције, или сличан текст, који треба да буде истакнут.
1.2.3. Директива questionnote¶
Директивом questionnote уоквирујемо део документа.
Директива questionnote
Овако изгледа директива questionnote
. У њу стављамо текст питања, уз који могу да се користе
слике, делови програмског кода и слично.
.. questionnote:: Директива questionnote Овако изгледа директива ``questionnote``. У њу стављамо текст питања, уз који могу да се користе слике, делови програмског кода и слично.
1.2.4. Директива reveal¶
Директиву reveal
користимо када желимо да неки елемент буде доступан тек када се кликне на одређено дугме. На овој страници, за показивање .rst кôда псле клика на дугме користимо управо
директива reveal
. У општем облику ова директива изгледа овако:
Директива reveal
Неки елемент који желимо да буде приказан тек када се кликне на дугме. То може бити текст или друга директива.
.. reveal:: reveal_primer
:showtitle: Назив дугмета за откривање
:hidetitle: Назив дугмета за сакривање
Неки елемент који желимо да буде приказан тек
када се кликне на дугме. То може бити текст или друга директива.
1.3. Слике¶
1.3.1. Укључивање слике¶
Ако атрибут align
има вредност left
или right
, текст који следи налазиће се поред слике. Да се текст не би простирао поред слике, треба писати :align: center
. Често се задаје или ширина или висина (нпр. :height: 200 px
), а ретко оба јер то може да деформише слику.
Кôд за приказ слике:
.. image:: ../../_images/emotikon.png
:height: 100px
:alt: алтернативни текст
:align: right
1.3.2. Укључивање слике са текстом¶
Код слике са текстом испод ње се поразумева да је центрирана (може а не мора да се напише :align: right
).
Кôд за приказ слике са текстом:
.. figure:: ../../_images/emotikon.png
:height: 100px
:alt: насмејано лице
Слика насмејаног лица
која постоји и као *Unicode* карактер
1.3.3. Укључивање галерије слика¶
Кôд за приказ приказ галерије слика:
.. gallery:: galerije
:folder: ../../_images #putanja ka folderu u kome su slike
:images: emotikon.png, galerija_slika3.png, galerija_slika1.png, test.png
:width: 300px
:height: 300px
1.4. Садржај¶
Садржај текуће стране се добија директивом contents
. Овако изгледа садржај текуће стране:
Садржај
Кôд за приказ приказ садржаја стране:
.. contents:: Садржај
:depth: 2
Вредност атрибута :depth: одређује ниво наслова који је укључен у садржај (на почетку ове стране је употребљена иста директива са дубином 3).
Садржај целог курса или приручника добија се директивом toctree
. Изглед садржаја можете да видите на почетној страни. Овде не можемо да поновимо приказ комплетног садржаја, јер бисмо на тај начин направили кружне референце у садржају, па овај документ не би могао да буде формиран.
Кôд за приказ садржаја са почетне стране:
.. toctree::
:maxdepth: 2
:caption: Садржај
:numbered:
../01_quick_start/01_quick_start.rst
../02_basics/01_formatting.rst
../02_basics/02_directives.rst
../02_basics/03_formating_directives_quiz.rst
../02_basics/04_questions.rst
../02_basics/05_quiz_example.rst
../03_active_code/01_active_code.rst
../03_active_code/02_other_languages.rst
../03_active_code/03_simanim.rst
../03_active_code/04_p5js.rst
../03_active_code/05_karel.rst
../00_rst_petljadoc_intro/01_intro.rst
У оквиру директиве toctree
наводимо релативне путање од фајла у коме се налази садржај ка осталим фајловима који се налазе у нашем _sources
фолдеру.
1.5. Питања¶
Овде су приказани основни облици свих питања. За детаљније опције и примере употребе за свако питање погледајте овај линк
1.5.1. Понуђени одговори -mchoice
¶
- 1
- Не, то је премало
- 2
- Тако је!
- 3
- Не, то је превше
Q-1: Колико је 1+1?
Кôд за приказ abc питања:
.. mchoice:: jedinstveni_id_abc_pitanja
:answer_a: 1
:answer_b: 2
:answer_c: 3
:feedback_a: Не, то је премало
:feedback_b: Тако је!
:feedback_c: Не, то је превше
:correct: b
Колико је 1+1?
1.5.2. Понуђени одговори -mchoice - multiple_answers
¶
- 4
- неки стринг
- 9
- неки стринг
- 49
- неки стринг
- 94
- неки стринг
Q-2: Који од ових бројева су парни?
Кôд за приказ abc питања са више одговора:
.. mchoice:: jedinstveni_id_abc_pitanja_sa_vise_odg
:multiple_answers:
:answer_a: 4
:answer_b: 9
:answer_c: 49
:answer_d: 94
:feedback_a: неки стринг
:feedback_b: неки стринг
:feedback_c: неки стринг
:feedback_d: неки стринг
:correct: a, d
Који од ових бројева су парни?
1.5.3. Питања са повезивањем појмова - dragndrop
¶
-
Q-3: Повежи познате математичке константе са њиховим вредностима.
- 3.14159
- pi
- 2.71828
- e
- 1.61803
- fi
Кôд за приказ питања са упаривањем:
.. dragndrop:: jedinstveni_id_pitanja_uparivanja
:match_1: 3.14159 ||| pi
:match_2: 2.71828 ||| e
:match_3: 1.61803 ||| fi
Повежи константе са њиховим вредностима.
1.5.4. Питања са ређањем појмова - parsonsprob
¶
Q-4: Поређај бројеве од најмањег до највећег0.19
0.2
0.213
0.32
0.4
Кôд за приказ питања са ређањем:
.. parsonsprob:: jedinstveni_id_pitanja
Поређај бројеве од најмањег до највећег
-----
0.19
0.2
0.213
0.32
0.4
1.5.5. Питања са допуњавањем - fillintheblank
¶
Како се зове женка јелена?
Одговор:
Кôд за приказ питања са уписивањем - у овој имплементацији се прихватају одговори ћирилицим и латиницом (па и ошишаном латиницом), а почетно слово може да буде мало или велико. Посебан коментар је дат за нетачан одгвор срна
.
.. fillintheblank:: jedinstveni_id_pitanja_sa_upisivanjem Како се зове женка јелена? Одговор: |blank| - :^\s*[Кк]ошута|[Kk]o[šs]uta\s*$: Одговор је тачан. :^\s*[Сс]рна|[Ss]rna\s*$: Не, то је женка срндаћа. :x: Одговор није тачан.
1.5.6. Питања у квизу - quizq
¶
Директива quizq
служи да од директиве са питањем (било којег типа) и других директива (слике, кôд итд.) направи једну целину.
У квизовима треба обавезно користити ову директиву за свако питање, без обзира на то да ли се питање састоји од једне или више компоненти.
Пример питања за квиз:
Питање може да садржи слику:
а може да садржи и кôд:
print("2" + "2")
- "22"
- 4
- 22
Q-5: Шта исписује претходни програм?
Приказ за квиз:
.. quizq::
Питање може да садржи слику:
.. image:: ../../_images/emotikon.png
:align: center
а може да садржи и кôд:
.. code-block:: python
print("2" + "2")
.. mchoice:: neki_id_1278
:answer_a: "22"
:answer_b: 4
:answer_c: 22
:correct: c
Шта исписује претходни програм?
1.6. Видео - ytpopup
¶
Id видеа представља 11 карактера након секвенце ?=v
у линку видеа. Тим Петље касније пребацује ауторски видео са ју-тјуба на потрал Петље.
Кôд за приказ видеа:
.. ytpopup:: tIP6veneYsI
:width: 640
:height: 480
:align: center
1.7. Activecode¶
Ово је основни изглед активне компоненте (без додатних опција)
Кôд за приказ activecode компоненте
.. activecode:: jedinstveni_id print("Здраво") a = 2 b = 2 print('Резултат је', a+b)
Следе кратки описи подешавања компоненте activecode
1.7.1. Додавање и склањање дугмади¶
Жељени ефекат (са линком на детаље) |
Начин укратко |
---|---|
додај атрибут |
|
(кôд постаје само пример за читање)
|
додај атрибут
:passivecode: true |
додај атрибут
:playtask: видљиви кôд
====
скривено решење
|
|
додај атрибут
:includexsrc: са путањомдодај атрибут
:help: наведи кôд који представља помоћ
|
|
додај атрибут |
|
(аутоматски тестира програм на више примера)
|
види детаљније упутство
|
1.7.2. Специјално понашање скрипта¶
Жељени ефекат (са линком на детаље) |
Начин укратко |
---|---|
додај специјалне коментаре у скрипт
# -- acsection: general-init --
# -- acsection: var-init --
фиксни почетак скрипта
# -- acsection: main --
део за едитовање
# -- acsection: after-main --
фиксни крај скрипта
|
|
додај атрибут |
|
Да се програм извршава у модалном прозору (преко текста) |
додај атрибут |
Надовежи се на претходни activecode скрипт (тј. укључи претходни скрипт, али скривен) |
додај атрибут |
1.7.3. Укључивање програма из фајлова са изворним кодом¶
Жељени ефекат (са линком на детаље) |
Начин укратко |
---|---|
додај атрибут
:includesrc: са путањом |
|
додај атрибут
:includehsrc: са путањомдодај атрибут
:playtask: опционо, напиши почетни, видљиви кôд
|
|
ако у фајлу имаш решење са означеним фиксним деловима
корисник ће видети само фиксне делове, а може да изврши (делимично скривено) решење
|
додај атрибут
:includexsrc: са путањомдодај атрибут
:playtask: додај атрибут
:enablecopy: |