goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Bücher:

Wissenschaftlich mit LaTeX arbeiten


Forenstatistik:
Beiträge: 42290
Seitenaufrufe:
342140 PIs (Mai 2012)

Top-Poster: KOMA (2637)

Wir begrüßen unseren neuesten Benutzer Yvaine.

Partner:

KOMA-Script



TeXblog



LaTeX Community




Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Eigene Umgebung für "Sätze" etc. definieren

 

Saduras
Gast

Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.04.2011, 15:04     Titel: Eigene Umgebung für "Sätze" etc. definieren
  Antworten mit Zitat      
Hallo,

ich TeXe ein Teil meiner Unimitschriften, damit ich eine übersichtliche und schicke Mitschrift hab. Als Mathestudent gibt es dabei eine nahezu gleichbleibende unterteilung in Definitionen, Sätze und Beweise.
Da ich dafür bisher noch keine wirklich zufriedenstellende Formatierung gefunden hab versuch ich grade mir meine eigenen Umgebungen dafür zu konstruieren.

Mir ist das Paket amsthm bekannt und ich hab es auch bereits benutzt, leider war ich damit nicht so ganz zufrieden. Deswegen der Versuch mit den eigenen Umgebungen.

Meine Grundidee ist folgende:
- Bezeichnung (Satz, Definition,...) Links mit Nummerierung
- Eingerückt dann Inhalt

Das hab ich versucht mit Tabellen zu realisieren, doch gibt es dann probleme, wenn in der Umgebung "\\" oder "&" verwendet wird...

