Package inputenc Error: Unicode char \u8:� not set up for us

  • Creatore
    Topic
  • #98926
    samiel
    Partecipante
      Up
      0
      Down
      ::


      Sto impazzendo con un codice che qui allego semplificato:
      `\documentclass[a4paper,11pt]{article}
      \usepackage[T1]{fontenc}
      \usepackage[utf8]{inputenc}
      \usepackage[italian]{babel}
      \usepackage[type1]{ebgaramond}
      \usepackage{microtype}
      \usepackage{xpatch}
      \usepackage{textcase}

      %%% BIBLIOGRAFIA
      \usepackage[babel,italian=guillemets]{csquotes}
      \usepackage[style=philosophy-verbose,backend=biber,scauthors=true,scauthorscite=true,%
      classical=true,firstinits=true,commacit=true,volnumformat=strings,volumeformat=romansc,%
      sorting=nyt,citepages=omit,indexing]{biblatex}
      \DeclareFieldFormat[article]{title}{\mkbibemph{#1}} % in corsivo tutti i titoli
      \DeclareFieldFormat[inbook]{title}{\mkbibemph{#1}} % in corsivo tutti i titoli
      \DeclareFieldFormat[incollection]{title}{\mkbibemph{#1}} % in corsivo tutti i titoli
      \DeclareFieldFormat[inproceedings]{title}{\mkbibemph{#1}} % in corsivo tutti i titoli
      \DeclareFieldFormat{journaltitle}{\mkbibquote{#1}} % riviste tra virgolette caporali
      \DeclareFieldFormat{issuetitle}{\mkbibquote{#1}} % riviste tra virgolette caporali
      \renewcommand*{\bibfont}{\normalfont\footnotesize} % riduce il font della bibliografia

      \newcommand\textlcsc[1]{\textsc{\MakeLowercase{#1}}}
      \AtBeginBibliography{%
      \iftoggle{bbx:scauthors}{%
      \DeclareNameFormat{sortname}{%
      \renewcommand{\mkbibnamefirst}{\textlcsc}%
      \renewcommand{\mkbibnamelast}{\textlcsc}%
      \renewcommand{\mkbibnameprefix}{\textlcsc}%
      \renewcommand{\mkbibnameaffix}{\textlcsc}%
      \ifnumequal{\value{listcount}}{1}
      {\iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
      \ifblank{#3#5}
      {}
      {\usebibmacro{name:revsdelim}}}
      {\iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}}%
      \usebibmacro{name:andothers}}}%
      {}}%

      \DeclareNameFormat{scdefault}{%
      \renewcommand{\mkbibnamefirst}{\textlcsc}%
      \renewcommand{\mkbibnamelast}{\textlcsc}%
      \renewcommand{\mkbibnameprefix}{\textlcsc}%
      \renewcommand{\mkbibnameaffix}{\textlcsc}%
      \iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}%
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
      \usebibmacro{name:andothers}}
      \newbibmacro*{cite:opcit}{%
      \printtext[bibhyperlink]{\bibstring[\mkibid]{opcit}}}

      % mantiene il nome autore nelle citazioni successiva alla prima
      \DeclareNameFormat{labelname}{%
      \ifcase\value{uniquename}%
      \usebibmacro{name:first-last}{#1}{#4}{#5}{#7}%
      \or
      \ifuseprefix
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#8}}
      {\usebibmacro{name:first-last}{#1}{#4}{#6}{#8}}%
      \or
      \usebibmacro{name:first-last}{#1}{#3}{#5}{#7}%
      \fi
      \usebibmacro{name:andothers}}

      \begin{filecontents*}{\jobname.bib}
      @book{ fornero:2008,
      author = “Giovanni Fornero”,
      title = “Laicità debole e laicità forte”,
      publisher = “B. Mondadori”,
      location = “Milano”,
      year = “2008”,
      }

      @book{ fornero:2009,
      author = “Giovanni Fornero”,
      title = “Bioetica cattolica e bioetica laica”,
      publisher = “B. Mondadori”,
      location = “Milano”,
      year = “2009”,
      edition = “2”,
      }

      \end{filecontents*}

      \addbibresource{\jobname.bib}

      \begin{document}

      Nell'approccio di Fornero\footcite[23]{fornero:2009} il concetto

      Il paradigma la posizione\footcite[37]{fornero:2008}

      Fornero aveva anticipato l'obiezione per cui «non è vero»\footcite[44]{fornero:2009}
      che il paradigma

      \printbibliography
      \end{document}`
      Tutto scritto con Kate un utf8. Compilo regolarmente la prima volta con pdflatex,
      quindi compilo con biber e alla seconda compilazione con pdflatex ottengo:
      `! Package inputenc Error: Unicode char \u8:� not set up for use with LaTeX.

      See the inputenc package documentation for explanation.
      Type H for immediate help.

      l.95 …ma la posizione\footcite[37]{fornero:2008}

      ?
      `
      Se cambio qualcosa, c’è sempre un momento un cui salta fuori l’avviso…
      m

    Visualizzazione 7 filoni di risposte
    • Autore
      Risposte
      • #98927
        Up
        0
        Down
        ::


        Dentro filecontents non si possono usare lettere accentate. Togli quell’ambiente dall’ultimo esempio e vedrai che compila senza problemi.

        Ciao
        Ivan

      • #98928
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          È vero, filecontents serve per trasportare un codice LaTeX da un autore ad un altro; il codice LaTeX è difficile da scrivere verbatim se cotine lettere accentate o comunque caratteri non ASCII; in teoria circa l’ambiente filecotents nel manuale di Lamport si dice che dovrebbe essere messo prima di \documentclass; se il suo scopo è quello di mettere a disposizione del secondo autore un file di classe o un modulo di estensione, è molto probabile che l’affermazione di Lamport debba essere presa alla lettera. Per la bibliografia non sarei così categorico, ma giusto per non dimenticarmete metterei il suo filecontents prima di \documentclass, sempre e comunque.

          Suppongo che tu abbia usato filecontents solo per mostrarci un esempio minimo compilabile, ma che tu nelal tua cartella non abbia il database bibliografico generato con filecontents; allora ti suggerirei di aprire il tuo \jobname.bib con TeXworks e di controllare se ci sono caratteri strani o i rombi neri col punto interrogativo bianco dentro; se ce ne sono edita il file .bib correggendo quei caratteri; poi rilancia biber e pdflatex quante volte occorre; non dovresti più avere problemi.

          Talvolta i problemi rimangono, nel senso che il file .bib con tiene dei carattere che TeXworks non riesce nemmeno a mostrare, ma non si vedono nemmeno sostituiti dai famosi rombi neri; In ogni caso TeXworks, come descritto nella guida tematica sulle codifiche, riesce a diagnosticare la codifica di un file e a cambiarla salvandolo nella nuova codifica; meriterebbe usare la procedura descritta nella guida tematica se per caso l’errore persistesse.

        • #98929
          samiel
          Partecipante
            Up
            0
            Down
            ::


            Ivan ha colto, è tutta colpa della laicità (per via dell’accento!).
            In realtà, poiché si tratta di un breve articolo, avevo pensato di metterci dentro i pochi riferimenti bibliografici,
            ma visto che così si produce il danno, mi rassegno a creare un file .bib distinto.
            Ora sono di corsa, poi sperimento anche l’indicazione di OldClaudio
            sul posizionamento alternativo di filecontents

            grazie
            m

          • #98930
            Up
            0
            Down
            ::


            Ricorda inoltre che il file prodotto da filecontents non viene rigenerato se è già presente nella cartella. Quindi potrebbe essere usato per un documento normale solo se si è sicuri di non dover aggiungere voci nuove. Altrimenti bisogna o cancellare il file dalla cartella, aggiungere le nuove voci e rigenerarlo, oppure editarlo direttamente. Senza consolare i limiti degli accenti. Quindi di fatto la sua utilità è limitata solo alla generazione di emc.

            Ciao
            Ivan

          • #98931
            samiel
            Partecipante
              Up
              0
              Down
              ::


              quando ho guai, in genere prima di ricompilare cancello tutto
              per evitare che si ereditino degli errori. comunque buono a sapersi
              questo limite di file content
              grazie
              m

            • #98932
              samiel
              Partecipante
                Up
                0
                Down
                ::


                OldClaudio ha ragione: mettendo jobname all’inizio del file,
                prima di \begin{document} posso lasciare i caratteri accentati
                e tutto si compila alla perfezione

                grazie
                m

              • #98933
                Up
                0
                Down
                ::

                ivan” post=98483Dentro filecontents non si possono usare lettere accentate. Togli quell’ambiente dall’ultimo esempio e vedrai che compila senza problemi.

                Falso. 😉

                Il problema è solo che [tt]filecontents[/tt] è dopo il caricamento di inputenc. Meglio sempre metterlo prima di [tt]\documentclass[/tt]. Se proprio ci fosse bisogno dell’omonimo pacchetto (raro), usa
                `
                \RequirePackage{filecontents}
                \begin{filecontents}{nome}

                \end{filecontents}

                \documentclass[…]{…}

                `

                Ciao
                Enrico

              • #98934
                Up
                0
                Down
                ::


                😳 devo ricordarmi di aggiungere qualche forse alle mie risposte. Grazie 😉

                Ciao
                Ivan

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

            Go to top