Skip to content
Snippets Groups Projects
Commit 0904ef9b authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Vorbereitung 12.11.2015

parent d4a30b8c
No related branches found
No related tags found
No related merge requests found
Showing
with 1547 additions and 946 deletions
SOURCES = opengl-magic-test.c textured-spheres.c
SOURCES = opengl-magic.c textured-spheres.c
INCLUDES = opengl-magic.h textured-spheres.h
LIBS = -lGL -lGLU -lglut
: $(SOURCES) $(INCLUDES)
%: %.c $(SOURCES) $(INCLUDES)
gcc -Wall $< $(SOURCES) $(LIBS) -o $@
../common/Tower_of_Hanoi.jpeg
\ No newline at end of file
File added
% ainf-20151112.pdf - Lecture Slides on Applied Computer Sciences
% Copyright (C) 2012, 2013, 2015 Peter Gerwinski
%
% This document is free software: you can redistribute it and/or
% modify it either under the terms of the Creative Commons
% Attribution-ShareAlike 3.0 License, or under the terms of the
% GNU General Public License as published by the Free Software
% Foundation, either version 3 of the License, or (at your option)
% any later version.
%
% This document is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with this document. If not, see <http://www.gnu.org/licenses/>.
%
% You should have received a copy of the Creative Commons
% Attribution-ShareAlike 3.0 Unported License along with this
% document. If not, see <http://creativecommons.org/licenses/>.
\documentclass[10pt,t]{beamer}
\usepackage{pgslides}
\usepackage{pdftricks}
\newrgbcolor{orange}{0.7 0.2 0.0}
\begin{psinputs}
\usepackage[latin1]{inputenc}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage{helvet}
\renewcommand*\familydefault{\sfdefault}
\usepackage{pstricks,pst-grad}
\end{psinputs}
\title{Angewandte Informatik}
\author{Prof.\ Dr.\ rer.\ nat.\ Peter Gerwinski}
\date{12.\ November 2015}
\begin{document}
\maketitleframe
\begin{frame}
\textbf{Sie können diese Vortragsfolien
einschließlich Beispielprogramme, Skript und sonstiger Lehrmaterialien
unter}
\begin{center}
\url{https://gitlab.cvh-server.de/pgerwinski/ainf.git}
\end{center}
\textbf{herunterladen.}
\bigskip
\begin{itemize}
\arrowitem
\textbf{\color{blue}Files}\\
einzelne Dateien herunterladen
\arrowitem
\textbf{\color{blue}Download zip/tar.gz/tar.bz2/tar}\\
als Archiv herunterladen
\arrowitem
\url{https://gitlab.cvh-server.de/pgerwinski/ainf.git}\\
mit GIT herunterladen und synchronisieren
\end{itemize}
\end{frame}
\sectionnonumber{\inserttitle}
\begin{frame}
\showsectionnonumber
\begin{itemize}
\item[\textbf{1}] \textbf{Einführung}
\item[\textbf{2}] \textbf{Einführung in C}
\item[\textbf{3}] \textbf{Bibliotheken}
\begin{itemize}
\item[3.1] Der Präprozessor
\item[3.2] Bibliotheken einbinden
\item[3.3] Bibliothek verwenden (Beispiel: OpenGL)
\color{medgreen}
\item[3.4] Projekt organisieren: make
\end{itemize}
\item[\textbf{4}] \textbf{Algorithmen}
\begin{itemize}
\color{red}
\item[4.1] Differentialgleichungen
\item[4.2] Rekursion
\color{black}
\item[4.3] Stack und FIFO
\item[4.4] Aufwandsabschätzungen
\end{itemize}
\color{gray}
\item[\textbf{5}] \textbf{Hardwarenahe Programmierung}
\item[\makebox(0,0){\textbf{\raisebox{0.5ex}{\dots}}}]
% \item[\textbf{6}] \textbf{Ergänzungen und Ausblicke}
\end{itemize}
\end{frame}
\section{Einführung}
\section{Einführung in C}
\section{Bibliotheken}
\subsection{Der Präprozessor}
\subsection{Bibliotheken einbinden}
\subsection{Bibliothek verwenden (Beispiel: OpenGL)}
\subsection{Projekt organisieren: make}
\begin{frame}[fragile]
\showsubsection
\begin{itemize}
\item
Regeln
\medskip
\begin{onlyenv}<2>
\begin{lstlisting}[language=make,gobble=10]
earth-6: earth-6.c opengl-magic.h opengl-magic-test.c \
textured-spheres.h textured-spheres.c
gcc -Wall earth-6.c \
-lGL -lGLU -lglut opengl-magic-test.c textured-spheres.c \
-o earth-6
\end{lstlisting}
\end{onlyenv}
\item
Makros
\medskip
\begin{onlyenv}<3>
\begin{lstlisting}[language=make,gobble=10]
SOURCES = opengl-magic-test.c textured-spheres.c
INCLUDES = opengl-magic.h textured-spheres.h
LIBS = -lGL -lGLU -lglut
earth-5: earth-5.c $(SOURCES) $(INCLUDES)
gcc -Wall earth-5.c $(SOURCES) $(LIBS) -o earth-5
earth-6: earth-6.c $(SOURCES) $(INCLUDES)
gcc -Wall earth-6.c $(SOURCES) $(LIBS) -o earth-6
\end{lstlisting}
\end{onlyenv}
\begin{onlyenv}<4->
\begin{lstlisting}[language=make,gobble=10]
SOURCES = opengl-magic.c textured-spheres.c
INCLUDES = opengl-magic.h textured-spheres.h
LIBS = -lGL -lGLU -lglut
%: %.c $(SOURCES) $(INCLUDES)
gcc -Wall $< $(SOURCES) $(LIBS) -o $@
\end{lstlisting}
\end{onlyenv}
\begin{onlyenv}<5->
\bigskip
\arrowitem
3 Sprachen: C, Präprozessor, make
\end{onlyenv}
\end{itemize}
\end{frame}
\sectionnonumber{\inserttitle}
\begin{frame}
\showsectionnonumber
\begin{itemize}
\item[\textbf{1}] \textbf{Einführung}
\item[\textbf{2}] \textbf{Einführung in C}
\item[\textbf{3}] \textbf{Bibliotheken}
\begin{itemize}
\item[3.1] Der Präprozessor
\item[3.2] Bibliotheken einbinden
\item[3.3] Bibliothek verwenden (Beispiel: OpenGL)
\color{medgreen}
\item[3.4] Projekt organisieren: make
\end{itemize}
\item[\textbf{4}] \textbf{Algorithmen}
\begin{itemize}
\item[4.1] \color{red}Differentialgleichungen
\item[4.2] Rekursion
\item[4.3] \color{black}Stack und FIFO
\item[4.4] Aufwandsabschätzungen
\end{itemize}
\color{gray}
\item[\textbf{5}] \textbf{Hardwarenahe Programmierung}
\item[\makebox(0,0){\textbf{\raisebox{0.5ex}{\dots}}}]
% \item[\textbf{6}] \textbf{Ergänzungen und Ausblicke}
\end{itemize}
\end{frame}
\section{Algorithmen}
\subsection{Differentialgleichungen}
\begin{frame}[fragile]
\showsection
\showsubsection
\vspace*{-\bigskipamount}
\begin{eqnarray*}
\varphi'(t) &=& \omega(t) \\[\medskipamount]
\omega'(t) &=& -\frac{g}{l}\cdot\sin\varphi(t)\hspace*{7.1cm}
\end{eqnarray*}
\begin{itemize}
\item
Von Hand (analytisch): Lösung raten (Ansatz), Parameter berechnen
\item
Mit Computer (numerisch): Eulersches Polygonzugverfahren
\end{itemize}
\medskip
\begin{lstlisting}[gobble=0]
phi += dt * omega;
omega += - dt * g / l * sin (phi);
\end{lstlisting}
\bigskip
Praktikumsaufgabe: Basketball
\end{frame}
\subsection{Rekursion}
\begin{frame}[fragile]
\showsubsection
Vollständige Induktion:
\vspace*{-0.725cm}
\begin{displaymath}
\hspace*{4cm}
\left.
\begin{array}{r}
\mbox{Aussage gilt für $n = 1$}\\[2pt]
\mbox{Schluß von $n - 1$ auf $n$}
\end{array}
\right\}
\mbox{Aussage gilt für alle $n\in\mathbb{N}$}
\end{displaymath}
\vspace*{-0.5cm}
\pause
Türme von Hanoi
\begin{onlyenv}<2>
\begin{center}
\includegraphics[width=12.2cm]{Tower_of_Hanoi.jpeg}
\end{center}
\end{onlyenv}
\begin{onlyenv}<3->
\begin{itemize}
\item
64 Scheiben, 3 Plätze,
\only<3-4>{\hfill\makebox(0,0)[rt]{\includegraphics[width=6cm]{Tower_of_Hanoi.jpeg}}}\\
immer 1 Scheibe verschieben
\item
Ziel: Turm verschieben
\item
Es dürfen nur kleinere Scheiben\\
auf größeren liegen.
\bigskip
\pause
\pause
\item
$n = 1$ Scheibe: fertig
\item
Wenn $n - 1$ Scheiben verschiebbar:\\
schiebe $n - 1$ Scheiben auf Hilfsplatz,\\
verschiebe die darunterliegende,\\
hole $n - 1$ Scheiben von Hilfsplatz
\end{itemize}
\pause
\vspace{-4.3cm}
\begin{lstlisting}[gobble=6,xleftmargin=6.2cm]
void verschiebe (int n, int start, int ziel)
{
if (n == 1)
verschiebe_1_scheibe (start, ziel);
else
{
verschiebe (1, start, hilfsplatz);
verschiebe (n - 1, start, ziel);
verschiebe (1, hilfsplatz, ziel);
}
}
\end{lstlisting}
\end{onlyenv}
\end{frame}
\begin{frame}[fragile]
\showsubsection
\begin{minipage}[t]{6cm}
\vspace*{0.5cm}
Floodfill\strut\\
\begin{lstlisting}[gobble=6]
void fill (int x, int y, char c, char o)
{
if (get_point (x, y) == o)
{
put_point (x, y, c);
fill (x + 1, y, c, o);
fill (x - 1, y, c, o);
fill (x, y + 1, c, o);
fill (x, y - 1, c, o);
}
}
\end{lstlisting}
\end{minipage}\pause
\begin{minipage}[t]{6.3cm}
\vspace*{-1cm}
Aufgabe: Schreiben Sie eine\\
Bibliothek für "`Text-Grafik"'\\
mit folgenden Funktionen:
\begin{itemize}
\item
\lstinline|void clear (char c)|\\
Bildschirm auf Zeichen \lstinline|c| löschen
\item
\lstinline|void put_point (int x, int y, char c)|\\
Punkt setzen
\item
\lstinline|char get_point (int x, int y)|\\
Punkt lesen
\item
\lstinline|void fill (int x, int y, char c, char o)|\\
Fläche in der "`Farbe"' \lstinline|o|,\\
die den Punkt \lstinline|(x, y)| enthält,\\
mit der "`Farbe"' \lstinline|c| ausmalen
\item
\lstinline|void display (void)|\\
Inhalt des Arrays auf dem\\
Bildschirm ausgeben
\end{itemize}
Hinweis: Verwenden Sie ein\\Array als "`Bildschirm"'.
\end{minipage}
\end{frame}
\sectionnonumber{\inserttitle}
\begin{frame}
\showsectionnonumber
\begin{itemize}
\item[\textbf{1}] \textbf{Einführung}
\item[\textbf{2}] \textbf{Einführung in C}
\item[\textbf{3}] \textbf{Bibliotheken}
\begin{itemize}
\item[3.1] Der Präprozessor
\item[3.2] Bibliotheken einbinden
\item[3.3] Bibliothek verwenden (Beispiel: OpenGL)
\color{medgreen}
\item[3.4] Projekt organisieren: make
\end{itemize}
\item[\textbf{4}] \textbf{Algorithmen}
\begin{itemize}
\item[4.1] \color{medgreen}Differentialgleichungen
\item[4.2] Rekursion
\item[4.3] \color{black}Stack und FIFO
\item[4.4] Aufwandsabschätzungen
\end{itemize}
\color{gray}
\item[\textbf{5}] \textbf{Hardwarenahe Programmierung}
\item[\makebox(0,0){\textbf{\raisebox{0.5ex}{\dots}}}]
% \item[\textbf{6}] \textbf{Ergänzungen und Ausblicke}
\end{itemize}
\end{frame}
\end{document}
../common/earth-texture.rgb
\ No newline at end of file
../common/logo-hochschule-bochum-cvh-text.pdf
\ No newline at end of file
../common/logo-hochschule-bochum.pdf
\ No newline at end of file
../common/moon-texture.rgb
\ No newline at end of file
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>
#include "opengl-magic.h"
void init_opengl (int *argcp, char **argv, char *window_name)
{
glutInit (argcp, argv);
glutInitDisplayMode (GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH);
glutInitWindowSize (1024, 768);
glutCreateWindow (window_name);
glMatrixMode (GL_PROJECTION);
glLoadIdentity ();
gluPerspective (20.0, -1.33333, 3.0, 7.0);
glMatrixMode (GL_MODELVIEW);
glLoadIdentity ();
glTranslatef (0.0, 0.0, -5.0);
glClearColor (0.0, 0.0, 0.0, 0.0);
glEnable (GL_DEPTH_TEST);
glEnable (GL_LIGHTING);
glEnable (GL_LIGHT0);
static GLfloat light0_position[] = { 1.0, 0.0, 1.0, 0.0 };
glLightfv (GL_LIGHT0, GL_POSITION, light0_position);
}
void set_material_color (float r, float g, float b)
{
GLfloat color[] = { r, g, b };
glMaterialfv (GL_FRONT, GL_AMBIENT, color);
glMaterialfv (GL_FRONT, GL_DIFFUSE, color);
}
extern void init_opengl (int *argcp, char **argv, char *window_name);
extern void set_material_color (float r, float g, float b);
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>
#include "opengl-magic.h"
#include "textured-spheres.h"
float t = 0.0;
GLuint earth_texture, moon_texture;
void draw_earth (void)
{
glPushMatrix ();
glRotatef (90, 1.0, 0.0, 0.0);
glRotatef (100.0 * t, 0.0, 0.0, 1.0);
draw_textured_sphere (earth_texture, 0.25512, 63, 20);
glPopMatrix ();
}
void draw_moon (void)
{
glPushMatrix ();
glRotatef (90, 1.0, 0.0, 0.0);
glRotatef (-90, 0.0, 0.0, 1.0);
draw_textured_sphere (moon_texture, 0.06952, 31, 10);
glPopMatrix ();
}
void draw (void)
{
glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glPushMatrix ();
glRotatef (23.44, 1.0, 0.0, -1.0);
draw_earth ();
glRotatef (5.145, 0.0, 1.0, 1.0);
glRotatef (30.0 * t, 0.0, -1.0, 0.0);
glTranslatef (0.9, 0.0, 0.0);
draw_moon ();
glPopMatrix ();
glFlush ();
glutSwapBuffers ();
}
void timer_handler (int value)
{
t += 0.05;
glutPostRedisplay ();
glutTimerFunc (50, timer_handler, 0);
}
int main (int argc, char **argv)
{
init_opengl (&argc, argv, "Orbit");
init_texture ("earth-texture.rgb", 1024, &earth_texture);
init_texture ("moon-texture.rgb", 1080, &moon_texture);
glutDisplayFunc (draw);
glutTimerFunc (50, timer_handler, 0);
glutMainLoop ();
return 0;
}
../common/pgscript.sty
\ No newline at end of file
../common/pgslides.sty
\ No newline at end of file
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <errno.h>
#include <string.h>
#include "textured-spheres.h"
#ifndef __USE_POSIX
extern int fileno (FILE *stream);
#endif
void init_texture (char *image_filename, int image_width, GLuint *texture)
{
FILE *f = fopen (image_filename, "r");
if (!f)
{
fprintf (stderr, "textured-spheres.c: cannot open texture file \"%s\": %s",
image_filename, strerror (errno));
exit (1);
}
struct stat st;
fstat (fileno (f), &st);
size_t size = st.st_size;
int image_height = size / (3 * image_width);
char *image = malloc (size);
if (!image)
{
fprintf (stderr, "textured-spheres.c: cannot load texture file \"%s\": out of memory",
image_filename);
exit (1);
}
fread (image, size, 1, f);
fclose (f);
glGenTextures (1, texture);
glBindTexture (GL_TEXTURE_2D, *texture);
glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR_MIPMAP_LINEAR);
glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexEnvf (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
gluBuild2DMipmaps (GL_TEXTURE_2D, 3, image_width, image_height, GL_RGB, GL_UNSIGNED_BYTE, image);
}
void draw_textured_sphere (GLuint texture, GLdouble radius, GLint slices, GLint stacks)
{
static GLfloat white_color[] = { 1.0, 1.0, 1.0 };
glMaterialfv (GL_FRONT, GL_AMBIENT, white_color);
glMaterialfv (GL_FRONT, GL_DIFFUSE, white_color);
glBindTexture (GL_TEXTURE_2D, texture);
glEnable (GL_TEXTURE_2D);
GLUquadric *sphere = gluNewQuadric ();
gluQuadricTexture (sphere, GL_TRUE);
gluSphere (sphere, radius, slices, stacks);
glDisable (GL_TEXTURE_2D);
}
#ifndef TEXTURED_SPHERES_H
#define TEXTURED_SPHERES_H
#include <GL/gl.h>
#include <GL/glu.h>
extern void init_texture (char *image_filename, int image_width, GLuint *texture);
extern void draw_textured_sphere (GLuint texture, GLdouble radius, GLint slices, GLint stacks);
#endif /* TEXTURED_SPHERES_H */
% pgscript.sty - LaTeX Settings for Lecture Notes
% Copyright (C) 2012 Peter Gerwinski
% Copyright (C) 2012, 2015 Peter Gerwinski
%
% This document is free software: you can redistribute it and/or
% modify it either under the terms of the Creative Commons
......@@ -20,16 +20,42 @@
% Attribution-ShareAlike 3.0 Unported License along with this
% document. If not, see <http://creativecommons.org/licenses/>.
\usepackage[latin1]{inputenc}
\usepackage[british,german]{babel}
\selectlanguage{german}
\usepackage{amsfonts}
\usepackage[colorlinks,allcolors=blue]{hyperref}
\usepackage[british,german]{babel} % Yes, really "german" and not "ngerman".
\usepackage[utf8]{luainputenc} % Without this, umlauts are broken. Weird.
\usepackage{microtype}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{helvet}
\renewcommand*\familydefault{\sfdefault}
\usepackage{graphicx}
\usepackage{pstricks}
% Repair kerning: Automatically insert "\kern{-0.15em}" between "//" % (in URLs).
\directlua{
local glyph = node.id ("glyph")
local function my_kerning (head)
for t in node.traverse (head) do
if t.id == glyph and t.char == 47 then
if t.next
and t.next.next
and t.next.next.id == glyph
and t.next.next.char == 47 then
local k = node.new ("kern")
k.kern = tex.sp ("-0.15em")
k.next = t.next
k.prev = t
t.next.prev = k
t.next = k
end
end
end
node.kerning (head)
end
luatexbase.add_to_callback ("kerning", my_kerning, "URL kerning")
}
\definecolor{blendedblue}{rgb}{0.2,0.2,0.7}
\definecolor{darkgreen}{rgb}{0.0,0.3,0.0}
\definecolor{darkred}{rgb}{0.7,0.0,0.0}
......@@ -41,9 +67,7 @@
\newenvironment{whiteout}{\definecolor{darkgreen}{rgb}{1.0,1.0,1.0}%
\definecolor{darkred}{rgb}{1.0,1.0,1.0}%
\color{white}}{}
\catcode`\_=13\def_{\kern1pt\rule{0.4em}{0.9pt}\kern1pt}\catcode`\_=8
\catcode`\/=13\def/#1{\ifx#1/\char`\/\char`\/\else\char`\/#1\fi}\catcode`\/=12
\newcommand{\url}[1]{{\color{blendedblue}\catcode`~=12\catcode`##=12\catcode`_=13\catcode`/=13\textsf{#1}}}%
\urlstyle{sf}
\newcommand{\file}[1]{{\color{blendedblue}#1}}
\newcommand{\textarrow}{{\boldmath $\longrightarrow$}}
\newcommand{\arrowitem}{\item[\textarrow]}
......@@ -56,22 +80,22 @@
gobble=4,
xleftmargin=1em,
columns=fullflexible,
moredelim=**[is][\color{red}]{}{}}
moredelim=**[is][\color{red}]{¡}{¿}}
\lstdefinestyle{numbered}{xleftmargin=2em,
numbers=left,
numberstyle=\footnotesize\color{gray}}
\lstdefinestyle{terminal}{basicstyle=\ttfamily\color{darkgreen},
language={},
columns=fixed,
moredelim=**[is][\color{darkred}]{}{},
moredelim=**[is][\color{blendedblue}]{}{},
moredelim=**[is][\sffamily\it\lstset{columns=fullflexible}]{}{}}
moredelim=**[is][\color{darkred}]{¡}{¿},
moredelim=**[is][\color{blendedblue}]{°}{¿},
moredelim=**[is][\sffamily\it\lstset{columns=fullflexible}]{²}{¿}}
\lstdefinestyle{cmd}{basicstyle=\ttfamily\color{darkred},
language={},
columns=fixed,
moredelim=**[is][\color{darkgreen}]{}{},
moredelim=**[is][\color{blendedblue}]{}{},
moredelim=**[is][\sffamily\it\lstset{columns=fullflexible}]{}{}}
moredelim=**[is][\color{darkgreen}]{¡}{¿},
moredelim=**[is][\color{blendedblue}]{°}{¿},
moredelim=**[is][\sffamily\it\lstset{columns=fullflexible}]{²}{¿}}
\setlength{\textwidth}{16.5cm}
\setlength{\textheight}{26.0cm}
......
......@@ -20,11 +20,43 @@
% Attribution-ShareAlike 3.0 Unported License along with this
% document. If not, see <http://creativecommons.org/licenses/>.
\usepackage[latin1]{inputenc}
\usepackage[german]{babel}
\usepackage{amsfonts}
\usepackage[british,german]{babel} % Yes, really "german" and not "ngerman".
\usepackage[utf8]{luainputenc} % Without this, umlauts are broken. Weird.
\usepackage{microtype}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{helvet}
\renewcommand*\familydefault{\sfdefault}
\usepackage{graphicx}
\usepackage{pstricks}
\hypersetup{colorlinks,allcolors=blue}
%% @@@ Not necessary for slides. Why???
%% Repair kerning: Automatically insert "\kern{-0.15em}" between "//" % (in URLs).
%\directlua{
% local glyph = node.id ("glyph")
% local function my_kerning (head)
% for t in node.traverse (head) do
% if t.id == glyph and t.char == 47 then
% if t.next
% and t.next.next
% and t.next.next.id == glyph
% and t.next.next.char == 47 then
% local k = node.new ("kern")
% k.kern = tex.sp ("-0.15em")
% k.next = t.next
% k.prev = t
% t.next.prev = k
% t.next = k
% end
% end
% end
% node.kerning (head)
% end
% luatexbase.add_to_callback ("kerning", my_kerning, "URL kerning")
%}
\usetheme{default}
\usefonttheme{structurebold}
......@@ -117,9 +149,6 @@
\definecolor{darkgray}{rgb}{0.4,0.4,0.4}
\newenvironment{experts}{\color{darkgray}}{}
\catcode`\_=13\def_{\kern1pt\rule{0.4em}{0.9pt}\kern1pt}\catcode`\_=8
\catcode`\/=13\def/#1{\ifx#1/\char`\/\kern-2pt\char`\/\else\char`\/#1\fi}\catcode`\/=12
\renewcommand{\url}[1]{{\color{structure}\catcode`~=12\catcode`##=12\catcode`_=13\catcode`/=13\textsf{#1}}}
\usepackage{listings}
\lstset{basicstyle=\color{structure},
......@@ -129,27 +158,27 @@
columns=fullflexible,
aboveskip=0pt,
belowskip=0pt,
moredelim=**[is][\color{structure}]{}{},
moredelim=**[is][\only<2->{\color{structure}}]{}{},
moredelim=**[is][\only<3->{\color{structure}}]{}{},
moredelim=**[is][\only<4->{\color{structure}}]{}{},
moredelim=**[is][\only<5->{\color{structure}}]{}{},
moredelim=**[is][\only<6->{\color{structure}}]{}{},
moredelim=**[is][\only<7->{\color{structure}}]{}{},
moredelim=**[is][\only<8->{\color{structure}}]{}{}}
moredelim=**[is][\color{structure}]{¡}{¿},
moredelim=**[is][\only<2->{\color{structure}}]{²}{¿},
moredelim=**[is][\only<3->{\color{structure}}]{³}{¿},
moredelim=**[is][\only<4->{\color{structure}}]{°}{¿},
moredelim=**[is][\only<5->{\color{structure}}]{¤}{¿},
moredelim=**[is][\only<6->{\color{structure}}]{¢}{¿},
moredelim=**[is][\only<7->{\color{structure}}]{æ}{¿},
moredelim=**[is][\only<8->{\color{structure}}]{ø}{¿}}
\lstdefinestyle{terminal}{basicstyle=\ttfamily\color{darkgreen},
language={},
columns=fixed,
moredelim=**[is][\color{red}]{}{},
moredelim=**[is][\color{blendedblue}]{}{},
moredelim=**[is][\sffamily\it\lstset{columns=fullflexible}]{}{}}
moredelim=**[is][\color{red}]{¡}{¿},
moredelim=**[is][\color{blendedblue}]{°}{¿},
moredelim=**[is][\sffamily\it\lstset{columns=fullflexible}]{²}{¿}}
\lstdefinestyle{cmd}{basicstyle=\ttfamily\color{red},
language={},
gobble=2,
columns=fixed,
moredelim=**[is][\color{darkgreen}]{}{},
moredelim=**[is][\color{structure}]{}{},
moredelim=**[is][\sffamily\it\lstset{columns=fullflexible}]{}{}}
moredelim=**[is][\color{darkgreen}]{¡}{¿},
moredelim=**[is][\color{structure}]{°}{¿},
moredelim=**[is][\sffamily\it\lstset{columns=fullflexible}]{²}{¿}}
\lstdefinestyle{shy}{basicstyle=\color{lightgray}}
\setcounter{topnumber}{3}
......@@ -163,6 +192,7 @@
\setlength{\unitlength}{1cm}
\newcommand{\protectfile}[1]{#1}
\urlstyle{sf}
\newcommand{\file}[1]{{\color{structure}\protectfile{#1}}}
\newcommand{\textarrow}{{\boldmath $\longrightarrow$}}
\newcommand{\arrowitem}{\item[\textarrow]}
......
No preview for this file type
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment