Toptesi e unicode

  • Creatore
    Topic
  • #8587
    Up
    0
    Down
    ::


    Salve a tutti, questo è il mio primo post nel forum.

    Vengo subito al dunque: sto scrivendo la tesi per la mia seconda laurea su una macchina linux con encoding utf-8, ed avevo intenzione di recuperare il preambolo che usai qualche tempo fa per la mia prima tesi, che composi su windows, usando miktex e teknix center (mentre ora uso tetex e kile).

    Questa si avvaleva del pacchetto “toptesi” di Lorenzo Beccari, ai fini della sola composizione del frontespizio. Quando ho provato a compilare il documento, ho notato errori in compilazione, e, grazie all’aiuto di uno dei vostri membri organizzativi in chat, ho realizzato che toptesi sembra non sopportare unicode: infatti, in topfront.sty leggiamo:
    `\RequirePackage[latin1]{inputenc}`

    La mia ambizione sarebbe invece quella di poter usare questo bel pacchetto anche su linux con unicode: purtroppo nella documentazione non ho trovato nessun accenno alla necessità dell’encoding latin1, e mi rivolgo quindi a voi sperando di superare l’empasse. Allego in calce la parte rilevante del mio preambolo.

    Grazie a tutti in anticipo, Roberto

    `
    \documentclass[a4paper,openright]{book}
    \usepackage[utf8x]{inputenc}
    \usepackage[italian]{babel}
    \linespread{1.6pt}
    \parskip=5pt
    %toptesi
    \usepackage{toptesi}
    \ateneo{Università Pinco Pallino}
    \facolta{Patafisica}
    \corsodilaurea{Patafisicologia}
    \titolo{La patafisica:un ritratto}
    \relatore{Prof. Tizio}
    \secondorelatore{Prof. Caio}
    \candidato{Io me medesimo}
    \sedutadilaurea{2005/06 — Maggio 2006}

    \begin{document}
    \frontmatter
    \pagestyle{empty}
    \frontespizio
    \pagestyle{fancy} \thispagestyle{empty}
    \tableofcontents
    \cleardoublepage
    \mainmatter
    \chapter{Tanto pe' campà} \thispagestyle{empty}
    \section{esempio}
    questo è un esempio di capitolo.
    \backmatter
    \end{document} `

