sp-tutorial 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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**.