Seite 1 von 1

\mbox{} verhindert Größenanpassung der Leerzeichen

Verfasst: Sa 13. Feb 2016, 12:14
von Mattu
Liebe Leute,

kann man LaTeX dazu bringen, auch in einer \mbox{} die Größe der Leerzeichen zu variieren? Andernfalls bekomme ich eine sehr unschöne overfull bzw. underfull hbox, siehe angehängtes Bild.

Mein Minimalbeispiel:
\documentclass[11pt,a4paper,headsepline]{scrartcl}

\begin{document}

[Text]. We limited it to 1000 m, usig the syntax \mbox{``Con(((``\%DHM\_fl\_acc\%'' + 1) * 90) > 1000, 1000, (``\%DHM\_fl\_acc\%'' + 1) * 90)''},\linebreak where [Text].

\end{document}
Ich glaube nicht, dass eines meiner Pakete die \mbox{} beeinflusst, sicherheitshalber hier die Pakete, die ich verwende:
\usepackage[utf8x]{inputenc}
\usepackage{ngerman}
\usepackage{ucs}
\usepackage[T1]{fontenc}

\usepackage{amsmath,amssymb,amstext}

\usepackage{paralist}

\usepackage{ifthen}

\usepackage{graphicx}

\usepackage{placeins}

\usepackage{scrlayer-scrpage}

\usepackage{geometry}
\geometry{a4paper,top=42mm}
Vielen Dank für eure Mühe,
Matthias

Zweite Frage

Verfasst: Sa 13. Feb 2016, 12:26
von Mattu
Da ich zu der obigen Codezeile noch eine weitere Frage habe, stelle ich sie hierunter. Kann man bei LaTeX auch diese Möchtegernanführungszeichen ("") kreieren? Die Syntaxzitate in obigem Text (vgl. auch Bild im Anhang des ersten Posts) sind nämlich aus dem "Raster Calculator" von ArcGIS, und da werden nun einmal diese doppelten Codierungszeichen anstatt von Anführungszeichen verwendet, wenn ich die Syntax also richtig wiedergeben will, werde ich schon auch diese verwenden müssen.

Gruß,
Matthias

Verfasst: Sa 13. Feb 2016, 12:41
von Besserwisser
Nein, das eine bekannte Eigenschaft von \mbox. Das, was du da machst, sieht mir außerdem so aus, als sollte man dafür eine Kombination aus Mathemodus und \text (ev. sogar \texttt) verwenden. Bei Dir wird nämlich beispielsweise aus dem < ein umgedrehtes Fragezeichen ¿, was wohl eher nicht gewollt ist.

BTW: utf8x sollte man nur verwenden, wenn utf8 tatsächlich nicht genügt. ucs braucht man dann nicht selbst zu laden, weil utf8x das Paket lädt. Man sollte es daher eher weglassen.

Ich vermute daher, dass du mit etwas davon:
\documentclass[11pt,a4paper,headsepline]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{geometry}
\usepackage{siunitx}
\geometry{a4paper,top=42mm}
\DeclareMathOperator{\Con}{Con}

\usepackage{blindtext}
\begin{document}