Visualizzazione 18 filoni di risposte
  • Autore
    Risposte
    • #8588
      Up
      0
      Down
      ::


      Io modificherei semplicemente la linea di codice della classe che richiede la codifica latin1.

    • #8589
      Up
      0
      Down
      ::


      In che modo dovrei modificarla, Lapo? Semplicemente eliminandola? L’idea poteva essere quella, ma ho anche pensato che potesse essere lì per qualche ragione…

      P.

    • #8590
      Up
      0
      Down
      ::


      Ciao Paradosso,

      il classico metodo è fare una copia del file che ti serve (in questo caso, topfront.sty), rinominarla e aggiungerci i cambiamenti. Ovviamente, in sede di caricamento del file, caricherai il nuovo file e non quello vecchio senza cambiamenti.

      Ciao.

    • #8591
      Up
      0
      Down
      ::

      In che modo dovrei modificarla, Lapo? Semplicemente eliminandola?

      No, modificarla in
      `\RequirePackage[utf8x]{inputenc}`

    • #8592
      Up
      0
      Down
      ::


      Ho seguito l’iter consigliato da voi, e in effetti il frontespizio viene stampato, con un piccolo ma vistoso errore però!

      Infatti al posto della parola “Facoltà” risulta un non entusiasmante Facolt[U+FFFD]

      Questo il log fornito da Kile:

      `
      CCtesi.tex:61:Package utf8x Error: Malformed UTF-8 sequence. \frontespizio
      CCtesi.tex:61:Package utf8x Error: Malformed UTF-8 sequence. \frontespizio
      CCtesi.tex:61:Package ucs Error: Unknown Unicode character 65533 = U+FFFD,(ucs) possibly declared in uni-255.def. \frontespizio`

      Probabilmente è questo il motivo per cui il pacchetto richiedeva latin1. Vi viene in mente qualche workaround? Grazie ancora.

      P.

    • #8593
      Up
      0
      Down
      ::


      Sono un ignorante, ma fossi in te andrei nel pacchetto scritto dal tuo amico, a cambierei la scritta facolta’ (con l’accento come e’ scritto li’, non con il mio apostrofo), e ci scriverei
      `Facolt\`a`
      E starei attento a non scrivere da nessuna parte un accento che non sia messo con la sintassi \` o \’

      Ciao

    • #8594
      Up
      0
      Down
      ::

      Sono un ignorante, ma fossi in te andrei nel pacchetto scritto dal tuo amico, a cambierei la scritta facolta’ (con l’accento come e’ scritto li’, non con il mio apostrofo), e ci scriverei
      `Facolt\`a`

      Ma il problema è che nel sorgente è proprio scritto con l’accento esplicito….

      Ciao.

    • #8595
      Up
      0
      Down
      ::

      Sono un ignorante, ma fossi in te andrei nel pacchetto scritto dal tuo amico, a cambierei la scritta facolta’ (con l’accento come e’ scritto li’, non con il mio apostrofo), e ci scriverei
      `Facolt\`a`

      Ma il problema è che nel sorgente è proprio scritto con l’accento esplicito….

      Un pacchetto non andrebbe mai scritto con riferimenti a codifiche di input particolari, ma solo usando caratteri ASCII a 7 bit. Tuttavia, esaminando l’ultima versione di topfront.sty, sembra che nulla, ma proprio nulla, richieda la codifica latin1. Un hack che può sistemare la faccenda, in attesa che il pacchetto venga corretto, è`
      \let\ORP\RequirePackage
      \renewcommand{\RequirePackage}[2][]{}
      \usepackage{topfront}
      \let\RequirePackage\ORP`Dovrebbe funzionare perché il pacchetto topfront richiede solo inputenc.

      Naturalmente va usata l’ultima versione, scaricabile da CTAN.

      Ciao
      Enrico

    • #8596
      Up
      0
      Down
      ::


      Ho provato a inserire il codice suggerito da egreg9 nel mio preambolo: purtroppo l’errore, tanto nel pdf quanto nel log di kile, rimane invariato.

      P.

    • #8597
      Up
      0
      Down
      ::

      Ho provato a inserire il codice suggerito da egreg9 nel mio preambolo: purtroppo l’errore, tanto nel pdf quanto nel log di kile, rimane invariato.

      P.

      Evidentemente non hai l’ultima versione di topfront.

      Ciao
      Enrico

    • #8598
      Up
      0
      Down
      ::


      Ciao Enrico, avevo scaricato toptesi giorni fa dal CTAN, quindi mi sembrava difficile non avere l’ultima versione. Infatti, ho riscaricato or ora topfront.sty e l’ho sostituito al suo omologo, ma l’errore persiste. Forse sbaglio qualche altra cosa: io mi sono limitato a togliere dal preambolo che ho riportato in apertura di thread la linea:

      `\usepackage{toptesi}`

      sostituendola con:

      `let\ORP\RequirePackage
      \renewcommand{\RequirePackage}[2][]{}
      \usepackage{topfront}
      \let\RequirePackage\ORP`

      P.

    • #8599
      Up
      0
      Down
      ::

      Ciao Enrico, avevo scaricato toptesi giorni fa dal CTAN, quindi mi sembrava difficile non avere l’ultima versione. Infatti, ho riscaricato or ora topfront.sty e l’ho sostituito al suo omologo, ma l’errore persiste. Forse sbaglio qualche altra cosa: io mi sono limitato a togliere dal preambolo che ho riportato in apertura di thread la linea:

      `\usepackage{toptesi}`

      sostituendola con:

      `let\ORP\RequirePackage
      \renewcommand{\RequirePackage}[2][]{}
      \usepackage{topfront}
      \let\RequirePackage\ORP`

      P.

      Pensavo tu usassi solo topfront. Con toptesi il problema è più sottile, perché è il pacchetto toptesi che richiede topfront, il quale a sua volta vuole inputenc con latin1.

      L’unica possibilità che vedo è: (1) scrivere a Beccari che corregga l’errore;
      (2) creare un file toptesim.sty uguale a toptesi.sty che però, alla fine, abbia \RequirePackage{topfrontm}
      (3) creare un file toptesim.cls uguale a toptesi.cls che richiami toptesim.sty invece che toptesi.sty (basta cercare e sostituire le occorrenze)
      (4) creare un file topfrontm.sty uguale a topfront.sty ma cancellando la riga \RequirePackage[latin1]{inputenc}

      In alternativa, rinunciare alla codifica UTF8.

      Ciao
      Enrico

    • #8600
      Up
      0
      Down
      ::

      Pensavo tu usassi solo topfront. Con toptesi il problema è più sottile, perché è il pacchetto toptesi che richiede topfront, il quale a sua volta vuole inputenc con latin1.

      L’unica possibilità che vedo è: (1) scrivere a Beccari che corregga l’errore;
      (2) creare un file toptesim.sty uguale a toptesi.sty che però, alla fine, abbia \RequirePackage{topfrontm}
      (3) creare un file toptesim.cls uguale a toptesi.cls che richiami toptesim.sty invece che toptesi.sty (basta cercare e sostituire le occorrenze)
      (4) creare un file topfrontm.sty uguale a topfront.sty ma cancellando la riga \RequirePackage[latin1]{inputenc}

      In alternativa, rinunciare alla codifica UTF8.

      Aggiungo qualcosa: prova a dare `\documentclass[utf8]{toptesi}`Potrebbe risolvere il tuo problema. Continuo però a pensare che la classe non dovrebbe caricare codifiche esplicite.

      Ciao
      Enrico

    • #8601
      Up
      0
      Down
      ::


      ho esattamente lo stesso problema.

      ho da poco installato ubuntu dapper e ho controllato che tutto filasse liscio con il sorgente della tesi così come avveniva sotto windows+miktex,

      Uso il pacchetto toptesi, e purtroppo nel frontespizio, come nel resto del documento, sono scomparse le accentate (ad esempio nel dvi si legge “Facolt” e “Universit”, stessa cosa nel pdf).

      Rinuncerei volentieri alla codifica utf8 se fosse quello il problema.
      Ho provato con tutto quello che è stato suggerito in questo thread (tranne la modifica dello .sty) ma non ho risolto.

    • #8602
      Up
      0
      Down
      ::

      ho esattamente lo stesso problema.

      ho da poco installato ubuntu dapper e ho controllato che tutto filasse liscio con il sorgente della tesi così come avveniva sotto windows+miktex,

      Uso il pacchetto toptesi, e purtroppo nel frontespizio, come nel resto del documento, sono scomparse le accentate (ad esempio nel dvi si legge “Facolt” e “Universit”, stessa cosa nel pdf).

      Rinuncerei volentieri alla codifica utf8 se fosse quello il problema.
      Ho provato con tutto quello che è stato suggerito in questo thread (tranne la modifica dello .sty) ma non ho risolto.

      Da quanto mi aveva detto Claudio Beccari, una nuova versione di toptesi avrebbe dovuto risolvere il problema, ma non è ancora uscita. È vero che ci sarebbero problemi a modificare un sorgente senza cambiare il nome, ma qui si tratta solo di correggere un errore materiale. In attesa della nuova versione, una correzione che non dovrebbe comportare alcun effetto collaterale è: in topfront.sty

      — commentare la riga \RequirePackage[latin1]{inputenc}
      — sostituire le “à” con “\`a”

      Ciao
      Enrico

    • #8603
      Up
      0
      Down
      ::

      — commentare la riga \RequirePackage[latin1]{inputenc}
      — sostituire le “à” con “\`a”

      Ci ho provato ma il file topfront.sty nella cartella /usr/share/texmf-tetex/tex/latex/toptesi non presenta nessuna occorrenza della stringa da te citata e le “à” sono tutte in formato “\`a”.
      Dopo aver apportato questa modifica nel preambolo:
      `\usepackage[utf8]{inputenc} `
      all’ultima compilazione del documento “Universit” è ritornato “Università” ma “Facolt” di scienze matematiche etc… rimane senza accentata, nel resto del documento le accentate sono ricomparse…
      Comincio a non capirci più nulla… forse sbaglio io qualcosa nel preambolo:
      `
      \documentclass[11pt, classica]{toptesi}
      \usepackage[utf8]{inputenc}
      \logosede{logopm} % logo dell'università personalizzato
      \ateneo{Università degli Studi di Bari}
      \facolta{Scienze Matematiche, Fisiche e Naturali}
      \corsodilaurea{il corso di laurea}
      \titolo{il titolo della tesi}

      \candidato{Pinco Pallino}
      \relatore{prof.\ Tal~dei~Tali}
      \sedutadilaurea{Umbrile 2006}

      \TesiDiLaurea{Tesi di Laurea}
      `

      suggerimenti?

    • #8604
      Up
      0
      Down
      ::

      Ci ho provato ma il file topfront.sty nella cartella /usr/share/texmf-tetex/tex/latex/toptesi non presenta nessuna occorrenza della stringa da te citata e le “à” sono tutte in formato “\`a”.
      Dopo aver apportato questa modifica nel preambolo:
      `\usepackage[utf8]{inputenc} `
      all’ultima compilazione del documento “Universit” è ritornato “Università” ma “Facolt” di scienze matematiche etc… rimane senza accentata, nel resto del documento le accentate sono ricomparse…

      La parola incriminata sta in toptesi.cfg ❗ ❗ ❗ Me ne ero dimenticato.

      Ciao
      Enrico

    • #8605
      Up
      0
      Down
      ::


      perfetto, credo di aver risolto modificando il file toptesi.cfg, però il RequirePackage non c’era neanche là… 🙂

      grazie.
      Davide.

    • #8606
      Up
      0
      Down
      ::

      perfetto, credo di aver risolto modificando il file toptesi.cfg, però il RequirePackage non c’era neanche là… 🙂

      Vuol dire che hai la versione recente, che in effetti è arrivata su CTAN senza che me accorgessi. Segnalerò l’anomalia sul file .cfg.

      Ciao
      Enrico

Visualizzazione 18 filoni di risposte
  • Devi essere connesso per rispondere a questo topic.

Go to top