Q. Есть ли какие-либо пакеты для подсветки синтаксиса языков программирования, для Java, например (чтобы были красивые листинги)?
A [Evgenij M. Baldin]. Пакет listings - читать по нему документацию. Если пакет в дистрибутиве старше 2ух лет, то необходимо обновить его.
В преамбуле я добавляю:
\usepackage{listings}
\lstloadlanguages{C,[ANSI]C++,Clean,make,Fortran}%Загружаемые языки
\lstset{extendedchars=true, %Чтобы русские буквы в комментариях были
commentstyle=\it,
stringstyle=\bf,
language=Fortran, %Язык по умолчанию
belowcaptionskip=5pt}
\renewcommand{\lstlistingname}{Распечатка \No}
Из отрицательных особенностей - не дружит с latex2html (окружение lstlistings выдаётся как картинка, а не текст). Приходится дорабатывать напильником (благо это не сложно - ищем слово verbatim в коде latex2html и рядом ставим lstlistings).
Q [Leonid Edrenkin]. Разобрался с пакетом Listings. Все, кто посоветовал - большое спасибо. Вот только русские комментарии в листинге Listings “не видит”. Т.е. форматирует их не как commentstyle, а форматирует как basicstyle, при этом убирая первый пробел с начала комментария и добавляя один в конец =(( получается что-то типа:
int a = 0; /*это кривой комменарий */
Кто-нибудь решил эту проблему?
A [Evgenij M. Baldin]. В преамбулу \lstset{extendedchars=true}
Q [Alexey Tomin]. Как включить листинг программы из внешнего файла? Как вообще импортировать внешний файл программы без его правки (чтобы \ и т.д. не мешали)? Моноширинный шрифт не обязателен. Важны только переносы.
A [Ivan Boldyrev].
1.
\lstinputlisting{file.pas}
2.
\usepackage{verbatim}
...
\verbatiminput{file}