Szukam pakietu LaTeX, który wykonuje podświetlanie składni w kodzie. Na przykład teraz używam bloku verbatim do pisania kodu:
\begin{verbatim}
<html>
<head>
<title>Hello</title>
</head>
<body>Hello</body>
</html>
\end{verbatim}
I to działa dobrze, aby wyświetlić kod w moim dokumencie. Ale przypuśćmy, że chciałbym podkreślić znaczniki HTML tak, jak IDE w dokumencie wyjściowym? Czy jest pakiet, który mógłby pomóc?
Chciałbym zrobić to samo dla różnych języków, takich jak Java, C #, HTML, CSS i tak dalej.
lstlisting
. W ogóle nie podświetla kodu XML i nie działa, gdy używa się obcych znaków Unicode. Wygląda na to, że JavaScript również nie jest obsługiwany. Czy LGrind poradzi sobie z takimi rzeczami?Odpowiedzi:
Możesz skorzystać z pakietu aukcji . Obsługuje wiele różnych języków i istnieje wiele opcji dostosowywania wyników.
źródło
Po zadaniu podobnego pytania stworzyłem kolejny pakiet, który używa Pygments i oferuje o wiele więcej opcji niż
texments
. Nazywa sięminted
i jest dość stabilny i użyteczny.Aby to pokazać, oto kod wyróżniony wybitym:
źródło
PATH
zmienną i stworzyć skrypt cmd). Mam nadzieję, że przekonam opiekunów Pygments do wysyłkipygmentize
z.exe
opakowaniem, które ułatwi ten krok.minted
jest zainstalowany i działa zarówno na ShareLatex, jak i Overleaf. Oszczędź sobie bólu głowy związanego z instalacją Pygments;)Polecam Pygments . Akceptuje fragment kodu w dowolnym języku i wyświetla kod LaTeX z podświetloną składnią. Używa fantazyjnych pakietów kolorystycznych i kolorowych do tworzenia swoich wydruków. Osobiście wolę to od pakietu aukcji. Myślę, że fancyvrb daje dużo ładniejsze rezultaty.
źródło
beamer
dokumencie typu jest to najwyraźniej jedyna funkcjonalna opcja. Animinted
nielistings
kompiluj poprawnie zbeamer
.listings
zbeamer
, ale musisz określić, że ramki zawierające aukcje są[fragile]
.LGrind to robi. Jest to dojrzały pakiet LaTeX, który istnieje od czasu, gdy Adam był kowbojem i obsługuje wiele języków programowania.
źródło
Chciałbym użyć wybite pakiet jak wspomniano od dewelopera Konrad Rudolph zamiast pakietu notowań . Oto dlaczego:
pakiet aukcji
Pakiet aukcji domyślnie nie obsługuje kolorów. Aby użyć kolorów, musisz dołączyć pakiet kolorów i samodzielnie zdefiniować reguły kolorów za pomocą polecenia \ lstset, jak wyjaśniono tutaj dla kodu Matlab .
Ponadto pakiet aukcji nie działa dobrze z Unicode, ale możesz rozwiązać te problemy, jak wyjaśniono tutaj i tutaj .
Poniższy kod
tworzy następujący obraz:
pakiet wybity
Pakiet wybity obsługuje kolory, Unicode i wygląda niesamowicie. Jednak aby z niego skorzystać, musisz mieć pythona 2.6 i pygments . W Ubuntu możesz sprawdzić swoją wersję Pythona w terminalu za pomocą
i możesz zainstalować pygments z
Następnie, ponieważ minted wywołuje pygments, musisz skompilować go za pomocą -shell-escape w ten sposób
Jeśli używasz edytora lateksowego, takiego jak TexMaker lub coś w tym rodzaju, zalecałbym dodanie polecenia użytkownika, aby nadal można było je skompilować w edytorze.
Poniższy kod
tworzy następujący obraz:
źródło
Przeważnie używam lstlistings w papierach, ale do kolorowych wydruków (do slajdów) używam zamiast tego pigmentów.
źródło
Sugerowałbym zdefiniowanie własnego pakietu na podstawie poniższego kodu tex; daje to pełną swobodę. http://ubuntuforums.org/archive/index.php/t-331602.html
źródło