- Questo topic ha 5 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 14 anni, 9 mesi fa da .
-
Topic
-
Ciao a tutti,
sto scrivendo una relazione di Matematica Computazionale e ho diversi codici prodotti con MatLab da inserire. Come da ottima guida di Lorenzo utilizzo il pacchetto listings con diverse opzioni (trovate sul web) per ottimizzare la grafica (trovato quì e mi pare davvero un bel lavoro)! A questo punto inserisco i listati nel mio documento direttamente dal file originale con l’utilizzo di \lstinputlisting. Nel caso che il codice oltrepassi la fine pagina si riporta egregiamente e autonomamente a pagina nuova… finché non si chiede che l’oggetto sia fluttuante. Infatti se inserisco `\lstinputlisting[float=htbp]{…}` (l’argomento di float è ininfluente e impostato consolo per esempio) per far si che il LaTeX ottimizzi la disposizione dei codici senza farlo io (che non sono competente in materia :-)) allora ecco che non va più a capo. Il problema si verifica, ovviamente, quando un singolo codice occupa più di una pagina. C’è soluzione? Cioè è possibile chiedere a listings di mandare i codici a pagina nuova, se necessario, e contemporaneamente fare in modo che LaTeX li disponga dove meglio crede lui?
Ps. per ora ho risolto il problema togliendo qualche linea di commento dai codici e scrivendo più linee in una sola, in modo da fare in modo che il problema non si verifichi. I prossimi codici che scriverò però, visto che non li ho ancora scritti, non so se mi permetteranno questo trucchetto..oltre al fatto che credo sia un’utile informazione per tutti.Non credo serva ma riporto comunque il mio preambolo.
`\documentclass[12pt,
a4paper,twoside,openright,
notitlepage,
fleqn ,
%draft
]{report}\usepackage[T1]{fontenc}
\usepackage[applemac]{inputenc}
\usepackage[english,italian]{babel}
\usepackage[babel]{csquotes}
\usepackage[useprefix,
style=alphabetic,
babel=hyphen,
backref,
backend=bibtex8,
hyperref,
]{biblatex}
\bibliography{Bibliografia}
%\DeclareBibliographyCategory{basi} %crea una sottosezione della bibliografia “basi''
%\addtocategory{basi}{riferimento1,riferimento2,…} %inserisce voci in quella sezione
%\defbibheading{basi}{\subsection*{Bibliografia essenziale} %da il titolo a quella sottobibliografia (\section* se report)
%\DeclareBibliographyCategory{approf} %seconda sottobibliografia….e così via
%\addtocategory{basi}{riferimento1,riferimento2,…}
%\defbibheading{approf}{\subsection*{Letture d'approfondimento}}
%\defbibheading{cartaceo}{\subsection*{Manuali cartacei}} %SENZA DeclareBibliographyCategory né addtocategory
%\defbibheading{web}{\subsection*{Siti Web consultati}} %\usepackage{makeidx}
\usepackage[binding=7mm]{layaureo}
\usepackage{microtype}
\usepackage{pdfpages}
\usepackage{epstopdf}
\usepackage{graphicx}
\usepackage{indentfirst}\usepackage{amsmath,amsfonts,amssymb,amsthm,mathrsfs,amscd}
\usepackage[colorlinks,hyperindex,linkcolor=black,citecolor=black,bookmarks=false,hyperfootnotes=true]{hyperref}
\hypersetup{
pdftitle={MioTitolo},
pdfauthor={Corrado Lanera},
pdfsubject={MioSoggetto}
pdfkeywords={MieChiavi}}\usepackage[italian]{varioref}
\usepackage{multicol} %multicolonne in corpo \begin{multicols}{
} \emd{multicols} \usepackage{syntonly} %permette il controllo della sintassi LaTeX senza produrre output
\syntaxonly %commentare o meno per non farlo o farlo funzionare\usepackage{xspace} %con \xspace si ottiene uno spazio solo se dopo non c'è un segno di interpunzione ovvero dove serve, se serve
\usepackage{guit} %\GuIT \GuIT* \Ars (il secondo è colorato il primo no)
\usepackage{eurosym} %\euro (simbolo)
\usepackage{lipsum} %\lipsum[n] genera n paragrafi di testo finto\usepackage{mparhack} %elimina difetti note a margine \marginpar{}
\usepackage{footnote} %abilita piè di pagina \footnote{} (DOPO il punto fermo!)
\usepackage{epigraph} %\epigraph{}{ \\ } \usepackage{listings}
\usepackage{color}
\usepackage{textcomp}
\definecolor{listinggray}{gray}{0.9}
\definecolor{lbcolor}{rgb}{0.9,0.9,0.9}
\lstset{
backgroundcolor=\color{lbcolor},
tabsize=4,
rulecolor=,
language=Matlab,
basicstyle=\scriptsize,
upquote=true,
aboveskip={1.5\baselineskip},
columns=fixed,
showstringspaces=false,
extendedchars=true,
breaklines=true,
prebreak = \raisebox{0ex}[0ex][0ex]{\ensuremath{\hookleftarrow}},
frame=single,
showtabs=false,
showspaces=false,
showstringspaces=false,
identifierstyle=\ttfamily,
keywordstyle=\color[rgb]{0,0,1},
commentstyle=\color[rgb]{0.133,0.545,0.133},
stringstyle=\color[rgb]{0.627,0.126,0.941},
numbers=left,
breakatwhitespace=false, % sets if automatic breaks should only happen at whitespace
escapeinside={&!}{!&}
}
\addto\captionsitalian{%
\renewcommand{\lstlistingname}{Codice}}
\addto\captionsitalian{%
\renewcommand{\lstlistlistingname}{Elenco dei codici}}\graphicspath{{./figure/}} %indirizzo immagini
\newcommand{\inglese}[1]{\foreignlanguage{english}{#1}} %\inglese{
}
\newcommand{\mail}[1]{\href{mailto:#1}{\texttt{#1}}} %\mail{} (per e-mail)
%\url{} (per percorso web o file)
\newcommand{\N}{\mathbb{N}}
\newcommand{\Z}{\mathbb{Z}}
\newcommand{\Q}{\mathbb{Q}}
\newcommand{\R}{\mathbb{R}}
\newcommand{\C}{\mathbb{C}}
\newcommand{\registered}{$^{\text{\textregistered}}$\xspace}\newcommand{\X}{\mathcal{X}}
\newcommand{\W}{\mathcal{W}}\newenvironment{citazione} %\begin{citazione}…\end{citazione} solo per lunghe citazioni
{\begin{quotation}\small} %<> dentro il testo
{\end{quotation}} %\quote fuori testo ma brevi (elimina l'indentazione prima riga)\theoremstyle{plain}
\newtheorem{teorema}{Teorema}[chapter] %[chapter] nei report e nei book, [section] nell'article
\newtheorem{proposizione}[teorema]{Proposizione}
\newtheorem{lemma}[teorema]{Lemma}
\newtheorem{corollario}[teorema]{Corollario}
\newtheorem{tesi}[teorema]{Tesi}\theoremstyle{definition}
\newtheorem{definizione}[teorema]{Definizione}
\newtheorem{definizioni}[teorema]{Definizioni}
\newtheorem{notazione}[teorema]{Notazione}
\newtheorem{notazioni}[teorema]{Notazioni}
\newtheorem{esempio}[teorema]{Esempio}
\newtheorem{esercizio}[teorema]{Esercizio}
\newenvironment{soluzione}{\begin{proof}[Soluzione]}{\qedhere\end{proof}}\theoremstyle{remark}
\newtheorem{osservazione}[teorema]{Osservazione}
\newtheorem{osservazioni}[teorema]{Osservazioni}
\newtheorem{nota}[teorema]{Nota}
\newtheorem{note}[teorema]{Note}
`
ps: è (come) possibile inserire un “\listpath” analogo a \graphicpath?Grazie mille.
Corrado.
- Devi essere connesso per rispondere a questo topic.