\blindtext We limited it to \SI{1000}{\meter}, using the syntax
``$\Con(((\text{``\texttt{\%DHM\_fl\_acc\%}''} + 1) * 90) > 1000, 1000,
(\text{``\texttt{\%DHM\_fl\_acc\%}''} + 1) * 90)$'', where \blindtext
We limited it to \SI{1000}{\meter}, using the syntax:
\[
``\Con(((``\text{\%DHM\_fl\_acc\%}" + 1) * 90) > 1000, 1000,
(``\text{\%DHM\_fl\_acc\%}" + 1) * 90)",
\]
where \blindtext
We limited it to \SI{1000}{\meter}, using the syntax:
\[
``\Con(((``\texttt{\%DHM\_fl\_acc\%}" + 1) * 90) > 1000, 1000,
(``\texttt{\%DHM\_fl\_acc\%}" + 1) * 90)",
\]

\end{document}
besser bedient wärst.

Verfasst: Sa 13. Feb 2016, 12:54
von Besserwisser
Also möglicherweise sogar so:
\documentclass[11pt,a4paper,headsepline]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{geometry}
\usepackage{siunitx}
\geometry{a4paper,top=42mm}

\usepackage{blindtext}
\begin{document}

\blindtext
We limited it to \SI{1000}{\meter}, using the syntax:
\[
\texttt{"Con}(((\texttt{"\%DHM\_fl\_acc\%"} + 1) * 90) > 1000, 1000,
(\texttt{"\%DHM\_fl\_acc\%"} + 1) * 90)\texttt{"},
\]
where \blindtext.
\end{document}
oder, wenn das eine Programmiersprache ist, dann sogar:
\documentclass[11pt,a4paper,headsepline]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
\usepackage{siunitx}
\usepackage{listings}
\geometry{a4paper,top=42mm}

\usepackage{blindtext}
\begin{document}

\blindtext
We limited it to \SI{1000}{\meter}, using the syntax:
\begin{lstlisting}[basicstyle=\ttfamily,breaklines=true,breakatwhitespace=true]
"Con((("%DHM_fl_acc%" + 1) * 90) > 1000, 1000, ("%DHM_fl_acc%" + 1) * 90)"
\end{lstlisting}
where \blindtext.

\end{document}
Vielleicht gibt es sogar eine richtige Sprachunterstützung für diese Sprache in listings. Sonst müsste man sie ggf. erst noch definieren, wenn man beispielsweise noch Syntaxhervorhebung haben will. Siehe dazu die [d]listings[/d]-Anleitung.

Verfasst: Sa 13. Feb 2016, 14:02
von Mattu
Vielen Dank! Das mit dem Hervorheben hatte ich mir auch schon überlegt und dachte, "wenn ich am Ende noch Platz habe, werde ich es machen", aber es sieht so ungleich besser aus, dass ich mir den Platz auf jeden Fall schaffen werde! Mein Zitat ist übrigens nicht in einer Programmiersprache geschrieben, was es mir etwas erleichtern wird, den Code zu verstehen, den du mir vorschlägst, noch bin ich allerdings nicht so weit ;-), da ich nicht weiß, was der Befehl \[ bzw. \] macht. Kommt der auch vom Paket siunitx?

Ich habe 'mal versucht den Unterschied zwischen utf8 und utf8x herauszufinden (habe leider nur das hier: http://tex.stackexchange.com/questions/ ... 8-inputenc gefunden, keine schöne Gegenüberstellung) und es scheint, als bräuchte ich in diesem Dokument tatsächlich kein utf8x. Allerdings kommt bei mir kein ¿ vor (jedoch auch kein < in der Eingabe - meintest du das >?), könnte das mit utf8 vs. utf8x zusammenhängen?

Und einige deiner Änderungsvorschläge (z.B. Deklarieren von Con; Sagen, dass m eine SI-Einheit ist) scheinen darauf abzuzielen, LaTeX wissen zu lassen, was da eigentlich steht. Wo ist der Vorteil gegenüber dem Fall, wenn es einfach nur die Zeichen abbildet?

Oke, Probleme selbst gefunden und beseitigt

Verfasst: Sa 13. Feb 2016, 15:10
von Mattu
Mattu hat geschrieben:da ich nicht weiß, was der Befehl \[ bzw. \] macht. Kommt der auch vom Paket siunitx?
Nein, kommt er offensichtlich nicht, da er auch funktioniert, wenn dieses nicht benutzt wird. Ich weiß jedoch noch immer nicht genau, was er macht.

Mein anderes (bisher noch nicht ausgesprochenes) Problem (da ich hoffte, es selbst lösen zu können) betraf die Anführungszeichen. Man bekommt die Codierungszeichen (") nicht hin, solange das Paket ngerman aktiviert ist, da es mit deren Hilfe gerne auch Befehle einleitet (vgl hier: https://de.wikibooks.org/wiki/LaTeX-W%C ... entrennung). Man kann allerdings Umlaute, ß (und in diesem Fall auch ç) auch ohne ngerman machen, solange [utf8]{inputenc} aktiviert ist, wie ja im Vorschlag von Besserwisser auch der Fall.

Vielen Dank erst einmal hierfür, Besserwisser!

Re: Oke, Probleme selbst gefunden und beseitigt

Verfasst: Sa 13. Feb 2016, 15:20
von Johannes_B
Mattu hat geschrieben:
Mattu hat geschrieben:da ich nicht weiß, was der Befehl \[ bzw. \] macht. Kommt der auch vom Paket siunitx?
Nein, kommt er offensichtlich nicht, da er auch funktioniert, wenn dieses nicht benutzt wird. Ich weiß jedoch noch immer nicht genau, was er macht.
Das steht nun wirklich in jeder Einführung. Es erzeugt eine abgesetzte, nicht nummerierte Gleichung/Matheumgebung.

EDIT: Das Wikibook ist von sehr zweifelhafter Qualität und sollte nicht zu Recherchezwecken dienen.

Danke!

Verfasst: Sa 13. Feb 2016, 18:15
von Mattu
Vielen Dank auch für diese Erklärung und den Hinweis!