- Questo topic ha 11 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 18 anni, 1 mese fa da
lorenzo.pantieri.
-
CreatoreTopic
-
24 Luglio 2008 alle 5:38 #25618::
Ciao a tutti,ClassicThesis compone le note a margine allineandole tutte a sinistra (sia nella pagine dispari, sia in quelle pari). Invece (ho appena controllato) nel capolavoro di Bringhurst (cui ClassicThesis si ispira), le note sono composte in modo simmetrico, ovvero allineate a sinistra nelle pagine dispari, allineate a destra in quelle pari. Non so se la differrenza sia frutto di una svista dell’autore di ClassicThesis, o sia una scelta deliberata.
In ogni caso, come si può modifcare ClassicThesis in modo cha le note a margine siano composte “alla Bringhurst” (nei documenti fronte-retro)?
Per comodità, riporto la definizione del comando \graffito:
`% Graffiti as in GKP's book “Concrete Mathematics”
\DeclareRobustCommand{\graffito}[1]{\marginpar{%
\slshape\footnotesize%\small%
\parindent=0pt\lineskip=0pt\lineskiplimit=0pt%\baselineskip=10pt
\tolerance=2000\hyphenpenalty=300\exhyphenpenalty=300%
\doublehyphendemerits=100000\finalhyphendemerits=\doublehyphendemerits%
\raggedright\hspace{0pt}#1}}
`
Grazie anticipate,
Lorenzo
-
CreatoreTopic
-
AutoreRisposte
-
-
24 Luglio 2008 alle 6:23 #25619::
Ciao a tutti,
ClassicThesis compone le note a margine allineandole tutte a sinistra (sia nella pagine dispari, sia in quelle pari). Invece (ho appena controllato) nel capolavoro di Bringhurst (cui ClassicThesis si ispira), le note sono composte in modo simmetrico, ovvero allineate a sinistra nelle pagine dispari, allineate a destra in quelle pari. Non so se la differrenza sia frutto di una svista dell’autore di ClassicThesis, o sia una scelta deliberata.
In ogni caso, come si può modifcare ClassicThesis in modo cha le note a margine siano composte “alla Bringhurst” (nei documenti fronte-retro)?
Per comodità, riporto la definizione del comando \graffito:
`% Graffiti as in GKP's book “Concrete Mathematics”
\DeclareRobustCommand{\graffito}[1]{\marginpar{%
\slshape\footnotesize%\small%
\parindent=0pt\lineskip=0pt\lineskiplimit=0pt%\baselineskip=10pt
\tolerance=2000\hyphenpenalty=300\exhyphenpenalty=300%
\doublehyphendemerits=100000\finalhyphendemerits=\doublehyphendemerits%
\raggedright\hspace{0pt}#1}}
`\marginpar ha un argomento opzionale che dovrebbe servire esattamente allo scopo:
`% Graffiti as in GKP's book “Concrete Mathematics”
\def\graffito@setup{%
\slshape\footnotesize%\small%
\parindent=0pt \lineskip=0pt \lineskiplimit=0pt %\baselineskip=10pt
\tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300 %
\doublehyphendemerits=100000 \finalhyphendemerits=\doublehyphendemerits}
\DeclareRobustCommand{\graffito}[1]{\marginpar
[\graffito@setup\raggedleft\hspace{0pt}#1]
{\graffito@setup\raggedright\hspace{0pt}#1}}`
Prova, non ho tempo per farlo io.Ciao
Enrico
-
24 Luglio 2008 alle 8:46 #25620::
Ciao Enrico, innanzitutto ti grazie per la pronta risposta. Purtroppo però quel codice non funziona. Se compilo il seguente documento di prova:
`\documentclass[twoside]{scrreprt}\usepackage{classicthesis-ldpkg}
\usepackage{classicthesis}
\usepackage{lipsum}\let\graffito\relax
% Graffiti as in GKP's book “Concrete Mathematics”
\def\graffito@setup{%
\slshape\footnotesize%\small%
\parindent=0pt \lineskip=0pt \lineskiplimit=0pt %\baselineskip=10pt
\tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300 %
\doublehyphendemerits=100000 \finalhyphendemerits=\doublehyphendemerits}
\DeclareRobustCommand{\graffito}[1]{\marginpar
[\graffito@setup\raggedleft\hspace{0pt}#1]
{\graffito@setup\raggedright\hspace{0pt}#1}}\begin{document}
\lipsum
\graffito{Nota in una pagina pari}
\lipsum[1-3]
\graffito{Nota in una pagina dispari}
\lipsum[1-2]
\end{document}`
ricevo l’errore (fatale):
`l.21 \graffito{Nota in una pagina pari}?
! LaTeX Error: Not in outer par mode.`
Ciao,
Lorenzo
-
24 Luglio 2008 alle 8:49 #25621::
Funziona eccome, ma, se non metti \makeatletter e \makeatother, no. 😀 `\makeatletter
% Graffiti as in GKP's book “Concrete Mathematics”
\def\graffito@setup{%
\slshape\footnotesize%\small%
\parindent=0pt \lineskip=0pt \lineskiplimit=0pt %\baselineskip=10pt
\tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300 %
\doublehyphendemerits=100000 \finalhyphendemerits=\doublehyphendemerits}
\DeclareRobustCommand{\graffito}[1]{\marginpar
[\graffito@setup\raggedleft\hspace{0pt}#1]
{\graffito@setup\raggedright\hspace{0pt}#1}}
\makeatother`Ciao
Andrea
-
24 Luglio 2008 alle 9:01 #25622::
Funziona eccome, ma, se non metti \makeatletter e \makeatother, no. 😀
Chiedo venia per la mia sbadataggine… 😳
Adesso ci siamo quasi. Infatti il codice non supporta l’iserimento di immagini come note a margine (si tratta di un vezzo che Bringhurst usa spesso e volentieri). Il seguente
`\documentclass[twoside]{scrreprt}\usepackage{classicthesis-ldpkg}
\usepackage{classicthesis}
\usepackage{lipsum}\let\graffito\relax
\makeatletter
% Graffiti as in GKP's book “Concrete Mathematics”
\def\graffito@setup{%
\slshape\footnotesize%\small%
\parindent=0pt \lineskip=0pt \lineskiplimit=0pt %\baselineskip=10pt
\tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300 %
\doublehyphendemerits=100000 \finalhyphendemerits=\doublehyphendemerits}
\DeclareRobustCommand{\graffito}[1]{\marginpar
[\graffito@setup\raggedleft\hspace{0pt}#1]
{\graffito@setup\raggedright\hspace{0pt}#1}}
\makeatother\begin{document}
\lipsum
\graffito{Nota in una pagina pari}
\lipsum[1-3]
\graffito{Nota in una pagina dispari}
\lipsum[1-2]
\graffito{\protect\includegraphics[width=\marginparwidth]{immagine}}
\end{document}`
produce l’errore:
`! Argument of \Gin@ii has an extra }.
\par
l.27 …ics[width=\marginparwidth]{immagine}}`
Senza la ridefinizione di \graffito il codice invece funziona…Grazie,
L.
-
24 Luglio 2008 alle 9:09 #25623::
se metti
`\graffito{{\includegraphics[width=\marginparwidth]{img}}}`
cioè chiudi l’immagine in un gruppo, a me funziona. Il perché non so spiegartelo.
Oppure puoi mettere le parentesi graffe attorno all’argomento #1, cioè
`\makeatletter
% Graffiti as in GKP's book “Concrete Mathematics”
\def\graffito@setup{%
\slshape\footnotesize%\small%
\parindent=0pt \lineskip=0pt \lineskiplimit=0pt %\baselineskip=10pt
\tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300 %
\doublehyphendemerits=100000 \finalhyphendemerits=\doublehyphendemerits}
\DeclareRobustCommand{\graffito}[1]{\marginpar
[\graffito@setup\raggedleft\hspace{0pt}{#1}]
{\graffito@setup\raggedright\hspace{0pt}{#1}}}
\makeatother`
e poi normale
`\graffito{\includegraphics[width=\marginparwidth]{fotobn}}`Comunque per una cosa più precisa aspetta il prof.
Ciao
Andrea
-
24 Luglio 2008 alle 9:25 #25624::
Ciao Andrea, aggiungendo quelle graffe non ho più errori! 🙂 Mi sembra che ci sia ancora qualche problemino nella resa grafica delle immagini inserite come note a margine nelle pagine pari (queste immagini mi sembrano allineate a sinistra, e non a destra come dovrebbero), ma magari è un problema che riguarda il bounding box delle immagini.Faccio qualche esperimento e vi faccio sapere…
A presto, per ora.
Lorenzo
-
24 Luglio 2008 alle 9:42 #25625
-
24 Luglio 2008 alle 11:47 #25626::
Funziona eccome, ma, se non metti \makeatletter e \makeatother, no. 😀
Chiedo venia per la mia sbadataggine… 😳
Adesso ci siamo quasi. Infatti il codice non supporta l’iserimento di immagini come note a margine (si tratta di un vezzo che Bringhurst usa spesso e volentieri). Il seguente
`\documentclass[twoside]{scrreprt}\usepackage{classicthesis-ldpkg}
\usepackage{classicthesis}
\usepackage{lipsum}\let\graffito\relax
\makeatletter
% Graffiti as in GKP's book “Concrete Mathematics”
\def\graffito@setup{%
\slshape\footnotesize%\small%
\parindent=0pt \lineskip=0pt \lineskiplimit=0pt %\baselineskip=10pt
\tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300 %
\doublehyphendemerits=100000 \finalhyphendemerits=\doublehyphendemerits}
\DeclareRobustCommand{\graffito}[1]{\marginpar
[\graffito@setup\raggedleft\hspace{0pt}#1]
{\graffito@setup\raggedright\hspace{0pt}#1}}
\makeatother\begin{document}
\lipsum
\graffito{Nota in una pagina pari}
\lipsum[1-3]
\graffito{Nota in una pagina dispari}
\lipsum[1-2]
\graffito{\protect\includegraphics[width=\marginparwidth]{immagine}}
\end{document}`
produce l’errore:
`! Argument of \Gin@ii has an extra }.
\par
l.27 …ics[width=\marginparwidth]{immagine}}`
Senza la ridefinizione di \graffito il codice invece funziona…Il problema è l’argomento opzionale di \includegraphics dentro l’argomento opzionale di \marginpar: è sempre così quando hai questa situazione, perché la ] dell’argomento opzionale del comando interno viene presa come quella di chiusura dell’argomento opzionale del comando esterno. Prova a inserire graffe attorno ai due #1 nella definizione di \graffito, non dovrebbero avere effetti collaterali.
Ciao
Enrico
-
24 Luglio 2008 alle 12:57 #25627::
Prova a inserire graffe attorno ai due #1 nella definizione di \graffito, non dovrebbero avere effetti collaterali.
ho fatto varie prove e non ho riscontrato nessun tipo di problema. Quindi direi a Lorenzo di andare tranquillo. L’allineamento poi funziona correttamente anche con le immagini.
Ciao
Andrea
-
24 Luglio 2008 alle 14:44 #25628::
ho fatto varie prove e non ho riscontrato nessun tipo di problema. Quindi direi a Lorenzo di andare tranquillo. L’allineamento poi funziona correttamente anche con le immagini.
Ciao
Andrea
Il mio problema nell’usare questo codice è il seguente:
`\makeatletter
\def\notamargine@setup{\setstretch{1}\slshape\footnotesize%\small%
\parindent=0pt\lineskip=0pt\lineskiplimit=0pt%\baselineskip=10pt
\tolerance=2000\hyphenpenalty=300\exhyphenpenalty=300\doublehyphendemerits=100000\finalhyphendemerits=\doublehyphendemerits}
\DeclareRobustCommand{\notamargine}[2]{#2\marginpar
[\notamargine@setup\raggedleft\hspace{0pt}{#1}]
{\notamargine@setup\raggedright\hspace{0pt}{#1}}}
\makeatother`
Uso 2 argomenti per fare in modo che la nota a margine sia all’inizio del paragrafo, come:
`testo…\notamargine{NOTA}Resto del paragrafo…`
venga allineata a “Resto” e non a “testo…”.
Se metto un’immagine però viene con la base in linea con “Resto” e l’immagine sale verso il paragrafo superiore.
è possibile fare in modo che l’immagine scenda in basso, nel paragrafo a cui si riferisce?Grazie a tutti.
-
24 Luglio 2008 alle 16:06 #25629::
Il problema è l’argomento opzionale di \includegraphics dentro l’argomento opzionale di \marginpar: è sempre così quando hai questa situazione, perché la ] dell’argomento opzionale del comando interno viene presa come quella di chiusura dell’argomento opzionale del comando esterno. Prova a inserire graffe attorno ai due #1 nella definizione di \graffito, non dovrebbero avere effetti collaterali.
Con quelle graffe in più tutto funziona perfettamente!
Grazie mille, Enrico e Andrea!
Ciao,
L.
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.