Сделать код в LaTeX выглядеть * красиво * [закрыто]

133

В настоящее время я пишу отчет по проекту, и чтобы объяснить немного сумасшедший неинтуитивно понятный код, который я использовал, мне нужно вставить много-много коротких отрывков из примеров кода.

Как я могу получить код в LaTeX, который:

  • выглядит хорошо
  • не выходит за пределы страницы, если строка слишком длинная (список или список дословно)
  • желательно встроить в остальной текст

ИЗМЕНИТЬ (решил, что добавлю настройки, чтобы людям не приходилось пытаться выяснить их самостоятельно (взято из викиучебников (ссылка ниже) и отредактировано для удобства))

Хорошие настройки:

\usepackage{color}
\usepackage{listings}
\lstset{ %
language=C++,                % choose the language of the code
basicstyle=\footnotesize,       % the size of the fonts that are used for the code
numbers=left,                   % where to put the line-numbers
numberstyle=\footnotesize,      % the size of the fonts that are used for the line-numbers
stepnumber=1,                   % the step between two line-numbers. If it is 1 each line will be numbered
numbersep=5pt,                  % how far the line-numbers are from the code
backgroundcolor=\color{white},  % choose the background color. You must add \usepackage{color}
showspaces=false,               % show spaces adding particular underscores
showstringspaces=false,         % underline spaces within strings
showtabs=false,                 % show tabs within strings adding particular underscores
frame=single,           % adds a frame around the code
tabsize=2,          % sets default tabsize to 2 spaces
captionpos=b,           % sets the caption-position to bottom
breaklines=true,        % sets automatic line breaking
breakatwhitespace=false,    % sets if automatic breaks should only happen at whitespace
escapeinside={\%*}{*)}          % if you want to add a comment within your code
}

\begin{lstlisting}
!!code!!
\end{lstlisting}

Пример этих настроек:

Эд Джеймс
источник
Пакет списков довольно приятный и очень гибкий (например, разные размеры для комментариев и кода).
Фабиан Стиг,
После долгих поисков в Google выясняется, что lstlisting умеет хорошо форматировать код, но для этого требуется много настроек. У <a href=" ru.wikibooks.org/wiki/LaTeX/Packages/…> есть хороший пример параметров, которые можно настроить. (Извините, что отвечаю на мой собственный вопрос!)
Эд Джеймс
1
Чудесно! Мне нравится, что я могу просто скопировать и вставить что-нибудь в мой латексный документ, и он мгновенно станет красивым! Вы спасли меня на несколько часов настройки сейчас. Спасибо! :)
Эспен Херсет Халворсен
12
Было бы неплохо сделать снимок экрана с форматированным кодом, созданным выше!
Адриан Муат,
7
LaTeX завершен по Тьюрингу, его не следует закрывать ..
dcow

Ответы:

42

Пакет списков довольно приятный и очень гибкий (например, разные размеры для комментариев и кода).

Фабиан Стиг
источник
18

Оказывается, lstlistingон умеет красиво форматировать код, но требует большой настройки.

В Wikibooks есть хороший пример параметров, которые вы можете настроить.

Эд Джеймс
источник
2

Для простых документов я иногда использую дословно, но листинг хорош для больших фрагментов кода.

CLAF
источник