
Я новичок в Latex и Lyx. Я пытаюсь создать фрейм в Lyx, содержащий 2 столбца, первый из которых будет текстом в формате JSON, а второй — комментариями строк первого столбца. Пока что я использую minted, чтобы добавить немного стиля к тексту JSON, вот так:
Первая проблема в том, что некоторые строки слишком длинные, я могу сократить строки, обрезав большую часть содержимого вручную, так как это на самом деле не нужно. Результат примерно такой:
На самом деле я хочу создать что-то вроде этого, но не делая этого вручную, поскольку мне придется делать это несколько раз:
Я не знаю, возможно ли реализовать то, о чем я прошу, с помощью LaTeX или Lyx, но я буду очень признателен за любые идеи.
я виделэтотпост, но я не знаю, как правильно использовать этот ответ в моем контексте
решение1
Вы можете minted
разрешить переносы строк в любом месте. И смело добавляйте пустые строки, чтобы выровнять текст с обеих сторон. Взглянули, это то, что вы хотели? Дайте мне знать, если у вас есть вопросы:
\documentclass{beamer}
\usepackage{xcolor}
\usepackage{minted}
\begin{document}
\begin{frame}[fragile]{Frame Title}
\begin{columns}[t] % align text from top
\begin{column}{0.5\linewidth}
\begin{scriptsize}
\begin{minted}[
bgcolor=lightgray!20, % add background color
breaklines, % allow line break
breakanywhere, % allow line break at anywhere
]
{c}
{
"public_properties": {
"name": "Name",
"info": "Some Info Here",
"value": 34.5
},
"private properties": {
"id": "12",
"authkey": "aVeryLongKeyThatItSProbablyTooLongToccupyOnlyOneLineAndINeedToShowOn"
"timestamp": "20200101T23:00:00"
"signedonclient": true
}
}
\end{minted}
\end{scriptsize}
\end{column}
\begin{column}{0.5\textwidth}
\begin{scriptsize}
\begin{minted}[
bgcolor=lightgray!20, % add background color
breaklines, % allow line break
breakanywhere, % allow line break at anywhere
escapeinside=@@ % add empty lines using @@
]
{c}
@@
//Public properties
//This is the name
//This is a short information
//This is the actual value
//Private properties
//This is the ID
//This is a very long authentication key
//This is only the timestamp but I'm doing it very long on purpose so the line jump is noticed
//Indicates if the client is signed
@@
\end{minted}
\end{scriptsize}
\end{column}
\end{columns}
\end{frame}
\end{document}