Мені потрібно виділити вихідний код у LaTeX. Пакет, listingsздається, є найкращим вибором для більшості випадків використання, і для мене це було досі.
Однак зараз мені потрібна більша гнучкість. Взагалі те, що я шукаю, - це справжній лексер. Зокрема, мені потрібно (для власного визначення мови) визначити (і виділити!) Власні стилі чисел. listingsне дозволяє виділити числа в коді. Однак мені потрібно створити щось подібне:

listingsтакож не може впоратися з довільними роздільниками для рядків. Розглянемо наступний дійсний код Ruby:
s = %q!this is a string.!
Тут !можна замінити практично будь-який роздільник.
(Це listingsне вдається вирішити Unicode також дуже неприємно, але це інша проблема.)
В ідеалі я шукаю розширення, listingsяке дозволяє мені надати більш складні правила лексингу. Але забороняючи це, я також шукаю життєздатні альтернативи.
Інші потоки запропонували використовувати Pygments, які можуть виробляти вихід LaTeX. Є навіть пакет - texments- щоб полегшити перехід.
Однак у цьому гостро не вистачає можливостей. Зокрема, мене цікавлять listingsнумерація рядків -style, посилання на рядок вихідного коду та можливість вбудовування LaTeX у вихідний код (параметри texclта mathescapeв listings).
Як приклад, ось набір вихідного коду, в listingsякому показано деякі речі, які також повинна забезпечувати заміна:
["Бічне доповнення", змінене з біт-твінглінг-хаків]
