arXiv

2015-11-24 50 views
5
için Lua sözdizimi vurgulama lateksi

Lua kod snippet'lerini (yürütme için değil) görüntülemek için gereken bir lateks dosyasına sahibim, bu yüzden minted paketini kullandım. latex -shell-escape bayrağıyla çalıştırılmak için lateks gerektirir.arXiv

PDF gönderimini arXiv adresine yüklemeye çalışıyorum. Site, bunların, lateks'ten PDF'ye otomatik olarak derlenecekleri .tex, .sty ve .bbl olarak gönderilmesini gerektirir. ArXiv'e göndermeye çalıştığımda, -shell-escape bayrağını aktive etmenin bir yolu olmadığını öğrendim.

Herhangi biriniz, -shell-escape bayrağı olmadan Lateks'teki Lua kodunu vurgulamanın bir yolunu biliyor mu diye merak ediyordum. Listeleme paketini denedim, ancak Ubuntu bilgisayarımda Lua için çalışmaya başlayamıyorum.

+1

deneyin [GNU Kaynak-highlight] (http: //www.gnu Lua girişi ve LaTeX çıktısını destekleyen .org/software/src-highlite /). – lhf

+2

Ayrıca http://tex.stackexchange.com adresini de deneyin. – lhf

cevap

5

listings'u kullanarak satır içi istediğiniz stili ayarlayabilirsiniz. Bu Lua dil tüm anahtar kelimeler ve ilişkili stilleri belirlemiştir önceden tanımlanmış, bu yüzden sadece kendi ihtiyaçlarını karşılamak için değiştirebilirsiniz:

enter image description here

\documentclass{article} 

\usepackage{listings,xcolor} 

\lstdefinestyle{lua}{ 
    language=[5.1]Lua, 
    basicstyle=\ttfamily, 
    keywordstyle=\color{magenta}, 
    stringstyle=\color{blue}, 
    commentstyle=\color{black!50} 
} 

\begin{document} 

\begin{lstlisting}[style=lua] 
-- defines a factorial function 
    function fact (n) 
     if n == 0 then 
     return 1 
     else 
     return n * fact(n-1) 
     end 
    end 

    print("enter a number:") 
    a = io.read("*number")  -- read a number 
    print(fact(a)) 
\end{lstlisting} 

\end{document} 
3

lhfGNU source-hightlight paketini önererek iyi bir çözüm bulundu. Temelde uygun şekilde adlandırılmış [snippet].lua dosyaya koydu, lateks dosyasından lua kodunun her pasajını çıkardı ve bir [snippet]-lua.tex üretmek için üzerine aşağıdaki koştum:

source-highlight -s lua -f latex -i [snippet].lua -o [snippet]-lua.tex

Sonra içine her tür dosyayı dahil kullanarak ana lateks dosyası:

\input{[snippet]-lua}

sonuç gerçekten basılmış paketin o kadar güzel değil ama ...

basılan destekleyen etmek arXiv yönetici ikna etmeye çalışıyor bıktım