Dienstag, 13. Juli 2010

RegEx: Prozentzahlen mit LaTeX-String ersetzen

Regular Expression um Prozentzahlen zu suchen und mit LaTeX-Befehl "umklammern" in Notepad++.
8.7\% -> \prozent{8.7}

Suche:
([0-9]+\.[0-9])\\%
Ersetze mit:
\prozent{\1}

Überflüssige Punkte bei Kapiteln entfernen

Im deutschsprachigen Raum haben Punkte am Ende von Kapitelnummern nicht zu suchen (3.2 statt 3.2.).
Um die Punkte hinter Kapitelüberschriften etc. zu entfernen muss die Dokumentenklasse modifiziert werden. Dies ist wie folgt möglich
/*
 \documentclass[
a4paper,
%twoside,
oneside,
%chapterprefix,
pointlessnumbers, % Das hier ist wichtig!!
12pt]
{scrreprt}

Montag, 12. Juli 2010

LaTeX: Pseudozufällige Wortwahl

Immer selber überlegen welches von zwei Synonymen man verwenden soll? Neeeeeeee
Hiermit macht das LaTeX von alleine. Kann natürlich auch verschachtelt werden um mehr als zwei unterzubringen.

Zunächst müssen zwei Packages geladen werden.
\usepackage[first=0, last=100, counter=rand100, seed=42]{lcg} % lade pseudorandom Counter, mit 0 < rand100 < 100
\usepackage{ifthen} % erlaubt if-then-else Anweisungen in LaTeX
Und noch ein paar Befehle definiert werden
% Random term
\newcommand{\randterm}[2]{% gibt pseudo-zufällig ersten oder zweiten Term zurück
 \rand\ifthenelse{\isodd{\value{rand100}}}{#1}{#2}}
\newcommand{\randtermfav}[3]{% erstes favorisiert; zu [3] Prozent erstes; z.B. [3] = 70 (%)
 \rand\ifthenelse{\value{rand100} < #3 }{#1}{#2}}
Mit dem zweiten Befehl (randtermfav) kann man sehr schön schachteln indem man einfach die "Prioritäten" der ersten so setzt, dass am Schluss alles die gleiche Wahrscheinlichkeit hat. Aufruf im Dokument später über:
\randtermfav{Deshalb}{Darum}{70}
..würde "Deshalb" mit einer Wahrscheinlichkeit von 70% schreiben..zu 30% "Darum".

Sonntag, 11. Juli 2010

Latex Listings nebeneinander

Wie kann man in Latex 2 Listing nebeneinander darstellen lassen ?


\usepackage{blindtext,listings}
\lstset{
frame=single,
xrightmargin=.4em,
xleftmargin=.4em
}
\begin{minipage}{.5\textwidth}
\begin{lstlisting}[caption={DAC-Funktion}]
% Code DAC
function y = DAC_1_bit(u)
y=-1+2*u;
\end{lstlisting}
\end{minipage}%
\begin{minipage}{.5\textwidth}
\begin{lstlisting}[caption={Transform-Funktion}]
% Code Transform
function g = Transform(v)
g=1+v;
\end{lstlisting}
\end{minipage}


Sieht dann aus wie folgt:

Pfeiltasten im GUI abfangen

Wie kann man in einem Matlab GUI Tastendrücke (Pfeiltasten) abfangen?
 Zunächst muss der Callback dem GUI Handle zugewiesen werden

set(handles.myGUI,'KeyPressFcn',{@KeyPress,handles.myGUI});

Anschließend muss noch die Callback-Function deklariert werden. Hier wird unterschieden welche Taste gedrückt wurde.

function KeyPress(src,eventdata,h)
   disp(eventdata.Key); % optional: Tastenname anzeigen
    handles = guidata(h); % optional: gesamte Handlesstruktur des GUI auslesen
switch eventdata.Key % Unterscheiden welche Taste gedrückt wurde (nur wenn mehrere Tasten möglich sind)
    case 'uparrow'
        disp('Uparrow pressed');
    case 'downarrow'
        disp('Downarrow pressed');
    case 'rightarrow'
        disp('Rightarrow pressed');
    case 'leftarrow'
        disp('Leftarrow pressed');
end

Absatzeinrückung

Wie kann man einstellen ob Absätze durch Zeilenabstand oder Absatzeinrückung gekennzeichnet werden?


% Absatz-Einrückung festlegen
\setlength{\parindent}{0em}
% Abstand zwischen zwei Abschnitten festlegen
\setlength{\parskip}{1em}


LaTeX-Tabellen einfach gemacht

LaTeX macht zwar tolle Texte usw. aber Tabellen erstellen nervt einfach..Also warum nicht die Tabelle in Excel machen und in LaTeX verwenden?
  1. Tabelle in Excel erstellen (mit Formatierung und Rahmen)
  2. Excel2LaTeX-Addon auf CTAN herunterladen
  3. Addon laden:
    • Addon mit Excel öffnen ODER
    • Datei in Excelverzeichnis tools/add-in damit es bei jedem Start automatisch läd
  4. Unter Tools den Menüpunkt Excel2Latex auswählen und Sourcecode in LaTeX pasten

Samstag, 10. Juli 2010

Diagonale Tabellenlinie

Zunächst folgendes Package einbinden.
\usepackage{slashbox}


Im eigentlichen Hauptprogramm dann...

\begin{table}[ht]
\centering
\begin{tabular}{|c|c|c|} \hline
\backslashbox{Spezifikation}{Lösungsansatz}& 1& 2   \\ \hline
Flexibilität & mittel & niedrig    \\ \hline
Wandlungsgeschw. & mittel & niedrig   \\ \hline
Komplexität & niedrig & hoch   \\ \hline
vorh. Kenntnisse  & hoch & mittel   \\ \hline
Preis & hoch & niedrig   \\ \hline
Verfügbarkeit& mittel & hoch   \\ \hline
\end{tabular}
\caption{Bewertungsmatrix}
\label{tab:bewertungsmatrix}
\end{table}


Sieht folgendermaßen aus...


Freitag, 9. Juli 2010

How to use Matlab Syntax in Blogger

/*
     * SyntaxHighlighter
     */
    ..Code.. 
Für LaTeX-Code wird brush: latex verwendet.