LINUX.ORG.RU

Цвет русского текста в листингах

 ,


0

2

Debian 7, texlive-full Version: 2012.20120611-5.
Используются следующие настройки:

\usepackage{cmap}
\usepackage[utf8x]{inputenc}                        
\usepackage[TS1,T2A]{fontenc}                   
\usepackage[english, russian]{babel}
\usepackage{listings}

\lstset{
    inputencoding=utf8x,
    extendedchars=false,
    ...
}

Вставка кода:

\lstinputlisting[language=C++ ...]

Проблема в том, что русские буквы получаются черными в комментариях и тексте строк, т.е., например, commentstyle=\color{green} на них не действует. Причем, в комментарии кода C++ два слеша // зеленые, а сразу за ними идут русские буквы уже черного цвета.

Кто знает, как сделать и русские буквы тоже цветными?

Deleted

listings с русским не шибко дружит, точнее не дружит совсем ибо для него буква — это байт. Попробуй extendedchars=true

Evgueni ★★★★★
()

Для лошэкса это нормально. Привыкай. Такой вот он, гениальный продукт. Т.е. идея то была ничего, а вот реализация родом из мезозоя.

anonymous
()
Ответ на: комментарий от Y

Это примерно как с переходом с sysvinit на systemd: теоретически оно, конечно, возможно. Но практически нахрен не нужно!

Очень много чего в этом хетехе не работает. Я вообще не понимаю, на кой хрен эту гадость сделали.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Deleted

А сами исходники хоть в ней?

// но не факт, что оно заработает, если весь текст в хрюникоде

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от anonymous

Для лошэкса это нормально

ну хоть не «латекс»

comp00 ★★★★
()
Ответ на: комментарий от Eddy_Em

Просто не надо хрюникодом пользоваться!

И как ты только в интернетике без юникода уживаешься...

comp00 ★★★★
()

Не слушайте этих ретроградов, ставьте XeLaTeX и не морочьте голову. Там уже давно всё нормально работает http://rghost.net/58174602 (даже такие зубры как listings), а по функционалу он превосходит LaTeX на порядок. Касательно кодировок KOИ (и всех прочих не юникодных) — они должны издохнуть и кануть в небытие вместе с теми, кто причастен к их (а также стандартной русской раскладке клавиатуры) порождению.

anonymous
()
Ответ на: комментарий от Evgueni

А как listings с unicode за пределами ASCII подружился? Там же вроде циклы по байтам гвоздями прибиты.

Не могу знать, я в этих TeX-овских дебрях не особо разбираюсь. Когда возникает какая-нибудь задача — просто ищу готовое решение, и за последнии несколько лет я ещё не припомню случая, чтобы я такого решения не нашёл (это я применительно к XeLaTeX).

anonymous
()
Ответ на: комментарий от Evgueni

Было бы интересно глянуть на исходник примера.

Да, я собственно удалил его, но, насколько я понимаю, вас только этот момент интересует:

\begingroup
\catcode0=12 %
\makeatletter
\g@addto@macro\lst@DefEC{%
\lst@CCECUse\lst@ProcessLetter
абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ^^00}
\endgroup

anonymous
()
Ответ на: комментарий от anonymous

Меня в основном всё-таки интересует весь исходник вместе с шапкой, чтобы просто попробовать без поискового расследования. К сожалению поверхносный поиск раньше давал несколько противоречивые результаты на тему использования xelatex

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

Меня в основном всё-таки интересует весь исходник вместе с шапкой…

Ну, вроде как-то так было: http://rghost.net/58191191 Я прописал только необходимое (может даже и лишнего) для данного примера. Сам я работаю с большим внешним стилевым файлом (который собирался по кускам несколько лет), и в котором я комментирую/раскомментирую необходимые мне блоки по мере необходимости.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.