Risposte nei forum create
-
AutoreRisposte
-
::
Marco87″ post=66958Ciao.
@Claudio: come si carica unicodemath? Io ho fatto così:\usepackage{unicodemath}
ma mi viene dato l’errore:
! LaTeX Error: File ‘unicodemath.sty’ not found
In realtà dopo aver visto le formule di pagina 9 della documentazione di mathspec mi sono convinto che non userò quei caratteri; forse non tanto per la resa, ma perché, per esempio, tutti gli spazi tra un carattere e l’esponente vanno esplicitati manualmente. Il carattere Sabon non mi dispiace affatto, ma dovrei trovare anche un carattere matematico adatto.
@Enrico: Ho riprovato con la bibliografia, e ora non ottengo errori; ti ringrazio. Posso chiederti che cosa non ti sembra brillante? L’impaginazione? I caratteri scelti? La combinazione dei caratteri? (Io certo non userei i colori).Ho scoperto che, non potendo caricare babel, XeLaTeX non dispone dei comandi \ap e \ped, che ritengo utilissimi. Dovrei rinunciare ad altro (oltre al già citato microtype) se decidessi di scrivere compilando con XeLaTeX? Vale la pena usare XeLaTeX per una tesi, oppure rischio di fare un pasticcio?
Grazie mille e buona serata,
Marco.\usepackage{unicode-math}
Se hai matematica “seria”, nel senso di parecchie formule, mathspec è del tutto inadatto perché le lettere nelle formule vanno (quasi) tutte aggiustate manualmente. Un carattere matematico non può essere solo “simile”: o è studiato per essere del tutto compatibile oppure è completamente diverso, come Euler.
I comandi \ap e \ped sono facilmente sostituibili:
`\usepackage{fixltx2e}
\let\ap\textsuperscript
\let\ped\textsubscript`Quel manuale non è terribile, certo. Ma con l’uso intenso di maiuscoletto e maiuscolo avrebbe dovuto pensare di spaziarli. I colori? Ahimè. 🙂 Ma è un manuale e aveva bisogno di mettere in evidenza alcune cose.
Ciao
Enrico
::Sam Qasbah” post=66942
… sono i pacchetti “x”: xparse e xcoffin… Ma per il livello “tipografico” c’è ancora parecchio da fare.
Magari cambiare il nome di quel pacchetto. Di cattivo gusto è dir poco.
L’ho chiesto anch’io, ma pare che sia un termine in uso nell’ambiente grafico. 🙂
Ciao
Enrico
::robitex” post=66936LaTeX3 è ormai giunto ad un punto in cui il progetto si è consolidato (almeno così mi sembra).
Volevo chiedere se una volta completato il kernel, che consiste nella nuova e completa interfaccia verso TeX, gli sviluppatori dovranno ancora scrivere le macro di composizione, oppure il progetto prevede il rilascio di LaTeX3 completo dei componenti tipografici (ambienti per verbatim, multi colonne, itemize ecc).Ve lo chiedo perché ho l’impressione che i pacchetti sperimentali siano tutti rivolti a costruire elementi per la programmazione tipografica, e quindi per gli Autori di classi e pacchetti, e non per l’utente finale.
Se mi sbaglio, LaTeX3 sta invece nascendo completo e pronto per la sostituzione di LaTeX2e.Per ora gli sviluppatori si stanno concentrando sul livello della programmazione; ma c’è già qualcosa al livello intermedio, sono i pacchetti “x”: xparse e xcoffin, per esempio. Esiste anche una versione sperimentale di xor (output routine). Ma per il livello “tipografico” c’è ancora parecchio da fare.
Ciao
Enrico
::
Dovrebbe essere sufficiente definirsi un nuovo ambiente listing:
`\lstnewenvironment{Output}[1][]
{\renewcommand{\lstlistingname}{Output}\lstset{#1}}
{}`
e poi, nel documento,
`\begin{Output}[float=htb,frame=trBL,caption={LaSolitaCaption_ChePeròVorreiIniziasseConOUTPUT_n.m+1:},label={output:buttafuori},numbers=none]
…
\end{Output}`
Ciao
Enrico
::lorenzo.pantieri” post=66929Dunque ragazzi, apro un concorso a premi. Il problema è ridefinire i comandi standard in modo da riprodurre gli esempi dell’Arte del capitolo Bibliografia.
Un esempio:
`\documentclass{scrreprt}
\usepackage[writefile]{listings}
\usepackage{biblatex}
\usepackage[listings]{classicthesis}
\usepackage{guit}\lstset{extendedchars}
\makeatletter
\lstnewenvironment{sidebyside}{%
\global\let\lst@intname\@empty
\setbox\z@=\hbox\bgroup
\setkeys{lst}{columns=fullflexible,%
linewidth=0.45\linewidth,keepspaces=true,%
breaklines=false,%
breakindent=0pt,%
boxpos=t,%
basicstyle=\small\ttfamily
}%
\lst@BeginAlsoWriteFile{\jobname.tmp}%
}{%
\lst@EndWriteFile\egroup
\begin{center}%
\begin{minipage}{0.45\linewidth}%
\hbox to\linewidth{\box\z@\hss}
\end{minipage}%
\qquad
\begin{minipage}{0.45\linewidth}%
\setkeys{lst}{frame=none}%
\leavevmode \catcode`\^^M=5\relax
\small\input{\jobname.tmp}%
\end{minipage}%
\end{center}%
}
\makeatother\begin{document}
\renewcommand{\cite}[1]{[{\color{webgreen}1}]}
\begin{sidebyside}
Si veda~\cite{eco:tesi} per
maggiori dettagli.
\end{sidebyside}\renewcommand{\cite}[2][]{[{\color{webgreen}1},~#1]}
\begin{sidebyside}
Si veda~\cite[p.~7]{eco:tesi}
per maggiori dettagli.
\end{sidebyside}\renewcommand{\cite}[2][]{[{\color{webgreen}1},~#1]}
\begin{sidebyside}
Si veda~\cite[p.~7]{eco:tesi}
per maggiori dettagli.
\end{sidebyside}\renewcommand{\parencite}[1]{(Eco, {\color{webgreen}1977}; Mori {\color{webgreen}2007a,b})}
\begin{sidebyside}
\parencite{mori:poesie,
eco:tesi,mori:tesi}
\end{sidebyside}\renewcommand{\parencite}[1]{[{\color{webgreen}1}–{\color{webgreen}3}]}
\begin{sidebyside}
\parencite{mori:poesie,
eco:tesi,mori:tesi}
\end{sidebyside}\end{document}
%\renewenvironment{thebibliography} ???
\begin{sidebyside}
\begin{thebibliography}{9}
\bibitem{eco:tesi}
Eco, Umberto (1977),
\emph{Come si fa una tesi di
laurea}, Bompiani, Milano.
\bibitem{mori:tesi}
Mori, Lapo Filippo (2007),
“Scrivere la tesi di laurea
con \LaTeXe”, \Ars~(3).
\end{thebibliography}
\end{sidebyside}%\renewcommand{\cite} ???
\begin{sidebyside}
\cite{eco:tesi} \\
\cite[5]{eco:tesi} \\
\cite[5-9]{eco:tesi} \\
\cite[vedi][]{eco:tesi} \\
\cite[vedi][5]{eco:tesi}
\end{sidebyside}%\renewcommand{\cite} ???
\begin{sidebyside}
\cite{eco:tesi} \\
\cite[5]{eco:tesi} \\
\cite[5-9]{eco:tesi} \\
\cite[vedi][]{eco:tesi} \\
\cite[vedi][5]{eco:tesi}
\end{sidebyside}`
Ricchi premi a chi riuscirà a ridefinire thebibliography e \cite in modo da riprodurre il codice alle pagine 107 e 117 dell’Arte.`\documentclass{scrreprt}
\usepackage[writefile]{listings}
\usepackage{enumitem}
\usepackage{biblatex}
\usepackage[listings]{classicthesis}
\usepackage{guit}
\usepackage{xparse}\NewDocumentCommand{\fakecite}{oom}
{\IfNoValueTF{#2}{\fakecitei{#1}}{\fakeciteii{#1}{#2}}}
\NewDocumentCommand{\fakecitei}{>{\SplitArgument{1}{-}}m}
{\IfNoValueTF{#1}{[{\color{webgreen}1}]}{[{\color{webgreen}1}\fakenumbers#1]}}
\NewDocumentCommand{\fakeciteii}{m>{\SplitArgument{1}{-}}m}
{[#1\space{\color{webgreen}1}\fakenumbers#2]}
\NewDocumentCommand{\fakenumbers}{mm}
{\IfNoValueTF{#2}
{\if\relax\detokenize{#1}\relax\else, p. #1\fi}
{, pp. #1–#2}}\lstset{extendedchars}
\makeatletter
\lstnewenvironment{sidebyside}{%
\global\let\lst@intname\@empty
\setbox\z@=\hbox\bgroup
\setkeys{lst}{columns=fullflexible,%
linewidth=0.45\linewidth,keepspaces=true,%
breaklines=false,%
breakindent=0pt,%
boxpos=t,%
basicstyle=\small\ttfamily
}%
\lst@BeginAlsoWriteFile{\jobname.tmp}%
}{%
\lst@EndWriteFile\egroup
\begin{center}%
\begin{minipage}{0.45\linewidth}%
\hbox to\linewidth{\box\z@\hss}
\end{minipage}%
\qquad
\begin{minipage}{0.45\linewidth}%
\setkeys{lst}{frame=none}%
\leavevmode \catcode`\^^M=5\relax
\small\input{\jobname.tmp}%
\end{minipage}%
\end{center}%
}
\makeatother\begin{document}
\begingroup
\renewcommand{\cite}[1]{[{\color{webgreen}1}]}
\begin{sidebyside}
Si veda~\cite{eco:tesi} per
maggiori dettagli.
\end{sidebyside}\renewcommand{\cite}[2][]{[{\color{webgreen}1},~#1]}
\begin{sidebyside}
Si veda~\cite[p.~7]{eco:tesi}
per maggiori dettagli.
\end{sidebyside}\renewcommand{\cite}[2][]{[{\color{webgreen}1},~#1]}
\begin{sidebyside}
Si veda~\cite[p.~7]{eco:tesi}
per maggiori dettagli.
\end{sidebyside}\renewcommand{\parencite}[1]{(Eco, {\color{webgreen}1977}; Mori {\color{webgreen}2007a,b})}
\begin{sidebyside}
\parencite{mori:poesie,
eco:tesi,mori:tesi}
\end{sidebyside}\renewcommand{\parencite}[1]{[{\color{webgreen}1}–{\color{webgreen}3}]}
\begin{sidebyside}
\parencite{mori:poesie,
eco:tesi,mori:tesi}
\end{sidebyside}
\endgroup\begingroup
\renewenvironment{thebibliography}[1]
{{\Large\spacedallcaps{Bibliografia}}\vspace{3ex}
\begin{enumerate}[label={[\arabic*]},leftmargin=*,align=left]}
{\end{enumerate}}
\renewcommand{\bibitem}[1]{\item}
\begin{sidebyside}
\begin{thebibliography}{9}
\bibitem{eco:tesi}
Eco, Umberto (1977),
\emph{Come si fa una tesi di
laurea}, Bompiani, Milano.
\bibitem{mori:tesi}
Mori, Lapo Filippo (2007),
“Scrivere la tesi di laurea
con \LaTeXe”, \Ars~(3).
\end{thebibliography}
\end{sidebyside}
\endgroup\begingroup
\let\cite\fakecite
\begin{sidebyside}
\cite{eco:tesi} \\
\cite[5]{eco:tesi} \\
\cite[5-9]{eco:tesi} \\
\cite[vedi][]{eco:tesi} \\
\cite[vedi][5]{eco:tesi}
\end{sidebyside}
\endgroup\end{document}`
Ho vinto qualche cosa? 🙂Ciao
Enrico
::illinguista1972″ post=66922News.
Ora non mi si compila più nessun documento che abbia caricati i font libertine. Il messaggio dice che il pacchetto libertine è deprecato, in favore di libertineotf. Ma questi ultimi font si possono usare soltanto con XeLaTeX o LuaLaTeX.Vi risulta? Soluzioni?
Ciao
TommasoSì, risulta. Protestate.
Ciao
Enrico
::warcomeb” post=66918
[quote=”antonio.macrì” post=66912]Anche se ormai Claudio ti avrà corretto il codice, ho cercato una spiegazione per il problema della lingua. E l’ho trovata! 🙂
La causa risiede nel fatto che ciascun pacchetto (quindi anche babel) analizza prima le opzioni della classe e poi quelle passate al pacchetto stesso. Il risultato è che, passando italian alla classe, babel legge per prima l’opzione italian. Successivamente, analizzando le opzioni passate a babel stesso, legge english e poi di nuovo italian. Ma siccome aveva già letto italian, la ignora, e di conseguenza l’ultima lingua specificata rimane english. Così succede esattamente l’opposto di quel che si vorrebbe. Una soluzione è usare specificare esplicitamente la lingua principale, ma questo va fatto attraverso \AtBeginDocument o simili (perché babel di suo lo fa tramite \AtBeginDocument e quindi bisogna “sovrascriverlo”):
`\RequirePackage[italian,english]{babel}\ifthenelse{\boolean{univpm@english}}
{
\AtBeginDocument{\selectlanguage{english}}
}
{
\AtBeginDocument{\selectlanguage{italian}}
\RequirePackage{indentfirst}
}`
Nota che non serve mettere RequirePackage dentro l’ifthenelse (e non servono nemmeno quei %, ma vabbè è un dettaglio).Ciao,
AntonioUna classe non deve mai prevedere supporto esplicito per una o più lingue; oppure deve vietare l’uso di lingue non previste.
Solo così si evitano i pasticci di questo tipo. Vedi anche pagina 7 di questo articolo su PracTeX
Sconsiglio vivamente di usare ifthen.
Ciao
EnricoEnrico quindi come si dovrebbe fare per il frontespizio che può essere solo in italiano o in inglese? se non specificassi la possibilità di usare solo queste due lingue quale sarebbe l’alternativa?
Grazie
Marco[/quote]
Usare nomi di opzioni che non siano “english” o “italian”. Oppure modificare il codice proposto da Antonio:
`\ifunivpm@english
\AtBeginDocument{\selectlanguage{english}}
\fi
\ifunivpm@italian
\AtBeginDocument{\selectlanguage{italian}}
\RequirePackage{indentfirst}
\fi`
in modo che se uno sceglie un’altra lingua come base non ci siano problemi.Analogamente non si deve mai mettere in una classe il caricamento di inputenc.
Ciao
Enrico
::antonio.macrì” post=66912Anche se ormai Claudio ti avrà corretto il codice, ho cercato una spiegazione per il problema della lingua. E l’ho trovata! 🙂
La causa risiede nel fatto che ciascun pacchetto (quindi anche babel) analizza prima le opzioni della classe e poi quelle passate al pacchetto stesso. Il risultato è che, passando italian alla classe, babel legge per prima l’opzione italian. Successivamente, analizzando le opzioni passate a babel stesso, legge english e poi di nuovo italian. Ma siccome aveva già letto italian, la ignora, e di conseguenza l’ultima lingua specificata rimane english. Così succede esattamente l’opposto di quel che si vorrebbe. Una soluzione è usare specificare esplicitamente la lingua principale, ma questo va fatto attraverso \AtBeginDocument o simili (perché babel di suo lo fa tramite \AtBeginDocument e quindi bisogna “sovrascriverlo”):
`\RequirePackage[italian,english]{babel}\ifthenelse{\boolean{univpm@english}}
{
\AtBeginDocument{\selectlanguage{english}}
}
{
\AtBeginDocument{\selectlanguage{italian}}
\RequirePackage{indentfirst}
}`
Nota che non serve mettere RequirePackage dentro l’ifthenelse (e non servono nemmeno quei %, ma vabbè è un dettaglio).Ciao,
AntonioUna classe non deve mai prevedere supporto esplicito per una o più lingue; oppure deve vietare l’uso di lingue non previste.
Solo così si evitano i pasticci di questo tipo. Vedi anche pagina 7 di questo articolo su PracTeX
Sconsiglio vivamente di usare ifthen.
Ciao
Enrico
::deer” post=66909Grazie, non sarei mai riuscito da solo ad escogitare una cosa simile. Posso solo immaginare quanto io stia sottoutilizzando LaTeX!
Tuttavia, c’è un’ulteriore modifica che vorrei apportare. Quando ho necessità di citare soltanto il numero dell’articolo, senza il comma,
ho bisogno che la virgola fra numero e codice scompaia. Mi spiego. Non così: “art. 564, c.c.”; ma così: “art. 564 c.c.”.
C’è qualche incantesimo anche per questo? Grazie!Cambia così:
`\makeatletter
\NewDocumentCommand{\cccpc}{msmo}
{\IfBooleanTF{#2}{\textbf}{\@firstofone}%
{art.~#3\IfNoValueF{#4}{, co.~#4,}~#1}%
}
\makeatother`
Noterai che non c’è ~ fra la virgola e “co.”: meglio così che forzare tutto sulla stessa riga. Non è certo sbagliato avereart. 2897,
co. 111, c.c.e ti faciliterà il lavoro.
Ciao
Enrico
::
`\usepackage{xparse}\makeatletter
\NewDocumentCommand{\cccpc}{msmo}
{\IfBooleanTF{#2}{\textbf}{\@firstofone}%
{art.~#3,\IfNoValueF{#4}{ co.~#4,}~#1}%
}
\makeatother
\newcommand{\cc}{\cccpc{c.c.}}
\newcommand{\cpc}{\cccpc{c.p.c.}}\begin{document}
\`E molto importante conoscere l'\cc*{2}[3]; meno importanti sono
l'\cc{2211}[11] e l'\cc{212222}.
\end{document}`
Con l’aiuto di xparse è più facile costruire comandi con variante asterisco e con argomenti opzionali. Definisco dunque un comando generico che ha come primo argomento obbligatorio l’abbreviazione del codice in questione; poi c’è un asterisco opzionale: con l’asterisco il contenuto viene composto in nero; poi l’argomento obbligatorio, cioè il numero dell’articolo e, per finire, come argomento opzionale il comma.Ciao
Enrico
18 Dicembre 2011 alle 15:25 in risposta a: Variare posizione numerazione sezioni sottosezioni ecc #67568::samiel” post=66857In realtà l’asterisco l’avevo giò tolto.
Provo con un esempio minimale, dove il rientro continua a esserci:
`\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage{lipsum}
\usepackage{titlesec}
\titleformat{\section}[hang]{\normalfont\Large\bfseries}%
{\makebox[2cm][r]{\thesection}}{.5cm}{}
\titlespacing{\section}{-2.5cm}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
\titleformat{\subsection}[hang]{\normalfont\large\itshape}%
{\makebox[2cm][r]{\thesubsection}}{.5cm}{}
\titlespacing{\subsection}{-2.5cm}{3.25ex plus 1ex minus .2ex}{1.5ex plus .2ex}
\begin{document}
\section{Sezione 1}
\lipsum[1]
\lipsum[2]
\subsection{Sottosezione}
\lipsum[2]
\end{document}`M
Scusa, ma mi sono fidato del codice che hai presentato: la presenza o l’assenza dell’asterisco determinano se si usa il rientro dopo il titolo. Siccome nel tuo codice c’era, sono andato a memoria e naturalmente mi ha tradito.
Con asterisco: niente rientro dopo
Senza asterisco: rientro dopo
Ciao
Enrico
-
AutoreRisposte