Code:
\newenvironment{satz}[1]
      {\begin{tabular}{l l} Satz #1: & }
      {\end{tabular}Ende}


Den Inhalt in eine Box zu packen scheitert daran, dass ich im begin-Teil keine "{"-Klammer offen lassen darf/kann, die ich erst wieder im end-Teil schließe...

Wie lässt sich das realisieren? Oder ist mein Ansatz ganz falsch?
Mir ist ja eigentlich schon bekannt, dass man sich in LaTeX nicht so viel um die Formatierung kümmern sollte und so, aber das was ich bisher gefunden hab stellte mich nicht ganz zufrieden.

Danke!

Saduras
Gast

Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.05.2011, 10:25     Titel: Eigene Umgebung für "Sätze" etc. definieren
  Antworten mit Zitat      
Hallo again,

ich hab doch wieder amsthm verwendet und bin sogar auf etwas gestoßen, was meiner ursprünglichen Idee sehr nahe kommt!
Und zwar kann man beim definieren eines neuen theorem-styles einen negativen Wert für das Einrücken der Überschrift angeben.

Minimalbeispiel:
Code:

\documentclass{article}
\usepackage{ngerman} %neue deutsche Rechtschreibung
\usepackage[utf8]{inputenc} %richtige umwandlung von umlauten
\usepackage{amsthm}

\begin{document}
   
   \newtheoremstyle{style}% ⟨name⟩
      {0.5em}%   ⟨Space above⟩
      {0.7em}%   ⟨Space below⟩
      {}%   ⟨Body font⟩
      {-9em}%   ⟨Indent amount⟩
      {\bfseries}% ⟨Theorem head font⟩
      {:}%   ⟨Punctuation after theorem head⟩
      {\newline}%   ⟨Space after theorem head⟩
      {}%   ⟨Theorem head spec (can be left empty, meaning ‘normal’)⟩
     
      \theoremstyle{style}
      \newtheorem{satz}{Satz}[section]
     
     
      \section{Das erste Kapietel}
      \begin{satz}
         Irgend ein Inhalt bzw. eine Aussage\dots
      \end{satz}
     
      \begin{satz}
         Weiterer Inhalt
      \end{satz}
\end{document}
 


Eine Kleinigkeit stört mich jedoch noch:
Nun stehen die Satz-Bezeichnungen außerhalb des eigentlich Seiteninhaltes und deshalb nicht so eingerückt wie die Section-Überschriften. (siehe Bsp)
Es wäre schöner, wenn diese übereinander stehen und nur der Inhalt eines Satzes eingerückt ist.
Vielleicht kann man irgendwie zusätzlich zum Seitenabstand noch eine weitere Einrückung von normalem Text definieren?
Oder ist es möglich section-Überschriften und head-Zeilen so zu manipulieren, dass ich auch "links überstehen"?

Wäre super, wenn sich damit jemand auskennt!
Danke!

Anfänger
Forum-Anfänger
Forum-Anfänger

Beiträge: 10
Anmeldedatum: 29.09.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.09.2011, 16:16     Titel: Eigene Umgebung für "Sätze" etc. definieren
  Antworten mit Zitat      
Servus zusammen,

ich hab genau das gleiche Problem.

Hilfe bitte!
Private Nachricht senden Benutzer-Profile anzeigen

bloodworks
Moderator
Moderator


Beiträge: 1428
Anmeldedatum: 19.01.09
Wohnort: /dev/null
Version: MacTeX 2011
     Beitrag Verfasst am: 29.09.2011, 16:56     Titel:
  Antworten mit Zitat      
So zum Bleistift:
Code:

\documentclass{article}
\usepackage{ngerman} %neue deutsche Rechtschreibung
\usepackage[latin1]{inputenc} %richtige umwandlung von umlauten
\usepackage{amsthm}

\begin{document}
   
   \newtheoremstyle{style}% ⟨name⟩
      {0.5em}%   ⟨Space above⟩
      {0.7em}%   ⟨Space below⟩
      {}%   ⟨Body font⟩
      {0em}%   ⟨Indent amount⟩
      {\bfseries}% ⟨Theorem head font⟩
      {}%   ⟨Punctuation after theorem head⟩
      { }%   ⟨Space after theorem head⟩
      {Satz \arabic{section}.\arabic{satz}:\\  \hspace*{1cm}}%   ⟨Theorem head spec (can be left empty, meaning ‘normal’)⟩
     
      \theoremstyle{style}
      \newtheorem{satz}{Satz}[section]
     
     
      \section{Das erste Kapietel}
      \begin{satz}
         Irgend ein Inhalt bzw. eine Aussage\dots
      \end{satz}
     
      \begin{satz}
         Weiterer Inhalt
      \end{satz}
     
 
     
\end{document}
 
 


Geht natürlich nur bei einzeiligen Sätzen.
Im Prinzip kann man so was auch selber machen:
Code:
\documentclass{article}
\usepackage{ngerman} %neue deutsche Rechtschreibung
\usepackage[latin1]{inputenc} %richtige umwandlung von umlauten
\usepackage{ calc}

      \newcounter{satzi}[section]\stepcounter{satzi}
      \newlength{\myindent}
      \setlength{\myindent}{1cm}
      \newenvironment{mysatz}{\vspace*{0pt}\noindent\begin{minipage}[t]{\textwidth}Satz \refstepcounter{satzi}\arabic{section}.\arabic{satzi}:\newline  \hspace*{\myindent}\begin{minipage}[t]{\textwidth -\myindent} }{\end{minipage}\end{minipage}\\[.3\baselineskip]}
     
\begin{document}
   
\section{bla}
     
d
 

     \begin{mysatz}
    W test Test TEst etst test   test Test TEst etst test   test Test TEst etst test   test Test TEst etst test
    \end{mysatz}
     Was anderesW
     
    \begin{mysatz}
    W test Test TEst etst test   test Test TEst etst test   test Test TEst etst test   test Test TEst etst test
    \end{mysatz}
     Was anderesW
    \section{bla}
     

 
    \begin{mysatz}
    W test Test TEst etst test   test Test TEst etst test   test Test TEst etst test   test Test TEst etst test
    \end{mysatz}

\end{document}

_________________

[1] Nützliche Webdokumente für Anfänger und Fortgeschrittene
[2] Minimalbeispiel | [3] FAQ
[4] Regelwerk | [5] Knigge
Wenn nicht anderst angegeben ist mein System: texlive 2012, pdflatex, x86-64, Snow Leopard utd.
Angehöriger der Liga zur Verwendung von texdoc
texdoc mathmode koma l2picfaq l2tabu lshort-en
Achtung: Aufforderungen ein Minimalbeispiel oder mehr Erklärungen zu einer Frage zu liefern sind keine persönlichen Angriffe. Sie dienen viel mehr dazu die Kommunikation zwischen Fragendem und potentiellen Helfern zu erleichtern und zu präzisieren.

Private Nachricht senden Benutzer-Profile anzeigen

Anfänger
Forum-Anfänger
Forum-Anfänger

Beiträge: 10
Anmeldedatum: 29.09.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.09.2011, 09:44     Titel:
  Antworten mit Zitat      
Servus und danke erstmal.
Das mit der Umgebung schaut gut aus. Jetzt wäre nur noch meine Frage: Wie bekomme ich die Nummerierung weg? Wenn ich den Counter-Befehl weglasse, kommt bei mir immer der Fehler:
! Missing number, treated as zero.
<to be read again>

Hier mein Testversuch:
Code:

\documentclass{article}
\usepackage{ngerman} %neue deutsche Rechtschreibung
\usepackage[latin1]{inputenc} %richtige umwandlung von umlauten
\usepackage{ calc}
\usepackage{amsthm}

      \newlength{\myindent}
      \setlength{\myindent}{1cm}
      \newenvironment{mysatz}{\vspace*{0pt}\noindent\begin{minipage}[t]{\textwidth}\textbf{Satz:}  \hangindent*{\myindent}}{\end{minipage}\\[.3\baselineskip]}


\begin{document}
   
\section{bla}
     
d
 

     \begin{mysatz}
    W test Test TEst etst test   test Test TEst etst test   test Test TEst etst test   test Test TEst etst test
    \end{mysatz}
     Was anderesW
     
    \begin{mysatz}
    W test Test TEst etst test   test Test TEst etst test   test Test TEst etst test   test Test TEst etst test
    \end{mysatz}
     Was anderesW
    \section{bla}
     

    \begin{mysatz}
    W test Test TEst etst test   test Test TEst etst test   test Test TEst etst test   test Test TEst etst test
    \end{mysatz}

\end{document}
Private Nachricht senden Benutzer-Profile anzeigen

bloodworks
Moderator
Moderator


Beiträge: 1428
Anmeldedatum: 19.01.09
Wohnort: /dev/null
Version: MacTeX 2011
     Beitrag Verfasst am: 30.09.2011, 10:25     Titel:
  Antworten mit Zitat      
Das finde ich jetzt aber nicht sehr nett von dir. Oben schreibst du noch, du hast das genau gleiche Problem, jetzt plötzlich nicht mehr. SO was nennt man Thread jacking. Für eine eigene Frage solltest du ein eigenes Thema aufmachen.
Wie dem auch sei. Bitte schön:
Code:
  \newlength{\myindent}
       \setlength{\myindent}{1cm}
       \newenvironment{mysatz}{\vspace*{0pt}\noindent\begin{minipage}[t]{\textwidth}\textbf{Satz:} \par\hangindent=\myindent\parindent=\myindent}{\end{minipage}\\[.3\baselineskip]}

_________________

[1] Nützliche Webdokumente für Anfänger und Fortgeschrittene
[2] Minimalbeispiel | [3] FAQ
[4] Regelwerk | [5] Knigge
Wenn nicht anderst angegeben ist mein System: texlive 2012, pdflatex, x86-64, Snow Leopard utd.
Angehöriger der Liga zur Verwendung von texdoc
texdoc mathmode koma l2picfaq l2tabu lshort-en
Achtung: Aufforderungen ein Minimalbeispiel oder mehr Erklärungen zu einer Frage zu liefern sind keine persönlichen Angriffe. Sie dienen viel mehr dazu die Kommunikation zwischen Fragendem und potentiellen Helfern zu erleichtern und zu präzisieren.

Private Nachricht senden Benutzer-Profile anzeigen

Anfänger
Forum-Anfänger
Forum-Anfänger

Beiträge: 10
Anmeldedatum: 29.09.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.09.2011, 10:40     Titel:
  Antworten mit Zitat      
Wunderbar!
Zu meiner Verteidigung: Ich hab mich spontan umentschieden.
Very Happy
Jetzt hast du mir schon so weit geholfen, da muss ich unanständigerweise gleich noch was fragen:
Ich würde noch gerne um das ganze Ding, also die ganze Umgebung, einen Kasten machen. Wie krieg ich das hin?
Und noch eine nicht so wichtige Frage: Warum fängt der Text, den ich in den Satz schreibe, nicht nach dem "Satz:" an? Ich hab gedacht, genau dafür ist "\hangindent" gut?

Vielen Dank für die große Hilfe bis jetzt!
Private Nachricht senden Benutzer-Profile anzeigen

bloodworks
Moderator
Moderator


Beiträge: 1428
Anmeldedatum: 19.01.09
Wohnort: /dev/null
Version: MacTeX 2011
     Beitrag Verfasst am: 30.09.2011, 10:50     Titel:
  Antworten mit Zitat      
Nein \hangindent rückt Absätze ein. Und ist sehr low level. (Ich geben keine Grantie dafür, dass die Verwendung von hangindent nicht irgendwelche unerwünschten Effekte hat. ) Das kannst du eben an den Anfang eins Absatzes schreiben um den gesamten Absatz einzurücken. Ich denke das triffts noch eher:

Code:
\documentclass{scrbook}
\usepackage[ngerman]{babel}


\usepackage{calc, blindtext}
\usepackage{mdframed}
  \newlength{\myindent}
       \setlength{\myindent}{1cm}
       \newenvironment{mysatz}{\begin{mdframed}[skipbelow=.2\baselineskip, skipabove=.2\baselineskip]\textbf{Satz:}\hangindent=\myindent}{\end{mdframed}}
\begin{document}

\begin{mysatz}
\blindtext
\end{mysatz}
\blindtext

\blindtext

\end{document}
DU kannst die minipage weglassen. Aber bedenke: Rahmen sind eine sehr starke Auszeichnung. Die ziehen sehr viel Aufmerksamkeit uns sollten eher sparsam eingesetzt werden, sonst wird das lesen auch sehr anstrengend.
_________________

[1] Nützliche Webdokumente für Anfänger und Fortgeschrittene
[2] Minimalbeispiel | [3] FAQ
[4] Regelwerk | [5] Knigge
Wenn nicht anderst angegeben ist mein System: texlive 2012, pdflatex, x86-64, Snow Leopard utd.
Angehöriger der Liga zur Verwendung von texdoc
texdoc mathmode koma l2picfaq l2tabu lshort-en
Achtung: Aufforderungen ein Minimalbeispiel oder mehr Erklärungen zu einer Frage zu liefern sind keine persönlichen Angriffe. Sie dienen viel mehr dazu die Kommunikation zwischen Fragendem und potentiellen Helfern zu erleichtern und zu präzisieren.

Private Nachricht senden Benutzer-Profile anzeigen

Anfänger
Forum-Anfänger
Forum-Anfänger

Beiträge: 10
Anmeldedatum: 29.09.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.09.2011, 10:57     Titel:
  Antworten mit Zitat      
Super! Ich danke dir! Ich werd's behutsam einsetzen, aber das ist genau das, was ich wollte.
Private Nachricht senden Benutzer-Profile anzeigen

Anfänger
Forum-Anfänger
Forum-Anfänger

Beiträge: 10
Anmeldedatum: 29.09.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.10.2011, 11:44     Titel:
  Antworten mit Zitat      
Da bin ich schon wieder! Embarassed

Wie bereits erwähnt, ist jetzt eigentlich von der Formatierung her aller super. Das Einzige, was noch ein bisschen stört, ist die Tatsache, dass die Sätze beim Seitenumbruch geteilt werden. Ich hab ein bisschen recherchiert und die "mdframed"-Option "nobreak" gefunden. Jetzt schaut das bei mir so aus:
Code:
   \newenvironment{satz}{%
   \begin{mdframed}[skipbelow=.6\baselineskip,%
     skipabove=.6\baselineskip,%
     innerleftmargin=0,%
     innerrightmargin=0,%
     nobreak=true]%
    \textbf{Satz:}%
     \hangindent=\myindent}%
   {\end{mdframed}}

Das Vorgeplänkel ist wie oben. Allerdings kommt dann der Fehler
! Package xkeyval Error: `nobreak' undefined in families `mdf'.

See the xkeyval package documentation for explanation.

Was mach ich falsch? Danke im Voraus!
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen Gehe zu Seite 1, 2, 3  Weiter



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de goPCB.de


  Impressum | Werbung/Mediadaten | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2013 goLaTeX.de
Partner: LabVIEWforum.de