ZZ beschäftigt mich das Problem, wie Code-Schnipsel (oder Pfade etc) in \texttt{...} getrennt werden können. Eine Trennung an beliebiger Stelle wäre ok.
Folgendes habe ich hier hier gefunden:
\documentclass{article} \usepackage{hyphenat} \usepackage{url} \usepackage{xstring} \usepackage{forloop} \usepackage{xcolor} %\usepackage{filecontents} \newsavebox\MyArrowBox% \sbox\MyArrowBox{$\hookleftarrow$}% \makeatletter% \newcommand*{\BreakableChar}{% \leavevmode% \prw@zbreak% \discretionary{\usebox\MyArrowBox}{}{}% \prw@zbreak% }% \newcounter{index}% \newcommand{\AddBreakableChars}[1]{% \StrLen{#1 }[\stringLength]% \forloop[1]{index}{1}{\value{index}<\stringLength}{% \StrChar{#1}{\value{index}}[\currentLetter]% {\currentLetter\BreakableChar}% }% }% \newcommand*{\MyUrl}{https://tex.stackexchange.com/questions/28835/option-to-break-urls-with-carriage-return-symbol}% \begin{document} \parbox{4cm}{\textcolor{blue}{\AddBreakableChars{\MyUrl}}} \bigskip \parbox{7cm}{\textcolor{blue}{\AddBreakableChars{\MyUrl}}} \end{document}
Das funktioniert durchaus und sieht gut aus. Nun wollte ich mir daraus ein neues texttt erstellen, also insbesondere sollte der Text zB auch \textbackslash und den Backtick, dh\textasciigrave aus dem textcomp Paket, (und Spaces) enthalten können. Wenn ich aber zB sowas mache:
\AddBreakableChars{Foo\textbackslash{}Bar}
dann erfolgt ein Abbruch mit Fehlermeldung. Es gibt auch einen Kommentar auf der verlinkten Seiten, dass man in \AddBreakableChars über Tokens statt über Zeichen iterieren müsse, aber leider steht keine Lösung dabei.
Da ich von LaTeX-Makroprogrammmierung nicht viel verstehe, wollte ich nachfragen, ob mir hier jemand helfen kann.
Der Thread auf tex.stackexchange ist über 8 Jahre alt, es scheint mir daher nicht sinnvoll, dort nachzufragen.
Ich habe Alternativlösungen gefunden, die auf url basieren, aber die verschlucken immer die Spaces, außerdem wird der Backtick nicht korrekt dargestellt.
Mein LaTeX-Code wird übrigens per Pandoc aus Markdown generiert, sodass man evt auch was mit pandoc-Filtern machen könnte, aber eine LaTeX-Lösung wäre mir lieber.