Parentesi graffe nell’indice

  • Creatore
    Topic
  • #81746
    Up
    0
    Down
    ::


    Salve a tutti,

    ho un piccolo problema. Ad un certo punto della mia tesi dovrei scrivere la didascalia di una figura in questo modo:

    `\caption{Un taglio di un grafo, in cui $X=\lbrace A,B,D \rbrace$ e $\overline{X}=\lbrace C, E, F, G \rbrace$}`

    Quando compilo, la prima volta va tutto ok. La seconda mi da un po’ di errori. Il problema è che la prima volta non crea l’indice per quella figura, e quindi compila.
    La seconda volta si crea la entry nell’elenco delle figure, e si generano i problemi.

    Allora, punto 1: questo è quanto viene fuori nell’indice:

    Un taglio di un grafo, in cui X = `004266308A, B,D`005267309
    e X = `004266308C, E, F,G`005267309

    Punto 2: questo è il codice che genera il mio indice:

    `
    \cleardoublepage
    \pdfbookmark{\contentsname}{tableofcontents}
    \setcounter{tocdepth}{2}
    \tableofcontents
    \markboth{\spacedlowsmallcaps{\contentsname}}{\spacedlowsmallcaps{\contentsname}}
    \cleardoublepage

    \begingroup
    %*******************************************************
    % Elenco delle figure
    %*******************************************************
    \phantomsection
    \pdfbookmark{\listfigurename}{lof}
    \listoffigures

    \cleardoublepage

    %*******************************************************
    % Elenco delle tabelle
    %*******************************************************
    \phantomsection
    \pdfbookmark{\listtablename}{lot}
    \listoftables

    \cleardoublepage

    %*******************************************************
    % Elenco degli algoritmi
    %*******************************************************
    \lstlistoflistings

    \endgroup

    \cleardoublepage
    `

    Punto 3: questo è l’errore, ripetuto 4-5 volte nel file di log

    `! Missing number, treated as zero.

    \def
    l.63 …”5267309 $\relax }}{88}{figure.caption.28}

    A number should have been here; I inserted `0'.
    (If you can't figure out why I needed to see a number,
    look up `weird error' in the index to The TeXbook.)

    )
    \tf@lof=\write6
    [5

    ] [6

    ]`

    Qualcuno sa darmi una mano? Vi servono altre info??

Visualizzazione 5 filoni di risposte
  • Autore
    Risposte
    • #81747
      Up
      0
      Down
      ::

      canemacchina” post=81025Salve a tutti,

      ho un piccolo problema. Ad un certo punto della mia tesi dovrei scrivere la didascalia di una figura in questo modo:

      `\caption{Un taglio di un grafo, in cui $X=\lbrace A,B,D \rbrace$ e $\overline{X}=\lbrace C, E, F, G \rbrace$}`

      Quando compilo, la prima volta va tutto ok. La seconda mi da un po’ di errori. Il problema è che la prima volta non crea l’indice per quella figura, e quindi compila.
      La seconda volta si crea la entry nell’elenco delle figure, e si generano i problemi.

      […]

      Qualcuno sa darmi una mano? Vi servono altre info??

      In realtà servirebbero altre informazioni, per esempio che usi babel con il modulo per l’italiano. 🙂

      Usa [tt]\{[/tt] e [tt]\}[/tt].

      Il problema è che [tt]\lbrace[/tt] non è un comando “robusto” e quindi, al momento della scrittura nel file ausiliario ([tt].lof[/tt] nel tuo caso), diventa [tt]\delimiter “4266308[/tt] e il carattere [tt]”[/tt] ha un significato speciale che diventa incompatibile con [tt]\delimiter[/tt]. Questione un po’ TeXnica, ma che risolvi appunto con [tt]\{…\}[/tt] che non soffrono del problema.

      Se proprio sei affezionato a [tt]\lbrace…[/tt], devi adattarti a scrivere
      `\protect\lbrace…\protect\rbrace`
      nell’argomento di [tt]\caption[/tt].

      Ciao
      Enrico

    • #81748
      Up
      0
      Down
      ::


      `\usepackage[italian]{babel}`

      Si, uso babel per la lingua italiana.

      Palo anche con \{ e \}. Avevo già provato…

      Funziona invece con il \protect davanti, grazie!!!

    • #81749
      Up
      0
      Down
      ::

      canemacchina” post=81027`\usepackage[italian]{babel}`

      Si, uso babel per la lingua italiana.

      Palo anche con \{ e \}. Avevo già provato…

      Funziona invece con il \protect davanti, grazie!!!

      Che pacchetti carichi?

      Ciao
      Enrico

    • #81750
      Up
      0
      Down
      ::


      La tesi è fatta usando il modello “classicthesis” con l’uso di “ars classica”.
      La base l’ho presa da Lorenzo Panatieri, presa da QUI, e poi rimaneggiata un pochino.
      Questo è tutto il mio preambolo (è un po’ lungo)

      `
      \documentclass[
      11pt,
      a4paper,
      twoside,
      open=right,
      BCOR25mm,
      titlepage
      headinclude,
      cleardoublepage=empty,
      ]{scrreprt}
      \synctex=1
      \usepackage[T1]{fontenc}
      \usepackage[utf8]{inputenc}
      \usepackage[italian]{babel}
      \usepackage{indentfirst}
      \usepackage{graphicx}
      \usepackage[font=small]{quoting}
      \usepackage{amsmath,amssymb}
      \usepackage[italian]{varioref}
      \usepackage{mparhack,fixltx2e,relsize}
      \usepackage{tabularx}
      \usepackage[usenames,dvipsnames]{xcolor}
      \usepackage[
      style=numeric,
      hyperref,
      backref,
      natbib
      ]{biblatex}
      \bibliography{Bibliografia}
      \usepackage{chngpage,calc}
      \usepackage{subfig}
      \usepackage[
      font=small,
      labelfont=bf,
      textfont=it,
      format=hang
      ]{caption}
      \usepackage{float}
      \usepackage{lipsum}
      \usepackage{eurosym}
      \usepackage[
      eulerchapternumbers,
      subfig,
      beramono,
      eulermath,
      pdfspacing,
      listings
      parts,
      floatperchapter,
      dottedtoc,
      manychapters
      ]{classicthesis}
      \usepackage{arsclassica}
      \usepackage{bookmark}
      \usepackage{verbatim}
      \usepackage{multicol}
      \usepackage{colortbl}
      \usepackage{afterpage}
      \usepackage{etoolbox, listings}
      \usepackage{enumerate}
      \usepackage{framed}
      \usepackage{ntheorem}
      \usepackage[suftesi]{frontespizio} % frontespizo
      `

      Ho poi un file di configurazioni di vari ambienti. Te lo posto

      `
      %*********************************************************************************
      % Comandi personali
      %*******************************************************
      \newcommand{\myName}{Lorenzo Bugiani}
      \newcommand{\myTitle}{Calcolo del Minimum Spanning Tree in ambiente GPGPU}
      \newcommand{\myDegree}{Tesi di Laurea}
      \newcommand{\myUni}{Università degli studi di Firenze}
      \newcommand{\myFaculty}{Facoltà di Scienze Matematiche Fisiche e Naturali}
      \newcommand{\myDepartment}{Dipartimento di Informatica}
      \newcommand{\myProf}{Luigi Brugnano}
      \newcommand{\myLocation}{Prato}
      \newcommand{\myTime}{Dicembre 2012}

      %*********************************************************************************
      % Impostazioni footer
      %*********************************************************************************
      %\refoot{{\color{footer}\myName}}
      %\lofoot{{\color{footer}\myTitle}}

      %*********************************************************************************
      % Impostazioni di amsmath, amssymb, amsthm
      %*********************************************************************************

      % comandi per gli insiemi numerici (serve il pacchetto amssymb)
      \newcommand{\numberset}{\mathbb}
      \newcommand{\N}{\numberset{N}}
      \newcommand{\R}{\numberset{R}}

      % un ambiente per i sistemi
      \newenvironment{sistema}%
      {\left\lbrace\begin{array}{@{}l@{}}}%
      {\end{array}\right.}

      % definizioni (serve il pacchetto amsthm)
      \theoremstyle{plain}
      \newtheorem{thm}{Teorema}
      \newtheorem{cor}{Corollario}
      \newtheorem{lem}{Lemm:}
      \newtheorem{prop}{Proposizione}
      \newtheorem{oss}{Osservazione}

      \theoremstyle{definition}
      \newtheorem{defn}{Definizione}
      \newtheorem*{es}{Esempio:}

      \theoremstyle{remark}
      \newtheorem*{nota}{Nota:}

      %*********************************************************************************
      % Impostazioni di biblatex
      %*********************************************************************************
      \defbibheading{bibliography}{%
      \cleardoublepage
      \manualmark
      \phantomsection
      \addcontentsline{toc}{chapter}{\tocEntry{\bibname}}
      \chapter*{\bibname\markboth{\spacedlowsmallcaps{\bibname}}{\spacedlowsmallcaps{\bibname}}}}

      %*********************************************************************************
      % Impostazioni di listings
      %*********************************************************************************
      \lstset{
      keywordstyle=\color{keywordstyle}\bfseries,
      basicstyle=\ttfamily\footnotesize,
      commentstyle=\color{commentstyle}\ttfamily,
      stringstyle=\color{stringstyle}\sffamily,
      numbers=none,%left,%
      numberstyle=\tiny,
      numbersep=4pt,
      showstringspaces=false,
      breaklines=true,
      frame=tb,
      backgroundcolor=\color{background},
      escapeinside={(@}{@)},
      tabsize=4
      }

      \lstdefinestyle{c}{
      language=c++,
      morekeywords={__global__, __device__, __host__, __shared__, dim3, size_t, cudaEvent_t, cudaError_t, __align__} % CUDA specific keywords
      }
      \lstdefinestyle{fortran}{
      language=fortran,
      morekeywords={global, device, host, shared} % CUDA specific keywords
      }

      \makeatletter
      \patchcmd{\lst@MakeCaption}{{lol}{lstlisting}}{{lol}{\lstlistingtype}}{}{}
      \patchcmd{\lst@MakeCaption}{{lol}{lstlisting}}{{lol}{\lstlistingtype}}{}{}

      \newcommand\lstlistofClistings{%
      \cleardoublepage\phantomsection
      \pdfbookmark{Elenco dei listati}{C}
      \begingroup
      \let\l@Flstlisting\@gobbletwo
      \let\l@Clstlisting\l@lstlisting
      \def\lstlistlistingname{Elenco dei listati}
      \@ifundefined{@donefirst}{\@fileswfalse\global\let\@donefirst\@empty}{}
      \lstlistoflistings
      \endgroup
      }
      \newcommand\lstlistofFlistings{%
      \cleardoublepage\phantomsection
      \pdfbookmark{Listati Fortran}{F}
      \begingroup
      \let\l@Clstlisting\@gobbletwo
      \let\l@Flstlisting\l@lstlisting
      \def\lstlistlistingname{Listati Fortran}
      \@ifundefined{@donefirst}{\@fileswfalse\global\let\@donefirst\@empty}{}
      \lstlistoflistings
      \endgroup
      }

      \makeatother

      \newcounter{oldlstlisting}
      \newcounter{Flstlisting}[chapter]
      \newcounter{Clstlisting}[chapter]

      \lstnewenvironment{Flstlisting}[1][]{
      \def\lstlistingtype{Flstlisting}
      \setcounter{oldlstlisting}{\value{lstlisting}}
      \setcounter{lstlisting}{\value{Flstlisting}}
      \renewcommand\lstlistingname{Listato Fortran}
      \lstset{style=fortran,#1}
      } {
      \stepcounter{Flstlisting}
      \setcounter{lstlisting}{\value{oldlstlisting}}
      }

      \lstnewenvironment{Clstlisting}[1][]{
      \def\lstlistingtype{Clstlisting}
      \setcounter{oldlstlisting}{\value{lstlisting}}
      \setcounter{lstlisting}{\value{Clstlisting}}
      \renewcommand\lstlistingname{Listato C}
      \lstset{style=c,#1}
      } {
      \stepcounter{Clstlisting}
      \setcounter{lstlisting}{\value{oldlstlisting}}
      }

      \lstnewenvironment{Flstlisting*}[1][]{
      \def\lstlistingtype{Flstlisting}
      \renewcommand\lstlistingname{Listato Fortran}
      \lstset{style=fortran,#1}
      } {}

      \lstnewenvironment{Clstlisting*}[1][]{
      \def\lstlistingtype{Clstlisting}
      \renewcommand\lstlistingname{Listato C}
      \lstset{style=c,#1}
      } {}

      %*********************************************************************************
      % Impostazioni di hyperref
      %*********************************************************************************
      \hypersetup{
      colorlinks=true,
      linktocpage=true,
      pdfstartpage=3,
      pdfstartview=FitV,
      breaklinks=true,
      pdfpagemode=UseNone,
      pageanchor=true,
      pdfpagemode=UseOutlines,
      plainpages=false,
      bookmarksnumbered,
      bookmarksopen=true,
      bookmarksopenlevel=1,
      hypertexnames=true,
      pdfhighlight=/O,
      urlcolor=h_urlcolor,
      linkcolor=h_linkcolor,
      citecolor=h_citecolor,
      pdftitle={\myTitle},
      pdfauthor={\textcopyright\ \myName, \myUni, \myFaculty},
      pdfsubject={},
      pdfkeywords={},
      pdfcreator={pdfLaTeX},
      pdfproducer={LaTeX with hyperref and ClassicThesis}
      }

      %*********************************************************************************
      % Margini ottimizzati per l'A4
      %*********************************************************************************
      \areaset[current]{400pt}{680pt}
      \linespread{1.30}

      %*********************************************************************************
      % Altro
      %*********************************************************************************

      \setlength\columnseprule{.4pt}

      \addto\captionsitalian{
      \renewcommand{\lstlistingname}{Listato}%
      }

      % […] 😉
      \newcommand{\omissis}{[\dots\negthinspace]}

      % eccezioni all'algoritmo di sillabazione
      \hyphenation{Fortran ma-cro-istru-zio-ne thread threadIdx cuda cudaDeviceSynchronize}

      \newcommand{\ke}{\emph{kernel}}
      \newcommand{\ho}{\emph{host}}
      \newcommand{\de}{\emph{device}}
      \newcommand{\vet}[1]{$\mathbf{#1}$}
      \newcommand{\mst}{\emph{Minumum Spanning Tree}}
      \newcommand{\mar}{\emph{Minimo Albero di Ricoprimento}}

      %Rientro capitolo identico al rientro paragrafi senza titolo
      \setlength{\parindent}{18pt}
      `

    • #81751
      Up
      0
      Down
      ::

      canemacchina” post=81034La tesi è fatta usando il modello “classicthesis” con l’uso di “ars classica”.

      […]

      Non mi pare ci sia nulla che modifichi il significato di [tt]\{[/tt] e [tt]\}[/tt], quindi sono sicuro che funzionino. Naturalmente devi cancellare i file ausiliari che ancora contengono il codice scorretto.

      Ciao
      Enrico

    • #81752
      Up
      0
      Down
      ::


      Guarda, non so che dirti.

      Ci sono rimasto perplesso anche io. Ho provato a usare quel metodo, pulendo tutto (ovvero lanciando un clean della tesi) ma nulla, il problema non si risolveva.
      In ogni caso con il \protect funziona, quindi non mi pongo più il problema, no?

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

Go to top