]> git.lyx.org Git - features.git/commitdiff
Add examples/listings.lyx that roughly demonstrates the use of listings features
authorBo Peng <bpeng@lyx.org>
Tue, 15 May 2007 04:01:59 +0000 (04:01 +0000)
committerBo Peng <bpeng@lyx.org>
Tue, 15 May 2007 04:01:59 +0000 (04:01 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18331 a592a061-630c-0410-9148-cb99ea01b6c8

development/scons/scons_manifest.py
lib/Makefile.am
lib/examples/listings.lyx [new file with mode: 0644]

index e107c3026efd837f374c7faa0ea881324632704f..ffd05284f99c3b3693c7c6131ea9c8a713bd0930 100644 (file)
@@ -2418,6 +2418,7 @@ lib_examples_files = Split('''
     iecc12.fen
     landslide.lyx
     listerrors.lyx
+    listings.lyx
     mathed.lyx
     modernCV.lyx
     multicol.lyx
index 98eb78c9dda55d3b07a51bb9f90f733cdc0e7731..49c0be52455d73f8b649e8b9f4f3a1edcbd2dee9 100644 (file)
@@ -205,6 +205,7 @@ dist_examples_DATA = \
        examples/iecc12.fen \
        examples/landslide.lyx \
        examples/listerrors.lyx \
+       examples/listings.lyx \
        examples/mathed.lyx \
        examples/modernCV.lyx \
        examples/multicol.lyx \
diff --git a/lib/examples/listings.lyx b/lib/examples/listings.lyx
new file mode 100644 (file)
index 0000000..ad491cf
--- /dev/null
@@ -0,0 +1,270 @@
+#LyX 1.5.0svn created this file. For more info see http://www.lyx.org/
+\lyxformat 270
+\begin_document
+\begin_header
+\textclass article
+\begin_preamble
+\usepackage{a4wide}
+\end_preamble
+\language english
+\inputencoding auto
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+\graphics default
+\float_placement H
+\paperfontsize default
+\spacing single
+\papersize default
+\use_geometry false
+\use_amsmath 1
+\use_esint 0
+\cite_engine basic
+\use_bibtopic false
+\paperorientation portrait
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\defskip medskip
+\quotes_language english
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\author "Bo Peng" 
+\end_header
+
+\begin_body
+
+\begin_layout Section
+Three types of listings
+\end_layout
+
+\begin_layout Standard
+There are three types of listings, in listings package terms:
+\end_layout
+
+\begin_layout Description
+lstinline short piece of program code like 
+\begin_inset listings
+lstparams "language=C++,basicstyle=\ttfamily,showspaces=true"
+inline true
+status open
+
+\begin_layout Standard
+
+\color foreground
+int a=5;
+\end_layout
+
+\end_inset
+
+\end_layout
+
+\begin_layout Description
+lstlisting long program listing in its own paragraphs and decorations, For
+ example, 
+\begin_inset listings
+lstparams "language=Python,numbers=left,numberstyle=\tiny,basicstyle=\ttfamily,numbersep=5pt"
+inline false
+status open
+
+\begin_layout Standard
+
+\color foreground
+def func(param):
+\end_layout
+
+\begin_layout Standard
+    'this is a python function'
+\end_layout
+
+\begin_layout Standard
+    pass
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Description
+lstinputlisting read program listing from a file.
+ Parameters can be given to list only given lines.
+ For example, the following listings list line 10 - 15 of this lyx file.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Include \lstinputlisting{listings.lyx}[firstline=10,lastline=15,language=TeX,breaklines=true,caption={Line 10 - 15 of this listings.lyx file}]
+preview false
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+How to enter listings
+\end_layout
+
+\begin_layout Standard
+Inline and normal listings are entered through listings inset (introduced
+ by lyx 1.5.0).
+ To insert a program listing, choose 
+\family typewriter
+Insert->Program Listing
+\family default
+.
+ inline listing is selected by choosing 
+\family typewriter
+inline listing 
+\family default
+in the 
+\family typewriter
+placement 
+\family default
+section.
+\end_layout
+
+\begin_layout Standard
+File listing is inserted using 
+\family typewriter
+Insert->File->Child Document
+\family default
+, and choose 
+\family typewriter
+listings 
+\family default
+from the type combo box.
+\end_layout
+
+\begin_layout Section
+Listings parameters
+\end_layout
+
+\begin_layout Standard
+The listings package is a very powerful latex packaging, providing more
+ than 130 parameters that customize the look of your program listings.
+ Lyx provides direct support for a few most commonly used parameters through
+ the listings dialog, and an 
+\family typewriter
+advanced 
+\family default
+edit box to enter all other parameters.
+\end_layout
+
+\begin_layout Subsection
+Global listings options
+\end_layout
+
+\begin_layout Standard
+It is likely that your document will have several listings of the same type
+ so it makes sense to customize all of them using global listings options.
+ To enter these options, choose 
+\family typewriter
+Document -> Settings -> Text Layouts 
+\family default
+and enter listings parameters in the given edit box.
+ The editbox to the left of the input box can provide valuable information
+ such as allowed values of a parameter but you may still need to consult
+ the listings manual for the meanings of the parameters.
+\end_layout
+
+\begin_layout Standard
+Parameters set via this dialog will output as 
+\family typewriter
+
+\backslash
+lstset 
+\family default
+in latex preamble.
+\end_layout
+
+\begin_layout Subsection
+Parameters of the listings inset
+\end_layout
+
+\begin_layout Standard
+If you right-click a listings inset, a listings dialog will be shown that
+ allows you to customize your listings.
+ The most commonly used parameters are displayed on the first tab, including
+ placement, language, numbering and basic style of the code.
+ More advanced options can be entered at the second 
+\family typewriter
+advanced 
+\family default
+tab.
+\end_layout
+
+\begin_layout Subsection
+Parameters of listings child document
+\end_layout
+
+\begin_layout Standard
+The child document dialog provides less support for commonly used listings
+ parameters so you will have to enter them manually.
+\end_layout
+
+\begin_layout Subsection
+Caption and label
+\end_layout
+
+\begin_layout Standard
+Parameters 
+\family typewriter
+caption={blah}
+\family default
+ and 
+\family typewriter
+label={blah}
+\family default
+ are handled separately from other listings parameters.
+ In the 
+\family typewriter
+Child Document 
+\family default
+dialog, caption ad label should be entered in the given caption and label
+ edit boxes.
+ In a listing inset, you can insert caption through 
+\family typewriter
+insert -> caption
+\family default
+, and 
+\family typewriter
+insert->label
+\family default
+ in the caption.
+ Explicit 
+\family typewriter
+caption
+\family default
+ and
+\family typewriter
+ label 
+\family default
+parameters entered through the 
+\family typewriter
+advanced 
+\family default
+edit box are allowed, but if both 
+\family typewriter
+insert->caption
+\family default
+ and parameter 
+\family typewriter
+caption={blah} 
+\family default
+are entered, the latter will be ignored.
+\end_layout
+
+\end_body
+\end_document