Jak wstawić kod do dokumentu LaTeX? Czy istnieje coś takiego:
\begin{code}## Heading ##
...
\end{code}
Jedyne, czego naprawdę potrzebuję, to wcięcie i czcionka o stałej szerokości. Podświetlanie składni może być przyjemne, chociaż zdecydowanie nie jest wymagane.
Odpowiedzi:
Użyj
listings
pakietu.Prosta konfiguracja nagłówka LaTeX (wcześniej
\begin{document}
):Możesz zmienić domyślny język w środku dokumentu za pomocą
\lstset{language=Java}
.Przykład użycia w dokumencie:
Oto wynik:
źródło
figure
może osiągnąć efekt.Możesz także użyć pełnego środowiska
źródło
Oto jak dodać kod wbudowany:
Możesz dodać kod wewnętrzny za pomocą
{\tt code }
lub\texttt{ code }
. Jeśli chcesz sformatować kod wbudowany, najlepiej byłoby wykonać własne polecenieNależy również pamiętać, że bloki kodu można ładować z innych plików za pomocą
breaklines
nie jest wymagane, ale uznaję to za przydatne. Pamiętaj, że musisz podać\usepackage{
oferty}
dla tego.Aktualizacja: Pakiet list zawiera również
\lstinline
polecenie, które ma tę samą funkcję podświetlania składni, co polecenia\lstlisting
i\lstinputlisting
(szczegóły konfiguracji można znaleźć w odpowiedzi Cloudanger). Jak wspomniano w kilku innych odpowiedziach, istnieje również wybity pakiet, który udostępnia\mintinline
polecenie. Podobnie\lstinline
,\mintinline
zapewnia tę samą podświetlanie składni, co zwykły wybity blok kodu:źródło
Specjalistyczne pakiety, takie jak
minted
, które bazują na Pygments do formatowania, oferują różne zalety w stosunku dolistings
pakietu. Aby zacytować zminted
instrukcji,źródło
-shell-escape
dyrektywy jest w najlepszym razie niewielką modyfikacją istniejących systemów kompilacji, aw najgorszym przypadku niezgodny z preferencjami bezpieczeństwa niektórych użytkowników.Użyj Minted .
Jest to pakiet, który ułatwia ekspresyjne podświetlanie składni w LaTeX za pomocą potężnej biblioteki Pygments . Pakiet zawiera również opcje dostosowania podświetlonego kodu źródłowego za pomocą fancyvrb .
Jest znacznie bardziej rozwinięty i konfigurowalny niż jakikolwiek inny pakiet!
źródło
-shell-escape
może być do dupy dla niektórych osób.Minted działa w Overleaf , TeX Live i MiKTeX.
Przykład:
Wynik:
źródło
Ponieważ nie zostało to jeszcze wspomniane, warto dodać jeszcze jedną opcję, pakiet
spverbatim
(bez podświetlania składni):Ponadto, jeśli podświetlanie składni nie jest wymagane, spakuj
alltt
:źródło
Używaj Pigmejów !
źródło