Wie kann ich mit einer fixedfont (am liebsten auch noch mit minted) es erreichen, dass 200 Zeichen innerhalb einer Zeile dargestellt werden (also ziemlich extrem condensed) ?

Vielen Dank für Eure Antworten im voraus!

gefragt 26 Mär, 05:04

thomas2019's gravatar image

thomas2019
11
Akzeptiert: 0%

bearbeitet 26 Mär, 05:05

1

Indem Du einen entsprechenden Font in entsprechend extrem kleiner Größe einstellst und dann die Zeilenlänge als 200*Breite eines Zeichens einstellst. Statt eines kleinen Fonts kann man natürlich auch entsprechend breites Papier verwenden.

Mal ernsthaft: Kannst Du bitte etwas präzisieren, was Dein Problem ist? Und was soll das Ganze? Das kann doch (bei der Zeilenlänge selbst auf plakatformatigem Papier) kein Mensch lesen. Das ist doch reine Papierverschwendung.

Und bei vernünftigen Fragen bitte immer auch an das vollständige Minimalbeispiel denken.

(26 Mär, 05:29) saputello

Wenn man so etwas unbedingt will, kann man es natürlich schon machen, sogar ohne condensed Font:

Öffne in Overleaf
\documentclass{article}
\usepackage{lmodern}
\usepackage{minted}
\usepackage{geometry}
\newlength{\onecharwidth}
\AtBeginDocument{%
  \settowidth{\onecharwidth}{\fontsize{4pt}{5pt}\ttfamily m}%
  \newgeometry{width=200\onecharwidth}%
}
\begin{document}
\begin{minted}[breaklines,breakanywhere,fontsize=\fontsize{4pt}{5pt}\selectfont]{c}
int main() {
  printf("hello, world and world and world and world and world and world and world and world and world and world and world and world and world and world and world and world and world of tomorrow.");
  return 0;
}
\end{minted}
\end{document}

Wie man am Ergebnis sieht, ist das jedoch im Allgemeinen bar jeglicher Sinnhaftigkeit:

völlig sinnfreies Ergebnis

Du kannst natürlich jeden beliebigen anderen Font verwenden. Am einfachsten geht das mit LuaLaTeX oder XeLaTeX, mit denen man alternative Fonts sehr einfach laden kann. Für das Laden von Fonts sei in dem Fall auf fontspec verwiesen. Bei Verwendung von PDFLaTeX ist man hingegen auf das Vorhandensein einer Fonteinbindung angewiesen, beispielsweise

Öffne in Overleaf
\documentclass{article}
\usepackage{lmodern}
\usepackage{minted}
\usepackage{geometry}
\usepackage{courier}% alles anderes als condensed
\newlength{\onecharwidth}
\AtBeginDocument{%
  \settowidth{\onecharwidth}{\fontsize{4pt}{5pt}\ttfamily m}%
  \newgeometry{width=200\onecharwidth}%
}
\begin{document}
\begin{minted}[breaklines,breakanywhere,fontsize=\fontsize{4pt}{5pt}\selectfont]{c}
int main() {
  printf("hello, world and world and world and world and world and world and world and world and world and world and world and world and world and world and world and world and world of tomorrow.");
  return 0;
}
\end{minted}
\end{document}

minted selbst kennt übrigens AFAIK keine Option, um die gewünschte Breite des Listings einzustellen. Aber man kann eine minted-Umgebung beispielsweise in eine minipage-Umgebung der gewünschten Breite packen.

Permanenter link

beantwortet 26 Mär, 06:42

Ijon%20Tichy's gravatar image

Ijon Tichy
8.8k31022

bearbeitet 26 Mär, 06:44

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×37
×7

Frage gestellt: 26 Mär, 05:04

Frage wurde angeschaut: 397 Mal

Zuletzt aktualisiert: 26 Mär, 06:44