listings sa Scissor LaTeX
Bahagyang gumagana ang listings package sa Scissor LaTeX: pinapanatili ng lstlisting ang code nang eksakto gaya ng pagkakatipa at kinukulayan ito kapag ibinigay mo ang language= sa environment, at gumagana ang \lstinline; hindi pinapansin ang \lstset, line numbers, frames, captions at labels, at nilalaktawan ang \lstinputlisting.
Ano ang ginagawa ng package
Tina-typeset ng listings ang source code. Pinapanatili ng lstlisting environment ang line breaks at spaces, at gamit ang language=Python (o C, Java, SQL ...) ay inilalagay nito sa iba't ibang style ang keywords, comments at strings. Nagdadagdag ang options ng line numbers, frames, captions at kulay, bawat listing man o para sa buong dokumento gamit ang \lstset. Ang \lstinline ang inline na anyo, at binabasa ng \lstinputlisting ang code mula sa isang file.
Ano ang gumagana dito
| Feature | Sa Scissor LaTeX | Mga tala |
|---|---|---|
\begin{lstlisting} ... \end{lstlisting} | Gumagana | Monospaced, eksakto gaya ng pagkakatipa. |
[language=Python] sa environment | Gumagana | Syntax colours mula sa isang nakatakdang scheme. |
[language={[Sharp]C}] at iba pang dialect | Gumagana | Binabasa ang dialect sa brackets kasama ang pangalan. |
\lstinline|code|, \lstinline{code} | Gumagana | Monospaced, walang kulay. |
numbers=left, frame=single, basicstyle, keywordstyle, backgroundcolor | Nilalaktawan | Hindi pinapansin, walang mensahe. |
caption=, label= | Nilalaktawan | Walang caption na ipinipi-print, at "??" ang ipinapakita ng \ref sa label. |
\lstset{...}, \lstdefinestyle, style= | Nilalaktawan | Hindi pinapansin, kasama ang language= na itinakda roon. |
\lstinputlisting{file} | Hindi suportado | Nilalaktawan na may mensahe. |
\lstlistoflistings, \lstnewenvironment | Hindi suportado | Nilalaktawan na may mensahe. |
Hindi case-sensitive ang mga pangalan ng language. May kulay para sa karaniwang languages gaya ng Python, C, C++, C#, Java, JavaScript, Rust, Go, R, MATLAB, SQL, Bash, HTML at TeX. Simpleng monospaced code nang walang mensahe ang ibinibigay ng pangalang hindi kinikilala, gaya ng Fortran.
Mga halimbawa
Ibigay ang language sa bawat listing:
lstlisting na may language=Python
\begin{lstlisting}[language=Python]
def mean(values):
# average of a list of numbers
return sum(values) / len(values)
print(mean([40, 44, 48]))
\end{lstlisting}Hindi ginagamit ang language na itinakda gamit ang \lstset, kaya walang kulay ang listing na ito. Hindi rin pinapansin ang layout options gaya ng numbers at frame:
Hindi pinapansin ang \lstset
\documentclass{article}
\usepackage{listings}
\lstset{language=SQL, numbers=left, frame=single}
\begin{document}
\begin{lstlisting}
SELECT name FROM staff WHERE id = 44;
\end{lstlisting}
\begin{lstlisting}[language=SQL]
SELECT name FROM staff WHERE id = 44;
\end{lstlisting}
\end{document}Tumatanggap ng kahit anong delimiter ang inline code gamit ang \lstinline, gaya ng \verb:
\lstinline sa isang pangungusap
The loop \lstinline|for i in range(44):| runs 44 times, and
\lstinline{total += i} adds up the numbers.Listing na may caption sa loob ng isang figure
\begin{figure}[h]
\begin{lstlisting}[language=Python]
print(sum(range(44)))
\end{lstlisting}
\caption{Adding the numbers below 44}
\label{lst:sum}
\end{figure}
The code in Listing~\ref{lst:sum} prints 946.Compatibility
- Mula sa isang TeX installation papunta rito: ipinapakita ang code ng bawat
lstlisting. Ilipat anglanguage=mula sa\lstsetpapunta sa bawat listing para magkaroon ng kulay, at i-paste sa dokumento ang code mula sa\lstinputlistingfiles. - Mula rito papunta sa isang TeX installation: nagko-compile doon ang mga dokumento nang walang binabago, at ilalapat na ang options mo.
Nasa CTAN ang buong manual: ctan.org/pkg/listings. Tingnan din ang Code listings sa LaTeX at minted.
Mga tanong at sagot
Bakit walang kulay ang listings ko?
Malamang na itinakda ang language gamit ang \lstset, na hindi pinapansin dito. Isulat ang [language=Python] (o ang language mo) pagkatapos ng \begin{lstlisting}.
Puwede ba akong magpakita ng line numbers?
Hindi pa. Tinatanggap at hindi pinapansin ang numbers=left.
Bawat halimbawa sa page na ito ay tina-typeset ng Scissor LaTeX kapag binubuo ang site. Huling na-update noong 2026-11-07.