- Questo topic ha 58 risposte, 6 partecipanti ed è stato aggiornato l'ultima volta 15 anni, 2 mesi fa da
lorenzo.pantieri.
-
CreatoreTopic
-
4 Agosto 2008 alle 6:59 #25867::
Ciao a tutti.Sto scrivendo un pacchetto e ho bisogno del vostro consiglio per risolvere qualche problema.
Il pacchetto ArsClassica modifica alcuni aspetti tipografici dello stile ClassicThesis, permettendo di riprodurre la veste grafica della guida “L’arte di scrivere con LaTeX”. La presente ne è la discussione di riferimento.
Non sono un programmatore, e scrivere un pacchetto come LaTeX comanda non è cosa facile. Tuttavia, il codice del pacchetto è stato scritto quasi completamente dai guru del forum -Enrico e Andrea- di cui mi fido ciecamente. Ora si tratta “solo” di mettere insieme i pezzi.
Chiedo scusa in anticipo per l’ingenuità delle seguenti domande!
1. Il pacchetto richiede classicthesis e classicthesis-ldpkg,
`\usepackage[…]{classicthesis-ldpkg}
\usepackage[…]{classicthesis}
\usepackage[…]{arsclassica}`
quindi vorrei realizzare un costrutto di questo genere:Se classicthesis risulta caricato (prima di arsclassica), bene; altrimenti inutile continuare.
Il seguente
`\@ifpackageloaded{classicthesis}%
{\relax}%
{\PackageError{arsclassica}{Package “arsclassica”
requires “classicthesis”.}}
`non funziona:
`Runaway argument?
! Paragraph ended before \PackageError was complete.
\par
`
Stesso discorso per classicthesis-ldpkg.2. Il pacchetto, fra l’altro, ridefinisce il formato dei titoli delle sezioni:
`\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{arsclassica}[…]
…
\renewcommand{\sfdefault}{iwona}\RequirePackage{titlesec}
…
\titleformat{\section}
{\normalfont\Large\sffamily}{\textsc%
{\MakeTextLowercase{\thesection}}}%
{1em}{\spacedlowsmallcaps}
…
`
Se nel preambolo del documento principale viene caricato il pacchetto Iwona
`\usepackage[light,condensed,math]{iwona}`
prima di ClassicThesis e di arsclassica, tutto funziona perfettamente: le parti testuali sono in Palatino (o, eventualmente, in MinionPro) e i titoli delle sezioni sono in Iwona. Se però ometto quella riga e scrivo all’interno di arsclassica.sty
`\RequirePackage[light,condensed,math]{iwona}`
si ha che tutte le parti testuali sono in Iwona. Perché? C’è modo di rimediare (senza chiedere esplicitamente all’utente di caricare il pacchetto Iwona, nel preambolo, prima di ClassicThesis e di arsclassica)?3. Il pacchetto definisce un ambiente, sidebyside, per inserire codice LaTeX nel proprio documento (viene mostrato il testo sorgente, sulla sinistra, con accanto il relativo documento composto). Questo ambiente richiede listings con l’opzione writefile:
`\usepackage[writefile]{listings}`
Se scrivo questa riga prima di caricare ClassicThesis e arsclassica, tutto bene. Se però scrivo all’interno di arsclassica.sty
`\RequirePackage[writefile]{listings}`
ottengo l’errore
`! LaTeX Error: Option clash for package listings.
`(anche classicthesis-ldpkg carica listings, senza alcuna opzione). C’è modo di rimediare (senza chiedere esplicitamente all’utente di caricare prima, nel preambolo, listings con l’opzione writefile)?Grazie mille (per ora!).
Ciao,
L.
-
CreatoreTopic
-
AutoreRisposte
-
-
4 Agosto 2008 alle 21:55 #25868::
Ciao a tutti.
Sto scrivendo un pacchetto e ho bisogno del vostro consiglio per risolvere qualche problema.
Il pacchetto ArsClassica modifica alcuni aspetti tipografici dello stile ClassicThesis, permettendo di riprodurre la veste grafica della guida “L’arte di scrivere con LaTeX”. La presente ne è la discussione di riferimento.
Non sono un programmatore, e scrivere un pacchetto come LaTeX comanda non è cosa facile. Tuttavia, il codice del pacchetto è stato scritto quasi completamente dai guru del forum -Enrico e Andrea- di cui mi fido ciecamente. Ora si tratta “solo” di mettere insieme i pezzi.
Chiedo scusa in anticipo per l’ingenuità delle seguenti domande!
1. Il pacchetto richiede classicthesis e classicthesis-ldpkg,
`\usepackage[…]{classicthesis-ldpkg}
\usepackage[…]{classicthesis}
\usepackage[…]{arsclassica}`
quindi vorrei realizzare un costrutto di questo genere:Se classicthesis risulta caricato (prima di arsclassica), bene; altrimenti inutile continuare.
Il seguente
`\@ifpackageloaded{classicthesis}%
{\relax}%
{\PackageError{arsclassica}{Package “arsclassica”
requires “classicthesis”.}}
`non funziona:
`Runaway argument?
! Paragraph ended before \PackageError was complete.
\par
`
Stesso discorso per classicthesis-ldpkg.Basta mettere dentro arsclassica.sty
`\RequirePackage{classicthesis-ldpkg,classicthesis}`
Se i pacchetti fossero già stati caricati prima, per oscuri motivi, non verrebbero comunque caricati. Direi che a livello utente sia preferibile il solo
`\usepackage{arsclassica}`
Mi sembra evidente.2. Il pacchetto, fra l’altro, ridefinisce il formato dei titoli delle sezioni:
`\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{arsclassica}[…]
…
\renewcommand{\sfdefault}{iwona}\RequirePackage{titlesec}
…
\titleformat{\section}
{\normalfont\Large\sffamily}{\textsc%
{\MakeTextLowercase{\thesection}}}%
{1em}{\spacedlowsmallcaps}
…
`
Se nel preambolo del documento principale viene caricato il pacchetto Iwona
`\usepackage[light,condensed,math]{iwona}`
prima di ClassicThesis e di arsclassica, tutto funziona perfettamente: le parti testuali sono in Palatino (o, eventualmente, in MinionPro) e i titoli delle sezioni sono in Iwona. Se però ometto quella riga e scrivo all’interno di arsclassica.sty
`\RequirePackage[light,condensed,math]{iwona}`
si ha che tutte le parti testuali sono in Iwona. Perché? C’è modo di rimediare (senza chiedere esplicitamente all’utente di caricare il pacchetto Iwona, nel preambolo, prima di ClassicThesis e di arsclassica)?Direi che è il caso che “iwona” diventi un’opzione del pacchetto arsclassica; se l’utente la sceglie, il tuo codice caricherà il pacchetto al momento opportuno (cioè prima di classicthesis e compagnia). Che debba essere un’opzione mi sembra ovvio, visto che non è detto che tutti abbiano quel font. O forse dovresti prevedere un’opzione “noiwona”, se preferisci che lo stile abbia di default quel font.
3. Il pacchetto definisce un ambiente, sidebyside, per inserire codice LaTeX nel proprio documento (viene mostrato il testo sorgente, sulla sinistra, con accanto il relativo documento composto). Questo ambiente richiede listings con l’opzione writefile:
`\usepackage[writefile]{listings}`
Se scrivo questa riga prima di caricare ClassicThesis e arsclassica, tutto bene. Se però scrivo all’interno di arsclassica.sty
`\RequirePackage[writefile]{listings}`
ottengo l’errore
`! LaTeX Error: Option clash for package listings.
`(anche classicthesis-ldpkg carica listings, senza alcuna opzione). C’è modo di rimediare (senza chiedere esplicitamente all’utente di caricare prima, nel preambolo, listings con l’opzione writefile)?Stesso discorso di prima. Metti \RequirePackage[writefile]{listings} prima di caricare classicthesis nel tuo arsclassica.sty. Ma forse non è il caso di imporre ai tuoi utenti la definizione di quell’ambiente che è specifica per la guida; potrebbe infatti avere bisogno di caricare listings con altre opzioni, per esempio. Come ti ho già detto altre volte, uno dei difetti di ClassicThesis è di imporre il caricamento di alcuni pacchetti con certe opzioni, ciò che impedisce agli utenti di caricarli con opzioni diverse se non a prezzo di acrobazie.
Ciao
Enrico
-
5 Agosto 2008 alle 6:58 #25869::
Basta mettere dentro arsclassica.sty
`\RequirePackage{classicthesis-ldpkg,classicthesis}`
Se i pacchetti fossero già stati caricati prima, per oscuri motivi, non verrebbero comunque caricati.
Direi che a livello utente sia preferibile il solo
`\usepackage{arsclassica}`Ciao Enrico, i pacchetti classicthesis e classicthesis-ldpkg hanno le loro opzioni (per la precisione: classicthesis ha svariate opzioni, mentre classicthesis-ldpkg ha un’unica opzione, nochapters, comune a classicthesis). Quindi pensavo fosse più logico e meno “invasivo” un caricamento di questo genere:
`\usepackage[]{classicthesis-ldpkg}
\usepackage[]{classicthesis}
\usepackage[]{arsclassica}`
con un messaggio d’errore nell’eventualità che classicthesis-ldpkg e classicthesis non siano stati caricati. (Il pacchetto arsclassica ha, per ora, una sola opzione, italian, che serve per avere i riferimenti bibliografici finali in italano). In questo modo è chiaro che l’utente deve aver studiato ClassicThesis (e deve sapere che cosa fanno le relative opzioni), e vuole ritoccarne il layout con ArsClassica.Mi stai invece dicendo che è meglio caricare il solo pacchetto arsclassica
`\usepackage[]{arsclassica}`
passando ai pacchetti classicthesis e classicthesis-ldpkg (caricati in arsclassica) le relative opzioni? Ho capito bene? Vorrei da te una conferma o una smentita su questo punto, prima di proseguire nella discussione.Direi che è il caso che “iwona” diventi un’opzione del pacchetto arsclassica; se l’utente la sceglie, il tuo codice caricherà il pacchetto al momento opportuno (cioè prima di classicthesis e compagnia). Che debba essere un’opzione mi sembra ovvio, visto che non è detto che tutti abbiano quel font. O forse dovresti prevedere un’opzione “noiwona”, se preferisci che lo stile abbia di default quel font.
Non ci avevo pensato. Devo vedere che cosa succede al layout con un altro font sans serif: magari il risultato è accettabile, magari no… Se il risultato è accettabile (ma lo devo verificare), può andare l’opzione “noiwona”. Altrimenti tocca interrompere la compilazione in assenza di quel font.
Grazie mille, per ora!
A presto,
Lorenzo
-
5 Agosto 2008 alle 15:05 #25870::
Ancora qualche osservazione.Basta mettere dentro arsclassica.sty
`\RequirePackage{classicthesis-ldpkg,classicthesis}`
Se i pacchetti fossero già stati caricati prima, per oscuri motivi, non verrebbero comunque caricati.Non ho capito quali pacchetti non verrebbero caricati: quelli del preambolo precedentemente richiamati (con le relative opzioni) o quelli chiamati dopo con \RequirePackage?
2. Resta aperta la questione generale di come usare il comando \PackageError. Supponiamo che arsclassica richieda il caricamento del pacchetto xyz (nel preambolo). Il comando
`@ifpackageloaded{xyz}%
{\relax}%
{\PackageError{arsclassica}{Package “arsclassica”
requires “xyz”.}}`
è sintatticamente scorretto: come va modificato?3. I font Iwona. La mia idea è di scrivere (almeno per ora) un pacchetto “rigido”, cioè poco o per nulla personalizzabile (come layaureo, per intenderci). Quindi vorrei realizzare un costrutto del tipo
Se mancano i font Iwona, inutile continuare.
Come lo si realizza in LaTeX? Ancora: i font Iwona li ho trovati installati nella mia distribuzione MacTeX. Lo stesso accade per ogni distribuzione TeX Live e MiKTeX completa?
Ancora grazie,
L.
-
5 Agosto 2008 alle 21:10 #25871::
Ancora qualche osservazione.
Basta mettere dentro arsclassica.sty
`\RequirePackage{classicthesis-ldpkg,classicthesis}`
Se i pacchetti fossero già stati caricati prima, per oscuri motivi, non verrebbero comunque caricati.Non ho capito quali pacchetti non verrebbero caricati: quelli del preambolo precedentemente richiamati (con le relative opzioni) o quelli chiamati dopo con \RequirePackage?
2. Resta aperta la questione generale di come usare il comando \PackageError. Supponiamo che arsclassica richieda il caricamento del pacchetto xyz (nel preambolo). Il comando
`@ifpackageloaded{xyz}%
{\relax}%
{\PackageError{arsclassica}{Package “arsclassica”
requires “xyz”.}}`
è sintatticamente scorretto: come va modificato?3. I font Iwona. La mia idea è di scrivere (almeno per ora) un pacchetto “rigido”, cioè poco o per nulla personalizzabile (come layaureo, per intenderci). Quindi vorrei realizzare un costrutto del tipo
Se mancano i font Iwona, inutile continuare.
Come lo si realizza in LaTeX? Ancora: i font Iwona li ho trovati installati nella mia distribuzione MacTeX. Lo stesso accade per ogni distribuzione TeX Live e MiKTeX completa?
Se vuoi un pacchetto rigido, le opzioni per classicthesis le imponi tu con \RequirePackage; naturalmente, in questo caso, dovrai mettere due comandi separati per i due pacchetti.
Il comando \PackageError ha tre argomenti, se ne dai solo due …
Il primo è il nome del pacchetto, il secondo il messaggio di errore breve, quello che compare sempre, il terzo il messaggio più lungo che si ottiene dando `h’.
Ciao
Enrico
-
7 Agosto 2008 alle 5:56 #25872::
Ciao a tutti,
mi sono preso un po’ di tempo per studiare la situazione.Ho tentato di imboccare la strada indicata da Enrico, caricando classicthesis direttamente da arsclassica (e non nel preambolo):
`\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{arsclassica}[01/08/2008 LP]
\RequirePackage[light,condensed,math]{iwona}
\RequirePackage[writefile]{listings}
\RequirePackage{classicthesis-ldpkg}
\RequirePackage[subfig,beramono,eulerchapternumbers,%
eulermath,pdfspacing]{classicthesis}`
In questo modo non si hanno più i problemi legati ai pacchetti listings e iwona che lamentavo qualche intervento fa. Purtroppo però così facendo sorgono nuove difficoltà…Vorrei che il layout di arsclassica fosse “moderatamente personalizzabile”. In particolare, vorrei (almeno per ora) che arsclassica prevedesse le stesse opzioni di classicthesis. Se in arsclassica si scrive
`\DeclareOption{linedheaders}{\setboolean{linedheaders}{true}}\ifthenelse{\boolean{linedheaders}}%
{\PassOptionsToPackage{linedheaders}{classicthesis}}%
{\relax}
`e nel documento principale si dà
`\usepackage[linedheaders]{arsclassica}`
la cosa funziona: l’opzione linedheaders viene passata correttamente a classicthesis, e il layout del documento cambia di conseguenza.Tuttavia (non capisco perché) se si fa la stessa cosa con drafting, la cosa non funziona più. In arsclassica:
`\DeclareOption{drafting}{\setboolean{drafting}{true}}\ifthenelse{\boolean{drafting}}%
{\PassOptionsToPackage{drafting}{classicthesis}}%
{\relax}`
Nel preambolo:
`\usepackage[drafting]{arsclassica}`
Eppure nel documento finale non viene stampata la data in basso, come dovrebbe.La cosa strana è che se in arsclassica si carica direttamente classicthesis con l’opzione drafting,
`\RequirePackage[…,drafting]{classicthesis}`
la data viene stampata benissimo.Al di là di questo problema TeXnico, c’è una una difficoltà di altro tipo. Il fatto è che non mi trovo del tutto a mio agio “occultando” classicthesis in quel modo. L’utente a cui è rivolto il pacchetto deve conoscere bene ClassicThesis (con le sue relative opzioni). Il pacchetto ArsClassica è (almeno per ora) solo una “variazione sul tema” dello stile ClassicThesis, un “vestito” che ritocca alcuni aspetti, tutto sommato secondari, dello stile (magari anche peggiorando l’originale!). Come ho già avuto modo di dire, trovo che sia più logico e meno invasivo un caricamento di questo genere:
`\usepackage[…]{classicthesis-ldpkg}
\usepackage[…]{classicthesis}
\usepackage[…]{arsclassica}`
Se l’utente vuole provare l’effetto di ArsCassica, basta scrivere l’ultima riga; per tornare indietro, basta commentarla o eliminarla. Mi sembra molto comodo.Per tutte queste ragioni, sono tornato alla mia idea originale. (Magari in eventuali future versioni del pacchetto le cose potranno essere diverse…)
Come suggerito da Enrico, ho eliminato l’ambiente sidebyside dal pacchetto (per cui non ho più bisogno di caricare listings con l’opzione listings) e ho anche eliminato la chiamata
`\RequirePackage[light,condensed,math]{iwona}`
in arclassica e anche la riga
`\usepackage[light,condensed,math]{iwona}`
nel preambolo. Mi sono accorto che quelle chiamate sono superflue (almeno, così mi pare): è sufficiente scrivere
`\renewcommand{\sfdefault}{iwona}`
e si hanno i font Iwona dove devono essere.Dopo questo lungo preambolo, vengo alle due domande che mi stanno più a cuore:
1. Davvero è sufficiente scrivere
`\renewcommand{\sfdefault}{iwona}`
(in arsclassic.sty) senza caricare mai il pacchetto iwona (nè nel pacchetto né nel preambolo)? C’è rischio di qualche effetto collaterale? Io non ne ho riscontrati, ma…2. I font Iwona (presenti nella distribuzione MacTeX) sono compresi in tutte le distribuzioni TeX Live e nella MiKTeX completa?
Grazie mille,
L.
-
7 Agosto 2008 alle 17:30 #25873::
1. Davvero è sufficiente scrivere
`\renewcommand{\sfdefault}{iwona}`
(in arsclassic.sty) senza caricare mai il pacchetto iwona (nè nel pacchetto né nel preambolo)? C’è rischio di qualche effetto collaterale? Io non ne ho riscontrati, ma…2. I font Iwona (presenti nella distribuzione MacTeX) sono compresi in tutte le distribuzioni TeX Live e nella MiKTeX completa?
Risposta 1: il pacchetto iwona.sty ridefinisce \rmdefault con il valore iwona e \sfdefault come \rmdefault. Poi fa un certo numero di cose per la matematica, che non ti interessano. Siccome il tuo scopo è di usare quel font per le parti senza grazie, non vedo perché caricare un sacco di cose del tutto inutili: la tua riga va benissimo.
Risposta 2: non lo so, basta navigare a partire da http://tug.org/svn/texlive/trunk/Master/texmf/
Risposta 0: non si può scrivere un pacchetto senza leggersi la guida LaTeX for class and package writers, che trovi sul tuo sistema come clsguide.pdf
Ciao
Enrico
-
8 Agosto 2008 alle 6:23 #25874::
Ciao Enrrico, ti ringrazio per le risposte e per i preziosi riferimenti (che approfondirò al più presto con la debita cura).Per scrivere il pacchetto mi sono basato principalmente sul codice di ClassicThesis (che ho studiato e modificato in base alle mie esigenze) e sul tuoi Appunti di programmazione in TeX e LaTeX (che ho per ora solo consultato, anche se non studiato a fondo come meriterebbero). Ho preferito cimentarmi con l’affascinante sfida della programmazione in LaTeX in questo modo, partendo da un caso concreto e procedendo (e imparando!) un po’ alla volta.
In ogni caso, c’è ancora tantissimo lavoro da fare.
Ad ogni modo, anche per dare una svolta al “processo creativo”, sottopongo all’attenzione dei frequentatori del forum quello che ho scritto finora:
http://www.lorenzopantieri.net/LaTeX_files/ArsClassica.zip
Il file contiene il pacchetto e la relativa documentazione. Si tratta solo della prima versione. Come dicevo, c’è ancora tanto lavoro da fare. Pubblicando il tutto, spero di fare cosa gradita agli utenti che hanno apprezzato il layout dell’Arte di scrivere con LaTeX e che mi hanno chiesto suggerimenti per riprodurlo.
Naturalmente, ogni vostra osservazione è più che benvenuta!
A presto,
Lorenzo
-
6 Ottobre 2008 alle 6:05 #25875::
Ciao a tutti.La programazione è una cosa seria: i casi da considerare sono tanti, e scrivere codice che vada bene nelle situazione più svariate non è semplice… almeno per me! 😉
Purtroppo, il pacchetto ArsClassica dà problemi con il comando \tableofcontents e la classe scrartcl:
`\documentclass[headinclude,footinclude]{scrartcl}\usepackage[nochapters]{classicthesis-ldpkg}
\usepackage[nochapters]{classicthesis}
\usepackage[italian]{babel}
%\usepackage[italian]{arsclassica}
\usepackage{lipsum}\begin{document}
\refstepcounter{dummy}
\tableofcontents\section{Foo}
\lipsum\section{Bar}
\lipsum
\end{document}`
Compilare due volte per credere… 😥La cosa strana è che il pacchetto funziona benissimo con la classe scrreprt, e produce indici (e miniindici) senza problemi.
Qualcuno ha voglia di spulciare il codice del pacchetto e di cercare una soluzione?
Il problema non è così peregrino come può sembrare: avrei in animo di scrivere una serie di articoli con quello stile, per poi (nel medio periodo) unirli all’”Arte” in una guida più “enciclopedica”…
http://www.lorenzopantieri.net/LaTeX.html
Grazie mille,
L.
-
6 Ottobre 2008 alle 8:20 #25876::
Ciao a tutti.
La programazione è una cosa seria: i casi da considerare sono tanti, e scrivere codice che vada bene nelle situazione più svariate non è semplice… almeno per me! 😉
Purtroppo, il pacchetto ArsClassica dà problemi con il comando \tableofcontents e la classe scrartcl:
`\documentclass[headinclude,footinclude]{scrartcl}\usepackage[nochapters]{classicthesis-ldpkg}
\usepackage[nochapters]{classicthesis}
\usepackage[italian]{babel}
%\usepackage[italian]{arsclassica}
\usepackage{lipsum}\begin{document}
\refstepcounter{dummy}
\tableofcontents\section{Foo}
\lipsum\section{Bar}
\lipsum
\end{document}`
Compilare due volte per credere… 😥La cosa strana è che il pacchetto funziona benissimo con la classe scrreprt, e produce indici (e miniindici) senza problemi.
Qualcuno ha voglia di spulciare il codice del pacchetto e di cercare una soluzione?
Il problema non è così peregrino come può sembrare: avrei in animo di scrivere una serie di articoli con quello stile, per poi (nel medio periodo) unirli all’”Arte” in una guida più “enciclopedica”…
Non dubito che la classe dia problemi; faccio ovviamente riferimento alla versione scaricabile dal tuo sito. Ci sono alcuni condizionali con il nome sbagliato (manca la @ iniziale):
eulerchapternumbers -> @eulerchapternumbers
minionprospacing -> @minionprospacing
pdfspacing -> @pdfspacing
parts -> @parts
linedheaders -> @linedheadersQuelli dopo la freccia sono i nomi dichiarati in classicthesis.sty.
In un file .sty è vietatissimo scrivere \makeatletter e \makeatother: quando TeX lo legge, infatti, assume che @ sia una lettera (cioè c’è un \makeatletter implicito all’inizio e un \makeatother implicito alla fine).
L’errore finale è nelle ultime righe, dove ridefinisci \toc@heading. Infatti commentando le righe relative non ci sono problemi (almeno di compilazione, non so di forma). La cosa si spiega con il fatto che in scrartcl il comando \chapter è equivalente a \relax.
Ciao
Enrico
-
8 Ottobre 2008 alle 5:59 #25877::
Ciao Enrico, cominciamo dall’errore finale, che era la causa del problema. Ci ho messo una toppa con questo codice (che certo ti farà sorridere di tenerezza):
`\@ifclassloaded{scrreprt}{%
\makeatletter
\def\toc@heading{%
\chapter*{\contentsname}%
\@mkboth{\spacedlowsmallcaps{\contentsname}}
{\spacedlowsmallcaps{\contentsname}}}
\makeatother}
{\relax}\@ifclassloaded{scrbook}{%
\makeatletter
\def\toc@heading{%
\chapter*{\contentsname}%
\@mkboth{\spacedlowsmallcaps{\contentsname}}
{\spacedlowsmallcaps{\contentsname}}}
\makeatother}
{\relax}`
Esiste un modo per dire: “se è caricata la classe scrreprt oppure la classe scrbook, allora…”?Le tue critiche al codice sono ineccepibili, naturalmente. Tuttavia l’obiettivo di ArsClassica (come credo anche quello di ClassicThesis) è quello di… funzionare (e ora ArsClassica funziona anche con la classe scrartcl), sacrificando purtroppo la precisione del codice.
Riguardo alle @ mancanti, ho provato ad aggiungerle (sostituendo per esempio eulerchapternumbers -> @eulerchapternumbers), ma se lo faccio sic et simpliciter ottengo un errore in compilazione.
Grazie mille,
L.
-
8 Ottobre 2008 alle 7:48 #25878::
Ciao Enrico, cominciamo dall’errore finale, che era la causa del problema. Ci ho messo una toppa con questo codice (che certo ti farà sorridere di tenerezza):
`\@ifclassloaded{scrreprt}{%
\makeatletter
\def\toc@heading{%
\chapter*{\contentsname}%
\@mkboth{\spacedlowsmallcaps{\contentsname}}
{\spacedlowsmallcaps{\contentsname}}}
\makeatother}
{\relax}\@ifclassloaded{scrbook}{%
\makeatletter
\def\toc@heading{%
\chapter*{\contentsname}%
\@mkboth{\spacedlowsmallcaps{\contentsname}}
{\spacedlowsmallcaps{\contentsname}}}
\makeatother}
{\relax}`
Esiste un modo per dire: “se è caricata la classe scrreprt oppure la classe scrbook, allora…”?No, non esiste. Ma puoi scrivere
`\def\toc@headingbkORrp{%
\def\toc@heading{%
\chapter*{\contentsname}%
\@mkboth{\spacedlowsmallcaps{\contentsname}}
{\spacedlowsmallcaps{\contentsname}}}}
\@ifclassloaded{scrreprt}{\toc@headingbkORrp}{}
\@ifclassloaded{scrbook}{\toc@headingbkORrp}{}`
Così, almeno, il codice identico rimane in un posto solo. Niente \makeatletter e \makeatother! Dai, fa’ vedere che hai letto con attenzione il mio messaggio! 😀Le tue critiche al codice sono ineccepibili, naturalmente. Tuttavia l’obiettivo di ArsClassica (come credo anche quello di ClassicThesis) è quello di… funzionare (e ora ArsClassica funziona anche con la classe scrartcl), sacrificando purtroppo la precisione del codice.
Riguardo alle @ mancanti, ho provato ad aggiungerle (sostituendo per esempio eulerchapternumbers -> @eulerchapternumbers), ma se lo faccio sic et simpliciter ottengo un errore in compilazione.
E a me succede il contrario, come la mettiamo? Che Miède abbia pasticciato con le versioni di classicthesis?
Io ho la versione 2008/10/01, che alle righe 47-60 definisce i condizionali con @ davanti. Con tlmgr si possono aggiornare automaticamente i pacchetti della TeX Live (e di MacTeX, che è la stessa cosa) e quindi è possibile che la tua versione sia rimasta indietro.
Ciao
Enrico
-
8 Ottobre 2008 alle 8:14 #25879::
Così, almeno, il codice identico rimane in un posto solo. Niente \makeatletter e \makeatother! Dai, fa’ vedere che hai letto con attenzione il mio messaggio!
L’ho letto con attenzione, credimi. (Purtroppo quei \makeatletter e \makeatother li usa anche Miede, nel codice di classicthesis-ldpkg). Adesso provo a toglierli tutti e a compilare, ma qualcosa mi dice che non filerà tutto liscio…
E a me succede il contrario, come la mettiamo? Che Miède abbia pasticciato con le versioni di classicthesis?
Io ho la versione 2008/10/01, che alle righe 47-60 definisce i condizionali con @ davanti. Con tlmgr si possono aggiornare automaticamente i pacchetti della TeX Live (e di MacTeX, che è la stessa cosa) e quindi è possibile che la tua versione sia rimasta indietro.
Possibilissimo (lavoro con MacTeX 2007). Adesso aggiorno e verifico.
Grazie mille (per ora…)!
Ciao,
L.
-
8 Ottobre 2008 alle 8:31 #25880::
Così, almeno, il codice identico rimane in un posto solo. Niente \makeatletter e \makeatother! Dai, fa’ vedere che hai letto con attenzione il mio messaggio!
L’ho letto con attenzione, credimi. (Purtroppo quei \makeatletter e \makeatother li usa anche Miede, nel codice di classicthesis-ldpkg). Adesso provo a toglierli tutti e a compilare, ma qualcosa mi dice che non filerà tutto liscio…
E a me succede il contrario, come la mettiamo? Che Miède abbia pasticciato con le versioni di classicthesis?
Io ho la versione 2008/10/01, che alle righe 47-60 definisce i condizionali con @ davanti. Con tlmgr si possono aggiornare automaticamente i pacchetti della TeX Live (e di MacTeX, che è la stessa cosa) e quindi è possibile che la tua versione sia rimasta indietro.
Possibilissimo (lavoro con MacTeX 2007). Adesso aggiorno e verifico.
Grazie mille (per ora…)!
Confermo. Miède ha modificato il nome dei condizionali, ho trovato una versione di classicthesis del 2007 dove erano senza @.
Quanto ai \makeatother e \makeatletter, il fatto che Miède li usi non dovrebbe essere un buon motivo per commettere lo stesso errore. Anzi, sarebbe forse il caso di dirgli di toglierli dal suo classicthesis-ldpkg.sty. Una rapida occhiata mi dice che danni non dovrebbero venirne fuori.
Ciao
Enrico
-
10 Ottobre 2008 alle 7:21 #25881::
Confermo. Miède ha modificato il nome dei condizionali, ho trovato una versione di classicthesis del 2007 dove erano senza @.
Quanto ai \makeatother e \makeatletter, il fatto che Miède li usi non dovrebbe essere un buon motivo per commettere lo stesso errore. Anzi, sarebbe forse il caso di dirgli di toglierli dal suo classicthesis-ldpkg.sty. Una rapida occhiata mi dice che danni non dovrebbero venirne fuori.
Ciao, sto aggiornando il pacchetto ArsClassica per renderlo compatibile con l’attuale versione di CalssicThesis (la 2.5): ho tolto (senza problemi!) i vari \makeatletter e \makeatother e cambiato nome alle opzioni.
Tuttavia, ho visto che Miede ha deciso di allungare la gabbia del testo, rispetto a quella “a doppio quadrato” usata nella versione 2.3. 🙄 Visto che vorrei invece mantenere la vecchia impostazione, ho pensato di aggiungere al codice di ArsClassica delle istruzioni per avere la gabbia del testo “vecchia”, con font Palatino in corpo 10 su A4, lasciando inalterato il resto.
`
%************************************************************
% text body
%************************************************************
\ifthenelse{\boolean{@a5paper}}%
{\relax}%
{% A4
\ifthenelse{\boolean{@minionpro}}%
{\relax}%
{% Palatino or other
\PackageInfo{classicthesis}{A4 paper, Palatino or other}
\areaset[5mm]{312pt}{699pt}
% 624 + 33 head + 42 head \the\footskip
\setlength{\marginparwidth}{7em}%
\setlength{\marginparsep}{2em}%
}%
}
`
Va bene?Grazie mille,
L.
-
10 Ottobre 2008 alle 9:49 #25882::
Confermo. Miède ha modificato il nome dei condizionali, ho trovato una versione di classicthesis del 2007 dove erano senza @.
Quanto ai \makeatother e \makeatletter, il fatto che Miède li usi non dovrebbe essere un buon motivo per commettere lo stesso errore. Anzi, sarebbe forse il caso di dirgli di toglierli dal suo classicthesis-ldpkg.sty. Una rapida occhiata mi dice che danni non dovrebbero venirne fuori.
Ciao, sto aggiornando il pacchetto ArsClassica per renderlo compatibile con l’attuale versione di CalssicThesis (la 2.5): ho tolto (senza problemi!) i vari \makeatletter e \makeatother e cambiato nome alle opzioni.
Tuttavia, ho visto che Miede ha deciso di allungare la gabbia del testo, rispetto a quella “a doppio quadrato” usata nella versione 2.3. 🙄 Visto che vorrei invece mantenere la vecchia impostazione, ho pensato di aggiungere al codice di ArsClassica delle istruzioni per avere la gabbia del testo “vecchia”, con font Palatino in corpo 10 su A4, lasciando inalterato il resto.
`
%************************************************************
% text body
%************************************************************
\ifthenelse{\boolean{@a5paper}}%
{\relax}%
{% A4
\ifthenelse{\boolean{@minionpro}}%
{\relax}%
{% Palatino or other
\PackageInfo{classicthesis}{A4 paper, Palatino or other}
\areaset[5mm]{312pt}{699pt}
% 624 + 33 head + 42 head \the\footskip
\setlength{\marginparwidth}{7em}%
\setlength{\marginparsep}{2em}%
}%
}
`
Va bene?Se fa quello che desideri, certo. Io toglierei quei due \relax, che non servono a nulla. E, naturalmente, scriverei
`\if@a5paper
\else % A4 paper
\if@minionpro
\else % Palatino or other
\PackageInfo{classicthesis}{A4 paper, Palatino or other}
\areaset[5mm]{312pt}{699pt} % 624 + 33 head + 42 head \the\footskip
\setlength{\marginparwidth}{7em}
\setlength{\marginparsep}{2em}
\fi
\fi`
Codice che trovo molto più leggibile. Il pacchetto ifthen fornisce certe cose che con i condizionali TeX sono, a volte, complicate da scrivere. Ma in casi come questo applicazioni non c’è competizione.Esercizio: perché ho omesso tutti i % (tranne quelli che precedono un commento)?
Ciao
Enrico
-
10 Ottobre 2008 alle 14:49 #25883::
`\if@a5paper
\else % A4 paper
\if@minionpro
\else % Palatino or other
\PackageInfo{classicthesis}{A4 paper, Palatino or other}
\areaset[5mm]{312pt}{699pt} % 624 + 33 head + 42 head \the\footskip
\setlength{\marginparwidth}{7em}
\setlength{\marginparsep}{2em}
\fi
\fi`Ho provato ad inserirlo in ArsClassica al posto dell’altro (macchinoso ma funzionante), ma ricevo un errore di sintassi:
Undefined control sequence \if@5paper
Dove sbaglio? 🙄
Grazie ancora,
L.
-
10 Ottobre 2008 alle 15:06 #25884::
`\if@a5paper
\else % A4 paper
\if@minionpro
\else % Palatino or other
\PackageInfo{classicthesis}{A4 paper, Palatino or other}
\areaset[5mm]{312pt}{699pt} % 624 + 33 head + 42 head \the\footskip
\setlength{\marginparwidth}{7em}
\setlength{\marginparsep}{2em}
\fi
\fi`Ho provato ad inserirlo in ArsClassica al posto dell’altro (macchinoso ma funzionante), ma ricevo un errore di sintassi:
Undefined control sequence \if@5paper
Dove sbaglio? 🙄
Dimenticata una a? \if@a5paper
Ciao
Enrico
-
10 Ottobre 2008 alle 15:10 #25885
-
10 Ottobre 2008 alle 15:29 #25886::
Dimenticata una a? \if@a5paper
Ho digitato male il log con l’errore, ma no, non direi: ho copiato/incollato il tuo codice in sostituzione dell’altro. L’errore è proprio
!Undefined control sequence:
\if@a
5paperGiusto, non avevo tenuto conto del 5 🙁
In quel contesto è semplice: sostituisci \if@a5paper con
`\csname if@a5paper\endcsname`
In genere non andrebbero mai definiti nomi di comandi con cifre al loro interno; con ifthen la cosa funziona perché \boolean usa internamente \csname; ma se poi vuoi usare quei condizionali in modo tradizionale (che è molto più comodo), non ce la fai. Il sistema con \csname, infatti, non permette di accoppiare il condizionale con i comandi \else e \fi relativi e quindi può essere usato solo al “livello esterno”.Altrimenti puoi definirti un comando \@booleanuse analogo a \@nameuse:
`\newcommand{\@booleanuse}[1]{TT\fi\@nameuse{if#1}}`
che usi scrivendo
`\if\@booleanuse{@a5paper}`
ciò che permette l’annidamento dei condizionali.Ciao
Enrico
-
14 Ottobre 2008 alle 6:15 #25887::
`\csname if@a5paper\endcsname`
Perfetto!
Ho appena aggiornato ArsClassica, che ora richiede l’ultima versione (la 2.5) di ClassicThesis e contiene le migliorie al codice proposte da Enrico, che ringrazio di cuore.
http://www.lorenzopantieri.net/LaTeX.html
Ciao,
L.
-
14 Ottobre 2008 alle 10:11 #25888
-
14 Ottobre 2008 alle 16:51 #25889::
Ciao Lorenzo,
il pacchetto arsclassica si trova anche nel CTAN? Ovvero, se lo metto nel preambolo me lo installa autmaticamente come gli altri pacchetti?No, su CTAN non c’è. Confesso di non avere idea di quale sia la procedura che un autore debba seguire perché un suo lavoro (pacchetto, classe, guida, …) sia pubblicato su CTAN. Naturalmente, sempre che il lavoro sia degno di pubblicazione…
Ciao,
L
-
14 Ottobre 2008 alle 20:28 #25890::
Ciao Lorenzo,
il pacchetto arsclassica si trova anche nel CTAN? Ovvero, se lo metto nel preambolo me lo installa autmaticamente come gli altri pacchetti?No, su CTAN non c’è. Confesso di non avere idea di quale sia la procedura che un autore debba seguire perché un suo lavoro (pacchetto, classe, guida, …) sia pubblicato su CTAN. Naturalmente, sempre che il lavoro sia degno di pubblicazione…
http://www.ctan.org/upload.html
Prendi qualche contributo già esistente per vedere quello che occorre; essenzialmente un file README, il .sty o .cls, il PDF della documentazione insieme al sorgente della documentazione stessa. Non è obbligatorio che il contributo sia in formato .dtx (sottolinguaggio un po’ complicato), ma il sorgente compilabile della documentazione deve esserci. Normalmente per questa documentazione si usa una classe standard come article. Puoi però aggiungere uno o più documenti di esempio da compilare con il pacchetto o classe in questione, magari già con il PDF per un confronto fra sorgente e risultato.
Imparare la sintassi dei .dtx risparmia lavoro, perché in quel modo documentazione e codice stanno in un solo file. Su CTAN accettano tutto, non c’è alcuna censura o giudizio; se usi una licenza “free” il pacchetto va automaticamente su TeX Live. Puoi farlo tranquillamente perché anche ClassicThesis ha una licenza di quel tipo.
Ciao
Enrico
-
17 Ottobre 2008 alle 20:33 #25891::
Innanzitutto complimenti per il grande lavoro che hai fatto; dopo averlo scaricato e provato (anche se un po’ al volo) ho qualche domanda da fare, riguardante le testatine e i numeri di pagina.L’effetto ottenuto nel documento che accompagna il file .sty, con numero delle pagine in alto e testatine semitrasparenti è davvero molto piacevole, esteticamente. Il problema è che compilando il file non ottengo nulla di simile:
– il numero di pagina resta sempre in basso, com’è usuale per ClassicThesi
– le testatine, invece, non compaiono se come documentclass uso scrreprt; se utilizzo scrbook sono presenti, ma di colore nero, e comunque senza numero di pagina affiancato.Dal basso della mia niubbaggine, ho provato a farmi un giretto nel codice e ho visto che le testatine sono definite così, il numero di pagina \thepage sembra esserci, è anche il colore halfgray, non capisco perchè non funziona?!?
`\renewcommand{\sectionmark}[1]{\markright{\textsc%
{\MakeTextLowercase{\thesection}} \spacedlowsmallcaps{#1}}}
\lehead{\mbox{\llap{\small\thepage\kern1em\color{halfgray}%
\vline}%
\color{halfgray}\hspace{0.5em}\headmark\hfil}}
\rohead{\mbox{\hfil{\color{halfgray}%
\headmark\hspace{0.5em}}%
\rlap{\small{\color{halfgray}\vline}\kern1em\thepage}}}
\renewcommand{\headfont}{\normalfont\sffamily} `grazie mille
ale~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
update: Come non detto, dopo averci smanettato per un po’ mi sono reso conto che l’errore era mio (era ovvio del resto 😉 )!
Tentavo ostinatamente di far funzionare le cose con la class scrbook e con i comandi \frontmatter \mainmatter e \backmatter… è bastato usare scrreprt e cambiare “manualmente” la numerazione da romana ad araba passando dal front al main per far andare tutto al proprio posto! 😉
Grazie!
-
18 Ottobre 2008 alle 9:41 #25892::
Nuovo post, nuove domande.
Premetto che ho letto la documentazione allegata ad Arsclassica dove è specificato senza mezzi termini che lo stile va applicato così com’è, senza tante opzioni da modificare; nonostante ciò io qualche piccola modifica vorrei farla, almeno provare, anche se quasi sicuramente non sarà una miglioria, anzi…http://img75.imageshack.us/my.php?image=arsclassicajk0.jpg
In quest’immagine sono riassunte le 3 modifiche che vorrei provare a fare, ma non ho idea di come fare…
1. Nel caso il titolo del capitolo superi la lunghezza della riga, vorrei che la seconda iniziasse allineata con la prima
2. Nei vari titoli (capitoli, sezioni,…) è possibile disabilitare la sillabazione?!? Ad esempio nel definire il titolo del capitolo ho dovuto usare `\chapter{Ottimizzazione reti di \mbox{distribuzione} con GD}`ma non mi sembra il massimo come scelta…
3. Il numero di pagina, nel pagina in cui inizia il nuovo capitolo non è in Iwona, come tutti gli altri…sarebbe possibile cambiargli font? …oppure in alternativa, visto che avere un numero in basso e tutti gli altri in alto mi dà l’idea del disordine, nasconderlo?
Grazie, ale
-
24 Ottobre 2008 alle 22:05 #25893::
Marzullianamente mi sono fatto una domanda (anzi 3) e ora mi do la risposta (anzi 3)! 😆 Nella speranza di fare cosa gradita a chi, come me, volesse modificare qualcosina di questo splendido stile.1- Certo, è fattibile, basta solo ridefinire in arsclassica.sty (rinominandolo ovviamente)
` % chapters
\ifthenelse{\boolean{@linedheaders}}%
{%
\titleformat{\chapter}[display]%
{\relax}{\raggedleft{\color{halfgray}%
\chapterNumber\thechapter} \\ }{0pt}%
{\titlerule\vspace*{.9\baselineskip}\raggedright%
\spacedallcaps}%
[\normalsize\vspace*{.8\baselineskip}\titlerule]%
}{%
\titleformat{\chapter}[block]%
{\normalfont\Large\sffamily}%
{{\color{halfgray}\chapterNumber\thechapter%
\hspace{10pt}\vline} }{10pt}%
{\spacedallcaps}}`
come
` % chapters
\ifthenelse{\boolean{@linedheaders}}%
{%
\titleformat{\chapter}[display]%
{\relax}{\raggedleft{\color{halfgray}%
\chapterNumber\thechapter} \\ }{0pt}%
{\titlerule\vspace*{.9\baselineskip}\raggedright%
\spacedallcaps}%
[\normalsize\vspace*{.8\baselineskip}\titlerule]%
}{%
\titleformat{\chapter}[hang]%
{\raggedright\normalfont\Large\sffamily}%
{{\color{halfgray}\chapterNumber\thechapter%
\hspace{10pt}\vline} }{10pt}%
{\spacedallcaps}}`2- Certo che sì, si ottiene aggiungendo il comando \raggedright come fatto sopra
2bis- la sillabazione può essere disabilitata anche dalle voci dell’indice, in questo caso occorre modificare la sezione “layout of the TOC, LOF and LOT” di classicthesis.sty (ovviamente rinominando anche questo); nel mio caso ora appare così (da notare che poi io ho scelto di allineare a destra i numeri di pagina, come da tradizione)
`\RequirePackage[titles]{tocloft}
% avoid page numbers being right-aligned in fixed-size box
% \newlength{\newnumberwidth}
% \settowidth{\newnumberwidth}{99} % yields overfull hbox warnings for pages > 99
\cftsetpnumwidth{2em}%{\newnumberwidth}
\cftsetrmarg{2.55em plus1fil}`3- Ho optato per lasciare comunque il numero in basso, però cambiando il font per uniformarlo a quello di tutti gli altri numeri di pagina; il tutto si può fare semplicemente con il comando
`\renewcommand{\pnumfont}{\small\sffamily}`Con questo è tutto; spero di non aver infranto qualche regola e di non urtare la sensibilità dell’autore di questo splendido pacchetto. Mi sembrava il minimo condividere queste piccole “conoscenze”, se così vogliamo chiamarle, che potrebbero essere d’aiuto per qualche altro principiante come me!
Grazie, ciao
ale
-
25 Ottobre 2008 alle 6:15 #25894::
Con questo è tutto; spero di non aver infranto qualche regola e di non urtare la sensibilità dell’autore di questo splendido pacchetto. Mi sembrava il minimo condividere queste piccole “conoscenze”, se così vogliamo chiamarle, che potrebbero essere d’aiuto per qualche altro principiante come me!
Chiedo innanzitutto scusa ad Alessandro per la risposta tardiva e gli faccio i miei complimenti per aver saputo risolvere da solo i problemi incontrati e per aver condiviso le soluzioni con gli altri utenti.
Mi limito ad osservare che, effettivamente, con il pacchetto ArsClassica i titoli dei capitoli e dei paragrafi devono essere molto corti: la gabbia di ClassicThesis è molto stretta, e, in più, i caratteri in Iwona sono grossi. Con ArsClassica, un titolo spezzato su due righe sta male, secondo me. Il mio consiglio è di cercare di evitare di andare a capo, ma di scegliere titoli particolarmente brevi, che stiano su una riga. Si tratta di un esercizio di sintesi non sempre facile, ma che dà soddisfazioni. Per esempio, al posto di:
`\chapter{Ottimizzazione reti di distribuzioni con GD}
\section{Proposte di ottimizzazione presenti in letteratura}
\section{Algoritmo di ottimizzazione proposto}`
potresti scrivere qualcosa come:
`\chapter{Ottimizzazione di reti con GD}
\section{Proposte di ottimizzazione in letteratura}
\section{Algoritmo di ottimizzazione proposto}`
Fare un buon riassunto è un’arte. In questo modo i titoli risultano ancora più “d’effetto”, e il loro impatto sul lettore aumenta. Per esempio, il capitolo 7 della mia guida doveva/poteva intitolarsi
`\chapter{La composizione delle formule matematiche}`
Visto che non ci stava, l’ho sostituito con
`\chapter{La matematica}`
e non credo di aver perso qualcosa, in termini di chiarezza espositiva, anzi forse così è anche meglio.Per concludere questo punto: chi usa ClassicThesis deve essere disposto a dedicare qualche energia in più alla cura dell’aspetto del proprio documento. Per chi usa ArsClassica, ciò vale a maggior ragione!
Riguardo al numero sulla prima pagina di ogni capitolo in Iwona, potrebbe essere una buona idea: adesso lo provo e, magari, aggiungo la modifica nella prossima versione del pacchetto (che a breve metterò su CTAN).
Ciao e grazie,
L.
-
28 Ottobre 2008 alle 6:11 #25895::
Ciao a tutti,ho appena messo on line il sorgente compilabile (è necessario pdfLaTeX) della documentazione di ArsClassica.
http://www.lorenzopantieri.net/LaTeX_files/ArsClassica.zip
Ho eseguito la procedura per caricare il lavoro su CTAN. A breve, il pacchetto dovrebbe essere scaricabile anche da lì. Dal momento che CTAN è un ambiente internazionale, sarebbe forse opportuno scrivere anche la documentazione in inglese: ho intenzione di farlo non appena possibile!
Ciao,
L.
-
28 Ottobre 2008 alle 7:53 #25896::
Ciao a tutti,ho il piacere di annunciarvi che il pacchetto ArsClassica è ora scaricabile da CTAN.
http://tug.ctan.org/tex-archive/macros/latex/contrib/arsclassica/
http://tug.ctan.org/pkg/arsclassicaHanno fatto presto! 😉
L.
-
15 Dicembre 2008 alle 6:37 #25897::
Carissimi, ecco un problemino con ArsClassica. I numeri romani delle parte sono minuscoli e non maisucoli (come dovrebbero).
`\documentclass{scrreprt}
\usepackage{classicthesis-ldpkg}
\usepackage[parts]{classicthesis}
\usepackage{arsclassica}
\begin{document}
\myPart{Foo}
\end{document}`
Come rimediare?Grazie mille,
L.
-
15 Dicembre 2008 alle 8:37 #25898::
Carissimi, ecco un problemino con ArsClassica. I numeri romani delle parte sono minuscoli e non maisucoli (come dovrebbero).
`\documentclass{scrreprt}
\usepackage{classicthesis-ldpkg}
\usepackage[parts]{classicthesis}
\usepackage{arsclassica}
\begin{document}
\myPart{Foo}
\end{document}`
Come rimediare?Rimedierei prima di tutto al fatto che il titolo della parte non ha alcuna compatibilità con il resto dei titoli: il colore Maroon non c’entra niente visto che tutta ArsClassica è basata sul colore nero e sul grigio.
` \titleformat{\part}[display]
{\normalfont\centering\large}
{\thispagestyle{empty}\partname~\textsc{\thepart}}
{1em}
{\spacedallcaps}`
Mettici \MakeTextUppercase se preferisci il numero romano “maiuscolo”.Ciao
Enrico
-
15 Dicembre 2008 alle 18:11 #25899::
Rimedierei prima di tutto al fatto che il titolo della parte non ha alcuna compatibilità con il resto dei titoli: il colore Maroon non c’entra niente visto che tutta ArsClassica è basata sul colore nero e sul grigio.
Caro Enrico, è vero: ArsClassica è basata sul nero e sul grigio. Tuttavia, a mio giudizio, quelle poche, ben calibrate pennellate in marroncino (negli indirizzi Web, nel titolo del frontespizio spartano e, appunto, nei titoli delle parti) stanno proprio bene e danno un delizioso tocco di vivacità alla composizione, per cui le lascerei senz’altro al loro posto! 💡
Per quanto riguarda la numerazione, è bastato aggiungere, come mi hai suggerito, un \MakeTextUppercase nel codice di ArsClassica e tutto è andato a posto. Faccio qualche altra prova e domani aggiorno il pacchetto su CTAN.
Grazie mille,
Lorenzo
-
19 Dicembre 2008 alle 8:01 #25900::
Per quanto riguarda la numerazione, è bastato aggiungere, come mi hai suggerito, un \MakeTextUppercase nel codice di ArsClassica e tutto è andato a posto. Faccio qualche altra prova e domani aggiorno il pacchetto su CTAN.
Fatto.
http://www.ctan.org/tex-archive/macros/latex/contrib/arsclassica/
Ciao,
L.
-
28 Dicembre 2008 alle 17:08 #25901::
Carissimi, vorrei fare qualche modifica ad ArsClassica:1. Aggiungere le opzioni “spanish” e “german” oltre ad “italian”. Vedo che cosa riesco a fare.
2. Riscrivere la documentazione in inglese. Idem come sopra.
3. Rinominare il comando \myincludegraphics. Quel nome l’avevo scelto “per me”, e l’ho mantenuto “per inerzia”, ma sa di provvisorietà e di improvvisazione. Dopo averci pensato un po’, mi pare che
`\xincludegraphics`
sia meglio (spesso nel mondo LaTeX si usa una x per passare da un pacchetto ad uno più aggiornato: graphics -> graphicx; SIunits -> siunitx). Avevo pensato ad `\arsincludegraphics`
ma non lo trovo molto leggibile. Che ne pensate?Quindi nel codice di ArsClassica sostituirò: \myincludegraphics -> \xincludegraphics.
Vorrei però mantenere (per ora!) il nome \myincludegraphics per ragioni di retro-compatibilità. Quindi vorrei un pezzetto di codice che
– definisse \myincludegraphics come \xincludegraphics;
– producesse un warning (del tipo “command \myincludegraphics obsolete: use \xincludegraphics instead”) ogni volta che \myincludegraphics viene usato.Mi date una mano per questo terzo punto?
Grazie mille,
L.
-
30 Dicembre 2008 alle 8:06 #25902::
1. Aggiungere le opzioni “spanish” e “german” oltre ad “italian”. Vedo che cosa riesco a fare.
Ho fatto pochino. 😳
`%************************************************************
% Options
%************************************************************
\newboolean{english}
\newboolean{french}
\newboolean{german}
\newboolean{spanish}
\newboolean{italian}
\DeclareOption{english}{\setboolean{english}{true}}
\DeclareOption{french}{\setboolean{french}{true}}
\DeclareOption{german}{\setboolean{german}{true}}
\DeclareOption{spanish}{\setboolean{spanish}{true}}
\DeclareOption{italian}{\setboolean{italian}{true}}
\ProcessOptions\relax%************************************************************
% backref
%************************************************************
\ifthenelse{\boolean{english}}%
{%
\PackageInfo{arsclassica}{Using option “english”. %
This activates english language in “backref”.}
\renewcommand*{\backreftwosep}{ and~}
\renewcommand*{\backreflastsep}{, and~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Cited on page~#2.)%
\else
(Cited on pages~#2.)
\fi}
}
{\relax}\ifthenelse{\boolean{french}}%
{%
\PackageInfo{arsclassica}{Using option “french”. %
This activates french language in “backref”.}
\renewcommand*{\backreftwosep}{ et~}
\renewcommand*{\backreflastsep}{ et~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Cit\'e \`a page~#2.)%
\else
(Cit\'e aux pages~#2.)
\fi}
}
{\relax}\ifthenelse{\boolean{german}}%
{%
\PackageInfo{arsclassica}{Using option “german”. %
This activates german language in “backref”.}
\renewcommand*{\backreftwosep}{ und~}
\renewcommand*{\backreflastsep}{ und~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Zitiert auf Seite~#2.)%
\else
(Zitiert auf Seiten~#2.)
\fi}
}
{\relax}\ifthenelse{\boolean{spanish}}%
{%
\PackageInfo{arsclassica}{Using option “spanish”. %
This activates spanish language in “backref”.}
\renewcommand*{\backreftwosep}{ y~}
\renewcommand*{\backreflastsep}{ y~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Citado en la p\'agina~#2.)%
\else
(Citado en las p\'aginas~#2.)
\fi}
}
{\relax}\ifthenelse{\boolean{italian}}%
{%
\PackageInfo{arsclassica}{Using option “italian”. %
This activates italian language in “backref”.}
\renewcommand*{\backreftwosep}{ e~}
\renewcommand*{\backreflastsep}{ e~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Citato a pagina~#2.)%
\else
(Citato alle pagine~#2.)
\fi}
}
{\relax}%************************************************************
% minitoc
%************************************************************
\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{english}}%
{%
\def\ptctitle{contents}
\def\mtctitle{contents}
\def\stctitle{contents}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{french}}%
{%
\def\ptctitle{mati\`eres}
\def\mtctitle{mati\`eres}
\def\stctitle{mati\`eres}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{german}}%
{%
\def\ptctitle{inhaltsverzeichnis}
\def\mtctitle{inhaltsverzeichnis}
\def\stctitle{inhaltsverzeichnis}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{spanish}}%
{%
\def\ptctitle{\'indice}
\def\mtctitle{\'indice}
\def\stctitle{\'indice}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{italian}}%
{%
\def\ptctitle{indice}
\def\mtctitle{indice}
\def\stctitle{indice}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}`
Come vedete, ho definito le opzioni english, french, german, spanish e italian e ho ripetuto le impostazioni di backref e minitoc caso per caso, mutatis mutandis. Ci sono due cose che non vanno:
a) il codice è davvero goffo, anche se (credo…) funzionante. Se avete suggerimenti per migliorarlo, sono qui. Più importante, però, è il punto seguente.
b) Vorrei che l’opzione english fosse quella predefinita. In altre parole, vorrei che scrivere
`\usepackage{arsclassica}`
fosse equivalente a
`\usepackage[english]{arsclassica}`
Come si fa?2. Riscrivere la documentazione in inglese. Idem come sopra.
Quasi pronta. CTAN è un ambiente internazionale, ed è giusto che i manuali siano in inglese. Sfortunatamente, il mio inglese è scarsino… 😥
3. Rinominare il comando \myincludegraphics. Vorrei però mantenere (per ora!) il nome \myincludegraphics per ragioni di retro-compatibilità.
Ecco, dovreste correggermi questo:
`%************************************************************
% graphicx, xcolor
%************************************************************
\definecolor{aliceblue}{RGB}{240,248,255}\newcommand{\xincludegraphics}[2][]{%
\begingroup\setlength{\fboxsep}{0pt}%
\colorbox{aliceblue}{\includegraphics[#1]{#2}}%
\endgroup}\newcommand{\myincludegraphics}{%
\PackageWarningNoLine{arsclassica}{Command “myincludegraphics” is deprecated, used “xincludegraphics” instead.}
\xincludegraphics}`
Non infierite: conto sulla vostra magnanimità.Ciao,
L.
-
30 Dicembre 2008 alle 22:26 #25903::
Carissimi, vorrei fare qualche modifica ad ArsClassica:
1. Aggiungere le opzioni “spanish” e “german” oltre ad “italian”. Vedo che cosa riesco a fare.
2. Riscrivere la documentazione in inglese. Idem come sopra.
3. Rinominare il comando \myincludegraphics. Quel nome l’avevo scelto “per me”, e l’ho mantenuto “per inerzia”, ma sa di provvisorietà e di improvvisazione. Dopo averci pensato un po’, mi pare che
`\xincludegraphics`
sia meglio (spesso nel mondo LaTeX si usa una x per passare da un pacchetto ad uno più aggiornato: graphics -> graphicx; SIunits -> siunitx). Avevo pensato ad `\arsincludegraphics`
ma non lo trovo molto leggibile. Che ne pensate?Quindi nel codice di ArsClassica sostituirò: \myincludegraphics -> \xincludegraphics.
Vorrei però mantenere (per ora!) il nome \myincludegraphics per ragioni di retro-compatibilità. Quindi vorrei un pezzetto di codice che
– definisse \myincludegraphics come \xincludegraphics;
– producesse un warning (del tipo “command \myincludegraphics obsolete: use \xincludegraphics instead”) ogni volta che \myincludegraphics viene usato.Mi date una mano per questo terzo punto?
Il comando non sarebbe una vera estensione di \includegraphics, propenderei per \arsincludegraphics, perché è specifico di quello stile.
`\let\ars@@includegraphics\includegraphics
\newcommand{\arsincludegraphics}[2][]{%
\begingroup\setlength{\fboxsep}{0pt}%
\colorbox{aliceblue}{\ars@@includegraphics[#1]{#2}}%
\endgroup}
\def\myincludegraphics{\PackageWarning{classiclatex}{%
The command \noexpand\myincludegraphics is
obsolete;\MessageBreak use \string\arsincludegraphics}%
\arsincludegraphics}`
Con l’uso del sinonimo \ars@@includegraphics, l’utente può anche scrivere
`\renewcommand{\includegraphics}{\arsincludegraphics}`
per avere tutti gli inserti grafici nello stile ArsClassica.Ciao
Enrico
-
31 Dicembre 2008 alle 19:11 #25904::
Il comando non sarebbe una vera estensione di \includegraphics, propenderei per \arsincludegraphics, perché è specifico di quello stile.
Caro Enrico, mi hai convinto: grazie per il consiglio e per il codice. Solo, ti prego: da’ un’occhiata anche al codice relativo al punto 1 del mio post precedente. In particolare, non so come fare per avere l’opzione “english” predefinita. Appena risolto questo punto, pubblico tutto, doc. in inglese compresa (appena ultimata!).
Grazie mille e buon anno! 😀
L.
-
31 Dicembre 2008 alle 19:18 #25905
-
1 Gennaio 2009 alle 18:15 #25906
-
2 Gennaio 2009 alle 9:10 #25907::
Ciao a tutti, ho appena caricato su CTAN la nuova versione del pacchetto.Changes in version 2.5.3 (January 2009)
o Documentation both in English and in Italian;
o Support for the English, French, Spanish and German language, via the new options “english” (default), “french”, “spanish” and “german”, respectively.
o New name, \arsincludegraphics, for the command which allows to include graphics with “Alice Blue” coloured background. The old name, \myincludegraphics, is still manteined (for now), but deprecated.Nell’attesa che il pacchetto sia effettivamente disponibile (di regola occorrono un paio di giorni):
http://www.lorenzopantieri.net/LaTeX_files/arsclassica.zipCome sempre, le vostre osservazioni sono molto gradite. In questo caso, non mi dispiacerebbe che qualcuno desse un’occhiata anche all’inglese con cui è scritta la documentazione. Purtroppo, il mio è un inglese solo scolastico, e per giunta scarso. 😳 Il risultato dovrebbe essere almeno comprensibile, ma è probabile che ci siano parecchi errori ed espressioni che potrebbero essere rese meglio.
Ciao,
L.
-
3 Gennaio 2009 alle 12:31 #25908::
Come sempre, le vostre osservazioni sono molto gradite. In questo caso, non mi dispiacerebbe che qualcuno desse un’occhiata anche all’inglese con cui è scritta la documentazione. Purtroppo, il mio è un inglese solo scolastico, e per giunta scarso. 😳 Il risultato dovrebbe essere almeno comprensibile, ma è probabile che ci siano parecchi errori ed espressioni che potrebbero essere rese meglio.
Se vuoi posso darti una mano con l’inglese: ho vissuto per 5 anni in Canada a Toronto.
Come faccio ad aggiornare ArsClassica? Basta lanciare l’upgrade con Miktek o devo aspettare ancora?
Ciao
Riccardo
-
4 Gennaio 2009 alle 18:16 #25909::
Se vuoi posso darti una mano con l’inglese: ho vissuto per 5 anni in Canada a Toronto.
Come faccio ad aggiornare ArsClassica? Basta lanciare l’upgrade con Miktek o devo aspettare ancora?
Caro Riccardo, la versione che trovi ora su CTAN è aggiornata:
http://www.ctan.org/tex-archive/macros/latex/contrib/arsclassica/Decomprimi il file arsclassica.zip e installa arsclassica.sty nel solito modo. Altrimenti usa l’interfaccia grafica che ti offre MiKTeX.
Quanto all’inglese, ovviamente i tuoi consigli sono (molto più che) ben accetti. Mandami pure le tue osservazioni, in privato o, se preferisci, anche sul forum.
Grazie anticipate,
L.
-
30 Gennaio 2009 alle 8:10 #25910::
Ciao a tutti.Desidero introdurre una piccola modifica al pacchetto ArsClassica. Mi è stato fatto notare che i numeri di pagina sono esterni alla gabbia del testo, tranne nelle prime pagine dei capitoli. Vorrei uniformare il tutto. Ci sono quasi. Aggiungendo la riga
`\rofoot[\mbox{\makebox[0pt][l]{\kern1em\thepage}}]{}%`
i numeri di tutte le prime pagine dei capitoli (e degli indici) sporgono ora un poco dalla gabbia (prendere l’ultima versione dell’Arte per vedere il risultato). Tutte, a parte la pagina del Sommario (la numero v).http://www.lorenzopantieri.net/LaTeX_files/ArteLaTeX.pdf
Non capisco perché il codice funziona con tutte le pagine, tranne quella. Il sommario lo ottengo così (il codice viene da ClassicThesis, naturalmente):
`%*******************************************************
% Sommario+Abstract
%*******************************************************\pdfbookmark[1]{Sommario}{Sommario}
\begingroup
\let\clearpage\relax
\let\cleardoublepage\relax
\let\cleardoublepage\relax\chapter*{Sommario}
Testo del sommario.\vfill
\selectlanguage{english}
\pdfbookmark[1]{Abstract}{Abstract}
\chapter*{Abstract}
Testo dell'abstract.\selectlanguage{italian}
\endgroup
\vfill`
Perché c’è questa anomalia? Soprattutto: come rimediare? Naturalmente, preferirei modificare una volta per tutte la riga che ho scritto (e che inserirò nelle future versioni di ArsClassica), piuttosto che intervenire ogni volta con un comando “manuale” nel .tex.Grazie anticipate,
L.
-
6 Febbraio 2009 alle 12:06 #25911
-
8 Febbraio 2009 alle 11:54 #25912
-
9 Febbraio 2009 alle 18:32 #25913::
Uso questo 3d per fare una domanda veloce. Se si vogliono utilizzare i font palatino di Classicthesis in un altro documento con KOMAscript, si caricano con
\usepackage{mathpazo}??Con il pacchetto mathpazo si seleziona il font Palatino sia per il testo sia per la matematica.
Più precisamente:
http://www.ctan.org/tex-archive/help/Catalogue/entries/mathpazo.htmlCiao,
L.
-
1 Maggio 2009 alle 12:15 #25914::
Nel gruppo Usenet comp.text.tex è comparso questo messaggiohttp://groups.google.com/group/comp.text.tex/msg/f3f2f1b7906c4f5d
The prettiest document you’ve ever seen
Philipp Stephaniwrites:
>Everything written by Philipp Lehman.and the classicthesis documentation — on ctan
macros/latex/contrib/classicthesis/ClassicThesis.pdf
the arsclassica package is based on classicthesis — on ctan
macros/latex/contrib/arsclassica/ArsClassica.pdf
—
Robin Fairbairns, CambridgeDetto da Robin mi pare un complimento mica da poco. 🙂
Ciao
Enrico
-
4 Maggio 2009 alle 17:13 #25915::
Nel gruppo Usenet comp.text.tex è comparso questo messaggio
http://groups.google.com/group/comp.text.tex/msg/f3f2f1b7906c4f5d
The prettiest document you’ve ever seen
Philipp Stephaniwrites:
>Everything written by Philipp Lehman.and the classicthesis documentation — on ctan
macros/latex/contrib/classicthesis/ClassicThesis.pdf
the arsclassica package is based on classicthesis — on ctan
macros/latex/contrib/arsclassica/ArsClassica.pdf
—
Robin Fairbairns, CambridgeDetto da Robin mi pare un complimento mica da poco. 🙂
Ne sono davvero onorato… 😳
Grazie mille Enrico per avermelo fatto notare! 😀
A presto,
Lorenzo
-
12 Febbraio 2010 alle 7:33 #25916::
Ciao a tutti.André ha appena aggiornato ClassicThesis, introducendo la nuova opzione “backref” del pacchetto classicthesis-ldpkg. Questa opzione abilita i riferimenti bibliografici finali mediante il pacchetto backref (ora backref non è più caricato di default da classicthesis-ldpkg).
Tutto ciò è molto positivo: in questo modo, ClassicThesis è ora compatibilie con biblatex.
Vorrei modificare ArsClassica di conseguenza. Vorrei dire ad ArsClassica: “se l’utente ha caricato classicthesis-ldpkg con l’opzione backref, allora fai questo e quello”. Solo, non so come farlo. 🙁
La parte del codice rilevante:
`\RequirePackage{classicthesis-ldpkg}
\RequirePackage{classicthesis}`Questo è il codice di backref (che andrebbe caricato, appunto, solo se l’utente ha caricato classicthesis-ldpkg con l’opzione backref):
`
%************************************************************
% backref
%************************************************************
\ifthenelse{\boolean{english}}%
{%
\PackageInfo{arsclassica}{Using option “english”. %
This activates english language in “backref”.}
\renewcommand*{\backreftwosep}{ and~}
\renewcommand*{\backreflastsep}{, and~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Cited on page~#2.)%
\else
(Cited on pages~#2.)
\fi}
}
{\relax}\ifthenelse{\boolean{french}}%
% analogo per il francese
{\relax}\ifthenelse{\boolean{german}}%
% analogo per il tedesco
{\relax}\ifthenelse{\boolean{spanish}}%
% analogo per lo spagnolo
{\relax}\ifthenelse{\boolean{italian}}%
% analogo per l'italiano
{\relax}`
Qualcuno può aiutarmi?Grazie anticipate,
L.
-
12 Febbraio 2010 alle 10:52 #25917::
Ciao a tutti.
André ha appena aggiornato ClassicThesis, introducendo la nuova opzione “backref” del pacchetto classicthesis-ldpkg. Questa opzione abilita i riferimenti bibliografici finali mediante il pacchetto backref (ora backref non è più caricato di default da classicthesis-ldpkg).
Tutto ciò è molto positivo: in questo modo, ClassicThesis è ora compatibilie con biblatex.
Vorrei modificare ArsClassica di conseguenza. Vorrei dire ad ArsClassica: “se l’utente ha caricato classicthesis-ldpkg con l’opzione backref, allora fai questo e quello”. Solo, non so come farlo. 🙁
La parte del codice rilevante:
`\RequirePackage{classicthesis-ldpkg}
\RequirePackage{classicthesis}`Questo è il codice di backref (che andrebbe caricato, appunto, solo se l’utente ha caricato classicthesis-ldpkg con l’opzione backref):
`
%************************************************************
% backref
%************************************************************
\ifthenelse{\boolean{english}}%
{%
\PackageInfo{arsclassica}{Using option “english”. %
This activates english language in “backref”.}
\renewcommand*{\backreftwosep}{ and~}
\renewcommand*{\backreflastsep}{, and~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Cited on page~#2.)%
\else
(Cited on pages~#2.)
\fi}
}
{\relax}\ifthenelse{\boolean{french}}%
% analogo per il francese
{\relax}\ifthenelse{\boolean{german}}%
% analogo per il tedesco
{\relax}\ifthenelse{\boolean{spanish}}%
% analogo per lo spagnolo
{\relax}\ifthenelse{\boolean{italian}}%
% analogo per l'italiano
{\relax}`
Qualcuno può aiutarmi?Grazie anticipate,
L.Metti \ifcld@backref prima di quel blocco e \fi alla fine.
Naturalmente un commento è d’obbligo: con la modifica di ClassicThesis, tutti i documenti preparati per la versione precedente e compilati con la nuova saranno diversi, se non si aggiunge l’opzione “backref”.
Ciao
Enrico
-
12 Febbraio 2010 alle 11:10 #25918::
Naturalmente un commento è d’obbligo: con la modifica di ClassicThesis, tutti i documenti preparati per la versione precedente e compilati con la nuova saranno diversi, se non si aggiunge l’opzione “backref”.
Vero. Miede in un primo tempo aveva pensato di caricare sempre il pacchetto backref, e di introdurre un’opzione “nobackrefs” che lo disabilisasse.
Però poi usando biblatex si avrebbe avuto:
`\usepackage[nobackrefs]{classicthesis-ldpkg}
\usepackage[backref]{biblatex}`
che forse sarebbe stato un po’ surreale.Inoltre, ClassicThesis ora è compatibile con biblatex di default.
Per me, il gioco vale la candela.
Ora provo il codice che mi hai suggerito, per il quale ti ringrazio fin da subito!
Ciao,
L.
-
15 Febbraio 2010 alle 12:34 #25919::
Ciao a tutti. Ho appena aggiornato il pacchetto:http://www.ctan.org/tex-archive/macros/latex/contrib/arsclassica/
A presto,
L.
-
15 Febbraio 2010 alle 12:58 #25920::
Ciao lorenzo, sono Andrea! (ti ho scritto per mail perché non riuscivo a collegarmi al forum)
Grazie per gli aggiornamenti!
Ho notato un altro problema dopo l’aggiornamento: nelle liste delle figure e delle tabelle l’elenco degli oggetti float inizia prima del titolo “ELENCO DELLE….” e ciò che si ottiene è una cosa orribile (come scrivere esemplio anziché esempio):
Può essere dovuto all’aggiornamento di classicthesis?
Grazie e ciao!
-
15 Febbraio 2010 alle 13:13 #25921::
Ciao lorenzo, sono Andrea! (ti ho scritto per mail perché non riuscivo a collegarmi al forum)
Grazie per gli aggiornamenti!
Ho notato un altro problema dopo l’aggiornamento: nelle liste delle figure e delle tabelle l’elenco degli oggetti float inizia prima del titolo “ELENCO DELLE….” e ciò che si ottiene è una cosa orribile (come scrivere esemplio anziché esempio):
Può essere dovuto all’aggiornamento di classicthesis?
Grazie e ciao!
A me non risulta. Esempio minimo, per favore.
Ciao,
L.
-
15 Febbraio 2010 alle 13:49 #25922::
Ciao lorenzo, sono Andrea! (ti ho scritto per mail perché non riuscivo a collegarmi al forum)
Grazie per gli aggiornamenti!
Ho notato un altro problema dopo l’aggiornamento: nelle liste delle figure e delle tabelle l’elenco degli oggetti float inizia prima del titolo “ELENCO DELLE….” e ciò che si ottiene è una cosa orribile (come scrivere esemplio anziché esempio):
Può essere dovuto all’aggiornamento di classicthesis?
Sì. È certamente un errore di ClassicThesis; puoi evitarlo, almeno per il momento, non dando l’opzione “listsseparated”. In tre punti di classicthesis.sty (righe 598,599 e 602) c’è un errato
`-10\cftbeforechapskip`
che dovrebbe essere
`-10\p@`
Ciao
Enrico
-
15 Febbraio 2010 alle 14:30 #25923
-
23 Settembre 2010 alle 16:34 #25924::
Ciao a tutti. Vorrei aggiornare il codice di ArsClassica, tenendo conto di quanto emerso negli ultimi tempi. prima di mettere le mani nel codice, vorrei il vostro parere (la programmazione è affar serio!).1. Ottenere la compatibilità con imakeidx. A tal fine, Enrico in persona ha suggerito di modificare il codice di “The index” così:
`%************************************************************
% The index
%************************************************************
\@ifpackageloaded{makeidx}
{\@ifpackageloaded{imakeidx}{}
{%
\RequirePackage{multicol}
\let\orgtheindex\theindex
\let\orgendtheindex\endtheindex
\def\theindex{%
\def\twocolumn{\begin{multicols}{2}}%
\def\onecolumn{}%
\clearpage
\orgtheindex}
\def\endtheindex{%
\end{multicols}%
\orgendtheindex}
\makeindex}%
}{}`2. Far sì che i numeri della prima pagina di ogni capitolo siano spostati un po’ più verso il margine esterno, per uniformità con gli altri numeri di pagina. A questo fine, è da un po’ che uso il seguente
`\rofoot[\mbox{\makebox[0pt][l]{\kern1em\thepage}}]{}`
che funziona benone.3. Far sì che i titoli di sezioni su più righe (peraltro sconsigliati, in AsrClassica) siano allineati. A tal fine, uso con soddisfazione questo codice.
`\newcommand\formatchapter[1]{%
\vbox to \ht\strutbox{
\setbox0=\hbox{\chapterNumber\thechapter\hspace{10pt}\vline\ }
\advance\hsize-\wd0 \advance\hsize-10pt\raggedright
\spacedallcaps{#1}\vss}}
\titleformat{\chapter}[block]
{\normalfont\Large\sffamily}
{\textcolor{halfgray}{\chapterNumber\thechapter}
\hspace{10pt}\vline\ }{10pt}
{\formatchapter}`Due domande.
1. Le patch vanno bene?
2. Qual è il punto più indicato del .sty per piazzare le ultime due?
Grazie,
L.
-
29 Giugno 2011 alle 10:04 #25925::
Ciao a tutti.Ho ho appena caricato su CTAN l’aggiornamento di ArsClassica, ora compatibile con la versione 3.0 di ClassicThesis.
Si tratta di un aggiornamento abbastanza corposo: vi prego di darci un’occhiata. Il codice è stato semplificato; ora il pacchetto non ha più alcuna opzione di caricamento. Si carica semplicemente con
`\usepackage{arsclassica}`
Ho tolto la doc. in italiano: CTAN è un ambiente internazionale, è giusto che la doc. sia in inglese.Ciao,
L.
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.