gitweb on Svarog
projekti pod git sistemom za održavanje verzija -- projects under the git version control system
summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 5a7e8d6)
raw | patch | inline | side by side (parent: 5a7e8d6)
| author | Doni Pracner <quinnuendo@gmail.com> | |
| Mon, 17 Feb 2014 19:45:07 +0000 (20:45 +0100) | ||
| committer | Doni Pracner <quinnuendo@gmail.com> | |
| Mon, 17 Feb 2014 19:45:07 +0000 (20:45 +0100) | 
Uveden codeblock-indent koji je uvucen kao dosad i koristi se
za male komande koda koji su usput u tekst, dok ostali veci
komadi sada imaju manje margine levo.
za male komande koda koji su usput u tekst, dok ostali veci
komadi sada imaju manje margine levo.
| skripta-os2.tex | patch | blob | history | 
diff --git a/skripta-os2.tex b/skripta-os2.tex
index 57a5b151641730279501c2405fa86cb9999005ef..1c9a36ad9bf2e24d49816e7e6b0a466f6e29727e 100644 (file)
--- a/skripta-os2.tex
+++ b/skripta-os2.tex
 %        prebreak=\P,
 %        postbreak=\ding{229}\space,
         language=Modula-2,
-        xleftmargin=4em
+        xleftmargin=1em
+}
+
+\lstdefinestyle{codeblock-indent}{
+  style=codeblock,
+  xleftmargin=4em
 }
 \lstdefinestyle{terminal}{
 }
 \lstnewenvironment{codeblock}[1][]{\lstset{style=codeblock,#1}}{}
+\lstnewenvironment{codeblock-indent}[1][]{\lstset{style=codeblock-indent,#1}}{}
 \lstnewenvironment{terminal}{\lstset{style=terminal}}{}
 % ----------------==================--------------------------------------
 \label{g-prvi-program}
 Tradicionalni prvi program ``Hello World'' bi izgledao ovako:
-\begin{codeblock}
+\begin{codeblock-indent}
   MODULE hello;
   FROM StrIO IMPORT WriteString, WriteLn;
      WriteString('hello world'); 
      WriteLn
   END hello.
-\end{codeblock}
+\end{codeblock-indent}
 Primećuje se razlika u modulu iz koga se uvoze komande u odnosu na
 XDS/TopSpeed verzije M2, tamo je sve bilo u \kod{InOut}, dok se ovde
 \end{terminal}
 odnosno videćemo da je poziv definisan na sledeći način:
-\begin{codeblock}
+\begin{codeblock-indent}
 int system(const char *command);
-\end{codeblock}
+\end{codeblock-indent}
 što znači da vraća ceo broj, a prima jedan argument koji je pokazivač
 (što se označava *) na znak. Ovo je zapravo ceo string, pošto se u C
 jeziku oni predstavljaju kao pokazivač na prvi znak, a string se onda
 Korišćenjem sistemske komande \kod{fork} trenutni proces se duplira
 (``račva''). Novi proces je identičan sa originalnim, osim u svom
 identifikacionom broj. Komanda ne prima parametre i vraća jedan integer, pa se može mapirati na sledeći način:
-\begin{codeblock}
+\begin{codeblock-indent}
 PROCEDURE fork(): INTEGER;
-\end{codeblock}
+\end{codeblock-indent}
 Oba procesa se nakon račvanja nastavljaju odvijati u sledećem redu
 koda. Jedino po čemu se razlikuju je vrednost koju je vratio
 procesu je ova vrednost jednaka nuli. Budući da je najčešće potrebno
 da dete i roditelj rade različite stvari, to se obično rešava kodom
 sledećeg oblika:
-\begin{codeblock}
+\begin{codeblock-indent}
 pid := fork();
 IF pid = 0 THEN
    (* "detetove" operacije *)
 ELSE
    (* "roditeljske" operacije *)
 END;
-\end{codeblock}
+\end{codeblock-indent}
 Komanda \kod{wait} (uvezena kao sistemska) se može pozvati u
 originalnom procesu sa efektom da se proces uspava dokle god neki od
 Prvi korak za instalaciju dodatnog kompajlera GNU Modula 2 je
 dodavanje repozitorijuma softvera u sistem. Ovo se može uraditi ručnim
 menjanjem fajla \kod{/etc/apt/sources.list} i dodavanjem
-\begin{codeblock}
+\begin{codeblock-indent}
 #
 #  GNU Modula-2 repo
 #
 deb http://floppsie.comp.glam.ac.uk/debian/ squeeze main 
 deb-src http://floppsie.comp.glam.ac.uk/debian/ squeeze main
-\end{codeblock}
+\end{codeblock-indent}
 Alternativno se mogu koristiti sledeće komande:
