Подтвердить что ты не робот

Латекс: использование пакета Minted - как заставить его обернуть текст (linebreaks = true)

Im использует Pygments для многих вещей, и я хотел бы также использовать это в своем латексном отчете. Я нашел пакет Minted, который взаимодействует с Pyigs, но некоторые из комментариев и некоторый код переполняют правый край. Я использовал lstlistings 'breaklines=true в прошлом, но я не вижу способа получить эту функциональность, используя пакет Minted, любые идеи?


\documentclass[10pt]{article}  
\usepackage{fancyvrb}  
\usepackage{minted}  

\begin{document}
\begin{minted}[mathescape,
 linenos,
 numbersep=5pt,
 frame=single,
 numbersep=5pt,
 xleftmargin=0,
 ]{python}
class Run(BaseModel):
 """
 Run: unique Tool and multiple Inputs
 Status:
  Running => jobs are pending or runing and not all jobs have been completed
  Paused => workers querying for 'Running' Runs won't get this Run until we change status again
  Done => all jobs have completed and have a result_status = 'Done'
  Incomplete => No results (inputs) have been associated with the Run
 """ 
 name = models.CharField(max_length = 150,
  unique=True)
 tool = models.ForeignKey('Tool')
 tags = models.ManyToManyField(RunTag, related_name="model_set")
\end{minted}
\end{document}
4b9b3361

Ответ 1

К сожалению, нет решения в рамках minted на данный момент или в обозримом будущем, извините. Реализация функции breaklines довольно сложна. Использование listings вместо этого может быть вашим лучшим решением здесь.

Отчетом теперь имеет параметр breaklines.

Ответ 2

Minted 2.0 (только что выпущенный) делает прерывание строки, если вы даете ему опцию breaklines:

\documentclass[10pt]{article}  
\usepackage{fancyvrb}  
\usepackage{minted}  

\begin{document}
\begin{minted}[%
 breaklines,
 mathescape,
 linenos,
 numbersep=5pt,
 frame=single,
 numbersep=5pt,
 xleftmargin=0pt,
 ]{python}
class Run(BaseModel):
 "''
 Run: unique Tool and multiple Inputs
 Status:
  Running => jobs are pending or runing and not all jobs have been completed
  Paused => workers querying for 'Running' Runs won't get this Run until we change status again
  Done => all jobs have completed and have a result_status = 'Done'
  Incomplete => No results (inputs) have been associated with the Run
 "'' 
 name = models.CharField(max_length = 150,
  unique=True)
 tool = models.ForeignKey('Tool')
 tags = models.ManyToManyField(RunTag, related_name=''model_set'')
\end{minted}
\end{document}

Существуют также различные связанные параметры для контроля того, как на выходе выводится наличие разрыва строки. См. Раздел 6.3 в документации minted.