sp-tutorial 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,48 @@
1
+ % !TEX TS-program = xelatex
2
+ % !TEX encoding = UTF-8 Unicode
3
+
4
+ \documentclass[12pt]{article}
5
+ \usepackage{geometry}
6
+ \geometry{a4paper}
7
+
8
+ \usepackage{fontspec}
9
+ \usepackage{hyperref}
10
+ \usepackage{xunicode}
11
+ \usepackage{xltxtra}
12
+ \usepackage{url} % do przełamywania url
13
+ \usepackage[polish]{polyglossia}
14
+
15
+ \bibliographystyle{unsrt}
16
+
17
+ \title{Bibliografia do przedmiotu\\,,Środowisko Programisty''}
18
+ \author{Włodzimierz Bzyl}
19
+ \date{20 października 2009}
20
+
21
+ \begin{document}
22
+ \maketitle
23
+ \tableofcontents
24
+
25
+ \section{Podstawy}\label{sec:basics}
26
+
27
+ W fontach maszynowych, ang. \emph{monospaced fonts},
28
+ wszystkie znaki mają taką samą szerokość. Za pomocą takich
29
+ fontów składane są listingi lub kod programów.
30
+
31
+ \section{Poziom średnio zaawansowany}\label{sec:intermediate}
32
+
33
+ W książce ,,\LaTeX\ Web Companion'' opisano
34
+ format \LaTeX\ i podstawowe pakiety do niego.
35
+
36
+ \section{Rzeczy zaawansowane}\label{sec:advanced}
37
+
38
+ DocBookXsl jest ciekawym projektem. Więcej na ten temat
39
+ można poczytać w~\cite{wiki.docbookxsl}.
40
+
41
+ Do konwersji dokumentu z formatu latex na html najlepszym narzędziem
42
+ jest~\cite[uwaga, system szuka nowego opiekuna]{Gurari.TeX4ht}.
43
+
44
+ O fontach maszynowych już było na stronie~\pageref{sec:basics}.
45
+
46
+ \bibliography{sp}
47
+
48
+ \end{document}
@@ -0,0 +1,45 @@
1
+ % !TEX TS-program = xelatex
2
+ % !TEX encoding = UTF-8
3
+
4
+ % Szablon dokumentu XeLaTeX + klasa article + pakiet hyperref
5
+
6
+ \documentclass[12pt]{article} % domyślne 10pt jest za małe
7
+
8
+ \usepackage{fontspec} % dokumentacja „fontspec.pdf”
9
+ \defaultfontfeatures{Mapping=tex-text} % konwencja: -- --- ,, ''
10
+ \usepackage{xunicode}
11
+ \usepackage{xltxtra}
12
+
13
+ \setmainfont{DejaVu Serif} % zmień font na „DejaVu Serif”
14
+ % font powinien byc zainstalowany w systemie?
15
+
16
+ \usepackage{geometry} % dokumentacja „geometry.pdf”
17
+ \geometry{a4paper}
18
+
19
+ \usepackage{hyperref} % wstaw odsyłacze
20
+
21
+ \usepackage{graphicx} % polecenie \includegraphics, dokumentacja „epslatex.pdf”
22
+
23
+ \usepackage[polish]{polyglossia} % najważniejszy pakiet
24
+
25
+ \title{Historia mojej rodziny}
26
+ \author{Hieronim Brzęczyszczykiewicz}
27
+ %\date{} % odkomentuj aby usunąć datę lub wstaw jakąś datę między {}
28
+ % jeśli tego nie zrobisz będzie drukowana aktualna data
29
+
30
+ \begin{document}
31
+ \maketitle % drukuj tytuł
32
+
33
+ \tableofcontents % drukuj spis treści
34
+
35
+ \section{Pierwsza sekcja}
36
+
37
+ Akapity oddzielamy
38
+
39
+ pustym wierszem.
40
+
41
+ \subsection{Pierwsza podsekcja}
42
+
43
+ Więcej tekstu.
44
+
45
+ \end{document}
@@ -3,6 +3,7 @@
3
3
  @font-face {
4
4
  font-family: "Cyklop";
5
5
  src: url(fonts/Cyklop-Regular.otf) format("opentype");
6
+ font-weight: normal;
6
7
  }
7
8
 
8
9
  @font-face {
@@ -48,6 +49,7 @@ html {
48
49
  body {
49
50
  font-family: "DejaVu Sans", "Trebuchet MS", sans-serif ;
50
51
  line-height: 28px;
52
+ width: 869px;
51
53
  }
52
54
 
53
55
  #header {
@@ -79,10 +81,10 @@ a[href$=".rdf"], a[href^="aim:"] {
79
81
  }
80
82
 
81
83
  h1 {
82
- font-weight: normal;
83
84
  font-size: 160%;
84
85
  font-family: "Cyklop", "DejaVu Sans", serif;
85
86
  font-style: italic;
87
+ font-weight: normal;
86
88
  color: #D80000;
87
89
  padding-top: 16px;
88
90
  padding-bottom: 16px;
@@ -2,12 +2,11 @@
2
2
 
3
3
  # Zobacz przykład: http://gist.github.com/38605
4
4
 
5
- gem 'rdiscount'
6
- gem 'sinatra'
7
- gem 'wbzyl-sinatra-rdiscount'
8
-
9
- gem 'emk-sinatra-url-for'
10
- gem 'wbzyl-sinatra-static-assets'
5
+ #gem 'rdiscount'
6
+ #gem 'sinatra'
7
+ #gem 'sinatra-rdiscount'
8
+ #gem 'emk-sinatra-url-for'
9
+ #gem 'sinatra-static-assets'
11
10
 
12
11
  require 'rdiscount'
13
12
  require 'sinatra/base'
@@ -19,7 +18,7 @@ require 'sinatra/static_assets'
19
18
  module WB
20
19
  class SPTutorial < Sinatra::Base
21
20
  helpers Sinatra::UrlForHelper
22
- helpers Sinatra::StaticAssets
21
+ register Sinatra::StaticAssets
23
22
 
24
23
  # disable overriding public and views dirs
25
24
  set :app_file, __FILE__
@@ -0,0 +1,30 @@
1
+ #### {% title "Blogi studentów" %}
2
+
3
+ # Blogi studentów
4
+
5
+ ## Grupa B
6
+
7
+ <!--
8
+ 1. <a href="http://sigma.inf.ug.edu.pl/~bberda/sp/">Berda, Bartłomiej</a>
9
+ bb (czyli brak bloga)
10
+ 1. <a href="http://sigma.inf.ug.edu.pl/~mwanta/sp/">Wanta, Marcin</a> bb
11
+ -->
12
+
13
+ 1. <a href="http://sigma.inf.ug.edu.pl/~kbasinski/sp/">Basiński, Krzysztof</a> 16.11
14
+ 1. <a href="http://sigma.inf.ug.edu.pl/~msienkiewicz/sp/">Sienkiewicz, Marcin</a>
15
+ 1. <a href="http://sigma.inf.ug.edu.pl/~kskowronski/sp/">Skowroński, Krzysztof</a>
16
+ 1. <a href="http://sigma.inf.ug.edu.pl/~mskorb/sp/">Skorb, Mateusz</a>
17
+ 1. <a href="http://sigma.inf.ug.edu.pl/~pslaski/sp/">Śląski, Paweł</a>
18
+ 1. <a href="http://sigma.inf.ug.edu.pl/~jsobol/sp/">Soból, Jan</a> bb
19
+ 1. <a href="http://sigma.inf.ug.edu.pl/~dszafranek/sp/">Szafranek, Damian</a>
20
+ 1. <a href="http://sigma.inf.ug.edu.pl/~aszulc/sp/">Szulc, Adrian</a>
21
+ br (czyli brak rozwiązań z lab 1, 2)
22
+ 1. <a href="http://sigma.inf.ug.edu.pl/~aszulinski/sp/">Szuliński, Adam</a>
23
+ 1. <a href="http://sigma.inf.ug.edu.pl/~mszygenda/sp/">Szygenda, Mateusz</a>
24
+ 1. <a href="http://sigma.inf.ug.edu.pl/~wszymanski/sp/">Szymański, Wojciech</a>
25
+ 1. <a href="http://sigma.inf.ug.edu.pl/~lwasak/sp/">Wasak, Łukasz</a>
26
+ 1. <a href="http://sigma.inf.ug.edu.pl/~dwisniewski/sp/">Wiśniewski, Dawid</a> br
27
+ 1. <a href="http://sigma.inf.ug.edu.pl/~dwojkiewicz/sp/">Wojkiewicz, Daniel</a> lab4 (16.11)
28
+ 1. <a href="http://sigma.inf.ug.edu.pl/~pzawodny/sp/">Zawodny, Paweł</a> br
29
+ 1. <a href="http://sigma.inf.ug.edu.pl/~dzduniak/sp/">Zduniak, Daniel</a> br 16.11
30
+ 1. <a href="http://sigma.inf.ug.edu.pl/~azmuda/sp/">Żmuda, Adam</a> br 16.11
@@ -14,16 +14,8 @@
14
14
  <p class="author">— Albert Einstein</p>
15
15
  </blockquote>
16
16
 
17
- Rozwiązania ćwiczeń należy umieścić na swoim blogu.
18
- Na przykład, rozwiązania ćwiczeń LaTeX-owych, powinny
19
- być dostępne pod jakimś takim URL:
20
-
21
- http://sigma.ug.edu.pl/~wbzyl/2009-11-22-latex.html
22
-
23
- (Oczywiście, zamiast *wbzyl* trzeba wstawić swój login,
24
- no i data będzie inna.)
25
-
26
- Kod należy umieścić w repozytorium git. Na przykład
17
+ Skrypty należy umieścić w repozytorium git. Można
18
+ to zrobić w taki sposób:
27
19
 
28
20
  cd ~/tmp
29
21
  mkdir latex
@@ -37,115 +29,109 @@ Kod należy umieścić w repozytorium git. Na przykład
37
29
  git clone --bare latex ~/public_git/latex.git
38
30
  rm -rf ~/tmp/latex
39
31
 
32
+
40
33
  ## Bash
41
34
 
42
- Zadania do wykonania w laboratoriach:
35
+ Zadania do wykonania w laboratorium:
43
36
 
44
37
  * {%= link_to "Laboratorium 1", "/labs01" %} (polecenia powłoki)
45
38
  * {%= link_to "Laboratorium 2", "/labs02" %} (kontynuacja)
46
39
  * {%= link_to "Laboratorium 3", "/labs03" %} (— " —)
47
40
  * {%= link_to "Laboratorium 4", "/labs04" %} (— " —)
48
- * {%= link_to "Laboratorium 5, 6", "/doc/ex/sp_lab03_zad.odt" %} (polecenia *find*, *grep*)
49
- * {%= link_to "Laboratorium 7, 8, 9, 10", "/doc/ex/sp_lab04_zad.odt" %} (skrypty)
50
- * LaTeX, Git: Laboratoria 11, 12, 13
51
- * Zaliczenia: Laboratoria 14, 15
41
+ * {%= link_to "Laboratorium 5", "/labs05" %} (*find*)
42
+ * {%= link_to "Laboratorium 6", "/labs06" %} (*grep*)
43
+ * {%= link_to "Laboratorium 7", "/labs07" %} (skrypty)
52
44
 
53
45
 
54
- ## Edytory
46
+ ## LaTeX
55
47
 
56
- 2\. W *jBlogu* jest kilka napisów, które należy wymienić,
57
- na przykład, w pliku *index.html*:
48
+ Zadania do wykonania w laboratorium:
58
49
 
59
- title: WB_Blog
50
+ * {%= link_to "Laboratorium 10", "/labs10" %}
60
51
 
61
- w pliku *_layouts/default.html*:
62
52
 
63
- <meta name="author" content="Włodek Bzyl" />
64
-
65
- Znaleźć wszystkie takie napisy.
66
- Napisać prosty skrypt korzystający z programu *sed*
67
- wymieniający te napisy.
68
-
69
- Logo przygotowałem w programie *inkscape*.
70
- Plik *images/logo.svg* w formacie *SVG* zawiera tekst *WB@jBlog*,
71
- który należy wymienić.
72
-
73
- <blockquote>
74
- {%= image_tag "/images/biuletyn-snall.jpg", :alt => "[]" %}
75
- <p>
76
- W okresie międzywojennym font Cyklop był używany
77
- w tytulariach gazetowych i drukach akcydensowych.
78
- </p>
79
- </blockquote>
53
+ ## Git
54
+
55
+ Zadania do wykonania w laboratorium:
56
+
57
+ * {%= link_to "Laboratorium 12", "/labs12" %} (praca w zespołach)
58
+ * {%= link_to "Laboratorium 13", "/labs13" %} (gałęzie, scalanie)
59
+
60
+ ## Zaliczenia
61
+
62
+ Laboratoria 14, 15.
63
+
64
+
65
+ # Zadania opisowe
66
+
67
+ Rozwiązania zadań opisowych należy umieścić na swoim blogu.
68
+ Na przykład, rozwiązania ćwiczeń LaTeX-owych, powinny
69
+ być dostępne pod jakimś takim URL:
80
70
 
81
- W pliku *images/logo.svg* literki składane są fontem *OTF*
82
- {%= link_to "Cyklop", "/doc/Cyklop-otf-0_91.zip" %}.
83
- Zainstalować ten font lokalnie i korzystając z programu
84
- *inkscape* zmienić tekst.
85
- Zapisać zmiany i wyeksportować obrazek
86
- *images/logo.png* w formacie *PNG*.
71
+ http://sigma.ug.edu.pl/~wbzyl/sp/2009-11-22-latex.html
87
72
 
88
- 2\. Przygotować prostą stronę www ze ściągą do wyrażeń regularnych
73
+ Oczywiście, zamiast *wbzyl* trzeba wstawić swój login,
74
+ no i data będzie też inna.
75
+
76
+
77
+ ## Edytor & notacja Markdown
78
+
79
+ 1\. Przygotować post ze ściągą do wyrażeń regularnych
89
80
  rozpoznawanych przez program *egrep*.
90
- Ściąga powinna być dostępna pod takim URL:
91
81
 
92
- <pre>http://sigma.inf.ug.edu.pl/~TWÓJ_LOGIN/egrep.html
93
- </pre>
94
82
 
83
+ ## Grep
95
84
 
96
- ## Git
85
+ 1\. Wymyśl dwa zadania używające polecenia *egrep* i&nbsp;nietrywialne
86
+ wyrażenie regularne.
97
87
 
98
- 1\. W zespołach 3–4 osobowych przygotować prosty projekt.
99
- Popracować wspólnie nad projektem. Na koniec
100
- zajęć przeanalizować kto co zrobił.
101
88
 
102
- 2\. Napisać historyjkę pokazującą jak można
103
- wyszukać *commit* w którym po raz pierwszy
104
- pojawiła się określona funkcja.
105
- Umieścić historyjkę na jBlogu pod *git-grep*.
89
+ ## Skrypty
106
90
 
107
- 3\. Napisać historyjkę ilustrującą użycie polecenia
108
- `git cherry-pick`.
109
- Umieścić historyjkę na jBlogu pod *git-cherry-pick*.
91
+ 1\. Poprawić skrypt *makedict.sh* z wykładu tak, aby rozpoznawał
92
+ polskie litery. Opisać jak ten skrypt działa.
110
93
 
94
+ 2\. W *jBlogu* jest kilka napisów, które należy wymienić,
95
+ na przykład, w pliku *index.html*:
111
96
 
97
+ title: WB_Blog
112
98
 
113
- ## XeLaTeX
99
+ a w pliku *_layouts/default.html*:
114
100
 
115
- 1\. Zapoznajemy się z programem *TeXworks*:
101
+ <meta name="author" content="Włodek Bzyl" />
102
+
103
+ Napisać prosty skrypt korzystający z programu *sed*
104
+ wymieniający wszystkie takie napisy.
116
105
 
117
- * wczytujemy gotowy szablon: File → New from Template
118
- * włączamy outlines: Window → Show → Tags
119
- * opanowujemy klika skrótów klawiszowych:
120
- * kompilacja: ctrl+t
121
- * …
122
106
 
123
- 2\. Przygotować po jednym dokumencie (1–2 strony wydruku)
124
- pokazującym podstawowe możliwości pakietu:
107
+ ## LaTeX
125
108
 
126
- * *graphicx* (dokumentacja *epslatex.pdf*)
127
- * *floatlft* albo *photo* (pływające wstawki)
128
- * *geometry*
109
+ 1\. Zadania rozwiązywane w laboratoriach, na przykład
110
+ zadania z „Laboratorium 2”, to tekst z listą wypunktowaną
111
+ (otoczenia *enumerate*, *itemize*)
112
+ oraz tytulariami (polecenia *section*, *paragraph*).
129
113
 
130
- 3\. Tekst zadań do wykonania w laboratorium, na przykład
131
- {%= link_to "Laboratorium 2", "/doc/ex/sp_lab02_zad.odt" %},
132
- to lista wypunktowana (otoczenia *enumerate*, *itemize*)
133
- oraz tytularia (polecenia *section*, *paragraph*).
134
- Przygotować szablon oraz skróty klawiszowe ułatwiające
135
- wpisywanie takich tekstów. Przepisać jeden ze zestawów
136
- zadań korzystając z przygotowanego szablonu oraz ze
137
- skrótów klawiszowych. Opisać to co zostało zrobione
138
- na swoim jBlogu.
114
+ * Przygotować szablon dla programu *texworks* oraz
115
+ skróty klawiszowe ułatwiające wpisywanie takich tekstów.
116
+ * Przepisać jeden ze zestawów
117
+ zadań korzystając z przygotowanego szablonu oraz z
118
+ przygotowanych skrótów klawiszowych.
139
119
 
140
- Wskazówka do 3. Zajrzyj na strony Wiki:
120
+ Wskazówka: Zajrzyj na strony Wiki:
141
121
  [Documentation of the code completion feature] [texworks code completion],
142
122
  [Some tips for using TeXworks] [texworks tips].
143
123
 
144
124
 
145
- ## Skrypty powłoki
125
+ ## Git
146
126
 
147
- 1\. Poprawić skrypt *makedict.sh* tak, aby rozpoznawał
148
- polskie litery.
127
+ 1\. Napisać historyjkę pokazującą jak można
128
+ wyszukać *commit* w którym po raz pierwszy
129
+ pojawiła się określona funkcja.
130
+ Umieścić historyjkę na jBlogu pod *git-grep*.
131
+
132
+ 2\. Napisać historyjkę ilustrującą użycie polecenia
133
+ `git cherry-pick`.
134
+ Umieścić historyjkę na jBlogu pod *git-cherry-pick*.
149
135
 
150
136
 
151
137
  #### Linki
@@ -49,6 +49,36 @@ katalogu *dokumenty*.
49
49
  9\. Będąc w katalogu *wazne-sprawy* sprawdź, czy są jakieś różnice w
50
50
  zawartości plików *wykonano.txt* i *odtworzono.txt*.
51
51
 
52
- 10\. Wyświetl kalendarz na październik 2009 r. (*cal*)
52
+ 10\. Wyświetl kalendarz na październik 2009 r. (*cal*)
53
+
54
+ Wyświetl kalendarz na wrzesień, październik i listopad 2009 r.
55
+ z miesiącami obok siebie (*cal*):
56
+
57
+ wrzesień 2009 październik 2009 listopad 2009
58
+ ni po wt śr cz pi so ni po wt śr cz pi so ni po wt śr cz pi so
59
+ 1 2 3 4 5 1 2 3 1 2 3 4 5 6 7
60
+ 6 7 8 9 10 11 12 4 5 6 7 8 9 10 8 9 10 11 12 13 14
61
+ ... ... ...
62
+
63
+ Wyświetl kalendarz na październik, listopad i grudzień 2009 r.
64
+ w taki sposób:
65
+
66
+ październik listopad grudzień
67
+ ni po wt śr cz pi so ni po wt śr cz pi so ni po wt śr cz pi so
68
+ 1 2 3 1 2 3 4 5 6 7 1 2 3 4 5
69
+ 4 5 6 7 8 9 10 8 9 10 11 12 13 14 6 7 8 9 10 11 12
70
+ 11 12 13 14 15 16 17 15 16 17 18 19 20 21 13 14 15 16 17 18 19
71
+ ... ... ...
72
+
73
+ I jeszcze raz na wrzesień i październik oraz
74
+ na październik i listopad 2009 r z miesiącami obok siebie
75
+ (*cal*, *cut*?):
76
+
77
+ październik listopad
78
+ ni po wt śr cz pi so ni po wt śr cz pi so
79
+ 1 2 3 1 2 3 4 5 6 7
80
+ 4 5 6 7 8 9 10 8 9 10 11 12 13 14
81
+ 11 12 13 14 15 16 17 15 16 17 18 19 20 21
82
+ ... ...
53
83
 
54
84
  11\. Jaki był dzień tygodnia 25 maja 1975 r. (*cal* i *date*)
@@ -0,0 +1,26 @@
1
+ #### {% title "Laboratorium 5" %}
2
+
3
+ # Laboratorium 5 (*find*)
4
+
5
+ 1\. Znajdź w swoim katalogu domowym (bez podkatalogów) wszystkie
6
+ pliki, które zostały zmodyfikowane w&nbsp;ciągu ostatnich dziesięciu
7
+ dni i&nbsp;wyświetl ich nazwy.
8
+
9
+ 2\. Znajdź wszystkie pliki zwykłe w systemie, które mają w nazwie ciąg
10
+ znaków &bdquo;conf&rdquo; i&nbsp;wyświetl ich nazwy na ekranie.
11
+
12
+ 3\. Znajdź w swoim katalogu domowym wszystkie pliki, które nie były
13
+ używane w&nbsp;ciągu ostatnich 20 dni.
14
+
15
+ 4\. Znajdź w katalogu */etc* wszystkie **niepuste** podkatalogi
16
+ i&nbsp;pliki o&nbsp;nazwach zaczynających się na literę
17
+ &bdquo;a&rdquo;.
18
+
19
+ ### Zadania różne
20
+
21
+ 5\. Z bieżącego katalogu usuń pliki, których nazwa zaczyna się na
22
+ literę &bdquo;x&rdquo; i&nbsp;zawiera dokładnie trzy znaki.
23
+
24
+ 6\. Skonstruuj polecenie tworzące katalog, którego nazwą będzie
25
+ aktualna (w&nbsp;momencie wywołania) systemowa data w&nbsp;formacie
26
+ **rrrr-mm-dd**.